CI: Website updated
Signed-off-by: Marc Nuri <marc@marcnuri.com>
diff --git a/app-59faa9989d677dd59195.js b/app-59faa9989d677dd59195.js
new file mode 100644
index 0000000..4b18b20
--- /dev/null
+++ b/app-59faa9989d677dd59195.js
@@ -0,0 +1,3 @@
+/*! For license information please see app-59faa9989d677dd59195.js.LICENSE.txt */
+(window.webpackJsonp=window.webpackJsonp||[]).push([[3],{"+7hJ":function(t,e,n){var r=n("REpN"),o=n("Bgjm"),a=n("34EK"),i=n("i18P"),u=n("krUJ"),c=n("E9J1"),s=c.get,l=c.enforce,p=String(String).split("String");(t.exports=function(t,e,n,u){var c,s=!!u&&!!u.unsafe,f=!!u&&!!u.enumerable,h=!!u&&!!u.noTargetGet;"function"==typeof n&&("string"!=typeof e||a(n,"name")||o(n,"name",e),(c=l(n)).source||(c.source=p.join("string"==typeof e?e:""))),t!==r?(s?!h&&t[e]&&(f=!0):delete t[e],f?t[e]=n:o(t,e,n)):f?t[e]=n:i(e,n)})(Function.prototype,"toString",(function(){return"function"==typeof this&&s(this).source||u(this)}))},"+ZDr":function(t,e,n){"use strict";var r=n("TqRt");e.__esModule=!0,e.withPrefix=d,e.withAssetPrefix=function(t){return d(t,v())},e.navigateTo=e.replace=e.push=e.navigate=e.default=void 0;var o=r(n("8OQS")),a=r(n("PJYZ")),i=r(n("VbXa")),u=r(n("pVnL")),c=r(n("17x9")),s=r(n("q1tI")),l=n("YwZP"),p=n("LYrO"),f=n("cu4x");e.parsePath=f.parsePath;var h=function(t){return null==t?void 0:t.startsWith("/")};function d(t,e){var n,r;if(void 0===e&&(e=m()),!g(t))return t;if(t.startsWith("./")||t.startsWith("../"))return t;var o=null!==(n=null!==(r=e)&&void 0!==r?r:v())&&void 0!==n?n:"/";return""+((null==o?void 0:o.endsWith("/"))?o.slice(0,-1):o)+(t.startsWith("/")?t:"/"+t)}var v=function(){return"/jkube"},m=function(){return"/jkube"},g=function(t){return t&&!t.startsWith("http://")&&!t.startsWith("https://")&&!t.startsWith("//")};var y=function(t,e){return"number"==typeof t?t:g(t)?h(t)?d(t):function(t,e){return h(t)?t:(0,p.resolve)(t,e)}(t,e):t},b={activeClassName:c.default.string,activeStyle:c.default.object,partiallyActive:c.default.bool};function w(t){return s.default.createElement(l.Location,null,(function(e){var n=e.location;return s.default.createElement(R,(0,u.default)({},t,{_location:n}))}))}var R=function(t){function e(e){var n;(n=t.call(this,e)||this).defaultGetProps=function(t){var e=t.isPartiallyCurrent,r=t.isCurrent;return(n.props.partiallyActive?e:r)?{className:[n.props.className,n.props.activeClassName].filter(Boolean).join(" "),style:(0,u.default)({},n.props.style,n.props.activeStyle)}:null};var r=!1;return"undefined"!=typeof window&&window.IntersectionObserver&&(r=!0),n.state={IOSupported:r},n.handleRef=n.handleRef.bind((0,a.default)(n)),n}(0,i.default)(e,t);var n=e.prototype;return n._prefetch=function(){var t=window.location.pathname;this.props._location&&this.props._location.pathname&&(t=this.props._location.pathname);var e=y(this.props.to,t),n=(0,f.parsePath)(e).pathname;t!==n&&___loader.enqueue(n)},n.componentDidUpdate=function(t,e){this.props.to===t.to||this.state.IOSupported||this._prefetch()},n.componentDidMount=function(){this.state.IOSupported||this._prefetch()},n.componentWillUnmount=function(){if(this.io){var t=this.io,e=t.instance,n=t.el;e.unobserve(n),e.disconnect()}},n.handleRef=function(t){var e,n,r,o=this;this.props.innerRef&&this.props.innerRef.hasOwnProperty("current")?this.props.innerRef.current=t:this.props.innerRef&&this.props.innerRef(t),this.state.IOSupported&&t&&(this.io=(e=t,n=function(){o._prefetch()},(r=new window.IntersectionObserver((function(t){t.forEach((function(t){e===t.target&&(t.isIntersecting||t.intersectionRatio>0)&&(r.unobserve(e),r.disconnect(),n())}))}))).observe(e),{instance:r,el:e}))},n.render=function(){var t=this,e=this.props,n=e.to,r=e.getProps,a=void 0===r?this.defaultGetProps:r,i=e.onClick,c=e.onMouseEnter,p=(e.activeClassName,e.activeStyle,e.innerRef,e.partiallyActive,e.state),h=e.replace,d=e._location,v=(0,o.default)(e,["to","getProps","onClick","onMouseEnter","activeClassName","activeStyle","innerRef","partiallyActive","state","replace","_location"]);var m=y(n,d.pathname);return g(m)?s.default.createElement(l.Link,(0,u.default)({to:m,state:p,getProps:a,innerRef:this.handleRef,onMouseEnter:function(t){c&&c(t),___loader.hovering((0,f.parsePath)(m).pathname)},onClick:function(e){if(i&&i(e),!(0!==e.button||t.props.target||e.defaultPrevented||e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)){e.preventDefault();var n=h,r=encodeURI(m)===d.pathname;"boolean"!=typeof h&&r&&(n=!0),window.___navigate(m,{state:p,replace:n})}return!0}},v)):s.default.createElement("a",(0,u.default)({href:m},v))},e}(s.default.Component);R.propTypes=(0,u.default)({},b,{onClick:c.default.func,to:c.default.string.isRequired,replace:c.default.bool,state:c.default.object});var P=function(t,e,n){return console.warn('The "'+t+'" method is now deprecated and will be removed in Gatsby v'+n+'. Please use "'+e+'" instead.')},O=s.default.forwardRef((function(t,e){return s.default.createElement(w,(0,u.default)({innerRef:e},t))}));e.default=O;e.navigate=function(t,e){window.___navigate(y(t,window.location.pathname),e)};var j=function(t){P("push","navigate",3),window.___push(y(t,window.location.pathname))};e.push=j;e.replace=function(t){P("replace","navigate",3),window.___replace(y(t,window.location.pathname))};e.navigateTo=function(t){return P("navigateTo","navigate",3),j(t)}},"/TCF":function(t,e,n){var r=n("REpN"),o=n("krUJ"),a=r.WeakMap;t.exports="function"==typeof a&&/native code/.test(o(a))},"/hTd":function(t,e,n){"use strict";e.__esModule=!0,e.SessionStorage=void 0;var r=function(){function t(){}var e=t.prototype;return e.read=function(t,e){var n=this.getStateKey(t,e);try{var r=window.sessionStorage.getItem(n);return r?JSON.parse(r):0}catch(o){return window&&window.___GATSBY_REACT_ROUTER_SCROLL&&window.___GATSBY_REACT_ROUTER_SCROLL[n]?window.___GATSBY_REACT_ROUTER_SCROLL[n]:0}},e.save=function(t,e,n){var r=this.getStateKey(t,e),o=JSON.stringify(n);try{window.sessionStorage.setItem(r,o)}catch(a){window&&window.___GATSBY_REACT_ROUTER_SCROLL||(window.___GATSBY_REACT_ROUTER_SCROLL={}),window.___GATSBY_REACT_ROUTER_SCROLL[r]=JSON.parse(o)}},e.getStateKey=function(t,e){var n="@@scroll|"+t.pathname;return null==e?n:n+"|"+e},t}();e.SessionStorage=r},"0dIN":function(t,e,n){var r=n("gQbX"),o=Math.max,a=Math.min;t.exports=function(t,e){var n=r(t);return n<0?o(n+e,0):a(n,e)}},"17+C":function(t,e,n){var r=n("4jnk");t.exports=function(t){return Object(r(t))}},"1uEE":function(t,e,n){var r=n("jdR/");t.exports=r("navigator","userAgent")||""},"284h":function(t,e,n){var r=n("cDf5");function o(){if("function"!=typeof WeakMap)return null;var t=new WeakMap;return o=function(){return t},t}t.exports=function(t){if(t&&t.__esModule)return t;if(null===t||"object"!==r(t)&&"function"!=typeof t)return{default:t};var e=o();if(e&&e.has(t))return e.get(t);var n={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in t)if(Object.prototype.hasOwnProperty.call(t,i)){var u=a?Object.getOwnPropertyDescriptor(t,i):null;u&&(u.get||u.set)?Object.defineProperty(n,i,u):n[i]=t[i]}return n.default=t,e&&e.set(t,n),n}},"30RF":function(t,e,n){"use strict";n.d(e,"d",(function(){return l})),n.d(e,"a",(function(){return p})),n.d(e,"c",(function(){return f})),n.d(e,"b",(function(){return h}));var r=n("LYrO"),o=n("cSJ8"),a=function(t){return void 0===t?t:"/"===t?"/":"/"===t.charAt(t.length-1)?t.slice(0,-1):t},i=new Map,u=[],c=function(t){var e=decodeURIComponent(t);return Object(o.a)(e,"/jkube").split("#")[0].split("?")[0]};function s(t){return t.startsWith("/")||t.startsWith("https://")||t.startsWith("http://")?t:new URL(t,window.location.href+(window.location.href.endsWith("/")?"":"/")).pathname}var l=function(t){u=t},p=function(t){var e=d(t),n=u.map((function(t){var e=t.path;return{path:t.matchPath,originalPath:e}})),o=Object(r.pick)(n,e);return o?a(o.route.originalPath):null},f=function(t){var e=d(t),n=u.map((function(t){var e=t.path;return{path:t.matchPath,originalPath:e}})),o=Object(r.pick)(n,e);return o?o.params:{}},h=function(t){var e=c(s(t));if(i.has(e))return i.get(e);var n=p(e);return n||(n=d(t)),i.set(e,n),n},d=function(t){var e=c(s(t));return"/index.html"===e&&(e="/"),e=a(e)}},"34EK":function(t,e){var n={}.hasOwnProperty;t.exports=function(t,e){return n.call(t,e)}},"3uz+":function(t,e,n){"use strict";e.__esModule=!0,e.useScrollRestoration=function(t){var e=(0,a.useLocation)(),n=(0,o.useContext)(r.ScrollContext),i=(0,o.useRef)();return(0,o.useLayoutEffect)((function(){if(i.current){var r=n.read(e,t);i.current.scrollTo(0,r||0)}}),[]),{ref:i,onScroll:function(){i.current&&n.save(e,t,i.current.scrollTop)}}};var r=n("Enzk"),o=n("q1tI"),a=n("YwZP")},"46f4":function(t,e){t.exports=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}}},"4jnk":function(t,e){t.exports=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t}},"5yr3":function(t,e,n){"use strict";var r=function(t){return t=t||Object.create(null),{on:function(e,n){(t[e]||(t[e]=[])).push(n)},off:function(e,n){t[e]&&t[e].splice(t[e].indexOf(n)>>>0,1)},emit:function(e,n){(t[e]||[]).slice().map((function(t){t(n)})),(t["*"]||[]).slice().map((function(t){t(e,n)}))}}}();e.a=r},"6Zah":function(t,e,n){"use strict";var r={}.propertyIsEnumerable,o=Object.getOwnPropertyDescriptor,a=o&&!r.call({1:2},1);e.f=a?function(t){var e=o(this,t);return!!e&&e.enumerable}:r},"6cYJ":function(t,e,n){var r=n("34EK"),o=n("SWhb"),a=n("GoW4"),i=n("jekk");t.exports=function(t,e){for(var n=o(e),u=i.f,c=a.f,s=0;s<n.length;s++){var l=n[s];r(t,l)||u(t,l,c(e,l))}}},"7hJ6":function(t,e,n){"use strict";e.__esModule=!0,e.useScrollRestoration=e.ScrollContainer=e.ScrollContext=void 0;var r=n("Enzk");e.ScrollContext=r.ScrollHandler;var o=n("hd9s");e.ScrollContainer=o.ScrollContainer;var a=n("3uz+");e.useScrollRestoration=a.useScrollRestoration},"8OQS":function(t,e){t.exports=function(t,e){if(null==t)return{};var n,r,o={},a=Object.keys(t);for(r=0;r<a.length;r++)n=a[r],e.indexOf(n)>=0||(o[n]=t[n]);return o}},"8deY":function(t,e,n){var r=n("lSYd"),o=n("ij4R");(t.exports=function(t,e){return o[t]||(o[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.8.2",mode:r?"pure":"global",copyright:"© 2021 Denis Pushkarev (zloirock.ru)"})},"8mzz":function(t,e,n){var r=n("JhOX"),o=n("bmrq"),a="".split;t.exports=r((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==o(t)?a.call(t,""):Object(t)}:Object},"94VI":function(t,e){e.polyfill=function(t){return t}},"9Xx/":function(t,e,n){"use strict";n.d(e,"c",(function(){return c})),n.d(e,"d",(function(){return s})),n.d(e,"a",(function(){return a})),n.d(e,"b",(function(){return i}));var r=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},o=function(t){var e=t.location,n=e.search,r=e.hash,o=e.href,a=e.origin,i=e.protocol,c=e.host,s=e.hostname,l=e.port,p=t.location.pathname;!p&&o&&u&&(p=new URL(o).pathname);return{pathname:encodeURI(decodeURI(p)),search:n,hash:r,href:o,origin:a,protocol:i,host:c,hostname:s,port:l,state:t.history.state,key:t.history.state&&t.history.state.key||"initial"}},a=function(t,e){var n=[],a=o(t),i=!1,u=function(){};return{get location(){return a},get transitioning(){return i},_onTransitionComplete:function(){i=!1,u()},listen:function(e){n.push(e);var r=function(){a=o(t),e({location:a,action:"POP"})};return t.addEventListener("popstate",r),function(){t.removeEventListener("popstate",r),n=n.filter((function(t){return t!==e}))}},navigate:function(e){var c=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},s=c.state,l=c.replace,p=void 0!==l&&l;if("number"==typeof e)t.history.go(e);else{s=r({},s,{key:Date.now()+""});try{i||p?t.history.replaceState(s,null,e):t.history.pushState(s,null,e)}catch(h){t.location[p?"replace":"assign"](e)}}a=o(t),i=!0;var f=new Promise((function(t){return u=t}));return n.forEach((function(t){return t({location:a,action:"PUSH"})})),f}}},i=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/",e=t.indexOf("?"),n={pathname:e>-1?t.substr(0,e):t,search:e>-1?t.substr(e):""},r=0,o=[n],a=[null];return{get location(){return o[r]},addEventListener:function(t,e){},removeEventListener:function(t,e){},history:{get entries(){return o},get index(){return r},get state(){return a[r]},pushState:function(t,e,n){var i=n.split("?"),u=i[0],c=i[1],s=void 0===c?"":c;r++,o.push({pathname:u,search:s.length?"?"+s:s}),a.push(t)},replaceState:function(t,e,n){var i=n.split("?"),u=i[0],c=i[1],s=void 0===c?"":c;o[r]={pathname:u,search:s},a[r]=t},go:function(t){var e=r+t;e<0||e>a.length-1||(r=e)}}}},u=!("undefined"==typeof window||!window.document||!window.document.createElement),c=a(u?window:i()),s=c.navigate},"9h/2":function(t,e,n){var r,o,a=n("REpN"),i=n("1uEE"),u=a.process,c=u&&u.versions,s=c&&c.v8;s?o=(r=s.split("."))[0]+r[1]:i&&(!(r=i.match(/Edge\/(\d+)/))||r[1]>=74)&&(r=i.match(/Chrome\/(\d+)/))&&(o=r[1]),t.exports=o&&+o},Bgjm:function(t,e,n){var r=n("IvzW"),o=n("jekk"),a=n("46f4");t.exports=r?function(t,e,n){return o.f(t,e,a(1,n))}:function(t,e,n){return t[e]=n,t}},C2zU:function(t,e,n){var r=n("REpN"),o=n("ckLD"),a=r.document,i=o(a)&&o(a.createElement);t.exports=function(t){return i?a.createElement(t):{}}},CiUx:function(t,e,n){var r=n("bmrq"),o=n("REpN");t.exports="process"==r(o.process)},E9J1:function(t,e,n){var r,o,a,i=n("/TCF"),u=n("REpN"),c=n("ckLD"),s=n("Bgjm"),l=n("34EK"),p=n("ij4R"),f=n("uFM1"),h=n("HIFH"),d=u.WeakMap;if(i){var v=p.state||(p.state=new d),m=v.get,g=v.has,y=v.set;r=function(t,e){return e.facade=t,y.call(v,t,e),e},o=function(t){return m.call(v,t)||{}},a=function(t){return g.call(v,t)}}else{var b=f("state");h[b]=!0,r=function(t,e){return e.facade=t,s(t,b,e),e},o=function(t){return l(t,b)?t[b]:{}},a=function(t){return l(t,b)}}t.exports={set:r,get:o,has:a,enforce:function(t){return a(t)?o(t):r(t,{})},getterFor:function(t){return function(e){var n;if(!c(e)||(n=o(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return n}}}},Enzk:function(t,e,n){"use strict";var r=n("284h"),o=n("TqRt");e.__esModule=!0,e.ScrollHandler=e.ScrollContext=void 0;var a=o(n("PJYZ")),i=o(n("VbXa")),u=r(n("q1tI")),c=o(n("17x9")),s=n("/hTd"),l=u.createContext(new s.SessionStorage);e.ScrollContext=l,l.displayName="GatsbyScrollContext";var p=function(t){function e(){for(var e,n=arguments.length,r=new Array(n),o=0;o<n;o++)r[o]=arguments[o];return(e=t.call.apply(t,[this].concat(r))||this)._stateStorage=new s.SessionStorage,e.scrollListener=function(){var t=e.props.location.key;t&&e._stateStorage.save(e.props.location,t,window.scrollY)},e.windowScroll=function(t,n){e.shouldUpdateScroll(n,e.props)&&window.scrollTo(0,t)},e.scrollToHash=function(t,n){var r=document.getElementById(t.substring(1));r&&e.shouldUpdateScroll(n,e.props)&&r.scrollIntoView()},e.shouldUpdateScroll=function(t,n){var r=e.props.shouldUpdateScroll;return!r||r.call((0,a.default)(e),t,n)},e}(0,i.default)(e,t);var n=e.prototype;return n.componentDidMount=function(){var t;window.addEventListener("scroll",this.scrollListener);var e=this.props.location,n=e.key,r=e.hash;n&&(t=this._stateStorage.read(this.props.location,n)),t?this.windowScroll(t,void 0):r&&this.scrollToHash(decodeURI(r),void 0)},n.componentWillUnmount=function(){window.removeEventListener("scroll",this.scrollListener)},n.componentDidUpdate=function(t){var e,n=this.props.location,r=n.hash,o=n.key;o&&(e=this._stateStorage.read(this.props.location,o)),r?this.scrollToHash(decodeURI(r),t):this.windowScroll(e,t)},n.render=function(){return u.createElement(l.Provider,{value:this._stateStorage},this.props.children)},e}(u.Component);e.ScrollHandler=p,p.propTypes={shouldUpdateScroll:c.default.func,children:c.default.element.isRequired,location:c.default.object.isRequired}},F8ZZ:function(t,e){var n=0,r=Math.random();t.exports=function(t){return"Symbol("+String(void 0===t?"":t)+")_"+(++n+r).toString(36)}},FlY1:function(t,e){t.exports=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"]},GoW4:function(t,e,n){var r=n("IvzW"),o=n("6Zah"),a=n("46f4"),i=n("a0vn"),u=n("PK3T"),c=n("34EK"),s=n("STyW"),l=Object.getOwnPropertyDescriptor;e.f=r?l:function(t,e){if(t=i(t),e=u(e,!0),s)try{return l(t,e)}catch(n){}if(c(t,e))return a(!o.f.call(t,e),t[e])}},HIFH:function(t,e){t.exports={}},IOVJ:function(t,e,n){"use strict";var r=n("dI71"),o=n("q1tI"),a=n.n(o),i=n("emEt"),u=n("xtsi"),c=n("30RF"),s=function(t){function e(){return t.apply(this,arguments)||this}return Object(r.a)(e,t),e.prototype.render=function(){var t=Object.assign({},this.props,{params:Object.assign({},Object(c.c)(this.props.location.pathname),this.props.pageResources.json.pageContext.__params),pathContext:this.props.pageContext}),e=Object(u.apiRunner)("replaceComponentRenderer",{props:this.props,loader:i.publicLoader})[0]||Object(o.createElement)(this.props.pageResources.component,Object.assign({},t,{key:this.props.path||this.props.pageResources.page.path}));return Object(u.apiRunner)("wrapPageElement",{element:e,props:t},e,(function(e){return{element:e.result,props:t}})).pop()},e}(a.a.Component);e.a=s},IvzW:function(t,e,n){var r=n("JhOX");t.exports=!r((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}))},JeVI:function(t){t.exports=JSON.parse("[]")},JhOX:function(t,e){t.exports=function(t){try{return!!t()}catch(e){return!0}}},LYrO:function(t,e,n){"use strict";n.r(e),n.d(e,"startsWith",(function(){return a})),n.d(e,"pick",(function(){return i})),n.d(e,"match",(function(){return u})),n.d(e,"resolve",(function(){return c})),n.d(e,"insertParams",(function(){return s})),n.d(e,"validateRedirect",(function(){return l})),n.d(e,"shallowCompare",(function(){return b}));var r=n("QLaP"),o=n.n(r),a=function(t,e){return t.substr(0,e.length)===e},i=function(t,e){for(var n=void 0,r=void 0,a=e.split("?")[0],i=m(a),u=""===i[0],c=v(t),s=0,l=c.length;s<l;s++){var f=!1,d=c[s].route;if(d.default)r={route:d,params:{},uri:e};else{for(var g=m(d.path),b={},w=Math.max(i.length,g.length),R=0;R<w;R++){var P=g[R],O=i[R];if(h(P)){b[P.slice(1)||"*"]=i.slice(R).map(decodeURIComponent).join("/");break}if(void 0===O){f=!0;break}var j=p.exec(P);if(j&&!u){-1===y.indexOf(j[1])||o()(!1);var S=decodeURIComponent(O);b[j[1]]=S}else if(P!==O){f=!0;break}}if(!f){n={route:d,params:b,uri:"/"+i.slice(0,R).join("/")};break}}}return n||r||null},u=function(t,e){return i([{path:t}],e)},c=function(t,e){if(a(t,"/"))return t;var n=t.split("?"),r=n[0],o=n[1],i=e.split("?")[0],u=m(r),c=m(i);if(""===u[0])return g(i,o);if(!a(u[0],".")){var s=c.concat(u).join("/");return g(("/"===i?"":"/")+s,o)}for(var l=c.concat(u),p=[],f=0,h=l.length;f<h;f++){var d=l[f];".."===d?p.pop():"."!==d&&p.push(d)}return g("/"+p.join("/"),o)},s=function(t,e){var n=t.split("?"),r=n[0],o=n[1],a=void 0===o?"":o,i="/"+m(r).map((function(t){var n=p.exec(t);return n?e[n[1]]:t})).join("/"),u=e.location,c=(u=void 0===u?{}:u).search,s=(void 0===c?"":c).split("?")[1]||"";return i=g(i,a,s)},l=function(t,e){var n=function(t){return f(t)};return m(t).filter(n).sort().join("/")===m(e).filter(n).sort().join("/")},p=/^:(.+)/,f=function(t){return p.test(t)},h=function(t){return t&&"*"===t[0]},d=function(t,e){return{route:t,score:t.default?0:m(t.path).reduce((function(t,e){return t+=4,!function(t){return""===t}(e)?f(e)?t+=2:h(e)?t-=5:t+=3:t+=1,t}),0),index:e}},v=function(t){return t.map(d).sort((function(t,e){return t.score<e.score?1:t.score>e.score?-1:t.index-e.index}))},m=function(t){return t.replace(/(^\/+|\/+$)/g,"").split("/")},g=function(t){for(var e=arguments.length,n=Array(e>1?e-1:0),r=1;r<e;r++)n[r-1]=arguments[r];return t+((n=n.filter((function(t){return t&&t.length>0})))&&n.length>0?"?"+n.join("&"):"")},y=["uri","path"],b=function(t,e){var n=Object.keys(t);return n.length===Object.keys(e).length&&n.every((function(n){return e.hasOwnProperty(n)&&t[n]===e[n]}))}},LeKB:function(t,e,n){t.exports=[{plugin:n("hUyl"),options:{plugins:[],offsetY:0,className:"anchor"}}]},LlHf:function(t,e,n){var r=n("a0vn"),o=n("WD+B"),a=n("0dIN"),i=function(t){return function(e,n,i){var u,c=r(e),s=o(c.length),l=a(i,s);if(t&&n!=n){for(;s>l;)if((u=c[l++])!=u)return!0}else for(;s>l;l++)if((t||l in c)&&c[l]===n)return t||l||0;return!t&&-1}};t.exports={includes:i(!0),indexOf:i(!1)}},MMVs:function(t,e,n){t.exports=function(){var t=!1;-1!==navigator.appVersion.indexOf("MSIE 10")&&(t=!0);var e,n=[],r="object"==typeof document&&document,o=t?r.documentElement.doScroll("left"):r.documentElement.doScroll,a=r&&(o?/^loaded|^c/:/^loaded|^i|^c/).test(r.readyState);return!a&&r&&r.addEventListener("DOMContentLoaded",e=function(){for(r.removeEventListener("DOMContentLoaded",e),a=1;e=n.shift();)e()}),function(t){a?setTimeout(t,0):n.push(t)}}()},NSX3:function(t,e,n){"use strict";n.r(e);var r=n("xtsi");"https:"!==window.location.protocol&&"localhost"!==window.location.hostname?console.error("Service workers can only be used over HTTPS, or on localhost for development"):"serviceWorker"in navigator&&navigator.serviceWorker.register("/jkube/sw.js").then((function(t){t.addEventListener("updatefound",(function(){Object(r.apiRunner)("onServiceWorkerUpdateFound",{serviceWorker:t});var e=t.installing;console.log("installingWorker",e),e.addEventListener("statechange",(function(){switch(e.state){case"installed":navigator.serviceWorker.controller?(window.___swUpdated=!0,Object(r.apiRunner)("onServiceWorkerUpdateReady",{serviceWorker:t}),window.___failedResources&&(console.log("resources failed, SW updated - reloading"),window.location.reload())):(console.log("Content is now available offline!"),Object(r.apiRunner)("onServiceWorkerInstalled",{serviceWorker:t}));break;case"redundant":console.error("The installing service worker became redundant."),Object(r.apiRunner)("onServiceWorkerRedundant",{serviceWorker:t});break;case"activated":Object(r.apiRunner)("onServiceWorkerActive",{serviceWorker:t})}}))}))})).catch((function(t){console.error("Error during service worker registration:",t)}))},NsGk:function(t,e,n){e.components={"component---src-pages-quickstarts-index-jsx":function(){return Promise.all([n.e(1),n.e(0),n.e(4)]).then(n.bind(null,"qG+M"))},"component---src-templates-doc-jsx":function(){return Promise.all([n.e(1),n.e(0),n.e(5)]).then(n.bind(null,"DjDE"))},"component---src-templates-main-jsx":function(){return Promise.all([n.e(1),n.e(0),n.e(6)]).then(n.bind(null,"2ggT"))}}},PJYZ:function(t,e){t.exports=function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}},PK3T:function(t,e,n){var r=n("ckLD");t.exports=function(t,e){if(!r(t))return t;var n,o;if(e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;if("function"==typeof(n=t.valueOf)&&!r(o=n.call(t)))return o;if(!e&&"function"==typeof(n=t.toString)&&!r(o=n.call(t)))return o;throw TypeError("Can't convert object to primitive value")}},QLaP:function(t,e,n){"use strict";t.exports=function(t,e,n,r,o,a,i,u){if(!t){var c;if(void 0===e)c=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var s=[n,r,o,a,i,u],l=0;(c=new Error(e.replace(/%s/g,(function(){return s[l++]})))).name="Invariant Violation"}throw c.framesToPop=1,c}}},QU3x:function(t,e,n){var r=n("34EK"),o=n("a0vn"),a=n("LlHf").indexOf,i=n("HIFH");t.exports=function(t,e){var n,u=o(t),c=0,s=[];for(n in u)!r(i,n)&&r(u,n)&&s.push(n);for(;e.length>c;)r(u,n=e[c++])&&(~a(s,n)||s.push(n));return s}},RBcg:function(t,e,n){"use strict";var r=n("JhOX");t.exports=function(t,e){var n=[][t];return!!n&&r((function(){n.call(null,e||function(){throw 1},1)}))}},REpN:function(t,e,n){(function(e){var n=function(t){return t&&t.Math==Math&&t};t.exports=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof e&&e)||function(){return this}()||Function("return this")()}).call(this,n("yLpj"))},RUBk:function(t,e,n){"use strict";var r=n("ZS3K"),o=n("pAzz").left,a=n("RBcg"),i=n("xvWs"),u=n("9h/2"),c=n("CiUx"),s=a("reduce"),l=i("reduce",{1:0});r({target:"Array",proto:!0,forced:!s||!l||!c&&u>79&&u<83},{reduce:function(t){return o(this,t,arguments.length,arguments.length>1?arguments[1]:void 0)}})},STyW:function(t,e,n){var r=n("IvzW"),o=n("JhOX"),a=n("C2zU");t.exports=!r&&!o((function(){return 7!=Object.defineProperty(a("div"),"a",{get:function(){return 7}}).a}))},SWhb:function(t,e,n){var r=n("jdR/"),o=n("zpoX"),a=n("imag"),i=n("m/aQ");t.exports=r("Reflect","ownKeys")||function(t){var e=o.f(i(t)),n=a.f;return n?e.concat(n(t)):e}},TqRt:function(t,e){t.exports=function(t){return t&&t.__esModule?t:{default:t}}},UxWs:function(t,e,n){"use strict";n.r(e);var r=n("dI71"),o=n("xtsi"),a=n("q1tI"),i=n.n(a),u=n("i8i4"),c=n.n(u),s=n("YwZP"),l=n("7hJ6"),p=n("MMVs"),f=n.n(p),h=n("Wbzz"),d=(n("RUBk"),n("emEt")),v=n("YLt+"),m=n("5yr3"),g={id:"gatsby-announcer",style:{position:"absolute",top:0,width:1,height:1,padding:0,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",border:0},"aria-live":"assertive","aria-atomic":"true"},y=n("9Xx/"),b=n("+ZDr"),w=v.reduce((function(t,e){return t[e.fromPath]=e,t}),{});function R(t){var e=w[t];return null!=e&&(window.___replace(e.toPath),!0)}var P=function(t,e){R(t.pathname)||Object(o.apiRunner)("onPreRouteUpdate",{location:t,prevLocation:e})},O=function(t,e){R(t.pathname)||Object(o.apiRunner)("onRouteUpdate",{location:t,prevLocation:e})},j=function(t,e){if(void 0===e&&(e={}),"number"!=typeof t){var n=Object(b.parsePath)(t).pathname,r=w[n];if(r&&(t=r.toPath,n=Object(b.parsePath)(t).pathname),window.___swUpdated)window.location=n;else{var a=setTimeout((function(){m.a.emit("onDelayedLoadPageResources",{pathname:n}),Object(o.apiRunner)("onRouteUpdateDelayed",{location:window.location})}),1e3);d.default.loadPage(n).then((function(r){if(!r||r.status===d.PageResourceStatus.Error)return window.history.replaceState({},"",location.href),window.location=n,void clearTimeout(a);r&&r.page.webpackCompilationHash!==window.___webpackCompilationHash&&("serviceWorker"in navigator&&null!==navigator.serviceWorker.controller&&"activated"===navigator.serviceWorker.controller.state&&navigator.serviceWorker.controller.postMessage({gatsbyApi:"clearPathResources"}),window.location=n),Object(s.navigate)(t,e),clearTimeout(a)}))}}else y.c.navigate(t)};function S(t,e){var n=this,r=e.location,a=r.pathname,i=r.hash,u=Object(o.apiRunner)("shouldUpdateScroll",{prevRouterProps:t,pathname:a,routerProps:{location:r},getSavedScrollPosition:function(t){return[0,n._stateStorage.read(t,t.key)]}});if(u.length>0)return u[u.length-1];if(t&&t.location.pathname===a)return i?decodeURI(i.slice(1)):[0,0];return!0}var E=function(t){function e(e){var n;return(n=t.call(this,e)||this).announcementRef=i.a.createRef(),n}Object(r.a)(e,t);var n=e.prototype;return n.componentDidUpdate=function(t,e){var n=this;requestAnimationFrame((function(){var t="new page at "+n.props.location.pathname;document.title&&(t=document.title);var e=document.querySelectorAll("#gatsby-focus-wrapper h1");e&&e.length&&(t=e[0].textContent);var r="Navigated to "+t;n.announcementRef.current&&(n.announcementRef.current.innerText!==r&&(n.announcementRef.current.innerText=r))}))},n.render=function(){return i.a.createElement("div",Object.assign({},g,{ref:this.announcementRef}))},e}(i.a.Component),x=function(t,e){var n,r;return t.href!==e.href||(null==t||null===(n=t.state)||void 0===n?void 0:n.key)!==(null==e||null===(r=e.state)||void 0===r?void 0:r.key)},_=function(t){function e(e){var n;return n=t.call(this,e)||this,P(e.location,null),n}Object(r.a)(e,t);var n=e.prototype;return n.componentDidMount=function(){O(this.props.location,null)},n.shouldComponentUpdate=function(t){return!!x(t.location,this.props.location)&&(P(this.props.location,t.location),!0)},n.componentDidUpdate=function(t){x(t.location,this.props.location)&&O(this.props.location,t.location)},n.render=function(){return i.a.createElement(i.a.Fragment,null,this.props.children,i.a.createElement(E,{location:location}))},e}(i.a.Component),C=n("IOVJ"),k=n("NsGk"),L=n.n(k);function T(t,e){for(var n in t)if(!(n in e))return!0;for(var r in e)if(t[r]!==e[r])return!0;return!1}var D=function(t){function e(e){var n;n=t.call(this)||this;var r=e.location,o=e.pageResources;return n.state={location:Object.assign({},r),pageResources:o||d.default.loadPageSync(r.pathname)},n}Object(r.a)(e,t),e.getDerivedStateFromProps=function(t,e){var n=t.location;return e.location.href!==n.href?{pageResources:d.default.loadPageSync(n.pathname),location:Object.assign({},n)}:{location:Object.assign({},n)}};var n=e.prototype;return n.loadResources=function(t){var e=this;d.default.loadPage(t).then((function(n){n&&n.status!==d.PageResourceStatus.Error?e.setState({location:Object.assign({},window.location),pageResources:n}):(window.history.replaceState({},"",location.href),window.location=t)}))},n.shouldComponentUpdate=function(t,e){return e.pageResources?this.state.pageResources!==e.pageResources||(this.state.pageResources.component!==e.pageResources.component||(this.state.pageResources.json!==e.pageResources.json||(!(this.state.location.key===e.location.key||!e.pageResources.page||!e.pageResources.page.matchPath&&!e.pageResources.page.path)||function(t,e,n){return T(t.props,e)||T(t.state,n)}(this,t,e)))):(this.loadResources(t.location.pathname),!1)},n.render=function(){return this.props.children(this.state)},e}(i.a.Component),F=n("cSJ8"),I=n("JeVI"),U=new d.ProdLoader(L.a,I);Object(d.setLoader)(U),U.setApiRunner(o.apiRunner),window.asyncRequires=L.a,window.___emitter=m.a,window.___loader=d.publicLoader,y.c.listen((function(t){t.location.action=t.action})),window.___push=function(t){return j(t,{replace:!1})},window.___replace=function(t){return j(t,{replace:!0})},window.___navigate=function(t,e){return j(t,e)},R(window.location.pathname),Object(o.apiRunnerAsync)("onClientEntry").then((function(){Object(o.apiRunner)("registerServiceWorker").length>0&&n("NSX3");var t=function(t){return i.a.createElement(s.BaseContext.Provider,{value:{baseuri:"/",basepath:"/"}},i.a.createElement(C.a,t))},e=i.a.createContext({}),a=function(t){function n(){return t.apply(this,arguments)||this}return Object(r.a)(n,t),n.prototype.render=function(){var t=this.props.children;return i.a.createElement(s.Location,null,(function(n){var r=n.location;return i.a.createElement(D,{location:r},(function(n){var r=n.pageResources,o=n.location,a=Object(d.getStaticQueryResults)();return i.a.createElement(h.b.Provider,{value:a},i.a.createElement(e.Provider,{value:{pageResources:r,location:o}},t))}))}))},n}(i.a.Component),u=function(n){function o(){return n.apply(this,arguments)||this}return Object(r.a)(o,n),o.prototype.render=function(){var n=this;return i.a.createElement(e.Consumer,null,(function(e){var r=e.pageResources,o=e.location;return i.a.createElement(_,{location:o},i.a.createElement(l.ScrollContext,{location:o,shouldUpdateScroll:S},i.a.createElement(s.Router,{basepath:"/jkube",location:o,id:"gatsby-focus-wrapper"},i.a.createElement(t,Object.assign({path:"/404.html"===r.page.path?Object(F.a)(o.pathname,"/jkube"):encodeURI(r.page.matchPath||r.page.path)},n.props,{location:o,pageResources:r},r.json)))))}))},o}(i.a.Component),p=window,v=p.pagePath,m=p.location;v&&"/jkube"+v!==m.pathname&&!(U.findMatchPath(Object(F.a)(m.pathname,"/jkube"))||"/404.html"===v||v.match(/^\/404\/?$/)||v.match(/^\/offline-plugin-app-shell-fallback\/?$/))&&Object(s.navigate)("/jkube"+v+m.search+m.hash,{replace:!0}),d.publicLoader.loadPage(m.pathname).then((function(t){if(!t||t.status===d.PageResourceStatus.Error)throw new Error("page resources for "+m.pathname+" not found. Not rendering React");window.___webpackCompilationHash=t.page.webpackCompilationHash;var e=Object(o.apiRunner)("wrapRootElement",{element:i.a.createElement(u,null)},i.a.createElement(u,null),(function(t){return{element:t.result}})).pop(),n=function(){return i.a.createElement(a,null,e)},r=Object(o.apiRunner)("replaceHydrateFunction",void 0,c.a.hydrate)[0];f()((function(){r(i.a.createElement(n,null),"undefined"!=typeof window?document.getElementById("___gatsby"):void 0,(function(){Object(o.apiRunner)("onInitialClientRender")}))}))}))}))},VbXa:function(t,e){t.exports=function(t,e){t.prototype=Object.create(e.prototype),t.prototype.constructor=t,t.__proto__=e}},"WD+B":function(t,e,n){var r=n("gQbX"),o=Math.min;t.exports=function(t){return t>0?o(r(t),9007199254740991):0}},Wbzz:function(t,e,n){"use strict";n.d(e,"b",(function(){return u}));var r=n("q1tI"),o=n.n(r),a=n("+ZDr"),i=n.n(a);n.d(e,"a",(function(){return i.a}));n("7hJ6"),n("lw3w"),n("emEt").default.enqueue;var u=o.a.createContext({})},"YLt+":function(t){t.exports=JSON.parse("[]")},YVoz:function(t,e,n){"use strict";t.exports=Object.assign},YwZP:function(t,e,n){"use strict";n.r(e),n.d(e,"Link",(function(){return T})),n.d(e,"Location",(function(){return b})),n.d(e,"LocationProvider",(function(){return w})),n.d(e,"Match",(function(){return M})),n.d(e,"Redirect",(function(){return W})),n.d(e,"Router",(function(){return O})),n.d(e,"ServerLocation",(function(){return R})),n.d(e,"isRedirect",(function(){return F})),n.d(e,"redirectTo",(function(){return I})),n.d(e,"useLocation",(function(){return N})),n.d(e,"useNavigate",(function(){return A})),n.d(e,"useParams",(function(){return q})),n.d(e,"useMatch",(function(){return J})),n.d(e,"BaseContext",(function(){return P}));var r=n("q1tI"),o=n.n(r),a=(n("17x9"),n("QLaP")),i=n.n(a),u=n("nqlD"),c=n.n(u),s=n("94VI"),l=n("LYrO");n.d(e,"matchPath",(function(){return l.match}));var p=n("9Xx/");n.d(e,"createHistory",(function(){return p.a})),n.d(e,"createMemorySource",(function(){return p.b})),n.d(e,"navigate",(function(){return p.d})),n.d(e,"globalHistory",(function(){return p.c}));var f=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t};function h(t,e){var n={};for(var r in t)e.indexOf(r)>=0||Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r]);return n}function d(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function v(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function m(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}var g=function(t,e){var n=c()(e);return n.displayName=t,n},y=g("Location"),b=function(t){var e=t.children;return o.a.createElement(y.Consumer,null,(function(t){return t?e(t):o.a.createElement(w,null,e)}))},w=function(t){function e(){var n,r;d(this,e);for(var o=arguments.length,a=Array(o),i=0;i<o;i++)a[i]=arguments[i];return n=r=v(this,t.call.apply(t,[this].concat(a))),r.state={context:r.getContext(),refs:{unlisten:null}},v(r,n)}return m(e,t),e.prototype.getContext=function(){var t=this.props.history;return{navigate:t.navigate,location:t.location}},e.prototype.componentDidCatch=function(t,e){if(!F(t))throw t;(0,this.props.history.navigate)(t.uri,{replace:!0})},e.prototype.componentDidUpdate=function(t,e){e.context.location!==this.state.context.location&&this.props.history._onTransitionComplete()},e.prototype.componentDidMount=function(){var t=this,e=this.state.refs,n=this.props.history;n._onTransitionComplete(),e.unlisten=n.listen((function(){Promise.resolve().then((function(){requestAnimationFrame((function(){t.unmounted||t.setState((function(){return{context:t.getContext()}}))}))}))}))},e.prototype.componentWillUnmount=function(){var t=this.state.refs;this.unmounted=!0,t.unlisten()},e.prototype.render=function(){var t=this.state.context,e=this.props.children;return o.a.createElement(y.Provider,{value:t},"function"==typeof e?e(t):e||null)},e}(o.a.Component);w.defaultProps={history:p.c};var R=function(t){var e=t.url,n=t.children,r=e.indexOf("?"),a=void 0,i="";return r>-1?(a=e.substring(0,r),i=e.substring(r)):a=e,o.a.createElement(y.Provider,{value:{location:{pathname:a,search:i,hash:""},navigate:function(){throw new Error("You can't call navigate on the server.")}}},n)},P=g("Base",{baseuri:"/",basepath:"/"}),O=function(t){return o.a.createElement(P.Consumer,null,(function(e){return o.a.createElement(b,null,(function(n){return o.a.createElement(j,f({},e,n,t))}))}))},j=function(t){function e(){return d(this,e),v(this,t.apply(this,arguments))}return m(e,t),e.prototype.render=function(){var t=this.props,e=t.location,n=t.navigate,r=t.basepath,a=t.primary,i=t.children,u=(t.baseuri,t.component),c=void 0===u?"div":u,s=h(t,["location","navigate","basepath","primary","children","baseuri","component"]),p=o.a.Children.toArray(i).reduce((function(t,e){var n=H(r)(e);return t.concat(n)}),[]),d=e.pathname,v=Object(l.pick)(p,d);if(v){var m=v.params,g=v.uri,y=v.route,b=v.route.value;r=y.default?r:y.path.replace(/\*$/,"");var w=f({},m,{uri:g,location:e,navigate:function(t,e){return n(Object(l.resolve)(t,g),e)}}),R=o.a.cloneElement(b,w,b.props.children?o.a.createElement(O,{location:e,primary:a},b.props.children):void 0),j=a?E:c,S=a?f({uri:g,location:e,component:c},s):s;return o.a.createElement(P.Provider,{value:{baseuri:g,basepath:r}},o.a.createElement(j,S,R))}return null},e}(o.a.PureComponent);j.defaultProps={primary:!0};var S=g("Focus"),E=function(t){var e=t.uri,n=t.location,r=t.component,a=h(t,["uri","location","component"]);return o.a.createElement(S.Consumer,null,(function(t){return o.a.createElement(C,f({},a,{component:r,requestFocus:t,uri:e,location:n}))}))},x=!0,_=0,C=function(t){function e(){var n,r;d(this,e);for(var o=arguments.length,a=Array(o),i=0;i<o;i++)a[i]=arguments[i];return n=r=v(this,t.call.apply(t,[this].concat(a))),r.state={},r.requestFocus=function(t){!r.state.shouldFocus&&t&&t.focus()},v(r,n)}return m(e,t),e.getDerivedStateFromProps=function(t,e){if(null==e.uri)return f({shouldFocus:!0},t);var n=t.uri!==e.uri,r=e.location.pathname!==t.location.pathname&&t.location.pathname===t.uri;return f({shouldFocus:n||r},t)},e.prototype.componentDidMount=function(){_++,this.focus()},e.prototype.componentWillUnmount=function(){0===--_&&(x=!0)},e.prototype.componentDidUpdate=function(t,e){t.location!==this.props.location&&this.state.shouldFocus&&this.focus()},e.prototype.focus=function(){var t=this.props.requestFocus;t?t(this.node):x?x=!1:this.node&&(this.node.contains(document.activeElement)||this.node.focus())},e.prototype.render=function(){var t=this,e=this.props,n=(e.children,e.style),r=(e.requestFocus,e.component),a=void 0===r?"div":r,i=(e.uri,e.location,h(e,["children","style","requestFocus","component","uri","location"]));return o.a.createElement(a,f({style:f({outline:"none"},n),tabIndex:"-1",ref:function(e){return t.node=e}},i),o.a.createElement(S.Provider,{value:this.requestFocus},this.props.children))},e}(o.a.Component);Object(s.polyfill)(C);var k=function(){},L=o.a.forwardRef;void 0===L&&(L=function(t){return t});var T=L((function(t,e){var n=t.innerRef,r=h(t,["innerRef"]);return o.a.createElement(P.Consumer,null,(function(t){t.basepath;var a=t.baseuri;return o.a.createElement(b,null,(function(t){var i=t.location,u=t.navigate,c=r.to,s=r.state,p=r.replace,d=r.getProps,v=void 0===d?k:d,m=h(r,["to","state","replace","getProps"]),g=Object(l.resolve)(c,a),y=encodeURI(g),b=i.pathname===y,w=Object(l.startsWith)(i.pathname,y);return o.a.createElement("a",f({ref:e||n,"aria-current":b?"page":void 0},m,v({isCurrent:b,isPartiallyCurrent:w,href:g,location:i}),{href:g,onClick:function(t){if(m.onClick&&m.onClick(t),Y(t)){t.preventDefault();var e=p;if("boolean"!=typeof p&&b){var n=f({},i.state),r=(n.key,h(n,["key"]));e=Object(l.shallowCompare)(f({},s),r)}u(g,{state:s,replace:e})}}}))}))}))}));function D(t){this.uri=t}T.displayName="Link";var F=function(t){return t instanceof D},I=function(t){throw new D(t)},U=function(t){function e(){return d(this,e),v(this,t.apply(this,arguments))}return m(e,t),e.prototype.componentDidMount=function(){var t=this.props,e=t.navigate,n=t.to,r=(t.from,t.replace),o=void 0===r||r,a=t.state,i=(t.noThrow,t.baseuri),u=h(t,["navigate","to","from","replace","state","noThrow","baseuri"]);Promise.resolve().then((function(){var t=Object(l.resolve)(n,i);e(Object(l.insertParams)(t,u),{replace:o,state:a})}))},e.prototype.render=function(){var t=this.props,e=(t.navigate,t.to),n=(t.from,t.replace,t.state,t.noThrow),r=t.baseuri,o=h(t,["navigate","to","from","replace","state","noThrow","baseuri"]),a=Object(l.resolve)(e,r);return n||I(Object(l.insertParams)(a,o)),null},e}(o.a.Component),W=function(t){return o.a.createElement(P.Consumer,null,(function(e){var n=e.baseuri;return o.a.createElement(b,null,(function(e){return o.a.createElement(U,f({},e,{baseuri:n},t))}))}))},M=function(t){var e=t.path,n=t.children;return o.a.createElement(P.Consumer,null,(function(t){var r=t.baseuri;return o.a.createElement(b,null,(function(t){var o=t.navigate,a=t.location,i=Object(l.resolve)(e,r),u=Object(l.match)(i,a.pathname);return n({navigate:o,location:a,match:u?f({},u.params,{uri:u.uri,path:e}):null})}))}))},N=function(){var t=Object(r.useContext)(y);if(!t)throw new Error("useLocation hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router");return t.location},A=function(){var t=Object(r.useContext)(y);if(!t)throw new Error("useNavigate hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router");return t.navigate},q=function(){var t=Object(r.useContext)(P);if(!t)throw new Error("useParams hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router");var e=N(),n=Object(l.match)(t.basepath,e.pathname);return n?n.params:null},J=function(t){if(!t)throw new Error("useMatch(path: string) requires an argument of a string to match against");var e=Object(r.useContext)(P);if(!e)throw new Error("useMatch hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router");var n=N(),o=Object(l.resolve)(t,e.baseuri),a=Object(l.match)(o,n.pathname);return a?f({},a.params,{uri:a.uri,path:t}):null},z=function(t){return t.replace(/(^\/+|\/+$)/g,"")},H=function t(e){return function(n){if(!n)return null;if(n.type===o.a.Fragment&&n.props.children)return o.a.Children.map(n.props.children,t(e));if(n.props.path||n.props.default||n.type===W||i()(!1),n.type!==W||n.props.from&&n.props.to||i()(!1),n.type!==W||Object(l.validateRedirect)(n.props.from,n.props.to)||i()(!1),n.props.default)return{value:n,default:!0};var r=n.type===W?n.props.from:n.props.path,a="/"===r?e:z(e)+"/"+z(r);return{value:n,default:n.props.default,path:n.props.children?z(a)+"/*":a}}},Y=function(t){return!t.defaultPrevented&&0===t.button&&!(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)}},ZRnM:function(t,e,n){var r=n("JhOX"),o=/#|\.prototype\./,a=function(t,e){var n=u[i(t)];return n==s||n!=c&&("function"==typeof e?r(e):!!e)},i=a.normalize=function(t){return String(t).replace(o,".").toLowerCase()},u=a.data={},c=a.NATIVE="N",s=a.POLYFILL="P";t.exports=a},ZS3K:function(t,e,n){var r=n("REpN"),o=n("GoW4").f,a=n("Bgjm"),i=n("+7hJ"),u=n("i18P"),c=n("6cYJ"),s=n("ZRnM");t.exports=function(t,e){var n,l,p,f,h,d=t.target,v=t.global,m=t.stat;if(n=v?r:m?r[d]||u(d,{}):(r[d]||{}).prototype)for(l in e){if(f=e[l],p=t.noTargetGet?(h=o(n,l))&&h.value:n[l],!s(v?l:d+(m?".":"#")+l,t.forced)&&void 0!==p){if(typeof f==typeof p)continue;c(f,p)}(t.sham||p&&p.sham)&&a(f,"sham",!0),i(n,l,f,t)}}},a0vn:function(t,e,n){var r=n("8mzz"),o=n("4jnk");t.exports=function(t){return r(o(t))}},bmrq:function(t,e){var n={}.toString;t.exports=function(t){return n.call(t).slice(8,-1)}},cDf5:function(t,e){function n(e){return"function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?t.exports=n=function(t){return typeof t}:t.exports=n=function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},n(e)}t.exports=n},cSJ8:function(t,e,n){"use strict";function r(t,e){return void 0===e&&(e=""),e?t===e?"/":t.startsWith(e+"/")?t.slice(e.length):t:t}n.d(e,"a",(function(){return r}))},ckLD:function(t,e){t.exports=function(t){return"object"==typeof t?null!==t:"function"==typeof t}},cu4x:function(t,e,n){"use strict";e.__esModule=!0,e.parsePath=function(t){var e=t||"/",n="",r="",o=e.indexOf("#");-1!==o&&(r=e.substr(o),e=e.substr(0,o));var a=e.indexOf("?");-1!==a&&(n=e.substr(a),e=e.substr(0,a));return{pathname:e,search:"?"===n?"":n,hash:"#"===r?"":r}}},dI71:function(t,e,n){"use strict";function r(t,e){t.prototype=Object.create(e.prototype),t.prototype.constructor=t,t.__proto__=e}n.d(e,"a",(function(){return r}))},emEt:function(t,e,n){"use strict";n.r(e),n.d(e,"PageResourceStatus",(function(){return p})),n.d(e,"BaseLoader",(function(){return g})),n.d(e,"ProdLoader",(function(){return b})),n.d(e,"setLoader",(function(){return w})),n.d(e,"publicLoader",(function(){return R})),n.d(e,"getStaticQueryResults",(function(){return P}));var r=n("dI71");function o(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}function a(t){return function(t){if(Array.isArray(t))return o(t)}(t)||function(t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(t))return Array.from(t)}(t)||function(t,e){if(t){if("string"==typeof t)return o(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?o(t,e):void 0}}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}var i=function(t){if("undefined"==typeof document)return!1;var e=document.createElement("link");try{if(e.relList&&"function"==typeof e.relList.supports)return e.relList.supports(t)}catch(n){return!1}return!1}("prefetch")?function(t,e){return new Promise((function(n,r){if("undefined"!=typeof document){var o=document.createElement("link");o.setAttribute("rel","prefetch"),o.setAttribute("href",t),Object.keys(e).forEach((function(t){o.setAttribute(t,e[t])})),o.onload=n,o.onerror=r,(document.getElementsByTagName("head")[0]||document.getElementsByName("script")[0].parentNode).appendChild(o)}else r()}))}:function(t){return new Promise((function(e,n){var r=new XMLHttpRequest;r.open("GET",t,!0),r.onload=function(){200===r.status?e():n()},r.send(null)}))},u={},c=function(t,e){return new Promise((function(n){u[t]?n():i(t,e).then((function(){n(),u[t]=!0})).catch((function(){}))}))},s=n("5yr3"),l=n("30RF"),p={Error:"error",Success:"success"},f=function(t){return t&&t.default||t},h=function(t){var e;return"/jkube/page-data/"+("/"===t?"index":e=(e="/"===(e=t)[0]?e.slice(1):e).endsWith("/")?e.slice(0,-1):e)+"/page-data.json"};function d(t,e){return void 0===e&&(e="GET"),new Promise((function(n,r){var o=new XMLHttpRequest;o.open(e,t,!0),o.onreadystatechange=function(){4==o.readyState&&n(o)},o.send(null)}))}var v,m=function(t,e){void 0===e&&(e=null);var n={componentChunkName:t.componentChunkName,path:t.path,webpackCompilationHash:t.webpackCompilationHash,matchPath:t.matchPath,staticQueryHashes:t.staticQueryHashes};return{component:e,json:t.result,page:n}},g=function(){function t(t,e){this.inFlightNetworkRequests=new Map,this.pageDb=new Map,this.inFlightDb=new Map,this.staticQueryDb={},this.pageDataDb=new Map,this.prefetchTriggered=new Set,this.prefetchCompleted=new Set,this.loadComponent=t,Object(l.d)(e)}var e=t.prototype;return e.memoizedGet=function(t){var e=this,n=this.inFlightNetworkRequests.get(t);return n||(n=d(t,"GET"),this.inFlightNetworkRequests.set(t,n)),n.then((function(n){return e.inFlightNetworkRequests.delete(t),n})).catch((function(n){throw e.inFlightNetworkRequests.delete(t),n}))},e.setApiRunner=function(t){this.apiRunner=t,this.prefetchDisabled=t("disableCorePrefetching").some((function(t){return t}))},e.fetchPageDataJson=function(t){var e=this,n=t.pagePath,r=t.retries,o=void 0===r?0:r,a=h(n);return this.memoizedGet(a).then((function(r){var a=r.status,i=r.responseText;if(200===a)try{var u=JSON.parse(i);if(void 0===u.path)throw new Error("not a valid pageData response");return Object.assign(t,{status:p.Success,payload:u})}catch(c){}return 404===a||200===a?"/404.html"===n?Object.assign(t,{status:p.Error}):e.fetchPageDataJson(Object.assign(t,{pagePath:"/404.html",notFound:!0})):500===a?Object.assign(t,{status:p.Error}):o<3?e.fetchPageDataJson(Object.assign(t,{retries:o+1})):Object.assign(t,{status:p.Error})}))},e.loadPageDataJson=function(t){var e=this,n=Object(l.b)(t);if(this.pageDataDb.has(n)){var r=this.pageDataDb.get(n);return Promise.resolve(r)}return this.fetchPageDataJson({pagePath:n}).then((function(t){return e.pageDataDb.set(n,t),t}))},e.findMatchPath=function(t){return Object(l.a)(t)},e.loadPage=function(t){var e=this,n=Object(l.b)(t);if(this.pageDb.has(n)){var r=this.pageDb.get(n);return Promise.resolve(r.payload)}if(this.inFlightDb.has(n))return this.inFlightDb.get(n);var o=Promise.all([this.loadAppData(),this.loadPageDataJson(n)]).then((function(t){var r=t[1];if(r.status===p.Error)return{status:p.Error};var o=r.payload,a=o,i=a.componentChunkName,u=a.staticQueryHashes,c=void 0===u?[]:u,l={},f=e.loadComponent(i).then((function(e){var n;return l.createdAt=new Date,e?(l.status=p.Success,!0===r.notFound&&(l.notFound=!0),o=Object.assign(o,{webpackCompilationHash:t[0]?t[0].webpackCompilationHash:""}),n=m(o,e)):l.status=p.Error,n})),h=Promise.all(c.map((function(t){if(e.staticQueryDb[t]){var n=e.staticQueryDb[t];return{staticQueryHash:t,jsonPayload:n}}return e.memoizedGet("/jkube/page-data/sq/d/"+t+".json").then((function(e){var n=JSON.parse(e.responseText);return{staticQueryHash:t,jsonPayload:n}}))}))).then((function(t){var n={};return t.forEach((function(t){var r=t.staticQueryHash,o=t.jsonPayload;n[r]=o,e.staticQueryDb[r]=o})),n}));return Promise.all([f,h]).then((function(t){var r,o=t[0],a=t[1];return o&&(r=Object.assign({},o,{staticQueryResults:a}),l.payload=r,s.a.emit("onPostLoadPageResources",{page:r,pageResources:r})),e.pageDb.set(n,l),r}))}));return o.then((function(t){e.inFlightDb.delete(n)})).catch((function(t){throw e.inFlightDb.delete(n),t})),this.inFlightDb.set(n,o),o},e.loadPageSync=function(t){var e=Object(l.b)(t);if(this.pageDb.has(e))return this.pageDb.get(e).payload},e.shouldPrefetch=function(t){return!!function(){if("connection"in navigator&&void 0!==navigator.connection){if((navigator.connection.effectiveType||"").includes("2g"))return!1;if(navigator.connection.saveData)return!1}return!0}()&&!this.pageDb.has(t)},e.prefetch=function(t){var e=this;if(!this.shouldPrefetch(t))return!1;if(this.prefetchTriggered.has(t)||(this.apiRunner("onPrefetchPathname",{pathname:t}),this.prefetchTriggered.add(t)),this.prefetchDisabled)return!1;var n=Object(l.b)(t);return this.doPrefetch(n).then((function(){e.prefetchCompleted.has(t)||(e.apiRunner("onPostPrefetchPathname",{pathname:t}),e.prefetchCompleted.add(t))})),!0},e.doPrefetch=function(t){var e=this,n=h(t);return c(n,{crossOrigin:"anonymous",as:"fetch"}).then((function(){return e.loadPageDataJson(t)}))},e.hovering=function(t){this.loadPage(t)},e.getResourceURLsForPathname=function(t){var e=Object(l.b)(t),n=this.pageDataDb.get(e);if(n){var r=m(n.payload);return[].concat(a(y(r.page.componentChunkName)),[h(e)])}return null},e.isPageNotFound=function(t){var e=Object(l.b)(t),n=this.pageDb.get(e);return!n||n.notFound},e.loadAppData=function(t){var e=this;return void 0===t&&(t=0),this.memoizedGet("/jkube/page-data/app-data.json").then((function(n){var r,o=n.status,a=n.responseText;if(200!==o&&t<3)return e.loadAppData(t+1);if(200===o)try{var i=JSON.parse(a);if(void 0===i.webpackCompilationHash)throw new Error("not a valid app-data response");r=i}catch(u){}return r}))},t}(),y=function(t){return(window.___chunkMapping[t]||[]).map((function(t){return"/jkube"+t}))},b=function(t){function e(e,n){return t.call(this,(function(t){return e.components[t]?e.components[t]().then(f).catch((function(){return null})):Promise.resolve()}),n)||this}Object(r.a)(e,t);var n=e.prototype;return n.doPrefetch=function(e){return t.prototype.doPrefetch.call(this,e).then((function(t){if(t.status!==p.Success)return Promise.resolve();var e=t.payload,n=e.componentChunkName,r=y(n);return Promise.all(r.map(c)).then((function(){return e}))}))},n.loadPageDataJson=function(e){return t.prototype.loadPageDataJson.call(this,e).then((function(t){return t.notFound?d(e,"HEAD").then((function(e){return 200===e.status?{status:p.Error}:t})):t}))},e}(g),w=function(t){v=t},R={getResourcesForPathname:function(t){return console.warn("Warning: getResourcesForPathname is deprecated. Use loadPage instead"),v.i.loadPage(t)},getResourcesForPathnameSync:function(t){return console.warn("Warning: getResourcesForPathnameSync is deprecated. Use loadPageSync instead"),v.i.loadPageSync(t)},enqueue:function(t){return v.prefetch(t)},getResourceURLsForPathname:function(t){return v.getResourceURLsForPathname(t)},loadPage:function(t){return v.loadPage(t)},loadPageSync:function(t){return v.loadPageSync(t)},prefetch:function(t){return v.prefetch(t)},isPageNotFound:function(t){return v.isPageNotFound(t)},hovering:function(t){return v.hovering(t)},loadAppData:function(){return v.loadAppData()}};e.default=R;function P(){return v?v.staticQueryDb:{}}},gQbX:function(t,e){var n=Math.ceil,r=Math.floor;t.exports=function(t){return isNaN(t=+t)?0:(t>0?r:n)(t)}},goFL:function(t,e,n){var r=n("REpN");t.exports=r},hUyl:function(t,e,n){"use strict";var r=0,o=function(t){var e=window.decodeURI(t.replace("#",""));if(""!==e){var n=document.getElementById(e);if(n){var o=window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop,a=document.documentElement.clientTop||document.body.clientTop||0,i=window.getComputedStyle(n),u=i.getPropertyValue("scroll-margin-top")||i.getPropertyValue("scroll-snap-margin-top")||"0px";return n.getBoundingClientRect().top+o-parseInt(u,10)-a-r}}return null};e.onInitialClientRender=function(t,e){e.offsetY&&(r=e.offsetY),requestAnimationFrame((function(){var t=o(window.location.hash);null!==t&&window.scrollTo(0,t)}))},e.shouldUpdateScroll=function(t){var e=t.routerProps.location,n=o(e.hash);return null===n||[0,n]}},hd9s:function(t,e,n){"use strict";var r=n("284h"),o=n("TqRt");e.__esModule=!0,e.ScrollContainer=void 0;var a=o(n("pVnL")),i=o(n("VbXa")),u=r(n("q1tI")),c=o(n("i8i4")),s=o(n("17x9")),l=n("Enzk"),p=n("YwZP"),f={scrollKey:s.default.string.isRequired,shouldUpdateScroll:s.default.func,children:s.default.element.isRequired},h=function(t){function e(e){return t.call(this,e)||this}(0,i.default)(e,t);var n=e.prototype;return n.componentDidMount=function(){var t=this,e=c.default.findDOMNode(this),n=this.props,r=n.location,o=n.scrollKey;if(e){e.addEventListener("scroll",(function(){t.props.context.save(r,o,e.scrollTop)}));var a=this.props.context.read(r,o);e.scrollTo(0,a||0)}},n.render=function(){return this.props.children},e}(u.Component),d=function(t){return u.createElement(p.Location,null,(function(e){var n=e.location;return u.createElement(l.ScrollContext.Consumer,null,(function(e){return u.createElement(h,(0,a.default)({},t,{context:e,location:n}))}))}))};e.ScrollContainer=d,d.propTypes=f},i18P:function(t,e,n){var r=n("REpN"),o=n("Bgjm");t.exports=function(t,e){try{o(r,t,e)}catch(n){r[t]=e}return e}},ij4R:function(t,e,n){var r=n("REpN"),o=n("i18P"),a=r["__core-js_shared__"]||o("__core-js_shared__",{});t.exports=a},imag:function(t,e){e.f=Object.getOwnPropertySymbols},"jdR/":function(t,e,n){var r=n("goFL"),o=n("REpN"),a=function(t){return"function"==typeof t?t:void 0};t.exports=function(t,e){return arguments.length<2?a(r[t])||a(o[t]):r[t]&&r[t][e]||o[t]&&o[t][e]}},jekk:function(t,e,n){var r=n("IvzW"),o=n("STyW"),a=n("m/aQ"),i=n("PK3T"),u=Object.defineProperty;e.f=r?u:function(t,e,n){if(a(t),e=i(e,!0),a(n),o)try{return u(t,e,n)}catch(r){}if("get"in n||"set"in n)throw TypeError("Accessors not supported");return"value"in n&&(t[e]=n.value),t}},krUJ:function(t,e,n){var r=n("ij4R"),o=Function.toString;"function"!=typeof r.inspectSource&&(r.inspectSource=function(t){return o.call(t)}),t.exports=r.inspectSource},lSYd:function(t,e){t.exports=!1},lw3w:function(t,e,n){var r;t.exports=(r=n("rzlk"))&&r.default||r},"m/aQ":function(t,e,n){var r=n("ckLD");t.exports=function(t){if(!r(t))throw TypeError(String(t)+" is not an object");return t}},nqlD:function(t,e,n){var r=n("q1tI").createContext;t.exports=r,t.exports.default=r},pAzz:function(t,e,n){var r=n("wTlq"),o=n("17+C"),a=n("8mzz"),i=n("WD+B"),u=function(t){return function(e,n,u,c){r(n);var s=o(e),l=a(s),p=i(s.length),f=t?p-1:0,h=t?-1:1;if(u<2)for(;;){if(f in l){c=l[f],f+=h;break}if(f+=h,t?f<0:p<=f)throw TypeError("Reduce of empty array with no initial value")}for(;t?f>=0:p>f;f+=h)f in l&&(c=n(c,l[f],f,s));return c}};t.exports={left:u(!1),right:u(!0)}},pVnL:function(t,e){function n(){return t.exports=n=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},n.apply(this,arguments)}t.exports=n},rzlk:function(t,e,n){"use strict";n.r(e);var r=n("q1tI"),o=n.n(r),a=n("emEt"),i=n("IOVJ");e.default=function(t){var e=t.location,n=a.default.loadPageSync(e.pathname);return n?o.a.createElement(i.a,Object.assign({location:e,pageResources:n},n.json)):null}},uFM1:function(t,e,n){var r=n("8deY"),o=n("F8ZZ"),a=r("keys");t.exports=function(t){return a[t]||(a[t]=o(t))}},wTlq:function(t,e){t.exports=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t}},xtsi:function(t,e,n){n("RUBk");var r=n("LeKB"),o=n("emEt").publicLoader,a=o.getResourcesForPathname,i=o.getResourcesForPathnameSync,u=o.getResourceURLsForPathname,c=o.loadPage,s=o.loadPageSync;e.apiRunner=function(t,e,n,o){void 0===e&&(e={});var l=r.map((function(n){if(n.plugin[t]){e.getResourcesForPathnameSync=i,e.getResourcesForPathname=a,e.getResourceURLsForPathname=u,e.loadPage=c,e.loadPageSync=s;var r=n.plugin[t](e,n.options);return r&&o&&(e=o({args:e,result:r,plugin:n})),r}}));return(l=l.filter((function(t){return void 0!==t}))).length>0?l:n?[n]:[]},e.apiRunnerAsync=function(t,e,n){return r.reduce((function(n,r){return r.plugin[t]?n.then((function(){return r.plugin[t](e,r.options)})):n}),Promise.resolve())}},xvWs:function(t,e,n){var r=n("IvzW"),o=n("JhOX"),a=n("34EK"),i=Object.defineProperty,u={},c=function(t){throw t};t.exports=function(t,e){if(a(u,t))return u[t];e||(e={});var n=[][t],s=!!a(e,"ACCESSORS")&&e.ACCESSORS,l=a(e,0)?e[0]:c,p=a(e,1)?e[1]:void 0;return u[t]=!!n&&!o((function(){if(s&&!r)return!0;var t={length:-1};s?i(t,1,{enumerable:!0,get:c}):t[1]=1,n.call(t,l,p)}))}},yLpj:function(t,e){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(r){"object"==typeof window&&(n=window)}t.exports=n},zpoX:function(t,e,n){var r=n("QU3x"),o=n("FlY1").concat("length","prototype");e.f=Object.getOwnPropertyNames||function(t){return r(t,o)}}},[["UxWs",2,7]]]);
+//# sourceMappingURL=app-59faa9989d677dd59195.js.map
\ No newline at end of file
diff --git a/app-59faa9989d677dd59195.js.LICENSE.txt b/app-59faa9989d677dd59195.js.LICENSE.txt
new file mode 100644
index 0000000..9308d5b
--- /dev/null
+++ b/app-59faa9989d677dd59195.js.LICENSE.txt
@@ -0,0 +1,4 @@
+/*!
+ * domready (c) Dustin Diaz 2014 - License MIT
+ * ie10 fix - Mikael Kristiansson 2019
+ */
diff --git a/app-59faa9989d677dd59195.js.map b/app-59faa9989d677dd59195.js.map
new file mode 100644
index 0000000..d93809e
--- /dev/null
+++ b/app-59faa9989d677dd59195.js.map
@@ -0,0 +1 @@
+{"version":3,"sources":["webpack:///./node_modules/gatsby/node_modules/core-js/internals/redefine.js","webpack:///./node_modules/gatsby-link/index.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/native-weak-map.js","webpack:///./node_modules/gatsby-react-router-scroll/session-storage.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/to-absolute-index.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/to-object.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/engine-user-agent.js","webpack:///./node_modules/@babel/runtime/helpers/interopRequireWildcard.js","webpack:///./.cache/normalize-page-path.js","webpack:///./.cache/find-path.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/has.js","webpack:///./node_modules/gatsby-react-router-scroll/use-scroll-restoration.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/create-property-descriptor.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/require-object-coercible.js","webpack:///./node_modules/mitt/dist/mitt.es.js","webpack:///./.cache/emitter.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/object-property-is-enumerable.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/copy-constructor-properties.js","webpack:///./node_modules/gatsby-react-router-scroll/index.js","webpack:///./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/shared.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/indexed-object.js","webpack:///./.cache/react-lifecycles-compat.js","webpack:///./node_modules/@reach/router/es/lib/history.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/engine-v8-version.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/create-non-enumerable-property.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/document-create-element.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/engine-is-node.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/internal-state.js","webpack:///./node_modules/gatsby-react-router-scroll/scroll-handler.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/uid.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/enum-bug-keys.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/object-get-own-property-descriptor.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/hidden-keys.js","webpack:///./.cache/page-renderer.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/descriptors.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/fails.js","webpack:///./node_modules/@reach/router/es/lib/utils.js","webpack:///./.cache/api-runner-browser-plugins.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/array-includes.js","webpack:///./node_modules/@mikaelkristiansson/domready/ready.js","webpack:///./.cache/register-service-worker.js","webpack:///./.cache/_this_is_virtual_fs_path_/$virtual/async-requires.js","webpack:///./node_modules/@babel/runtime/helpers/assertThisInitialized.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/to-primitive.js","webpack:///./node_modules/invariant/browser.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/object-keys-internal.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/array-method-is-strict.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/global.js","webpack:///./node_modules/gatsby/node_modules/core-js/modules/es.array.reduce.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/ie8-dom-define.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/own-keys.js","webpack:///./node_modules/@babel/runtime/helpers/interopRequireDefault.js","webpack:///./.cache/route-announcer-props.js","webpack:///./.cache/navigation.js","webpack:///./node_modules/shallow-compare/es/index.js","webpack:///./.cache/ensure-resources.js","webpack:///./.cache/production-app.js","webpack:///./node_modules/@babel/runtime/helpers/inheritsLoose.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/to-length.js","webpack:///./.cache/gatsby-browser-entry.js","webpack:///./node_modules/gatsby/dist/internal-plugins/bundle-optimisations/polyfills/object-assign.js","webpack:///./node_modules/@reach/router/es/index.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/is-forced.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/export.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/to-indexed-object.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/classof-raw.js","webpack:///./node_modules/@babel/runtime/helpers/typeof.js","webpack:///./.cache/strip-prefix.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/is-object.js","webpack:///./node_modules/gatsby-link/parse-path.js","webpack:///./node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","webpack:///./node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","webpack:///./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","webpack:///./node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","webpack:///./node_modules/@babel/runtime/helpers/esm/iterableToArray.js","webpack:///./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","webpack:///./node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","webpack:///./.cache/prefetch.js","webpack:///./.cache/loader.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/to-integer.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/path.js","webpack:///./node_modules/gatsby-remark-autolink-headers/gatsby-browser.js","webpack:///./node_modules/gatsby-react-router-scroll/scroll-container.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/set-global.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/shared-store.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/object-get-own-property-symbols.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/get-built-in.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/object-define-property.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/inspect-source.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/is-pure.js","webpack:///./.cache/public-page-renderer.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/an-object.js","webpack:///./.cache/create-react-context.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/array-reduce.js","webpack:///./node_modules/@babel/runtime/helpers/extends.js","webpack:///./.cache/public-page-renderer-prod.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/shared-key.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/a-function.js","webpack:///./.cache/api-runner-browser.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/array-method-uses-to-length.js","webpack:///(webpack)/buildin/global.js","webpack:///./node_modules/gatsby/node_modules/core-js/internals/object-get-own-property-names.js"],"names":["global","createNonEnumerableProperty","has","setGlobal","inspectSource","InternalStateModule","getInternalState","get","enforceInternalState","enforce","TEMPLATE","String","split","module","exports","O","key","value","options","state","unsafe","simple","enumerable","noTargetGet","source","join","Function","prototype","this","_interopRequireDefault","__esModule","withPrefix","withAssetPrefix","path","getGlobalPathPrefix","navigateTo","replace","push","navigate","default","_objectWithoutPropertiesLoose2","_assertThisInitialized2","_inheritsLoose2","_extends2","_propTypes","_react","_router","_utils","_parsePath","parsePath","isAbsolutePath","startsWith","prefix","_ref","_prefix","getGlobalBasePrefix","isLocalLink","base","endsWith","slice","rewriteLinkPath","relativeTo","current","resolve","absolutify","NavLinkPropTypes","activeClassName","string","activeStyle","object","partiallyActive","bool","GatsbyLinkLocationWrapper","props","createElement","Location","_ref2","location","GatsbyLink","_location","_React$Component","_this","call","defaultGetProps","_ref3","isPartiallyCurrent","isCurrent","className","filter","Boolean","style","IOSupported","window","IntersectionObserver","handleRef","bind","_proto","_prefetch","currentPath","pathname","rewrittenPath","to","newPathName","___loader","enqueue","componentDidUpdate","prevProps","prevState","componentDidMount","componentWillUnmount","io","_this$io","instance","el","unobserve","disconnect","ref","cb","_this2","innerRef","hasOwnProperty","entries","forEach","entry","target","isIntersecting","intersectionRatio","observe","render","_this3","_this$props","_this$props$getProps","getProps","_onClick","onClick","_onMouseEnter","onMouseEnter","rest","prefixedTo","Link","e","hovering","button","defaultPrevented","metaKey","altKey","ctrlKey","shiftKey","preventDefault","shouldReplace","encodeURI","___navigate","href","Component","propTypes","func","isRequired","showDeprecationWarning","functionName","altFunctionName","version","console","warn","_default","forwardRef","___push","___replace","WeakMap","test","SessionStorage","read","stateKey","getStateKey","sessionStorage","getItem","JSON","parse","save","storedValue","stringify","setItem","stateKeyBase","toInteger","max","Math","min","index","length","integer","requireObjectCoercible","argument","Object","getBuiltIn","_typeof","_getRequireWildcardCache","cache","obj","newObj","hasPropertyDescriptor","defineProperty","getOwnPropertyDescriptor","desc","set","undefined","charAt","pathCache","Map","matchPaths","trimPathname","rawPathname","decodeURIComponent","stripPrefix","__BASE_PATH__","URL","setMatchPaths","findMatchPath","trimmedPathname","cleanPath","pickPaths","map","matchPath","originalPath","pick","normalizePagePath","route","grabMatchParams","params","findPath","foundPath","it","useScrollRestoration","identifier","useLocation","useContext","_scrollHandler","ScrollContext","useRef","useLayoutEffect","position","scrollTo","onScroll","scrollTop","bitmap","configurable","writable","TypeError","emitter","all","create","on","type","handler","off","splice","indexOf","emit","evt","mitt","nativePropertyIsEnumerable","propertyIsEnumerable","NASHORN_BUG","1","f","V","descriptor","ownKeys","getOwnPropertyDescriptorModule","definePropertyModule","keys","i","ScrollContainer","ScrollHandler","_scrollContainer","_useScrollRestoration","excluded","sourceKeys","IS_PURE","store","mode","copyright","fails","classof","polyfill","_extends","assign","arguments","getLocation","_source$location","search","hash","origin","protocol","host","hostname","port","canUseDOM","decodeURI","history","createHistory","listeners","transitioning","resolveTransition","_onTransitionComplete","listen","listener","popstateListener","action","addEventListener","removeEventListener","fn","_ref$replace","go","Date","now","replaceState","pushState","transition","Promise","res","createMemorySource","initialPath","searchIndex","initialLocation","substr","stack","states","name","_","uri","_uri$split","_uri$split$","_uri$split2","_uri$split2$","newIndex","document","globalHistory","match","userAgent","process","versions","v8","DESCRIPTORS","createPropertyDescriptor","isObject","EXISTS","NATIVE_WEAK_MAP","objectHas","shared","sharedKey","hiddenKeys","wmget","wmhas","wmset","metadata","facade","STATE","getterFor","TYPE","_interopRequireWildcard","React","_sessionStorage","createContext","displayName","_len","args","Array","_key","apply","concat","_stateStorage","scrollListener","scrollY","windowScroll","shouldUpdateScroll","scrollToHash","node","getElementById","substring","scrollIntoView","prevRouterProps","routerProps","scrollPosition","_this$props$location","_this$props$location2","Provider","children","element","id","postfix","random","toString","propertyIsEnumerableModule","toIndexedObject","toPrimitive","IE8_DOM_DEFINE","nativeGetOwnPropertyDescriptor","P","error","PageRenderer","pageResources","json","pageContext","__params","pathContext","pageElement","apiRunner","loader","publicLoader","component","page","result","pop","exec","routes","default_","uriPathname","uriSegments","segmentize","isRootUri","ranked","rankRoutes","l","missed","routeSegments","routeSegment","uriSegment","isSplat","dynamicMatch","paramRe","reservedNames","_to$split","toPathname","toQuery","basePathname","toSegments","baseSegments","addQuery","allSegments","segments","segment","insertParams","_path$split","pathBase","_path$split$","query","constructedPath","_params$location","_params$location$sear","searchSplit","validateRedirect","from","isDynamic","sort","rankRoute","score","reduce","isRootSegment","SEGMENT_POINTS","a","b","q","shallowCompare","obj1","obj2","obj1Keys","every","plugin","require","toLength","toAbsoluteIndex","createMethod","IS_INCLUDES","$this","fromIndex","includes","ie10","navigator","appVersion","fns","doc","hack","documentElement","doScroll","loaded","readyState","shift","setTimeout","definition","serviceWorker","register","then","reg","installingWorker","installing","log","controller","___swUpdated","___failedResources","reload","catch","components","self","ReferenceError","input","PREFERRED_STRING","val","valueOf","condition","format","c","d","Error","argIndex","framesToPop","names","METHOD_NAME","method","check","globalThis","$","$reduce","left","arrayMethodIsStrict","arrayMethodUsesToLength","CHROME_VERSION","IS_NODE","STRICT_METHOD","USES_TO_LENGTH","proto","forced","callbackfn","getOwnPropertyNamesModule","getOwnPropertySymbolsModule","anObject","getOwnPropertySymbols","RouteAnnouncerProps","top","width","height","padding","overflow","clip","whiteSpace","border","redirectMap","redirects","redirect","fromPath","maybeRedirect","toPath","onPreRouteUpdate","prevLocation","onRouteUpdate","timeoutId","loadPage","status","PageResourceStatus","clearTimeout","webpackCompilationHash","___webpackCompilationHash","postMessage","gatsbyApi","reachNavigate","results","getSavedScrollPosition","RouteAnnouncer","announcementRef","createRef","nextProps","requestAnimationFrame","pageName","title","pageHeadings","querySelectorAll","textContent","newAnnouncement","innerText","compareLocationProps","nextLocation","RouteUpdates","shouldComponentUpdate","Fragment","shallowDiffers","_i","EnsureResources","loadPageSync","getDerivedStateFromProps","loadResources","rawPath","setState","nextState","ProdLoader","asyncRequires","setLoader","setApiRunner","___emitter","apiRunnerAsync","RouteHandler","baseuri","basepath","DataContext","GatsbyRoot","staticQueryResults","getStaticQueryResults","LocationHandler","Consumer","pagePath","browserLoc","SiteRoot","App","renderer","ReactDOM","hydrate","domReady","subClass","superClass","constructor","__proto__","StaticQueryContext","_objectWithoutProperties","_classCallCheck","Constructor","_possibleConstructorReturn","_inherits","setPrototypeOf","createNamedContext","defaultValue","Ctx","LocationContext","context","LocationProvider","_temp","getContext","refs","unlisten","_props$history","componentDidCatch","info","isRedirect","_navigate","unmounted","defaultProps","ServerLocation","url","BaseContext","Router","baseContext","locationContext","RouterImpl","_React$PureComponent","_props","_navigate2","primary","_props$component","domProps","Children","toArray","array","child","createRoute","clone","cloneElement","FocusWrapper","FocusHandler","wrapperProps","PureComponent","FocusContext","requestFocus","FocusHandlerImpl","initialRender","focusHandlerCount","_React$Component2","_temp2","_this4","_len2","_key2","shouldFocus","focus","myURIChanged","navigatedUpToMe","contains","activeElement","_this5","_props2","_props2$component","Comp","outline","tabIndex","n","k","C","_ref4","_ref5","_ref6","_props$getProps","anchorProps","encodedHref","event","shouldNavigate","_location$state","restState","RedirectRequest","o","redirectTo","RedirectImpl","_React$Component3","_props3","_props3$replace","noThrow","resolvedTo","_props4","Redirect","_ref7","Match","_ref8","_ref9","_ref10","resolvedPath","useNavigate","useParams","useMatch","stripSlashes","str","elementPath","replacement","isForced","feature","detection","data","normalize","POLYFILL","NATIVE","toLowerCase","redefine","copyConstructorProperties","targetProperty","sourceProperty","TARGET","GLOBAL","STATIC","stat","sham","IndexedObject","Symbol","iterator","hashIndex","_inheritsLoose","_arrayLikeToArray","arr","len","arr2","_toConsumableArray","isArray","iter","minLen","supportedPrefetchStrategy","fakeLink","relList","supports","err","support","reject","link","setAttribute","onload","onerror","getElementsByTagName","getElementsByName","parentNode","appendChild","req","XMLHttpRequest","open","send","preFetched","prefetch","Success","preferDefault","m","createPageDataUrl","s","__PATH_PREFIX__","doFetch","onreadystatechange","toPageResources","pageData","componentChunkName","staticQueryHashes","BaseLoader","loadComponent","inFlightNetworkRequests","pageDb","inFlightDb","staticQueryDb","pageDataDb","prefetchTriggered","Set","prefetchCompleted","memoizedGet","inFlightPromise","response","delete","prefetchDisabled","some","fetchPageDataJson","loadObj","retries","responseText","jsonPayload","payload","notFound","loadPageDataJson","loadAppData","allData","finalResult","componentChunkPromise","createdAt","staticQueryBatchPromise","staticQueryHash","staticQueryResultsMap","shouldPrefetch","connection","effectiveType","saveData","doesConnectionSupportPrefetch","add","realPath","doPrefetch","pageDataUrl","prefetchHelper","crossOrigin","as","getResourceURLsForPathname","createComponentUrls","isPageNotFound","appData","___chunkMapping","chunk","chunkName","componentUrls","_loader","getResourcesForPathname","getResourcesForPathnameSync","ceil","floor","isNaN","offsetY","getTargetOffset","pageYOffset","body","clientTop","computedStyles","getComputedStyle","scrollMarginTop","getPropertyValue","getBoundingClientRect","parseInt","onInitialClientRender","pluginOptions","offset","_reactDom","scrollKey","ScrollContainerImplementation","findDOMNode","aFunction","variable","namespace","nativeDefineProperty","Attributes","functionToString","toObject","IS_RIGHT","that","argumentsLength","memo","right","ProdPageRenderer","InternalPageRenderer","uid","plugins","api","defaultReturn","argTransform","previous","next","thrower","ACCESSORS","argument0","argument1","g","internalObjectKeys","getOwnPropertyNames"],"mappings":"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","file":"app-59faa9989d677dd59195.js","sourcesContent":["var global = require('../internals/global');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar has = require('../internals/has');\nvar setGlobal = require('../internals/set-global');\nvar inspectSource = require('../internals/inspect-source');\nvar InternalStateModule = require('../internals/internal-state');\n\nvar getInternalState = InternalStateModule.get;\nvar enforceInternalState = InternalStateModule.enforce;\nvar TEMPLATE = String(String).split('String');\n\n(module.exports = function (O, key, value, options) {\n var unsafe = options ? !!options.unsafe : false;\n var simple = options ? !!options.enumerable : false;\n var noTargetGet = options ? !!options.noTargetGet : false;\n var state;\n if (typeof value == 'function') {\n if (typeof key == 'string' && !has(value, 'name')) {\n createNonEnumerableProperty(value, 'name', key);\n }\n state = enforceInternalState(value);\n if (!state.source) {\n state.source = TEMPLATE.join(typeof key == 'string' ? key : '');\n }\n }\n if (O === global) {\n if (simple) O[key] = value;\n else setGlobal(key, value);\n return;\n } else if (!unsafe) {\n delete O[key];\n } else if (!noTargetGet && O[key]) {\n simple = true;\n }\n if (simple) O[key] = value;\n else createNonEnumerableProperty(O, key, value);\n// add fake Function#toString for correct work wrapped methods / constructors with methods like LoDash isNative\n})(Function.prototype, 'toString', function toString() {\n return typeof this == 'function' && getInternalState(this).source || inspectSource(this);\n});\n","\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.withPrefix = withPrefix;\nexports.withAssetPrefix = withAssetPrefix;\nexports.navigateTo = exports.replace = exports.push = exports.navigate = exports.default = void 0;\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(require(\"@babel/runtime/helpers/objectWithoutPropertiesLoose\"));\n\nvar _assertThisInitialized2 = _interopRequireDefault(require(\"@babel/runtime/helpers/assertThisInitialized\"));\n\nvar _inheritsLoose2 = _interopRequireDefault(require(\"@babel/runtime/helpers/inheritsLoose\"));\n\nvar _extends2 = _interopRequireDefault(require(\"@babel/runtime/helpers/extends\"));\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _router = require(\"@reach/router\");\n\nvar _utils = require(\"@reach/router/lib/utils\");\n\nvar _parsePath = require(\"./parse-path\");\n\nexports.parsePath = _parsePath.parsePath;\n\nvar isAbsolutePath = function isAbsolutePath(path) {\n return path === null || path === void 0 ? void 0 : path.startsWith(\"/\");\n};\n\nfunction withPrefix(path, prefix) {\n var _ref, _prefix;\n\n if (prefix === void 0) {\n prefix = getGlobalBasePrefix();\n }\n\n if (!isLocalLink(path)) {\n return path;\n }\n\n if (path.startsWith(\"./\") || path.startsWith(\"../\")) {\n return path;\n }\n\n var base = (_ref = (_prefix = prefix) !== null && _prefix !== void 0 ? _prefix : getGlobalPathPrefix()) !== null && _ref !== void 0 ? _ref : \"/\";\n return \"\" + ((base === null || base === void 0 ? void 0 : base.endsWith(\"/\")) ? base.slice(0, -1) : base) + (path.startsWith(\"/\") ? path : \"/\" + path);\n} // These global values are wrapped in typeof clauses to ensure the values exist.\n// This is especially problematic in unit testing of this component.\n\n\nvar getGlobalPathPrefix = function getGlobalPathPrefix() {\n return process.env.NODE_ENV !== \"production\" ? typeof __PATH_PREFIX__ !== \"undefined\" ? __PATH_PREFIX__ : undefined : __PATH_PREFIX__;\n};\n\nvar getGlobalBasePrefix = function getGlobalBasePrefix() {\n return process.env.NODE_ENV !== \"production\" ? typeof __BASE_PATH__ !== \"undefined\" ? __BASE_PATH__ : undefined : __BASE_PATH__;\n};\n\nvar isLocalLink = function isLocalLink(path) {\n return path && !path.startsWith(\"http://\") && !path.startsWith(\"https://\") && !path.startsWith(\"//\");\n};\n\nfunction withAssetPrefix(path) {\n return withPrefix(path, getGlobalPathPrefix());\n}\n\nfunction absolutify(path, current) {\n // If it's already absolute, return as-is\n if (isAbsolutePath(path)) {\n return path;\n }\n\n return (0, _utils.resolve)(path, current);\n}\n\nvar rewriteLinkPath = function rewriteLinkPath(path, relativeTo) {\n if (typeof path === \"number\") {\n return path;\n }\n\n if (!isLocalLink(path)) {\n return path;\n }\n\n return isAbsolutePath(path) ? withPrefix(path) : absolutify(path, relativeTo);\n};\n\nvar NavLinkPropTypes = {\n activeClassName: _propTypes.default.string,\n activeStyle: _propTypes.default.object,\n partiallyActive: _propTypes.default.bool\n}; // Set up IntersectionObserver\n\nvar createIntersectionObserver = function createIntersectionObserver(el, cb) {\n var io = new window.IntersectionObserver(function (entries) {\n entries.forEach(function (entry) {\n if (el === entry.target) {\n // Check if element is within viewport, remove listener, destroy observer, and run link callback.\n // MSEdge doesn't currently support isIntersecting, so also test for an intersectionRatio > 0\n if (entry.isIntersecting || entry.intersectionRatio > 0) {\n io.unobserve(el);\n io.disconnect();\n cb();\n }\n }\n });\n }); // Add element to the observer\n\n io.observe(el);\n return {\n instance: io,\n el: el\n };\n};\n\nfunction GatsbyLinkLocationWrapper(props) {\n return /*#__PURE__*/_react.default.createElement(_router.Location, null, function (_ref2) {\n var location = _ref2.location;\n return /*#__PURE__*/_react.default.createElement(GatsbyLink, (0, _extends2.default)({}, props, {\n _location: location\n }));\n });\n}\n\nvar GatsbyLink = /*#__PURE__*/function (_React$Component) {\n (0, _inheritsLoose2.default)(GatsbyLink, _React$Component);\n\n function GatsbyLink(props) {\n var _this;\n\n _this = _React$Component.call(this, props) || this; // Default to no support for IntersectionObserver\n\n _this.defaultGetProps = function (_ref3) {\n var isPartiallyCurrent = _ref3.isPartiallyCurrent,\n isCurrent = _ref3.isCurrent;\n\n if (_this.props.partiallyActive ? isPartiallyCurrent : isCurrent) {\n return {\n className: [_this.props.className, _this.props.activeClassName].filter(Boolean).join(\" \"),\n style: (0, _extends2.default)({}, _this.props.style, _this.props.activeStyle)\n };\n }\n\n return null;\n };\n\n var IOSupported = false;\n\n if (typeof window !== \"undefined\" && window.IntersectionObserver) {\n IOSupported = true;\n }\n\n _this.state = {\n IOSupported: IOSupported\n };\n _this.handleRef = _this.handleRef.bind((0, _assertThisInitialized2.default)(_this));\n return _this;\n }\n\n var _proto = GatsbyLink.prototype;\n\n _proto._prefetch = function _prefetch() {\n var currentPath = window.location.pathname; // reach router should have the correct state\n\n if (this.props._location && this.props._location.pathname) {\n currentPath = this.props._location.pathname;\n }\n\n var rewrittenPath = rewriteLinkPath(this.props.to, currentPath);\n var newPathName = (0, _parsePath.parsePath)(rewrittenPath).pathname; // Prefech is used to speed up next navigations. When you use it on the current navigation,\n // there could be a race-condition where Chrome uses the stale data instead of waiting for the network to complete\n\n if (currentPath !== newPathName) {\n ___loader.enqueue(newPathName);\n }\n };\n\n _proto.componentDidUpdate = function componentDidUpdate(prevProps, prevState) {\n // Preserve non IO functionality if no support\n if (this.props.to !== prevProps.to && !this.state.IOSupported) {\n this._prefetch();\n }\n };\n\n _proto.componentDidMount = function componentDidMount() {\n // Preserve non IO functionality if no support\n if (!this.state.IOSupported) {\n this._prefetch();\n }\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n if (!this.io) {\n return;\n }\n\n var _this$io = this.io,\n instance = _this$io.instance,\n el = _this$io.el;\n instance.unobserve(el);\n instance.disconnect();\n };\n\n _proto.handleRef = function handleRef(ref) {\n var _this2 = this;\n\n if (this.props.innerRef && this.props.innerRef.hasOwnProperty(\"current\")) {\n this.props.innerRef.current = ref;\n } else if (this.props.innerRef) {\n this.props.innerRef(ref);\n }\n\n if (this.state.IOSupported && ref) {\n // If IO supported and element reference found, setup Observer functionality\n this.io = createIntersectionObserver(ref, function () {\n _this2._prefetch();\n });\n }\n };\n\n _proto.render = function render() {\n var _this3 = this;\n\n var _this$props = this.props,\n to = _this$props.to,\n _this$props$getProps = _this$props.getProps,\n getProps = _this$props$getProps === void 0 ? this.defaultGetProps : _this$props$getProps,\n _onClick = _this$props.onClick,\n _onMouseEnter = _this$props.onMouseEnter,\n $activeClassName = _this$props.activeClassName,\n $activeStyle = _this$props.activeStyle,\n $innerRef = _this$props.innerRef,\n partiallyActive = _this$props.partiallyActive,\n state = _this$props.state,\n replace = _this$props.replace,\n _location = _this$props._location,\n rest = (0, _objectWithoutPropertiesLoose2.default)(_this$props, [\"to\", \"getProps\", \"onClick\", \"onMouseEnter\", \"activeClassName\", \"activeStyle\", \"innerRef\", \"partiallyActive\", \"state\", \"replace\", \"_location\"]);\n\n if (process.env.NODE_ENV !== \"production\" && !isLocalLink(to)) {\n console.warn(\"External link \" + to + \" was detected in a Link component. Use the Link component only for internal links. See: https://gatsby.dev/internal-links\");\n }\n\n var prefixedTo = rewriteLinkPath(to, _location.pathname);\n\n if (!isLocalLink(prefixedTo)) {\n return /*#__PURE__*/_react.default.createElement(\"a\", (0, _extends2.default)({\n href: prefixedTo\n }, rest));\n }\n\n return /*#__PURE__*/_react.default.createElement(_router.Link, (0, _extends2.default)({\n to: prefixedTo,\n state: state,\n getProps: getProps,\n innerRef: this.handleRef,\n onMouseEnter: function onMouseEnter(e) {\n if (_onMouseEnter) {\n _onMouseEnter(e);\n }\n\n ___loader.hovering((0, _parsePath.parsePath)(prefixedTo).pathname);\n },\n onClick: function onClick(e) {\n if (_onClick) {\n _onClick(e);\n }\n\n if (e.button === 0 && // ignore right clicks\n !_this3.props.target && // let browser handle \"target=_blank\"\n !e.defaultPrevented && // onClick prevented default\n !e.metaKey && // ignore clicks with modifier keys...\n !e.altKey && !e.ctrlKey && !e.shiftKey) {\n e.preventDefault();\n var shouldReplace = replace;\n\n var isCurrent = encodeURI(prefixedTo) === _location.pathname;\n\n if (typeof replace !== \"boolean\" && isCurrent) {\n shouldReplace = true;\n } // Make sure the necessary scripts and data are\n // loaded before continuing.\n\n\n window.___navigate(prefixedTo, {\n state: state,\n replace: shouldReplace\n });\n }\n\n return true;\n }\n }, rest));\n };\n\n return GatsbyLink;\n}(_react.default.Component);\n\nGatsbyLink.propTypes = (0, _extends2.default)({}, NavLinkPropTypes, {\n onClick: _propTypes.default.func,\n to: _propTypes.default.string.isRequired,\n replace: _propTypes.default.bool,\n state: _propTypes.default.object\n});\n\nvar showDeprecationWarning = function showDeprecationWarning(functionName, altFunctionName, version) {\n return console.warn(\"The \\\"\" + functionName + \"\\\" method is now deprecated and will be removed in Gatsby v\" + version + \". Please use \\\"\" + altFunctionName + \"\\\" instead.\");\n};\n\nvar _default = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n return /*#__PURE__*/_react.default.createElement(GatsbyLinkLocationWrapper, (0, _extends2.default)({\n innerRef: ref\n }, props));\n});\n\nexports.default = _default;\n\nvar navigate = function navigate(to, options) {\n window.___navigate(rewriteLinkPath(to, window.location.pathname), options);\n};\n\nexports.navigate = navigate;\n\nvar push = function push(to) {\n showDeprecationWarning(\"push\", \"navigate\", 3);\n\n window.___push(rewriteLinkPath(to, window.location.pathname));\n};\n\nexports.push = push;\n\nvar replace = function replace(to) {\n showDeprecationWarning(\"replace\", \"navigate\", 3);\n\n window.___replace(rewriteLinkPath(to, window.location.pathname));\n}; // TODO: Remove navigateTo for Gatsby v3\n\n\nexports.replace = replace;\n\nvar navigateTo = function navigateTo(to) {\n showDeprecationWarning(\"navigateTo\", \"navigate\", 3);\n return push(to);\n};\n\nexports.navigateTo = navigateTo;","var global = require('../internals/global');\nvar inspectSource = require('../internals/inspect-source');\n\nvar WeakMap = global.WeakMap;\n\nmodule.exports = typeof WeakMap === 'function' && /native code/.test(inspectSource(WeakMap));\n","\"use strict\";\n\nexports.__esModule = true;\nexports.SessionStorage = void 0;\nvar STATE_KEY_PREFIX = \"@@scroll|\";\nvar GATSBY_ROUTER_SCROLL_STATE = \"___GATSBY_REACT_ROUTER_SCROLL\";\n\nvar SessionStorage = /*#__PURE__*/function () {\n function SessionStorage() {}\n\n var _proto = SessionStorage.prototype;\n\n _proto.read = function read(location, key) {\n var stateKey = this.getStateKey(location, key);\n\n try {\n var value = window.sessionStorage.getItem(stateKey);\n return value ? JSON.parse(value) : 0;\n } catch (e) {\n if (process.env.NODE_ENV !== \"production\") {\n console.warn(\"[gatsby-react-router-scroll] Unable to access sessionStorage; sessionStorage is not available.\");\n }\n\n if (window && window[GATSBY_ROUTER_SCROLL_STATE] && window[GATSBY_ROUTER_SCROLL_STATE][stateKey]) {\n return window[GATSBY_ROUTER_SCROLL_STATE][stateKey];\n }\n\n return 0;\n }\n };\n\n _proto.save = function save(location, key, value) {\n var stateKey = this.getStateKey(location, key);\n var storedValue = JSON.stringify(value);\n\n try {\n window.sessionStorage.setItem(stateKey, storedValue);\n } catch (e) {\n if (window && window[GATSBY_ROUTER_SCROLL_STATE]) {\n window[GATSBY_ROUTER_SCROLL_STATE][stateKey] = JSON.parse(storedValue);\n } else {\n window[GATSBY_ROUTER_SCROLL_STATE] = {};\n window[GATSBY_ROUTER_SCROLL_STATE][stateKey] = JSON.parse(storedValue);\n }\n\n if (process.env.NODE_ENV !== \"production\") {\n console.warn(\"[gatsby-react-router-scroll] Unable to save state in sessionStorage; sessionStorage is not available.\");\n }\n }\n };\n\n _proto.getStateKey = function getStateKey(location, key) {\n var stateKeyBase = \"\" + STATE_KEY_PREFIX + location.pathname;\n return key === null || typeof key === \"undefined\" ? stateKeyBase : stateKeyBase + \"|\" + key;\n };\n\n return SessionStorage;\n}();\n\nexports.SessionStorage = SessionStorage;","var toInteger = require('../internals/to-integer');\n\nvar max = Math.max;\nvar min = Math.min;\n\n// Helper for a popular repeating case of the spec:\n// Let integer be ? ToInteger(index).\n// If integer < 0, let result be max((length + integer), 0); else let result be min(integer, length).\nmodule.exports = function (index, length) {\n var integer = toInteger(index);\n return integer < 0 ? max(integer + length, 0) : min(integer, length);\n};\n","var requireObjectCoercible = require('../internals/require-object-coercible');\n\n// `ToObject` abstract operation\n// https://tc39.es/ecma262/#sec-toobject\nmodule.exports = function (argument) {\n return Object(requireObjectCoercible(argument));\n};\n","var getBuiltIn = require('../internals/get-built-in');\n\nmodule.exports = getBuiltIn('navigator', 'userAgent') || '';\n","var _typeof = require(\"@babel/runtime/helpers/typeof\");\n\nfunction _getRequireWildcardCache() {\n if (typeof WeakMap !== \"function\") return null;\n var cache = new WeakMap();\n\n _getRequireWildcardCache = function _getRequireWildcardCache() {\n return cache;\n };\n\n return cache;\n}\n\nfunction _interopRequireWildcard(obj) {\n if (obj && obj.__esModule) {\n return obj;\n }\n\n if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") {\n return {\n \"default\": obj\n };\n }\n\n var cache = _getRequireWildcardCache();\n\n if (cache && cache.has(obj)) {\n return cache.get(obj);\n }\n\n var newObj = {};\n var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;\n\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;\n\n if (desc && (desc.get || desc.set)) {\n Object.defineProperty(newObj, key, desc);\n } else {\n newObj[key] = obj[key];\n }\n }\n }\n\n newObj[\"default\"] = obj;\n\n if (cache) {\n cache.set(obj, newObj);\n }\n\n return newObj;\n}\n\nmodule.exports = _interopRequireWildcard;","export default path => {\n if (path === undefined) {\n return path\n }\n if (path === `/`) {\n return `/`\n }\n if (path.charAt(path.length - 1) === `/`) {\n return path.slice(0, -1)\n }\n return path\n}\n","import { pick } from \"@reach/router/lib/utils\"\nimport stripPrefix from \"./strip-prefix\"\nimport normalizePagePath from \"./normalize-page-path\"\n\nconst pathCache = new Map()\nlet matchPaths = []\n\nconst trimPathname = rawPathname => {\n const pathname = decodeURIComponent(rawPathname)\n // Remove the pathPrefix from the pathname.\n const trimmedPathname = stripPrefix(pathname, __BASE_PATH__)\n // Remove any hashfragment\n .split(`#`)[0]\n // Remove search query\n .split(`?`)[0]\n\n return trimmedPathname\n}\n\nfunction absolutify(path) {\n // If it's already absolute, return as-is\n if (\n path.startsWith(`/`) ||\n path.startsWith(`https://`) ||\n path.startsWith(`http://`)\n ) {\n return path\n }\n // Calculate path relative to current location, adding a trailing slash to\n // match behavior of @reach/router\n return new URL(\n path,\n window.location.href + (window.location.href.endsWith(`/`) ? `` : `/`)\n ).pathname\n}\n\n/**\n * Set list of matchPaths\n *\n * @param {Array<{path: string, matchPath: string}>} value collection of matchPaths\n */\nexport const setMatchPaths = value => {\n matchPaths = value\n}\n\n/**\n * Return a matchpath url\n * if `match-paths.json` contains `{ \"/foo*\": \"/page1\", ...}`, then\n * `/foo?bar=far` => `/page1`\n *\n * @param {string} rawPathname A raw pathname\n * @return {string|null}\n */\nexport const findMatchPath = rawPathname => {\n const trimmedPathname = cleanPath(rawPathname)\n\n const pickPaths = matchPaths.map(({ path, matchPath }) => {\n return {\n path: matchPath,\n originalPath: path,\n }\n })\n\n const path = pick(pickPaths, trimmedPathname)\n\n if (path) {\n return normalizePagePath(path.route.originalPath)\n }\n\n return null\n}\n\n/**\n * Return a matchpath params from reach/router rules\n * if `match-paths.json` contains `{ \":bar/*foo\" }`, and the path is /baz/zaz/zoo\n * then it returns\n * { bar: baz, foo: zaz/zoo }\n *\n * @param {string} rawPathname A raw pathname\n * @return {object}\n */\nexport const grabMatchParams = rawPathname => {\n const trimmedPathname = cleanPath(rawPathname)\n\n const pickPaths = matchPaths.map(({ path, matchPath }) => {\n return {\n path: matchPath,\n originalPath: path,\n }\n })\n\n const path = pick(pickPaths, trimmedPathname)\n\n if (path) {\n return path.params\n }\n\n return {}\n}\n\n// Given a raw URL path, returns the cleaned version of it (trim off\n// `#` and query params), or if it matches an entry in\n// `match-paths.json`, its matched path is returned\n//\n// E.g. `/foo?bar=far` => `/foo`\n//\n// Or if `match-paths.json` contains `{ \"/foo*\": \"/page1\", ...}`, then\n// `/foo?bar=far` => `/page1`\nexport const findPath = rawPathname => {\n const trimmedPathname = trimPathname(absolutify(rawPathname))\n if (pathCache.has(trimmedPathname)) {\n return pathCache.get(trimmedPathname)\n }\n\n let foundPath = findMatchPath(trimmedPathname)\n\n if (!foundPath) {\n foundPath = cleanPath(rawPathname)\n }\n\n pathCache.set(trimmedPathname, foundPath)\n\n return foundPath\n}\n\n/**\n * Clean a url and converts /index.html => /\n * E.g. `/foo?bar=far` => `/foo`\n *\n * @param {string} rawPathname A raw pathname\n * @return {string}\n */\nexport const cleanPath = rawPathname => {\n const trimmedPathname = trimPathname(absolutify(rawPathname))\n\n let foundPath = trimmedPathname\n if (foundPath === `/index.html`) {\n foundPath = `/`\n }\n\n foundPath = normalizePagePath(foundPath)\n\n return foundPath\n}\n","var hasOwnProperty = {}.hasOwnProperty;\n\nmodule.exports = function (it, key) {\n return hasOwnProperty.call(it, key);\n};\n","\"use strict\";\n\nexports.__esModule = true;\nexports.useScrollRestoration = useScrollRestoration;\n\nvar _scrollHandler = require(\"./scroll-handler\");\n\nvar _react = require(\"react\");\n\nvar _router = require(\"@reach/router\");\n\nfunction useScrollRestoration(identifier) {\n var location = (0, _router.useLocation)();\n var state = (0, _react.useContext)(_scrollHandler.ScrollContext);\n var ref = (0, _react.useRef)();\n (0, _react.useLayoutEffect)(function () {\n if (ref.current) {\n var position = state.read(location, identifier);\n ref.current.scrollTo(0, position || 0);\n }\n }, []);\n return {\n ref: ref,\n onScroll: function onScroll() {\n if (ref.current) {\n state.save(location, identifier, ref.current.scrollTop);\n }\n }\n };\n}","module.exports = function (bitmap, value) {\n return {\n enumerable: !(bitmap & 1),\n configurable: !(bitmap & 2),\n writable: !(bitmap & 4),\n value: value\n };\n};\n","// `RequireObjectCoercible` abstract operation\n// https://tc39.es/ecma262/#sec-requireobjectcoercible\nmodule.exports = function (it) {\n if (it == undefined) throw TypeError(\"Can't call method on \" + it);\n return it;\n};\n","// \n// An event handler can take an optional event argument\n// and should not return a value\n \n \n\n// An array of all currently registered event handlers for a type\n \n \n// A map of event types and their corresponding event handlers.\n \n \n \n \n\n/** Mitt: Tiny (~200b) functional event emitter / pubsub.\n * @name mitt\n * @returns {Mitt}\n */\nfunction mitt(all ) {\n\tall = all || Object.create(null);\n\n\treturn {\n\t\t/**\n\t\t * Register an event handler for the given type.\n\t\t *\n\t\t * @param {String} type\tType of event to listen for, or `\"*\"` for all events\n\t\t * @param {Function} handler Function to call in response to given event\n\t\t * @memberOf mitt\n\t\t */\n\t\ton: function on(type , handler ) {\n\t\t\t(all[type] || (all[type] = [])).push(handler);\n\t\t},\n\n\t\t/**\n\t\t * Remove an event handler for the given type.\n\t\t *\n\t\t * @param {String} type\tType of event to unregister `handler` from, or `\"*\"`\n\t\t * @param {Function} handler Handler function to remove\n\t\t * @memberOf mitt\n\t\t */\n\t\toff: function off(type , handler ) {\n\t\t\tif (all[type]) {\n\t\t\t\tall[type].splice(all[type].indexOf(handler) >>> 0, 1);\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Invoke all handlers for the given type.\n\t\t * If present, `\"*\"` handlers are invoked after type-matched handlers.\n\t\t *\n\t\t * @param {String} type The event type to invoke\n\t\t * @param {Any} [evt] Any value (object is recommended and powerful), passed to each handler\n\t\t * @memberOf mitt\n\t\t */\n\t\temit: function emit(type , evt ) {\n\t\t\t(all[type] || []).slice().map(function (handler) { handler(evt); });\n\t\t\t(all['*'] || []).slice().map(function (handler) { handler(type, evt); });\n\t\t}\n\t};\n}\n\nexport default mitt;\n//# sourceMappingURL=mitt.es.js.map\n","import mitt from \"mitt\"\n\nconst emitter = mitt()\nexport default emitter\n","'use strict';\nvar nativePropertyIsEnumerable = {}.propertyIsEnumerable;\nvar getOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// Nashorn ~ JDK8 bug\nvar NASHORN_BUG = getOwnPropertyDescriptor && !nativePropertyIsEnumerable.call({ 1: 2 }, 1);\n\n// `Object.prototype.propertyIsEnumerable` method implementation\n// https://tc39.es/ecma262/#sec-object.prototype.propertyisenumerable\nexports.f = NASHORN_BUG ? function propertyIsEnumerable(V) {\n var descriptor = getOwnPropertyDescriptor(this, V);\n return !!descriptor && descriptor.enumerable;\n} : nativePropertyIsEnumerable;\n","var has = require('../internals/has');\nvar ownKeys = require('../internals/own-keys');\nvar getOwnPropertyDescriptorModule = require('../internals/object-get-own-property-descriptor');\nvar definePropertyModule = require('../internals/object-define-property');\n\nmodule.exports = function (target, source) {\n var keys = ownKeys(source);\n var defineProperty = definePropertyModule.f;\n var getOwnPropertyDescriptor = getOwnPropertyDescriptorModule.f;\n for (var i = 0; i < keys.length; i++) {\n var key = keys[i];\n if (!has(target, key)) defineProperty(target, key, getOwnPropertyDescriptor(source, key));\n }\n};\n","\"use strict\";\n\nexports.__esModule = true;\nexports.useScrollRestoration = exports.ScrollContainer = exports.ScrollContext = void 0;\n\nvar _scrollHandler = require(\"./scroll-handler\");\n\nexports.ScrollContext = _scrollHandler.ScrollHandler;\n\nvar _scrollContainer = require(\"./scroll-container\");\n\nexports.ScrollContainer = _scrollContainer.ScrollContainer;\n\nvar _useScrollRestoration = require(\"./use-scroll-restoration\");\n\nexports.useScrollRestoration = _useScrollRestoration.useScrollRestoration;","function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nmodule.exports = _objectWithoutPropertiesLoose;","var IS_PURE = require('../internals/is-pure');\nvar store = require('../internals/shared-store');\n\n(module.exports = function (key, value) {\n return store[key] || (store[key] = value !== undefined ? value : {});\n})('versions', []).push({\n version: '3.8.2',\n mode: IS_PURE ? 'pure' : 'global',\n copyright: '© 2021 Denis Pushkarev (zloirock.ru)'\n});\n","var fails = require('../internals/fails');\nvar classof = require('../internals/classof-raw');\n\nvar split = ''.split;\n\n// fallback for non-array-like ES3 and non-enumerable old V8 strings\nmodule.exports = fails(function () {\n // throws an error in rhino, see https://github.com/mozilla/rhino/issues/346\n // eslint-disable-next-line no-prototype-builtins\n return !Object('z').propertyIsEnumerable(0);\n}) ? function (it) {\n return classof(it) == 'String' ? split.call(it, '') : Object(it);\n} : Object;\n","exports.polyfill = Component => Component\n","var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar getLocation = function getLocation(source) {\n var _source$location = source.location,\n search = _source$location.search,\n hash = _source$location.hash,\n href = _source$location.href,\n origin = _source$location.origin,\n protocol = _source$location.protocol,\n host = _source$location.host,\n hostname = _source$location.hostname,\n port = _source$location.port;\n var pathname = source.location.pathname;\n\n\n if (!pathname && href && canUseDOM) {\n var url = new URL(href);\n pathname = url.pathname;\n }\n\n return {\n pathname: encodeURI(decodeURI(pathname)),\n search: search,\n hash: hash,\n href: href,\n origin: origin,\n protocol: protocol,\n host: host,\n hostname: hostname,\n port: port,\n state: source.history.state,\n key: source.history.state && source.history.state.key || \"initial\"\n };\n};\n\nvar createHistory = function createHistory(source, options) {\n var listeners = [];\n var location = getLocation(source);\n var transitioning = false;\n var resolveTransition = function resolveTransition() {};\n\n return {\n get location() {\n return location;\n },\n\n get transitioning() {\n return transitioning;\n },\n\n _onTransitionComplete: function _onTransitionComplete() {\n transitioning = false;\n resolveTransition();\n },\n listen: function listen(listener) {\n listeners.push(listener);\n\n var popstateListener = function popstateListener() {\n location = getLocation(source);\n listener({ location: location, action: \"POP\" });\n };\n\n source.addEventListener(\"popstate\", popstateListener);\n\n return function () {\n source.removeEventListener(\"popstate\", popstateListener);\n listeners = listeners.filter(function (fn) {\n return fn !== listener;\n });\n };\n },\n navigate: function navigate(to) {\n var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n state = _ref.state,\n _ref$replace = _ref.replace,\n replace = _ref$replace === undefined ? false : _ref$replace;\n\n if (typeof to === \"number\") {\n source.history.go(to);\n } else {\n state = _extends({}, state, { key: Date.now() + \"\" });\n // try...catch iOS Safari limits to 100 pushState calls\n try {\n if (transitioning || replace) {\n source.history.replaceState(state, null, to);\n } else {\n source.history.pushState(state, null, to);\n }\n } catch (e) {\n source.location[replace ? \"replace\" : \"assign\"](to);\n }\n }\n\n location = getLocation(source);\n transitioning = true;\n var transition = new Promise(function (res) {\n return resolveTransition = res;\n });\n listeners.forEach(function (listener) {\n return listener({ location: location, action: \"PUSH\" });\n });\n return transition;\n }\n };\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// Stores history entries in memory for testing or other platforms like Native\nvar createMemorySource = function createMemorySource() {\n var initialPath = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : \"/\";\n\n var searchIndex = initialPath.indexOf(\"?\");\n var initialLocation = {\n pathname: searchIndex > -1 ? initialPath.substr(0, searchIndex) : initialPath,\n search: searchIndex > -1 ? initialPath.substr(searchIndex) : \"\"\n };\n var index = 0;\n var stack = [initialLocation];\n var states = [null];\n\n return {\n get location() {\n return stack[index];\n },\n addEventListener: function addEventListener(name, fn) {},\n removeEventListener: function removeEventListener(name, fn) {},\n\n history: {\n get entries() {\n return stack;\n },\n get index() {\n return index;\n },\n get state() {\n return states[index];\n },\n pushState: function pushState(state, _, uri) {\n var _uri$split = uri.split(\"?\"),\n pathname = _uri$split[0],\n _uri$split$ = _uri$split[1],\n search = _uri$split$ === undefined ? \"\" : _uri$split$;\n\n index++;\n stack.push({ pathname: pathname, search: search.length ? \"?\" + search : search });\n states.push(state);\n },\n replaceState: function replaceState(state, _, uri) {\n var _uri$split2 = uri.split(\"?\"),\n pathname = _uri$split2[0],\n _uri$split2$ = _uri$split2[1],\n search = _uri$split2$ === undefined ? \"\" : _uri$split2$;\n\n stack[index] = { pathname: pathname, search: search };\n states[index] = state;\n },\n go: function go(to) {\n var newIndex = index + to;\n\n if (newIndex < 0 || newIndex > states.length - 1) {\n return;\n }\n\n index = newIndex;\n }\n }\n };\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// global history - uses window.history as the source if available, otherwise a\n// memory history\nvar canUseDOM = !!(typeof window !== \"undefined\" && window.document && window.document.createElement);\nvar getSource = function getSource() {\n return canUseDOM ? window : createMemorySource();\n};\n\nvar globalHistory = createHistory(getSource());\nvar navigate = globalHistory.navigate;\n\n////////////////////////////////////////////////////////////////////////////////\n\nexport { globalHistory, navigate, createHistory, createMemorySource };","var global = require('../internals/global');\nvar userAgent = require('../internals/engine-user-agent');\n\nvar process = global.process;\nvar versions = process && process.versions;\nvar v8 = versions && versions.v8;\nvar match, version;\n\nif (v8) {\n match = v8.split('.');\n version = match[0] + match[1];\n} else if (userAgent) {\n match = userAgent.match(/Edge\\/(\\d+)/);\n if (!match || match[1] >= 74) {\n match = userAgent.match(/Chrome\\/(\\d+)/);\n if (match) version = match[1];\n }\n}\n\nmodule.exports = version && +version;\n","var DESCRIPTORS = require('../internals/descriptors');\nvar definePropertyModule = require('../internals/object-define-property');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\n\nmodule.exports = DESCRIPTORS ? function (object, key, value) {\n return definePropertyModule.f(object, key, createPropertyDescriptor(1, value));\n} : function (object, key, value) {\n object[key] = value;\n return object;\n};\n","var global = require('../internals/global');\nvar isObject = require('../internals/is-object');\n\nvar document = global.document;\n// typeof document.createElement is 'object' in old IE\nvar EXISTS = isObject(document) && isObject(document.createElement);\n\nmodule.exports = function (it) {\n return EXISTS ? document.createElement(it) : {};\n};\n","var classof = require('../internals/classof-raw');\nvar global = require('../internals/global');\n\nmodule.exports = classof(global.process) == 'process';\n","var NATIVE_WEAK_MAP = require('../internals/native-weak-map');\nvar global = require('../internals/global');\nvar isObject = require('../internals/is-object');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar objectHas = require('../internals/has');\nvar shared = require('../internals/shared-store');\nvar sharedKey = require('../internals/shared-key');\nvar hiddenKeys = require('../internals/hidden-keys');\n\nvar WeakMap = global.WeakMap;\nvar set, get, has;\n\nvar enforce = function (it) {\n return has(it) ? get(it) : set(it, {});\n};\n\nvar getterFor = function (TYPE) {\n return function (it) {\n var state;\n if (!isObject(it) || (state = get(it)).type !== TYPE) {\n throw TypeError('Incompatible receiver, ' + TYPE + ' required');\n } return state;\n };\n};\n\nif (NATIVE_WEAK_MAP) {\n var store = shared.state || (shared.state = new WeakMap());\n var wmget = store.get;\n var wmhas = store.has;\n var wmset = store.set;\n set = function (it, metadata) {\n metadata.facade = it;\n wmset.call(store, it, metadata);\n return metadata;\n };\n get = function (it) {\n return wmget.call(store, it) || {};\n };\n has = function (it) {\n return wmhas.call(store, it);\n };\n} else {\n var STATE = sharedKey('state');\n hiddenKeys[STATE] = true;\n set = function (it, metadata) {\n metadata.facade = it;\n createNonEnumerableProperty(it, STATE, metadata);\n return metadata;\n };\n get = function (it) {\n return objectHas(it, STATE) ? it[STATE] : {};\n };\n has = function (it) {\n return objectHas(it, STATE);\n };\n}\n\nmodule.exports = {\n set: set,\n get: get,\n has: has,\n enforce: enforce,\n getterFor: getterFor\n};\n","\"use strict\";\n\nvar _interopRequireWildcard = require(\"@babel/runtime/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.ScrollHandler = exports.ScrollContext = void 0;\n\nvar _assertThisInitialized2 = _interopRequireDefault(require(\"@babel/runtime/helpers/assertThisInitialized\"));\n\nvar _inheritsLoose2 = _interopRequireDefault(require(\"@babel/runtime/helpers/inheritsLoose\"));\n\nvar React = _interopRequireWildcard(require(\"react\"));\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _sessionStorage = require(\"./session-storage\");\n\nvar ScrollContext = /*#__PURE__*/React.createContext(new _sessionStorage.SessionStorage());\nexports.ScrollContext = ScrollContext;\nScrollContext.displayName = \"GatsbyScrollContext\";\n\nvar ScrollHandler = /*#__PURE__*/function (_React$Component) {\n (0, _inheritsLoose2.default)(ScrollHandler, _React$Component);\n\n function ScrollHandler() {\n var _this;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;\n _this._stateStorage = new _sessionStorage.SessionStorage();\n\n _this.scrollListener = function () {\n var key = _this.props.location.key;\n\n if (key) {\n _this._stateStorage.save(_this.props.location, key, window.scrollY);\n }\n };\n\n _this.windowScroll = function (position, prevProps) {\n if (_this.shouldUpdateScroll(prevProps, _this.props)) {\n window.scrollTo(0, position);\n }\n };\n\n _this.scrollToHash = function (hash, prevProps) {\n var node = document.getElementById(hash.substring(1));\n\n if (node && _this.shouldUpdateScroll(prevProps, _this.props)) {\n node.scrollIntoView();\n }\n };\n\n _this.shouldUpdateScroll = function (prevRouterProps, routerProps) {\n var shouldUpdateScroll = _this.props.shouldUpdateScroll;\n\n if (!shouldUpdateScroll) {\n return true;\n } // Hack to allow accessing this._stateStorage.\n\n\n return shouldUpdateScroll.call((0, _assertThisInitialized2.default)(_this), prevRouterProps, routerProps);\n };\n\n return _this;\n }\n\n var _proto = ScrollHandler.prototype;\n\n _proto.componentDidMount = function componentDidMount() {\n window.addEventListener(\"scroll\", this.scrollListener);\n var scrollPosition;\n var _this$props$location = this.props.location,\n key = _this$props$location.key,\n hash = _this$props$location.hash;\n\n if (key) {\n scrollPosition = this._stateStorage.read(this.props.location, key);\n }\n\n if (scrollPosition) {\n this.windowScroll(scrollPosition, undefined);\n } else if (hash) {\n this.scrollToHash(decodeURI(hash), undefined);\n }\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n window.removeEventListener(\"scroll\", this.scrollListener);\n };\n\n _proto.componentDidUpdate = function componentDidUpdate(prevProps) {\n var _this$props$location2 = this.props.location,\n hash = _this$props$location2.hash,\n key = _this$props$location2.key;\n var scrollPosition;\n\n if (key) {\n scrollPosition = this._stateStorage.read(this.props.location, key);\n }\n /** There are two pieces of state: the browser url and\n * history state which keeps track of scroll position\n * Native behaviour prescribes that we ought to restore scroll position\n * when a user navigates back in their browser (this is the `POP` action)\n * Currently, reach router has a bug that prevents this at https://github.com/reach/router/issues/228\n * So we _always_ stick to the url as a source of truth — if the url\n * contains a hash, we scroll to it\n */\n\n\n if (hash) {\n this.scrollToHash(decodeURI(hash), prevProps);\n } else {\n this.windowScroll(scrollPosition, prevProps);\n }\n };\n\n _proto.render = function render() {\n return /*#__PURE__*/React.createElement(ScrollContext.Provider, {\n value: this._stateStorage\n }, this.props.children);\n };\n\n return ScrollHandler;\n}(React.Component);\n\nexports.ScrollHandler = ScrollHandler;\nScrollHandler.propTypes = {\n shouldUpdateScroll: _propTypes.default.func,\n children: _propTypes.default.element.isRequired,\n location: _propTypes.default.object.isRequired\n};","var id = 0;\nvar postfix = Math.random();\n\nmodule.exports = function (key) {\n return 'Symbol(' + String(key === undefined ? '' : key) + ')_' + (++id + postfix).toString(36);\n};\n","// IE8- don't enum bug keys\nmodule.exports = [\n 'constructor',\n 'hasOwnProperty',\n 'isPrototypeOf',\n 'propertyIsEnumerable',\n 'toLocaleString',\n 'toString',\n 'valueOf'\n];\n","var DESCRIPTORS = require('../internals/descriptors');\nvar propertyIsEnumerableModule = require('../internals/object-property-is-enumerable');\nvar createPropertyDescriptor = require('../internals/create-property-descriptor');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar toPrimitive = require('../internals/to-primitive');\nvar has = require('../internals/has');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\n\nvar nativeGetOwnPropertyDescriptor = Object.getOwnPropertyDescriptor;\n\n// `Object.getOwnPropertyDescriptor` method\n// https://tc39.es/ecma262/#sec-object.getownpropertydescriptor\nexports.f = DESCRIPTORS ? nativeGetOwnPropertyDescriptor : function getOwnPropertyDescriptor(O, P) {\n O = toIndexedObject(O);\n P = toPrimitive(P, true);\n if (IE8_DOM_DEFINE) try {\n return nativeGetOwnPropertyDescriptor(O, P);\n } catch (error) { /* empty */ }\n if (has(O, P)) return createPropertyDescriptor(!propertyIsEnumerableModule.f.call(O, P), O[P]);\n};\n","module.exports = {};\n","import React, { createElement } from \"react\"\nimport PropTypes from \"prop-types\"\nimport { publicLoader } from \"./loader\"\nimport { apiRunner } from \"./api-runner-browser\"\nimport { grabMatchParams } from \"./find-path\"\n\n// Renders page\nclass PageRenderer extends React.Component {\n render() {\n const props = {\n ...this.props,\n params: {\n ...grabMatchParams(this.props.location.pathname),\n ...this.props.pageResources.json.pageContext.__params,\n },\n pathContext: this.props.pageContext,\n }\n\n const [replacementElement] = apiRunner(`replaceComponentRenderer`, {\n props: this.props,\n loader: publicLoader,\n })\n\n const pageElement =\n replacementElement ||\n createElement(this.props.pageResources.component, {\n ...props,\n key: this.props.path || this.props.pageResources.page.path,\n })\n\n const wrappedPage = apiRunner(\n `wrapPageElement`,\n { element: pageElement, props },\n pageElement,\n ({ result }) => {\n return { element: result, props }\n }\n ).pop()\n\n return wrappedPage\n }\n}\n\nPageRenderer.propTypes = {\n location: PropTypes.object.isRequired,\n pageResources: PropTypes.object.isRequired,\n data: PropTypes.object,\n pageContext: PropTypes.object.isRequired,\n}\n\nexport default PageRenderer\n","var fails = require('../internals/fails');\n\n// Detect IE8's incomplete defineProperty implementation\nmodule.exports = !fails(function () {\n return Object.defineProperty({}, 1, { get: function () { return 7; } })[1] != 7;\n});\n","module.exports = function (exec) {\n try {\n return !!exec();\n } catch (error) {\n return true;\n }\n};\n","import invariant from \"invariant\";\n\n////////////////////////////////////////////////////////////////////////////////\n// startsWith(string, search) - Check if `string` starts with `search`\nvar startsWith = function startsWith(string, search) {\n return string.substr(0, search.length) === search;\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// pick(routes, uri)\n//\n// Ranks and picks the best route to match. Each segment gets the highest\n// amount of points, then the type of segment gets an additional amount of\n// points where\n//\n// static > dynamic > splat > root\n//\n// This way we don't have to worry about the order of our routes, let the\n// computers do it.\n//\n// A route looks like this\n//\n// { path, default, value }\n//\n// And a returned match looks like:\n//\n// { route, params, uri }\n//\n// I know, I should use TypeScript not comments for these types.\nvar pick = function pick(routes, uri) {\n var match = void 0;\n var default_ = void 0;\n\n var _uri$split = uri.split(\"?\"),\n uriPathname = _uri$split[0];\n\n var uriSegments = segmentize(uriPathname);\n var isRootUri = uriSegments[0] === \"\";\n var ranked = rankRoutes(routes);\n\n for (var i = 0, l = ranked.length; i < l; i++) {\n var missed = false;\n var route = ranked[i].route;\n\n if (route.default) {\n default_ = {\n route: route,\n params: {},\n uri: uri\n };\n continue;\n }\n\n var routeSegments = segmentize(route.path);\n var params = {};\n var max = Math.max(uriSegments.length, routeSegments.length);\n var index = 0;\n\n for (; index < max; index++) {\n var routeSegment = routeSegments[index];\n var uriSegment = uriSegments[index];\n\n if (isSplat(routeSegment)) {\n // Hit a splat, just grab the rest, and return a match\n // uri: /files/documents/work\n // route: /files/*\n var param = routeSegment.slice(1) || \"*\";\n params[param] = uriSegments.slice(index).map(decodeURIComponent).join(\"/\");\n break;\n }\n\n if (uriSegment === undefined) {\n // URI is shorter than the route, no match\n // uri: /users\n // route: /users/:userId\n missed = true;\n break;\n }\n\n var dynamicMatch = paramRe.exec(routeSegment);\n\n if (dynamicMatch && !isRootUri) {\n var matchIsNotReserved = reservedNames.indexOf(dynamicMatch[1]) === -1;\n !matchIsNotReserved ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"<Router> dynamic segment \\\"\" + dynamicMatch[1] + \"\\\" is a reserved name. Please use a different name in path \\\"\" + route.path + \"\\\".\") : invariant(false) : void 0;\n var value = decodeURIComponent(uriSegment);\n params[dynamicMatch[1]] = value;\n } else if (routeSegment !== uriSegment) {\n // Current segments don't match, not dynamic, not splat, so no match\n // uri: /users/123/settings\n // route: /users/:id/profile\n missed = true;\n break;\n }\n }\n\n if (!missed) {\n match = {\n route: route,\n params: params,\n uri: \"/\" + uriSegments.slice(0, index).join(\"/\")\n };\n break;\n }\n }\n\n return match || default_ || null;\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// match(path, uri) - Matches just one path to a uri, also lol\nvar match = function match(path, uri) {\n return pick([{ path: path }], uri);\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// resolve(to, basepath)\n//\n// Resolves URIs as though every path is a directory, no files. Relative URIs\n// in the browser can feel awkward because not only can you be \"in a directory\"\n// you can be \"at a file\", too. For example\n//\n// browserSpecResolve('foo', '/bar/') => /bar/foo\n// browserSpecResolve('foo', '/bar') => /foo\n//\n// But on the command line of a file system, it's not as complicated, you can't\n// `cd` from a file, only directories. This way, links have to know less about\n// their current path. To go deeper you can do this:\n//\n// <Link to=\"deeper\"/>\n// // instead of\n// <Link to=`{${props.uri}/deeper}`/>\n//\n// Just like `cd`, if you want to go deeper from the command line, you do this:\n//\n// cd deeper\n// # not\n// cd $(pwd)/deeper\n//\n// By treating every path as a directory, linking to relative paths should\n// require less contextual information and (fingers crossed) be more intuitive.\nvar resolve = function resolve(to, base) {\n // /foo/bar, /baz/qux => /foo/bar\n if (startsWith(to, \"/\")) {\n return to;\n }\n\n var _to$split = to.split(\"?\"),\n toPathname = _to$split[0],\n toQuery = _to$split[1];\n\n var _base$split = base.split(\"?\"),\n basePathname = _base$split[0];\n\n var toSegments = segmentize(toPathname);\n var baseSegments = segmentize(basePathname);\n\n // ?a=b, /users?b=c => /users?a=b\n if (toSegments[0] === \"\") {\n return addQuery(basePathname, toQuery);\n }\n\n // profile, /users/789 => /users/789/profile\n if (!startsWith(toSegments[0], \".\")) {\n var pathname = baseSegments.concat(toSegments).join(\"/\");\n return addQuery((basePathname === \"/\" ? \"\" : \"/\") + pathname, toQuery);\n }\n\n // ./ /users/123 => /users/123\n // ../ /users/123 => /users\n // ../.. /users/123 => /\n // ../../one /a/b/c/d => /a/b/one\n // .././one /a/b/c/d => /a/b/c/one\n var allSegments = baseSegments.concat(toSegments);\n var segments = [];\n for (var i = 0, l = allSegments.length; i < l; i++) {\n var segment = allSegments[i];\n if (segment === \"..\") segments.pop();else if (segment !== \".\") segments.push(segment);\n }\n\n return addQuery(\"/\" + segments.join(\"/\"), toQuery);\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// insertParams(path, params)\n\nvar insertParams = function insertParams(path, params) {\n var _path$split = path.split(\"?\"),\n pathBase = _path$split[0],\n _path$split$ = _path$split[1],\n query = _path$split$ === undefined ? \"\" : _path$split$;\n\n var segments = segmentize(pathBase);\n var constructedPath = \"/\" + segments.map(function (segment) {\n var match = paramRe.exec(segment);\n return match ? params[match[1]] : segment;\n }).join(\"/\");\n var _params$location = params.location;\n _params$location = _params$location === undefined ? {} : _params$location;\n var _params$location$sear = _params$location.search,\n search = _params$location$sear === undefined ? \"\" : _params$location$sear;\n\n var searchSplit = search.split(\"?\")[1] || \"\";\n constructedPath = addQuery(constructedPath, query, searchSplit);\n return constructedPath;\n};\n\nvar validateRedirect = function validateRedirect(from, to) {\n var filter = function filter(segment) {\n return isDynamic(segment);\n };\n var fromString = segmentize(from).filter(filter).sort().join(\"/\");\n var toString = segmentize(to).filter(filter).sort().join(\"/\");\n return fromString === toString;\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// Junk\nvar paramRe = /^:(.+)/;\n\nvar SEGMENT_POINTS = 4;\nvar STATIC_POINTS = 3;\nvar DYNAMIC_POINTS = 2;\nvar SPLAT_PENALTY = 1;\nvar ROOT_POINTS = 1;\n\nvar isRootSegment = function isRootSegment(segment) {\n return segment === \"\";\n};\nvar isDynamic = function isDynamic(segment) {\n return paramRe.test(segment);\n};\nvar isSplat = function isSplat(segment) {\n return segment && segment[0] === \"*\";\n};\n\nvar rankRoute = function rankRoute(route, index) {\n var score = route.default ? 0 : segmentize(route.path).reduce(function (score, segment) {\n score += SEGMENT_POINTS;\n if (isRootSegment(segment)) score += ROOT_POINTS;else if (isDynamic(segment)) score += DYNAMIC_POINTS;else if (isSplat(segment)) score -= SEGMENT_POINTS + SPLAT_PENALTY;else score += STATIC_POINTS;\n return score;\n }, 0);\n return { route: route, score: score, index: index };\n};\n\nvar rankRoutes = function rankRoutes(routes) {\n return routes.map(rankRoute).sort(function (a, b) {\n return a.score < b.score ? 1 : a.score > b.score ? -1 : a.index - b.index;\n });\n};\n\nvar segmentize = function segmentize(uri) {\n return uri\n // strip starting/ending slashes\n .replace(/(^\\/+|\\/+$)/g, \"\").split(\"/\");\n};\n\nvar addQuery = function addQuery(pathname) {\n for (var _len = arguments.length, query = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n query[_key - 1] = arguments[_key];\n }\n\n query = query.filter(function (q) {\n return q && q.length > 0;\n });\n return pathname + (query && query.length > 0 ? \"?\" + query.join(\"&\") : \"\");\n};\n\nvar reservedNames = [\"uri\", \"path\"];\n\n/**\n * Shallow compares two objects.\n * @param {Object} obj1 The first object to compare.\n * @param {Object} obj2 The second object to compare.\n */\nvar shallowCompare = function shallowCompare(obj1, obj2) {\n var obj1Keys = Object.keys(obj1);\n return obj1Keys.length === Object.keys(obj2).length && obj1Keys.every(function (key) {\n return obj2.hasOwnProperty(key) && obj1[key] === obj2[key];\n });\n};\n\n////////////////////////////////////////////////////////////////////////////////\nexport { startsWith, pick, match, resolve, insertParams, validateRedirect, shallowCompare };","module.exports = [{\n plugin: require('../node_modules/gatsby-remark-autolink-headers/gatsby-browser.js'),\n options: {\"plugins\":[],\"offsetY\":0,\"className\":\"anchor\"},\n }]\n","var toIndexedObject = require('../internals/to-indexed-object');\nvar toLength = require('../internals/to-length');\nvar toAbsoluteIndex = require('../internals/to-absolute-index');\n\n// `Array.prototype.{ indexOf, includes }` methods implementation\nvar createMethod = function (IS_INCLUDES) {\n return function ($this, el, fromIndex) {\n var O = toIndexedObject($this);\n var length = toLength(O.length);\n var index = toAbsoluteIndex(fromIndex, length);\n var value;\n // Array#includes uses SameValueZero equality algorithm\n // eslint-disable-next-line no-self-compare\n if (IS_INCLUDES && el != el) while (length > index) {\n value = O[index++];\n // eslint-disable-next-line no-self-compare\n if (value != value) return true;\n // Array#indexOf ignores holes, Array#includes - not\n } else for (;length > index; index++) {\n if ((IS_INCLUDES || index in O) && O[index] === el) return IS_INCLUDES || index || 0;\n } return !IS_INCLUDES && -1;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.includes` method\n // https://tc39.es/ecma262/#sec-array.prototype.includes\n includes: createMethod(true),\n // `Array.prototype.indexOf` method\n // https://tc39.es/ecma262/#sec-array.prototype.indexof\n indexOf: createMethod(false)\n};\n","/*!\n * domready (c) Dustin Diaz 2014 - License MIT\n * ie10 fix - Mikael Kristiansson 2019\n */\n!(function(name, definition) {\n if (typeof module != \"undefined\") module.exports = definition();\n else if (typeof define == \"function\" && typeof define.amd == \"object\")\n define(definition);\n else this[name] = definition();\n})(\"domready\", function() {\n var ie10 = false;\n if (navigator.appVersion.indexOf(\"MSIE 10\") !== -1) {\n ie10 = true;\n }\n\n var fns = [],\n listener,\n doc = typeof document === \"object\" && document,\n hack = ie10\n ? doc.documentElement.doScroll(\"left\")\n : doc.documentElement.doScroll,\n domContentLoaded = \"DOMContentLoaded\",\n loaded =\n doc && (hack ? /^loaded|^c/ : /^loaded|^i|^c/).test(doc.readyState);\n\n if (!loaded && doc)\n doc.addEventListener(\n domContentLoaded,\n (listener = function() {\n doc.removeEventListener(domContentLoaded, listener);\n loaded = 1;\n while ((listener = fns.shift())) listener();\n })\n );\n\n return function(fn) {\n loaded ? setTimeout(fn, 0) : fns.push(fn);\n };\n});\n","import { apiRunner } from \"./api-runner-browser\"\n\nif (\n window.location.protocol !== `https:` &&\n window.location.hostname !== `localhost`\n) {\n console.error(\n `Service workers can only be used over HTTPS, or on localhost for development`\n )\n} else if (`serviceWorker` in navigator) {\n navigator.serviceWorker\n .register(`${__BASE_PATH__}/sw.js`)\n .then(function (reg) {\n reg.addEventListener(`updatefound`, () => {\n apiRunner(`onServiceWorkerUpdateFound`, { serviceWorker: reg })\n // The updatefound event implies that reg.installing is set; see\n // https://w3c.github.io/ServiceWorker/#service-worker-registration-updatefound-event\n const installingWorker = reg.installing\n console.log(`installingWorker`, installingWorker)\n installingWorker.addEventListener(`statechange`, () => {\n switch (installingWorker.state) {\n case `installed`:\n if (navigator.serviceWorker.controller) {\n // At this point, the old content will have been purged and the fresh content will\n // have been added to the cache.\n\n // We set a flag so Gatsby Link knows to refresh the page on next navigation attempt\n window.___swUpdated = true\n // We call the onServiceWorkerUpdateReady API so users can show update prompts.\n apiRunner(`onServiceWorkerUpdateReady`, { serviceWorker: reg })\n\n // If resources failed for the current page, reload.\n if (window.___failedResources) {\n console.log(`resources failed, SW updated - reloading`)\n window.location.reload()\n }\n } else {\n // At this point, everything has been precached.\n // It's the perfect time to display a \"Content is cached for offline use.\" message.\n console.log(`Content is now available offline!`)\n\n // Post to service worker that install is complete.\n // Delay to allow time for the event listener to be added --\n // otherwise fetch is called too soon and resources aren't cached.\n apiRunner(`onServiceWorkerInstalled`, { serviceWorker: reg })\n }\n break\n\n case `redundant`:\n console.error(`The installing service worker became redundant.`)\n apiRunner(`onServiceWorkerRedundant`, { serviceWorker: reg })\n break\n\n case `activated`:\n apiRunner(`onServiceWorkerActive`, { serviceWorker: reg })\n break\n }\n })\n })\n })\n .catch(function (e) {\n console.error(`Error during service worker registration:`, e)\n })\n}\n","// prefer default export if available\nconst preferDefault = m => (m && m.default) || m\n\nexports.components = {\n \"component---src-pages-quickstarts-index-jsx\": () => import(\"./../../../src/pages/quickstarts/index.jsx\" /* webpackChunkName: \"component---src-pages-quickstarts-index-jsx\" */),\n \"component---src-templates-doc-jsx\": () => import(\"./../../../src/templates/doc.jsx\" /* webpackChunkName: \"component---src-templates-doc-jsx\" */),\n \"component---src-templates-main-jsx\": () => import(\"./../../../src/templates/main.jsx\" /* webpackChunkName: \"component---src-templates-main-jsx\" */)\n}\n\n","function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nmodule.exports = _assertThisInitialized;","var isObject = require('../internals/is-object');\n\n// `ToPrimitive` abstract operation\n// https://tc39.es/ecma262/#sec-toprimitive\n// instead of the ES6 spec version, we didn't implement @@toPrimitive case\n// and the second argument - flag - preferred type is a string\nmodule.exports = function (input, PREFERRED_STRING) {\n if (!isObject(input)) return input;\n var fn, val;\n if (PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;\n if (typeof (fn = input.valueOf) == 'function' && !isObject(val = fn.call(input))) return val;\n if (!PREFERRED_STRING && typeof (fn = input.toString) == 'function' && !isObject(val = fn.call(input))) return val;\n throw TypeError(\"Can't convert object to primitive value\");\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\n/**\n * Use invariant() to assert state which your program assumes to be true.\n *\n * Provide sprintf-style format (only %s is supported) and arguments\n * to provide information about what broke and what you were\n * expecting.\n *\n * The invariant message will be stripped in production, but the invariant\n * will remain to ensure logic does not differ in production.\n */\n\nvar invariant = function(condition, format, a, b, c, d, e, f) {\n if (process.env.NODE_ENV !== 'production') {\n if (format === undefined) {\n throw new Error('invariant requires an error message argument');\n }\n }\n\n if (!condition) {\n var error;\n if (format === undefined) {\n error = new Error(\n 'Minified exception occurred; use the non-minified dev environment ' +\n 'for the full error message and additional helpful warnings.'\n );\n } else {\n var args = [a, b, c, d, e, f];\n var argIndex = 0;\n error = new Error(\n format.replace(/%s/g, function() { return args[argIndex++]; })\n );\n error.name = 'Invariant Violation';\n }\n\n error.framesToPop = 1; // we don't care about invariant's own frame\n throw error;\n }\n};\n\nmodule.exports = invariant;\n","var has = require('../internals/has');\nvar toIndexedObject = require('../internals/to-indexed-object');\nvar indexOf = require('../internals/array-includes').indexOf;\nvar hiddenKeys = require('../internals/hidden-keys');\n\nmodule.exports = function (object, names) {\n var O = toIndexedObject(object);\n var i = 0;\n var result = [];\n var key;\n for (key in O) !has(hiddenKeys, key) && has(O, key) && result.push(key);\n // Don't enum bug & hidden keys\n while (names.length > i) if (has(O, key = names[i++])) {\n ~indexOf(result, key) || result.push(key);\n }\n return result;\n};\n","'use strict';\nvar fails = require('../internals/fails');\n\nmodule.exports = function (METHOD_NAME, argument) {\n var method = [][METHOD_NAME];\n return !!method && fails(function () {\n // eslint-disable-next-line no-useless-call,no-throw-literal\n method.call(null, argument || function () { throw 1; }, 1);\n });\n};\n","var check = function (it) {\n return it && it.Math == Math && it;\n};\n\n// https://github.com/zloirock/core-js/issues/86#issuecomment-115759028\nmodule.exports =\n // eslint-disable-next-line no-undef\n check(typeof globalThis == 'object' && globalThis) ||\n check(typeof window == 'object' && window) ||\n check(typeof self == 'object' && self) ||\n check(typeof global == 'object' && global) ||\n // eslint-disable-next-line no-new-func\n (function () { return this; })() || Function('return this')();\n","'use strict';\nvar $ = require('../internals/export');\nvar $reduce = require('../internals/array-reduce').left;\nvar arrayMethodIsStrict = require('../internals/array-method-is-strict');\nvar arrayMethodUsesToLength = require('../internals/array-method-uses-to-length');\nvar CHROME_VERSION = require('../internals/engine-v8-version');\nvar IS_NODE = require('../internals/engine-is-node');\n\nvar STRICT_METHOD = arrayMethodIsStrict('reduce');\nvar USES_TO_LENGTH = arrayMethodUsesToLength('reduce', { 1: 0 });\n// Chrome 80-82 has a critical bug\n// https://bugs.chromium.org/p/chromium/issues/detail?id=1049982\nvar CHROME_BUG = !IS_NODE && CHROME_VERSION > 79 && CHROME_VERSION < 83;\n\n// `Array.prototype.reduce` method\n// https://tc39.es/ecma262/#sec-array.prototype.reduce\n$({ target: 'Array', proto: true, forced: !STRICT_METHOD || !USES_TO_LENGTH || CHROME_BUG }, {\n reduce: function reduce(callbackfn /* , initialValue */) {\n return $reduce(this, callbackfn, arguments.length, arguments.length > 1 ? arguments[1] : undefined);\n }\n});\n","var DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar createElement = require('../internals/document-create-element');\n\n// Thank's IE8 for his funny defineProperty\nmodule.exports = !DESCRIPTORS && !fails(function () {\n return Object.defineProperty(createElement('div'), 'a', {\n get: function () { return 7; }\n }).a != 7;\n});\n","var getBuiltIn = require('../internals/get-built-in');\nvar getOwnPropertyNamesModule = require('../internals/object-get-own-property-names');\nvar getOwnPropertySymbolsModule = require('../internals/object-get-own-property-symbols');\nvar anObject = require('../internals/an-object');\n\n// all object keys, includes non-enumerable and symbols\nmodule.exports = getBuiltIn('Reflect', 'ownKeys') || function ownKeys(it) {\n var keys = getOwnPropertyNamesModule.f(anObject(it));\n var getOwnPropertySymbols = getOwnPropertySymbolsModule.f;\n return getOwnPropertySymbols ? keys.concat(getOwnPropertySymbols(it)) : keys;\n};\n","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\n\nmodule.exports = _interopRequireDefault;","// This is extracted to separate module because it's shared\n// between browser and SSR code\nexport const RouteAnnouncerProps = {\n id: `gatsby-announcer`,\n style: {\n position: `absolute`,\n top: 0,\n width: 1,\n height: 1,\n padding: 0,\n overflow: `hidden`,\n clip: `rect(0, 0, 0, 0)`,\n whiteSpace: `nowrap`,\n border: 0,\n },\n \"aria-live\": `assertive`,\n \"aria-atomic\": `true`,\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\nimport loader, { PageResourceStatus } from \"./loader\"\nimport redirects from \"./redirects.json\"\nimport { apiRunner } from \"./api-runner-browser\"\nimport emitter from \"./emitter\"\nimport { RouteAnnouncerProps } from \"./route-announcer-props\"\nimport { navigate as reachNavigate } from \"@reach/router\"\nimport { globalHistory } from \"@reach/router/lib/history\"\nimport { parsePath } from \"gatsby-link\"\n\n// Convert to a map for faster lookup in maybeRedirect()\nconst redirectMap = redirects.reduce((map, redirect) => {\n map[redirect.fromPath] = redirect\n return map\n}, {})\n\nfunction maybeRedirect(pathname) {\n const redirect = redirectMap[pathname]\n\n if (redirect != null) {\n if (process.env.NODE_ENV !== `production`) {\n if (!loader.isPageNotFound(pathname)) {\n console.error(\n `The route \"${pathname}\" matches both a page and a redirect; this is probably not intentional.`\n )\n }\n }\n\n window.___replace(redirect.toPath)\n return true\n } else {\n return false\n }\n}\n\nconst onPreRouteUpdate = (location, prevLocation) => {\n if (!maybeRedirect(location.pathname)) {\n apiRunner(`onPreRouteUpdate`, { location, prevLocation })\n }\n}\n\nconst onRouteUpdate = (location, prevLocation) => {\n if (!maybeRedirect(location.pathname)) {\n apiRunner(`onRouteUpdate`, { location, prevLocation })\n if (\n process.env.GATSBY_EXPERIMENTAL_QUERY_ON_DEMAND &&\n process.env.GATSBY_QUERY_ON_DEMAND_LOADING_INDICATOR === `true`\n ) {\n emitter.emit(`onRouteUpdate`, { location, prevLocation })\n }\n }\n}\n\nconst navigate = (to, options = {}) => {\n // Support forward/backward navigation with numbers\n // navigate(-2) (jumps back 2 history steps)\n // navigate(2) (jumps forward 2 history steps)\n if (typeof to === `number`) {\n globalHistory.navigate(to)\n return\n }\n\n let { pathname } = parsePath(to)\n const redirect = redirectMap[pathname]\n\n // If we're redirecting, just replace the passed in pathname\n // to the one we want to redirect to.\n if (redirect) {\n to = redirect.toPath\n pathname = parsePath(to).pathname\n }\n\n // If we had a service worker update, no matter the path, reload window and\n // reset the pathname whitelist\n if (window.___swUpdated) {\n window.location = pathname\n return\n }\n\n // Start a timer to wait for a second before transitioning and showing a\n // loader in case resources aren't around yet.\n const timeoutId = setTimeout(() => {\n emitter.emit(`onDelayedLoadPageResources`, { pathname })\n apiRunner(`onRouteUpdateDelayed`, {\n location: window.location,\n })\n }, 1000)\n\n loader.loadPage(pathname).then(pageResources => {\n // If no page resources, then refresh the page\n // Do this, rather than simply `window.location.reload()`, so that\n // pressing the back/forward buttons work - otherwise when pressing\n // back, the browser will just change the URL and expect JS to handle\n // the change, which won't always work since it might not be a Gatsby\n // page.\n if (!pageResources || pageResources.status === PageResourceStatus.Error) {\n window.history.replaceState({}, ``, location.href)\n window.location = pathname\n clearTimeout(timeoutId)\n return\n }\n\n // If the loaded page has a different compilation hash to the\n // window, then a rebuild has occurred on the server. Reload.\n if (process.env.NODE_ENV === `production` && pageResources) {\n if (\n pageResources.page.webpackCompilationHash !==\n window.___webpackCompilationHash\n ) {\n // Purge plugin-offline cache\n if (\n `serviceWorker` in navigator &&\n navigator.serviceWorker.controller !== null &&\n navigator.serviceWorker.controller.state === `activated`\n ) {\n navigator.serviceWorker.controller.postMessage({\n gatsbyApi: `clearPathResources`,\n })\n }\n\n window.location = pathname\n }\n }\n reachNavigate(to, options)\n clearTimeout(timeoutId)\n })\n}\n\nfunction shouldUpdateScroll(prevRouterProps, { location }) {\n const { pathname, hash } = location\n const results = apiRunner(`shouldUpdateScroll`, {\n prevRouterProps,\n // `pathname` for backwards compatibility\n pathname,\n routerProps: { location },\n getSavedScrollPosition: args => [\n 0,\n this._stateStorage.read(args, args.key),\n ],\n })\n if (results.length > 0) {\n // Use the latest registered shouldUpdateScroll result, this allows users to override plugin's configuration\n // @see https://github.com/gatsbyjs/gatsby/issues/12038\n return results[results.length - 1]\n }\n\n if (prevRouterProps) {\n const {\n location: { pathname: oldPathname },\n } = prevRouterProps\n if (oldPathname === pathname) {\n // Scroll to element if it exists, if it doesn't, or no hash is provided,\n // scroll to top.\n return hash ? decodeURI(hash.slice(1)) : [0, 0]\n }\n }\n return true\n}\n\nfunction init() {\n // The \"scroll-behavior\" package expects the \"action\" to be on the location\n // object so let's copy it over.\n globalHistory.listen(args => {\n args.location.action = args.action\n })\n\n window.___push = to => navigate(to, { replace: false })\n window.___replace = to => navigate(to, { replace: true })\n window.___navigate = (to, options) => navigate(to, options)\n\n // Check for initial page-load redirect\n maybeRedirect(window.location.pathname)\n}\n\nclass RouteAnnouncer extends React.Component {\n constructor(props) {\n super(props)\n this.announcementRef = React.createRef()\n }\n\n componentDidUpdate(prevProps, nextProps) {\n requestAnimationFrame(() => {\n let pageName = `new page at ${this.props.location.pathname}`\n if (document.title) {\n pageName = document.title\n }\n const pageHeadings = document.querySelectorAll(`#gatsby-focus-wrapper h1`)\n if (pageHeadings && pageHeadings.length) {\n pageName = pageHeadings[0].textContent\n }\n const newAnnouncement = `Navigated to ${pageName}`\n if (this.announcementRef.current) {\n const oldAnnouncement = this.announcementRef.current.innerText\n if (oldAnnouncement !== newAnnouncement) {\n this.announcementRef.current.innerText = newAnnouncement\n }\n }\n })\n }\n\n render() {\n return <div {...RouteAnnouncerProps} ref={this.announcementRef}></div>\n }\n}\n\nconst compareLocationProps = (prevLocation, nextLocation) => {\n if (prevLocation.href !== nextLocation.href) {\n return true\n }\n\n if (prevLocation?.state?.key !== nextLocation?.state?.key) {\n return true\n }\n\n return false\n}\n\n// Fire on(Pre)RouteUpdate APIs\nclass RouteUpdates extends React.Component {\n constructor(props) {\n super(props)\n onPreRouteUpdate(props.location, null)\n }\n\n componentDidMount() {\n onRouteUpdate(this.props.location, null)\n }\n\n shouldComponentUpdate(prevProps) {\n if (compareLocationProps(prevProps.location, this.props.location)) {\n onPreRouteUpdate(this.props.location, prevProps.location)\n return true\n }\n return false\n }\n\n componentDidUpdate(prevProps) {\n if (compareLocationProps(prevProps.location, this.props.location)) {\n onRouteUpdate(this.props.location, prevProps.location)\n }\n }\n\n render() {\n return (\n <React.Fragment>\n {this.props.children}\n <RouteAnnouncer location={location} />\n </React.Fragment>\n )\n }\n}\n\nRouteUpdates.propTypes = {\n location: PropTypes.object.isRequired,\n}\n\nexport { init, shouldUpdateScroll, RouteUpdates }\n","// Pulled from react-compat\n// https://github.com/developit/preact-compat/blob/7c5de00e7c85e2ffd011bf3af02899b63f699d3a/src/index.js#L349\nfunction shallowDiffers(a, b) {\n for (var i in a) {\n if (!(i in b)) return true;\n }for (var _i in b) {\n if (a[_i] !== b[_i]) return true;\n }return false;\n}\n\nexport default (function (instance, nextProps, nextState) {\n return shallowDiffers(instance.props, nextProps) || shallowDiffers(instance.state, nextState);\n});","import React from \"react\"\nimport loader, { PageResourceStatus } from \"./loader\"\nimport shallowCompare from \"shallow-compare\"\n\nclass EnsureResources extends React.Component {\n constructor(props) {\n super()\n const { location, pageResources } = props\n this.state = {\n location: { ...location },\n pageResources: pageResources || loader.loadPageSync(location.pathname),\n }\n }\n\n static getDerivedStateFromProps({ location }, prevState) {\n if (prevState.location.href !== location.href) {\n const pageResources = loader.loadPageSync(location.pathname)\n return {\n pageResources,\n location: { ...location },\n }\n }\n\n return {\n location: { ...location },\n }\n }\n\n loadResources(rawPath) {\n loader.loadPage(rawPath).then(pageResources => {\n if (pageResources && pageResources.status !== PageResourceStatus.Error) {\n this.setState({\n location: { ...window.location },\n pageResources,\n })\n } else {\n window.history.replaceState({}, ``, location.href)\n window.location = rawPath\n }\n })\n }\n\n shouldComponentUpdate(nextProps, nextState) {\n // Always return false if we're missing resources.\n if (!nextState.pageResources) {\n this.loadResources(nextProps.location.pathname)\n return false\n }\n\n if (\n process.env.BUILD_STAGE === `develop` &&\n nextState.pageResources.stale\n ) {\n this.loadResources(nextProps.location.pathname)\n return false\n }\n\n // Check if the component or json have changed.\n if (this.state.pageResources !== nextState.pageResources) {\n return true\n }\n if (\n this.state.pageResources.component !== nextState.pageResources.component\n ) {\n return true\n }\n\n if (this.state.pageResources.json !== nextState.pageResources.json) {\n return true\n }\n // Check if location has changed on a page using internal routing\n // via matchPath configuration.\n if (\n this.state.location.key !== nextState.location.key &&\n nextState.pageResources.page &&\n (nextState.pageResources.page.matchPath ||\n nextState.pageResources.page.path)\n ) {\n return true\n }\n return shallowCompare(this, nextProps, nextState)\n }\n\n render() {\n if (process.env.NODE_ENV !== `production` && !this.state.pageResources) {\n throw new Error(\n `EnsureResources was not able to find resources for path: \"${this.props.location.pathname}\"\nThis typically means that an issue occurred building components for that path.\nRun \\`gatsby clean\\` to remove any cached elements.`\n )\n }\n\n return this.props.children(this.state)\n }\n}\n\nexport default EnsureResources\n","import { apiRunner, apiRunnerAsync } from \"./api-runner-browser\"\nimport React from \"react\"\nimport ReactDOM from \"react-dom\"\nimport { Router, navigate, Location, BaseContext } from \"@reach/router\"\nimport { ScrollContext } from \"gatsby-react-router-scroll\"\nimport domReady from \"@mikaelkristiansson/domready\"\nimport { StaticQueryContext } from \"gatsby\"\nimport {\n shouldUpdateScroll,\n init as navigationInit,\n RouteUpdates,\n} from \"./navigation\"\nimport emitter from \"./emitter\"\nimport PageRenderer from \"./page-renderer\"\nimport asyncRequires from \"$virtual/async-requires\"\nimport {\n setLoader,\n ProdLoader,\n publicLoader,\n PageResourceStatus,\n getStaticQueryResults,\n} from \"./loader\"\nimport EnsureResources from \"./ensure-resources\"\nimport stripPrefix from \"./strip-prefix\"\n\n// Generated during bootstrap\nimport matchPaths from \"$virtual/match-paths.json\"\n\nconst loader = new ProdLoader(asyncRequires, matchPaths)\nsetLoader(loader)\nloader.setApiRunner(apiRunner)\n\nwindow.asyncRequires = asyncRequires\nwindow.___emitter = emitter\nwindow.___loader = publicLoader\n\nnavigationInit()\n\napiRunnerAsync(`onClientEntry`).then(() => {\n // Let plugins register a service worker. The plugin just needs\n // to return true.\n if (apiRunner(`registerServiceWorker`).length > 0) {\n require(`./register-service-worker`)\n }\n\n // In gatsby v2 if Router is used in page using matchPaths\n // paths need to contain full path.\n // For example:\n // - page have `/app/*` matchPath\n // - inside template user needs to use `/app/xyz` as path\n // Resetting `basepath`/`baseuri` keeps current behaviour\n // to not introduce breaking change.\n // Remove this in v3\n const RouteHandler = props => (\n <BaseContext.Provider\n value={{\n baseuri: `/`,\n basepath: `/`,\n }}\n >\n <PageRenderer {...props} />\n </BaseContext.Provider>\n )\n\n const DataContext = React.createContext({})\n\n class GatsbyRoot extends React.Component {\n render() {\n const { children } = this.props\n return (\n <Location>\n {({ location }) => (\n <EnsureResources location={location}>\n {({ pageResources, location }) => {\n const staticQueryResults = getStaticQueryResults()\n return (\n <StaticQueryContext.Provider value={staticQueryResults}>\n <DataContext.Provider value={{ pageResources, location }}>\n {children}\n </DataContext.Provider>\n </StaticQueryContext.Provider>\n )\n }}\n </EnsureResources>\n )}\n </Location>\n )\n }\n }\n\n class LocationHandler extends React.Component {\n render() {\n return (\n <DataContext.Consumer>\n {({ pageResources, location }) => (\n <RouteUpdates location={location}>\n <ScrollContext\n location={location}\n shouldUpdateScroll={shouldUpdateScroll}\n >\n <Router\n basepath={__BASE_PATH__}\n location={location}\n id=\"gatsby-focus-wrapper\"\n >\n <RouteHandler\n path={\n pageResources.page.path === `/404.html`\n ? stripPrefix(location.pathname, __BASE_PATH__)\n : encodeURI(\n pageResources.page.matchPath ||\n pageResources.page.path\n )\n }\n {...this.props}\n location={location}\n pageResources={pageResources}\n {...pageResources.json}\n />\n </Router>\n </ScrollContext>\n </RouteUpdates>\n )}\n </DataContext.Consumer>\n )\n }\n }\n\n const { pagePath, location: browserLoc } = window\n\n // Explicitly call navigate if the canonical path (window.pagePath)\n // is different to the browser path (window.location.pathname). But\n // only if NONE of the following conditions hold:\n //\n // - The url matches a client side route (page.matchPath)\n // - it's a 404 page\n // - it's the offline plugin shell (/offline-plugin-app-shell-fallback/)\n if (\n pagePath &&\n __BASE_PATH__ + pagePath !== browserLoc.pathname &&\n !(\n loader.findMatchPath(stripPrefix(browserLoc.pathname, __BASE_PATH__)) ||\n pagePath === `/404.html` ||\n pagePath.match(/^\\/404\\/?$/) ||\n pagePath.match(/^\\/offline-plugin-app-shell-fallback\\/?$/)\n )\n ) {\n navigate(__BASE_PATH__ + pagePath + browserLoc.search + browserLoc.hash, {\n replace: true,\n })\n }\n\n publicLoader.loadPage(browserLoc.pathname).then(page => {\n if (!page || page.status === PageResourceStatus.Error) {\n throw new Error(\n `page resources for ${browserLoc.pathname} not found. Not rendering React`\n )\n }\n\n window.___webpackCompilationHash = page.page.webpackCompilationHash\n\n const SiteRoot = apiRunner(\n `wrapRootElement`,\n { element: <LocationHandler /> },\n <LocationHandler />,\n ({ result }) => {\n return { element: result }\n }\n ).pop()\n\n const App = () => <GatsbyRoot>{SiteRoot}</GatsbyRoot>\n\n const renderer = apiRunner(\n `replaceHydrateFunction`,\n undefined,\n ReactDOM.hydrate\n )[0]\n\n domReady(() => {\n renderer(\n <App />,\n typeof window !== `undefined`\n ? document.getElementById(`___gatsby`)\n : void 0,\n () => {\n apiRunner(`onInitialClientRender`)\n }\n )\n })\n })\n})\n","function _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n subClass.__proto__ = superClass;\n}\n\nmodule.exports = _inheritsLoose;","var toInteger = require('../internals/to-integer');\n\nvar min = Math.min;\n\n// `ToLength` abstract operation\n// https://tc39.es/ecma262/#sec-tolength\nmodule.exports = function (argument) {\n return argument > 0 ? min(toInteger(argument), 0x1FFFFFFFFFFFFF) : 0; // 2 ** 53 - 1 == 9007199254740991\n};\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\nimport Link, {\n withPrefix,\n withAssetPrefix,\n navigate,\n push,\n replace,\n navigateTo,\n parsePath,\n} from \"gatsby-link\"\nimport { useScrollRestoration } from \"gatsby-react-router-scroll\"\nimport PageRenderer from \"./public-page-renderer\"\nimport loader from \"./loader\"\n\nconst prefetchPathname = loader.enqueue\n\nconst StaticQueryContext = React.createContext({})\n\nfunction StaticQueryDataRenderer({ staticQueryData, data, query, render }) {\n const finalData = data\n ? data.data\n : staticQueryData[query] && staticQueryData[query].data\n\n return (\n <React.Fragment>\n {finalData && render(finalData)}\n {!finalData && <div>Loading (StaticQuery)</div>}\n </React.Fragment>\n )\n}\n\nconst StaticQuery = props => {\n const { data, query, render, children } = props\n\n return (\n <StaticQueryContext.Consumer>\n {staticQueryData => (\n <StaticQueryDataRenderer\n data={data}\n query={query}\n render={render || children}\n staticQueryData={staticQueryData}\n />\n )}\n </StaticQueryContext.Consumer>\n )\n}\n\nconst useStaticQuery = query => {\n if (\n typeof React.useContext !== `function` &&\n process.env.NODE_ENV === `development`\n ) {\n throw new Error(\n `You're likely using a version of React that doesn't support Hooks\\n` +\n `Please update React and ReactDOM to 16.8.0 or later to use the useStaticQuery hook.`\n )\n }\n const context = React.useContext(StaticQueryContext)\n\n // query is a stringified number like `3303882` when wrapped with graphql, If a user forgets\n // to wrap the query in a grqphql, then casting it to a Number results in `NaN` allowing us to\n // catch the misuse of the API and give proper direction\n if (isNaN(Number(query))) {\n throw new Error(`useStaticQuery was called with a string but expects to be called using \\`graphql\\`. Try this:\n\nimport { useStaticQuery, graphql } from 'gatsby';\n\nuseStaticQuery(graphql\\`${query}\\`);\n`)\n }\n\n if (context[query]?.data) {\n return context[query].data\n } else {\n throw new Error(\n `The result of this StaticQuery could not be fetched.\\n\\n` +\n `This is likely a bug in Gatsby and if refreshing the page does not fix it, ` +\n `please open an issue in https://github.com/gatsbyjs/gatsby/issues`\n )\n }\n}\n\nStaticQuery.propTypes = {\n data: PropTypes.object,\n query: PropTypes.string.isRequired,\n render: PropTypes.func,\n children: PropTypes.func,\n}\n\nfunction graphql() {\n throw new Error(\n `It appears like Gatsby is misconfigured. Gatsby related \\`graphql\\` calls ` +\n `are supposed to only be evaluated at compile time, and then compiled away. ` +\n `Unfortunately, something went wrong and the query was left in the compiled code.\\n\\n` +\n `Unless your site has a complex or custom babel/Gatsby configuration this is likely a bug in Gatsby.`\n )\n}\n\nexport {\n Link,\n withAssetPrefix,\n withPrefix,\n graphql,\n parsePath,\n navigate,\n push, // TODO replace for v3\n replace, // TODO remove replace for v3\n navigateTo, // TODO: remove navigateTo for v3\n useScrollRestoration,\n StaticQueryContext,\n StaticQuery,\n PageRenderer,\n useStaticQuery,\n prefetchPathname,\n}\n","\"use strict\";\n\nmodule.exports = Object.assign;","var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\n/* eslint-disable jsx-a11y/anchor-has-content */\nimport React, { useContext } from \"react\";\nimport PropTypes from \"prop-types\";\nimport invariant from \"invariant\";\nimport createContext from \"create-react-context\";\nimport { polyfill } from \"react-lifecycles-compat\";\nimport { startsWith, pick, resolve, match, insertParams, validateRedirect, shallowCompare } from \"./lib/utils\";\nimport { globalHistory, navigate, createHistory, createMemorySource } from \"./lib/history\";\n\n////////////////////////////////////////////////////////////////////////////////\n\nvar createNamedContext = function createNamedContext(name, defaultValue) {\n var Ctx = createContext(defaultValue);\n Ctx.displayName = name;\n return Ctx;\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// Location Context/Provider\nvar LocationContext = createNamedContext(\"Location\");\n\n// sets up a listener if there isn't one already so apps don't need to be\n// wrapped in some top level provider\nvar Location = function Location(_ref) {\n var children = _ref.children;\n return React.createElement(\n LocationContext.Consumer,\n null,\n function (context) {\n return context ? children(context) : React.createElement(\n LocationProvider,\n null,\n children\n );\n }\n );\n};\n\nvar LocationProvider = function (_React$Component) {\n _inherits(LocationProvider, _React$Component);\n\n function LocationProvider() {\n var _temp, _this, _ret;\n\n _classCallCheck(this, LocationProvider);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, _React$Component.call.apply(_React$Component, [this].concat(args))), _this), _this.state = {\n context: _this.getContext(),\n refs: { unlisten: null }\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n LocationProvider.prototype.getContext = function getContext() {\n var _props$history = this.props.history,\n navigate = _props$history.navigate,\n location = _props$history.location;\n\n return { navigate: navigate, location: location };\n };\n\n LocationProvider.prototype.componentDidCatch = function componentDidCatch(error, info) {\n if (isRedirect(error)) {\n var _navigate = this.props.history.navigate;\n\n _navigate(error.uri, { replace: true });\n } else {\n throw error;\n }\n };\n\n LocationProvider.prototype.componentDidUpdate = function componentDidUpdate(prevProps, prevState) {\n if (prevState.context.location !== this.state.context.location) {\n this.props.history._onTransitionComplete();\n }\n };\n\n LocationProvider.prototype.componentDidMount = function componentDidMount() {\n var _this2 = this;\n\n var refs = this.state.refs,\n history = this.props.history;\n\n history._onTransitionComplete();\n refs.unlisten = history.listen(function () {\n Promise.resolve().then(function () {\n // TODO: replace rAF with react deferred update API when it's ready https://github.com/facebook/react/issues/13306\n requestAnimationFrame(function () {\n if (!_this2.unmounted) {\n _this2.setState(function () {\n return { context: _this2.getContext() };\n });\n }\n });\n });\n });\n };\n\n LocationProvider.prototype.componentWillUnmount = function componentWillUnmount() {\n var refs = this.state.refs;\n\n this.unmounted = true;\n refs.unlisten();\n };\n\n LocationProvider.prototype.render = function render() {\n var context = this.state.context,\n children = this.props.children;\n\n return React.createElement(\n LocationContext.Provider,\n { value: context },\n typeof children === \"function\" ? children(context) : children || null\n );\n };\n\n return LocationProvider;\n}(React.Component);\n\n////////////////////////////////////////////////////////////////////////////////\n\n\nLocationProvider.defaultProps = {\n history: globalHistory\n};\nprocess.env.NODE_ENV !== \"production\" ? LocationProvider.propTypes = {\n history: PropTypes.object.isRequired\n} : void 0;\nvar ServerLocation = function ServerLocation(_ref2) {\n var url = _ref2.url,\n children = _ref2.children;\n\n var searchIndex = url.indexOf(\"?\");\n var searchExists = searchIndex > -1;\n var pathname = void 0;\n var search = \"\";\n var hash = \"\";\n\n if (searchExists) {\n pathname = url.substring(0, searchIndex);\n search = url.substring(searchIndex);\n } else {\n pathname = url;\n }\n\n return React.createElement(\n LocationContext.Provider,\n {\n value: {\n location: {\n pathname: pathname,\n search: search,\n hash: hash\n },\n navigate: function navigate() {\n throw new Error(\"You can't call navigate on the server.\");\n }\n }\n },\n children\n );\n};\n////////////////////////////////////////////////////////////////////////////////\n// Sets baseuri and basepath for nested routers and links\nvar BaseContext = createNamedContext(\"Base\", { baseuri: \"/\", basepath: \"/\" });\n\n////////////////////////////////////////////////////////////////////////////////\n// The main event, welcome to the show everybody.\nvar Router = function Router(props) {\n return React.createElement(\n BaseContext.Consumer,\n null,\n function (baseContext) {\n return React.createElement(\n Location,\n null,\n function (locationContext) {\n return React.createElement(RouterImpl, _extends({}, baseContext, locationContext, props));\n }\n );\n }\n );\n};\n\nvar RouterImpl = function (_React$PureComponent) {\n _inherits(RouterImpl, _React$PureComponent);\n\n function RouterImpl() {\n _classCallCheck(this, RouterImpl);\n\n return _possibleConstructorReturn(this, _React$PureComponent.apply(this, arguments));\n }\n\n RouterImpl.prototype.render = function render() {\n var _props = this.props,\n location = _props.location,\n _navigate2 = _props.navigate,\n basepath = _props.basepath,\n primary = _props.primary,\n children = _props.children,\n baseuri = _props.baseuri,\n _props$component = _props.component,\n component = _props$component === undefined ? \"div\" : _props$component,\n domProps = _objectWithoutProperties(_props, [\"location\", \"navigate\", \"basepath\", \"primary\", \"children\", \"baseuri\", \"component\"]);\n\n var routes = React.Children.toArray(children).reduce(function (array, child) {\n var routes = createRoute(basepath)(child);\n return array.concat(routes);\n }, []);\n var pathname = location.pathname;\n\n\n var match = pick(routes, pathname);\n\n if (match) {\n var params = match.params,\n uri = match.uri,\n route = match.route,\n element = match.route.value;\n\n // remove the /* from the end for child routes relative paths\n\n basepath = route.default ? basepath : route.path.replace(/\\*$/, \"\");\n\n var props = _extends({}, params, {\n uri: uri,\n location: location,\n navigate: function navigate(to, options) {\n return _navigate2(resolve(to, uri), options);\n }\n });\n\n var clone = React.cloneElement(element, props, element.props.children ? React.createElement(\n Router,\n { location: location, primary: primary },\n element.props.children\n ) : undefined);\n\n // using 'div' for < 16.3 support\n var FocusWrapper = primary ? FocusHandler : component;\n // don't pass any props to 'div'\n var wrapperProps = primary ? _extends({ uri: uri, location: location, component: component }, domProps) : domProps;\n\n return React.createElement(\n BaseContext.Provider,\n { value: { baseuri: uri, basepath: basepath } },\n React.createElement(\n FocusWrapper,\n wrapperProps,\n clone\n )\n );\n } else {\n // Not sure if we want this, would require index routes at every level\n // warning(\n // false,\n // `<Router basepath=\"${basepath}\">\\n\\nNothing matched:\\n\\t${\n // location.pathname\n // }\\n\\nPaths checked: \\n\\t${routes\n // .map(route => route.path)\n // .join(\n // \"\\n\\t\"\n // )}\\n\\nTo get rid of this warning, add a default NotFound component as child of Router:\n // \\n\\tlet NotFound = () => <div>Not Found!</div>\n // \\n\\t<Router>\\n\\t <NotFound default/>\\n\\t {/* ... */}\\n\\t</Router>`\n // );\n return null;\n }\n };\n\n return RouterImpl;\n}(React.PureComponent);\n\nRouterImpl.defaultProps = {\n primary: true\n};\n\n\nvar FocusContext = createNamedContext(\"Focus\");\n\nvar FocusHandler = function FocusHandler(_ref3) {\n var uri = _ref3.uri,\n location = _ref3.location,\n component = _ref3.component,\n domProps = _objectWithoutProperties(_ref3, [\"uri\", \"location\", \"component\"]);\n\n return React.createElement(\n FocusContext.Consumer,\n null,\n function (requestFocus) {\n return React.createElement(FocusHandlerImpl, _extends({}, domProps, {\n component: component,\n requestFocus: requestFocus,\n uri: uri,\n location: location\n }));\n }\n );\n};\n\n// don't focus on initial render\nvar initialRender = true;\nvar focusHandlerCount = 0;\n\nvar FocusHandlerImpl = function (_React$Component2) {\n _inherits(FocusHandlerImpl, _React$Component2);\n\n function FocusHandlerImpl() {\n var _temp2, _this4, _ret2;\n\n _classCallCheck(this, FocusHandlerImpl);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp2 = (_this4 = _possibleConstructorReturn(this, _React$Component2.call.apply(_React$Component2, [this].concat(args))), _this4), _this4.state = {}, _this4.requestFocus = function (node) {\n if (!_this4.state.shouldFocus && node) {\n node.focus();\n }\n }, _temp2), _possibleConstructorReturn(_this4, _ret2);\n }\n\n FocusHandlerImpl.getDerivedStateFromProps = function getDerivedStateFromProps(nextProps, prevState) {\n var initial = prevState.uri == null;\n if (initial) {\n return _extends({\n shouldFocus: true\n }, nextProps);\n } else {\n var myURIChanged = nextProps.uri !== prevState.uri;\n var navigatedUpToMe = prevState.location.pathname !== nextProps.location.pathname && nextProps.location.pathname === nextProps.uri;\n return _extends({\n shouldFocus: myURIChanged || navigatedUpToMe\n }, nextProps);\n }\n };\n\n FocusHandlerImpl.prototype.componentDidMount = function componentDidMount() {\n focusHandlerCount++;\n this.focus();\n };\n\n FocusHandlerImpl.prototype.componentWillUnmount = function componentWillUnmount() {\n focusHandlerCount--;\n if (focusHandlerCount === 0) {\n initialRender = true;\n }\n };\n\n FocusHandlerImpl.prototype.componentDidUpdate = function componentDidUpdate(prevProps, prevState) {\n if (prevProps.location !== this.props.location && this.state.shouldFocus) {\n this.focus();\n }\n };\n\n FocusHandlerImpl.prototype.focus = function focus() {\n if (process.env.NODE_ENV === \"test\") {\n // getting cannot read property focus of null in the tests\n // and that bit of global `initialRender` state causes problems\n // should probably figure it out!\n return;\n }\n\n var requestFocus = this.props.requestFocus;\n\n\n if (requestFocus) {\n requestFocus(this.node);\n } else {\n if (initialRender) {\n initialRender = false;\n } else if (this.node) {\n // React polyfills [autofocus] and it fires earlier than cDM,\n // so we were stealing focus away, this line prevents that.\n if (!this.node.contains(document.activeElement)) {\n this.node.focus();\n }\n }\n }\n };\n\n FocusHandlerImpl.prototype.render = function render() {\n var _this5 = this;\n\n var _props2 = this.props,\n children = _props2.children,\n style = _props2.style,\n requestFocus = _props2.requestFocus,\n _props2$component = _props2.component,\n Comp = _props2$component === undefined ? \"div\" : _props2$component,\n uri = _props2.uri,\n location = _props2.location,\n domProps = _objectWithoutProperties(_props2, [\"children\", \"style\", \"requestFocus\", \"component\", \"uri\", \"location\"]);\n\n return React.createElement(\n Comp,\n _extends({\n style: _extends({ outline: \"none\" }, style),\n tabIndex: \"-1\",\n ref: function ref(n) {\n return _this5.node = n;\n }\n }, domProps),\n React.createElement(\n FocusContext.Provider,\n { value: this.requestFocus },\n this.props.children\n )\n );\n };\n\n return FocusHandlerImpl;\n}(React.Component);\n\npolyfill(FocusHandlerImpl);\n\nvar k = function k() {};\n\n////////////////////////////////////////////////////////////////////////////////\nvar forwardRef = React.forwardRef;\n\nif (typeof forwardRef === \"undefined\") {\n forwardRef = function forwardRef(C) {\n return C;\n };\n}\n\nvar Link = forwardRef(function (_ref4, ref) {\n var innerRef = _ref4.innerRef,\n props = _objectWithoutProperties(_ref4, [\"innerRef\"]);\n\n return React.createElement(\n BaseContext.Consumer,\n null,\n function (_ref5) {\n var basepath = _ref5.basepath,\n baseuri = _ref5.baseuri;\n return React.createElement(\n Location,\n null,\n function (_ref6) {\n var location = _ref6.location,\n navigate = _ref6.navigate;\n\n var to = props.to,\n state = props.state,\n replace = props.replace,\n _props$getProps = props.getProps,\n getProps = _props$getProps === undefined ? k : _props$getProps,\n anchorProps = _objectWithoutProperties(props, [\"to\", \"state\", \"replace\", \"getProps\"]);\n\n var href = resolve(to, baseuri);\n var encodedHref = encodeURI(href);\n var isCurrent = location.pathname === encodedHref;\n var isPartiallyCurrent = startsWith(location.pathname, encodedHref);\n\n return React.createElement(\"a\", _extends({\n ref: ref || innerRef,\n \"aria-current\": isCurrent ? \"page\" : undefined\n }, anchorProps, getProps({ isCurrent: isCurrent, isPartiallyCurrent: isPartiallyCurrent, href: href, location: location }), {\n href: href,\n onClick: function onClick(event) {\n if (anchorProps.onClick) anchorProps.onClick(event);\n if (shouldNavigate(event)) {\n event.preventDefault();\n var shouldReplace = replace;\n if (typeof replace !== \"boolean\" && isCurrent) {\n var _location$state = _extends({}, location.state),\n key = _location$state.key,\n restState = _objectWithoutProperties(_location$state, [\"key\"]);\n\n shouldReplace = shallowCompare(_extends({}, state), restState);\n }\n navigate(href, {\n state: state,\n replace: shouldReplace\n });\n }\n }\n }));\n }\n );\n }\n );\n});\n\nLink.displayName = \"Link\";\n\nprocess.env.NODE_ENV !== \"production\" ? Link.propTypes = {\n to: PropTypes.string.isRequired\n} : void 0;\n\n////////////////////////////////////////////////////////////////////////////////\nfunction RedirectRequest(uri) {\n this.uri = uri;\n}\n\nvar isRedirect = function isRedirect(o) {\n return o instanceof RedirectRequest;\n};\n\nvar redirectTo = function redirectTo(to) {\n throw new RedirectRequest(to);\n};\n\nvar RedirectImpl = function (_React$Component3) {\n _inherits(RedirectImpl, _React$Component3);\n\n function RedirectImpl() {\n _classCallCheck(this, RedirectImpl);\n\n return _possibleConstructorReturn(this, _React$Component3.apply(this, arguments));\n }\n\n // Support React < 16 with this hook\n RedirectImpl.prototype.componentDidMount = function componentDidMount() {\n var _props3 = this.props,\n navigate = _props3.navigate,\n to = _props3.to,\n from = _props3.from,\n _props3$replace = _props3.replace,\n replace = _props3$replace === undefined ? true : _props3$replace,\n state = _props3.state,\n noThrow = _props3.noThrow,\n baseuri = _props3.baseuri,\n props = _objectWithoutProperties(_props3, [\"navigate\", \"to\", \"from\", \"replace\", \"state\", \"noThrow\", \"baseuri\"]);\n\n Promise.resolve().then(function () {\n var resolvedTo = resolve(to, baseuri);\n navigate(insertParams(resolvedTo, props), { replace: replace, state: state });\n });\n };\n\n RedirectImpl.prototype.render = function render() {\n var _props4 = this.props,\n navigate = _props4.navigate,\n to = _props4.to,\n from = _props4.from,\n replace = _props4.replace,\n state = _props4.state,\n noThrow = _props4.noThrow,\n baseuri = _props4.baseuri,\n props = _objectWithoutProperties(_props4, [\"navigate\", \"to\", \"from\", \"replace\", \"state\", \"noThrow\", \"baseuri\"]);\n\n var resolvedTo = resolve(to, baseuri);\n if (!noThrow) redirectTo(insertParams(resolvedTo, props));\n return null;\n };\n\n return RedirectImpl;\n}(React.Component);\n\nvar Redirect = function Redirect(props) {\n return React.createElement(\n BaseContext.Consumer,\n null,\n function (_ref7) {\n var baseuri = _ref7.baseuri;\n return React.createElement(\n Location,\n null,\n function (locationContext) {\n return React.createElement(RedirectImpl, _extends({}, locationContext, { baseuri: baseuri }, props));\n }\n );\n }\n );\n};\n\nprocess.env.NODE_ENV !== \"production\" ? Redirect.propTypes = {\n from: PropTypes.string,\n to: PropTypes.string.isRequired\n} : void 0;\n\n////////////////////////////////////////////////////////////////////////////////\nvar Match = function Match(_ref8) {\n var path = _ref8.path,\n children = _ref8.children;\n return React.createElement(\n BaseContext.Consumer,\n null,\n function (_ref9) {\n var baseuri = _ref9.baseuri;\n return React.createElement(\n Location,\n null,\n function (_ref10) {\n var navigate = _ref10.navigate,\n location = _ref10.location;\n\n var resolvedPath = resolve(path, baseuri);\n var result = match(resolvedPath, location.pathname);\n return children({\n navigate: navigate,\n location: location,\n match: result ? _extends({}, result.params, {\n uri: result.uri,\n path: path\n }) : null\n });\n }\n );\n }\n );\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// Hooks\n\nvar useLocation = function useLocation() {\n var context = useContext(LocationContext);\n\n if (!context) {\n throw new Error(\"useLocation hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router\");\n }\n\n return context.location;\n};\n\nvar useNavigate = function useNavigate() {\n var context = useContext(LocationContext);\n\n if (!context) {\n throw new Error(\"useNavigate hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router\");\n }\n\n return context.navigate;\n};\n\nvar useParams = function useParams() {\n var context = useContext(BaseContext);\n\n if (!context) {\n throw new Error(\"useParams hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router\");\n }\n\n var location = useLocation();\n\n var results = match(context.basepath, location.pathname);\n\n return results ? results.params : null;\n};\n\nvar useMatch = function useMatch(path) {\n if (!path) {\n throw new Error(\"useMatch(path: string) requires an argument of a string to match against\");\n }\n var context = useContext(BaseContext);\n\n if (!context) {\n throw new Error(\"useMatch hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router\");\n }\n\n var location = useLocation();\n\n var resolvedPath = resolve(path, context.baseuri);\n var result = match(resolvedPath, location.pathname);\n return result ? _extends({}, result.params, {\n uri: result.uri,\n path: path\n }) : null;\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// Junk\nvar stripSlashes = function stripSlashes(str) {\n return str.replace(/(^\\/+|\\/+$)/g, \"\");\n};\n\nvar createRoute = function createRoute(basepath) {\n return function (element) {\n if (!element) {\n return null;\n }\n\n if (element.type === React.Fragment && element.props.children) {\n return React.Children.map(element.props.children, createRoute(basepath));\n }\n !(element.props.path || element.props.default || element.type === Redirect) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"<Router>: Children of <Router> must have a `path` or `default` prop, or be a `<Redirect>`. None found on element type `\" + element.type + \"`\") : invariant(false) : void 0;\n\n !!(element.type === Redirect && (!element.props.from || !element.props.to)) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"<Redirect from=\\\"\" + element.props.from + \"\\\" to=\\\"\" + element.props.to + \"\\\"/> requires both \\\"from\\\" and \\\"to\\\" props when inside a <Router>.\") : invariant(false) : void 0;\n\n !!(element.type === Redirect && !validateRedirect(element.props.from, element.props.to)) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"<Redirect from=\\\"\" + element.props.from + \" to=\\\"\" + element.props.to + \"\\\"/> has mismatched dynamic segments, ensure both paths have the exact same dynamic segments.\") : invariant(false) : void 0;\n\n if (element.props.default) {\n return { value: element, default: true };\n }\n\n var elementPath = element.type === Redirect ? element.props.from : element.props.path;\n\n var path = elementPath === \"/\" ? basepath : stripSlashes(basepath) + \"/\" + stripSlashes(elementPath);\n\n return {\n value: element,\n default: element.props.default,\n path: element.props.children ? stripSlashes(path) + \"/*\" : path\n };\n };\n};\n\nvar shouldNavigate = function shouldNavigate(event) {\n return !event.defaultPrevented && event.button === 0 && !(event.metaKey || event.altKey || event.ctrlKey || event.shiftKey);\n};\n\n////////////////////////////////////////////////////////////////////////\nexport { Link, Location, LocationProvider, Match, Redirect, Router, ServerLocation, createHistory, createMemorySource, isRedirect, navigate, redirectTo, globalHistory, match as matchPath, useLocation, useNavigate, useParams, useMatch , BaseContext };","var fails = require('../internals/fails');\n\nvar replacement = /#|\\.prototype\\./;\n\nvar isForced = function (feature, detection) {\n var value = data[normalize(feature)];\n return value == POLYFILL ? true\n : value == NATIVE ? false\n : typeof detection == 'function' ? fails(detection)\n : !!detection;\n};\n\nvar normalize = isForced.normalize = function (string) {\n return String(string).replace(replacement, '.').toLowerCase();\n};\n\nvar data = isForced.data = {};\nvar NATIVE = isForced.NATIVE = 'N';\nvar POLYFILL = isForced.POLYFILL = 'P';\n\nmodule.exports = isForced;\n","var global = require('../internals/global');\nvar getOwnPropertyDescriptor = require('../internals/object-get-own-property-descriptor').f;\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\nvar redefine = require('../internals/redefine');\nvar setGlobal = require('../internals/set-global');\nvar copyConstructorProperties = require('../internals/copy-constructor-properties');\nvar isForced = require('../internals/is-forced');\n\n/*\n options.target - name of the target object\n options.global - target is the global object\n options.stat - export as static methods of target\n options.proto - export as prototype methods of target\n options.real - real prototype method for the `pure` version\n options.forced - export even if the native feature is available\n options.bind - bind methods to the target, required for the `pure` version\n options.wrap - wrap constructors to preventing global pollution, required for the `pure` version\n options.unsafe - use the simple assignment of property instead of delete + defineProperty\n options.sham - add a flag to not completely full polyfills\n options.enumerable - export as enumerable property\n options.noTargetGet - prevent calling a getter on target\n*/\nmodule.exports = function (options, source) {\n var TARGET = options.target;\n var GLOBAL = options.global;\n var STATIC = options.stat;\n var FORCED, target, key, targetProperty, sourceProperty, descriptor;\n if (GLOBAL) {\n target = global;\n } else if (STATIC) {\n target = global[TARGET] || setGlobal(TARGET, {});\n } else {\n target = (global[TARGET] || {}).prototype;\n }\n if (target) for (key in source) {\n sourceProperty = source[key];\n if (options.noTargetGet) {\n descriptor = getOwnPropertyDescriptor(target, key);\n targetProperty = descriptor && descriptor.value;\n } else targetProperty = target[key];\n FORCED = isForced(GLOBAL ? key : TARGET + (STATIC ? '.' : '#') + key, options.forced);\n // contained in target\n if (!FORCED && targetProperty !== undefined) {\n if (typeof sourceProperty === typeof targetProperty) continue;\n copyConstructorProperties(sourceProperty, targetProperty);\n }\n // add a flag to not completely full polyfills\n if (options.sham || (targetProperty && targetProperty.sham)) {\n createNonEnumerableProperty(sourceProperty, 'sham', true);\n }\n // extend global\n redefine(target, key, sourceProperty, options);\n }\n};\n","// toObject with fallback for non-array-like ES3 strings\nvar IndexedObject = require('../internals/indexed-object');\nvar requireObjectCoercible = require('../internals/require-object-coercible');\n\nmodule.exports = function (it) {\n return IndexedObject(requireObjectCoercible(it));\n};\n","var toString = {}.toString;\n\nmodule.exports = function (it) {\n return toString.call(it).slice(8, -1);\n};\n","function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n module.exports = _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n module.exports = _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nmodule.exports = _typeof;","/**\n * Remove a prefix from a string. Return the input string if the given prefix\n * isn't found.\n */\n\nexport default function stripPrefix(str, prefix = ``) {\n if (!prefix) {\n return str\n }\n\n if (str === prefix) {\n return `/`\n }\n\n if (str.startsWith(`${prefix}/`)) {\n return str.slice(prefix.length)\n }\n\n return str\n}\n","module.exports = function (it) {\n return typeof it === 'object' ? it !== null : typeof it === 'function';\n};\n","\"use strict\";\n\nexports.__esModule = true;\nexports.parsePath = parsePath;\n\nfunction parsePath(path) {\n var pathname = path || \"/\";\n var search = \"\";\n var hash = \"\";\n var hashIndex = pathname.indexOf(\"#\");\n\n if (hashIndex !== -1) {\n hash = pathname.substr(hashIndex);\n pathname = pathname.substr(0, hashIndex);\n }\n\n var searchIndex = pathname.indexOf(\"?\");\n\n if (searchIndex !== -1) {\n search = pathname.substr(searchIndex);\n pathname = pathname.substr(0, searchIndex);\n }\n\n return {\n pathname: pathname,\n search: search === \"?\" ? \"\" : search,\n hash: hash === \"#\" ? \"\" : hash\n };\n}","export default function _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n subClass.__proto__ = superClass;\n}","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n}","import arrayWithoutHoles from \"@babel/runtime/helpers/esm/arrayWithoutHoles\";\nimport iterableToArray from \"@babel/runtime/helpers/esm/iterableToArray\";\nimport unsupportedIterableToArray from \"@babel/runtime/helpers/esm/unsupportedIterableToArray\";\nimport nonIterableSpread from \"@babel/runtime/helpers/esm/nonIterableSpread\";\nexport default function _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}","import arrayLikeToArray from \"@babel/runtime/helpers/esm/arrayLikeToArray\";\nexport default function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}","export default function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter);\n}","import arrayLikeToArray from \"@babel/runtime/helpers/esm/arrayLikeToArray\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","export default function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","const support = function (feature) {\n if (typeof document === `undefined`) {\n return false\n }\n const fakeLink = document.createElement(`link`)\n try {\n if (fakeLink.relList && typeof fakeLink.relList.supports === `function`) {\n return fakeLink.relList.supports(feature)\n }\n } catch (err) {\n return false\n }\n return false\n}\n\nconst linkPrefetchStrategy = function (url, options) {\n return new Promise((resolve, reject) => {\n if (typeof document === `undefined`) {\n reject()\n return\n }\n\n const link = document.createElement(`link`)\n link.setAttribute(`rel`, `prefetch`)\n link.setAttribute(`href`, url)\n\n Object.keys(options).forEach(key => {\n link.setAttribute(key, options[key])\n })\n\n link.onload = resolve\n link.onerror = reject\n\n const parentElement =\n document.getElementsByTagName(`head`)[0] ||\n document.getElementsByName(`script`)[0].parentNode\n parentElement.appendChild(link)\n })\n}\n\nconst xhrPrefetchStrategy = function (url) {\n return new Promise((resolve, reject) => {\n const req = new XMLHttpRequest()\n req.open(`GET`, url, true)\n\n req.onload = () => {\n if (req.status === 200) {\n resolve()\n } else {\n reject()\n }\n }\n\n req.send(null)\n })\n}\n\nconst supportedPrefetchStrategy = support(`prefetch`)\n ? linkPrefetchStrategy\n : xhrPrefetchStrategy\n\nconst preFetched = {}\n\nconst prefetch = function (url, options) {\n return new Promise(resolve => {\n if (preFetched[url]) {\n resolve()\n return\n }\n\n supportedPrefetchStrategy(url, options)\n .then(() => {\n resolve()\n preFetched[url] = true\n })\n .catch(() => {}) // 404s are logged to the console anyway\n })\n}\n\nexport default prefetch\n","import prefetchHelper from \"./prefetch\"\nimport emitter from \"./emitter\"\nimport { setMatchPaths, findPath, findMatchPath } from \"./find-path\"\n\n/**\n * Available resource loading statuses\n */\nexport const PageResourceStatus = {\n /**\n * At least one of critical resources failed to load\n */\n Error: `error`,\n /**\n * Resources loaded successfully\n */\n Success: `success`,\n}\n\nconst preferDefault = m => (m && m.default) || m\n\nconst stripSurroundingSlashes = s => {\n s = s[0] === `/` ? s.slice(1) : s\n s = s.endsWith(`/`) ? s.slice(0, -1) : s\n return s\n}\n\nconst createPageDataUrl = path => {\n const fixedPath = path === `/` ? `index` : stripSurroundingSlashes(path)\n return `${__PATH_PREFIX__}/page-data/${fixedPath}/page-data.json`\n}\n\nfunction doFetch(url, method = `GET`) {\n return new Promise((resolve, reject) => {\n const req = new XMLHttpRequest()\n req.open(method, url, true)\n req.onreadystatechange = () => {\n if (req.readyState == 4) {\n resolve(req)\n }\n }\n req.send(null)\n })\n}\n\nconst doesConnectionSupportPrefetch = () => {\n if (\n `connection` in navigator &&\n typeof navigator.connection !== `undefined`\n ) {\n if ((navigator.connection.effectiveType || ``).includes(`2g`)) {\n return false\n }\n if (navigator.connection.saveData) {\n return false\n }\n }\n return true\n}\n\nconst toPageResources = (pageData, component = null) => {\n const page = {\n componentChunkName: pageData.componentChunkName,\n path: pageData.path,\n webpackCompilationHash: pageData.webpackCompilationHash,\n matchPath: pageData.matchPath,\n staticQueryHashes: pageData.staticQueryHashes,\n }\n\n return {\n component,\n json: pageData.result,\n page,\n }\n}\n\nexport class BaseLoader {\n constructor(loadComponent, matchPaths) {\n // Map of pagePath -> Page. Where Page is an object with: {\n // status: PageResourceStatus.Success || PageResourceStatus.Error,\n // payload: PageResources, // undefined if PageResourceStatus.Error\n // }\n // PageResources is {\n // component,\n // json: pageData.result,\n // page: {\n // componentChunkName,\n // path,\n // webpackCompilationHash,\n // staticQueryHashes\n // },\n // staticQueryResults\n // }\n this.pageDb = new Map()\n this.inFlightDb = new Map()\n this.staticQueryDb = {}\n this.pageDataDb = new Map()\n this.prefetchTriggered = new Set()\n this.prefetchCompleted = new Set()\n this.loadComponent = loadComponent\n setMatchPaths(matchPaths)\n }\n\n inFlightNetworkRequests = new Map()\n\n memoizedGet(url) {\n let inFlightPromise = this.inFlightNetworkRequests.get(url)\n\n if (!inFlightPromise) {\n inFlightPromise = doFetch(url, `GET`)\n this.inFlightNetworkRequests.set(url, inFlightPromise)\n }\n\n // Prefer duplication with then + catch over .finally to prevent problems in ie11 + firefox\n return inFlightPromise\n .then(response => {\n this.inFlightNetworkRequests.delete(url)\n return response\n })\n .catch(err => {\n this.inFlightNetworkRequests.delete(url)\n throw err\n })\n }\n\n setApiRunner(apiRunner) {\n this.apiRunner = apiRunner\n this.prefetchDisabled = apiRunner(`disableCorePrefetching`).some(a => a)\n }\n\n fetchPageDataJson(loadObj) {\n const { pagePath, retries = 0 } = loadObj\n const url = createPageDataUrl(pagePath)\n return this.memoizedGet(url).then(req => {\n const { status, responseText } = req\n\n // Handle 200\n if (status === 200) {\n try {\n const jsonPayload = JSON.parse(responseText)\n if (jsonPayload.path === undefined) {\n throw new Error(`not a valid pageData response`)\n }\n\n return Object.assign(loadObj, {\n status: PageResourceStatus.Success,\n payload: jsonPayload,\n })\n } catch (err) {\n // continue regardless of error\n }\n }\n\n // Handle 404\n if (status === 404 || status === 200) {\n // If the request was for a 404 page and it doesn't exist, we're done\n if (pagePath === `/404.html`) {\n return Object.assign(loadObj, {\n status: PageResourceStatus.Error,\n })\n }\n\n // Need some code here to cache the 404 request. In case\n // multiple loadPageDataJsons result in 404s\n return this.fetchPageDataJson(\n Object.assign(loadObj, { pagePath: `/404.html`, notFound: true })\n )\n }\n\n // handle 500 response (Unrecoverable)\n if (status === 500) {\n return Object.assign(loadObj, {\n status: PageResourceStatus.Error,\n })\n }\n\n // Handle everything else, including status === 0, and 503s. Should retry\n if (retries < 3) {\n return this.fetchPageDataJson(\n Object.assign(loadObj, { retries: retries + 1 })\n )\n }\n\n // Retried 3 times already, result is an error.\n return Object.assign(loadObj, {\n status: PageResourceStatus.Error,\n })\n })\n }\n\n loadPageDataJson(rawPath) {\n const pagePath = findPath(rawPath)\n if (this.pageDataDb.has(pagePath)) {\n const pageData = this.pageDataDb.get(pagePath)\n if (process.env.BUILD_STAGE !== `develop` || !pageData.stale) {\n return Promise.resolve(pageData)\n }\n }\n\n return this.fetchPageDataJson({ pagePath }).then(pageData => {\n this.pageDataDb.set(pagePath, pageData)\n\n return pageData\n })\n }\n\n findMatchPath(rawPath) {\n return findMatchPath(rawPath)\n }\n\n // TODO check all uses of this and whether they use undefined for page resources not exist\n loadPage(rawPath) {\n const pagePath = findPath(rawPath)\n if (this.pageDb.has(pagePath)) {\n const page = this.pageDb.get(pagePath)\n if (process.env.BUILD_STAGE !== `develop` || !page.payload.stale) {\n return Promise.resolve(page.payload)\n }\n }\n\n if (this.inFlightDb.has(pagePath)) {\n return this.inFlightDb.get(pagePath)\n }\n\n const inFlightPromise = Promise.all([\n this.loadAppData(),\n this.loadPageDataJson(pagePath),\n ]).then(allData => {\n const result = allData[1]\n if (result.status === PageResourceStatus.Error) {\n return {\n status: PageResourceStatus.Error,\n }\n }\n\n let pageData = result.payload\n const { componentChunkName, staticQueryHashes = [] } = pageData\n\n const finalResult = {}\n\n const componentChunkPromise = this.loadComponent(componentChunkName).then(\n component => {\n finalResult.createdAt = new Date()\n let pageResources\n if (!component) {\n finalResult.status = PageResourceStatus.Error\n } else {\n finalResult.status = PageResourceStatus.Success\n if (result.notFound === true) {\n finalResult.notFound = true\n }\n pageData = Object.assign(pageData, {\n webpackCompilationHash: allData[0]\n ? allData[0].webpackCompilationHash\n : ``,\n })\n pageResources = toPageResources(pageData, component)\n }\n // undefined if final result is an error\n return pageResources\n }\n )\n\n const staticQueryBatchPromise = Promise.all(\n staticQueryHashes.map(staticQueryHash => {\n // Check for cache in case this static query result has already been loaded\n if (this.staticQueryDb[staticQueryHash]) {\n const jsonPayload = this.staticQueryDb[staticQueryHash]\n return { staticQueryHash, jsonPayload }\n }\n\n return this.memoizedGet(\n `${__PATH_PREFIX__}/page-data/sq/d/${staticQueryHash}.json`\n ).then(req => {\n const jsonPayload = JSON.parse(req.responseText)\n return { staticQueryHash, jsonPayload }\n })\n })\n ).then(staticQueryResults => {\n const staticQueryResultsMap = {}\n\n staticQueryResults.forEach(({ staticQueryHash, jsonPayload }) => {\n staticQueryResultsMap[staticQueryHash] = jsonPayload\n this.staticQueryDb[staticQueryHash] = jsonPayload\n })\n\n return staticQueryResultsMap\n })\n\n return Promise.all([componentChunkPromise, staticQueryBatchPromise]).then(\n ([pageResources, staticQueryResults]) => {\n let payload\n if (pageResources) {\n payload = { ...pageResources, staticQueryResults }\n finalResult.payload = payload\n emitter.emit(`onPostLoadPageResources`, {\n page: payload,\n pageResources: payload,\n })\n }\n\n this.pageDb.set(pagePath, finalResult)\n\n return payload\n }\n )\n })\n\n inFlightPromise\n .then(response => {\n this.inFlightDb.delete(pagePath)\n })\n .catch(error => {\n this.inFlightDb.delete(pagePath)\n throw error\n })\n\n this.inFlightDb.set(pagePath, inFlightPromise)\n\n return inFlightPromise\n }\n\n // returns undefined if loading page ran into errors\n loadPageSync(rawPath) {\n const pagePath = findPath(rawPath)\n if (this.pageDb.has(pagePath)) {\n const pageData = this.pageDb.get(pagePath).payload\n return pageData\n }\n return undefined\n }\n\n shouldPrefetch(pagePath) {\n // Skip prefetching if we know user is on slow or constrained connection\n if (!doesConnectionSupportPrefetch()) {\n return false\n }\n\n // Check if the page exists.\n if (this.pageDb.has(pagePath)) {\n return false\n }\n\n return true\n }\n\n prefetch(pagePath) {\n if (!this.shouldPrefetch(pagePath)) {\n return false\n }\n\n // Tell plugins with custom prefetching logic that they should start\n // prefetching this path.\n if (!this.prefetchTriggered.has(pagePath)) {\n this.apiRunner(`onPrefetchPathname`, { pathname: pagePath })\n this.prefetchTriggered.add(pagePath)\n }\n\n // If a plugin has disabled core prefetching, stop now.\n if (this.prefetchDisabled) {\n return false\n }\n\n const realPath = findPath(pagePath)\n // Todo make doPrefetch logic cacheable\n // eslint-disable-next-line consistent-return\n this.doPrefetch(realPath).then(() => {\n if (!this.prefetchCompleted.has(pagePath)) {\n this.apiRunner(`onPostPrefetchPathname`, { pathname: pagePath })\n this.prefetchCompleted.add(pagePath)\n }\n })\n\n return true\n }\n\n doPrefetch(pagePath) {\n const pageDataUrl = createPageDataUrl(pagePath)\n return prefetchHelper(pageDataUrl, {\n crossOrigin: `anonymous`,\n as: `fetch`,\n }).then(() =>\n // This was just prefetched, so will return a response from\n // the cache instead of making another request to the server\n this.loadPageDataJson(pagePath)\n )\n }\n\n hovering(rawPath) {\n this.loadPage(rawPath)\n }\n\n getResourceURLsForPathname(rawPath) {\n const pagePath = findPath(rawPath)\n const page = this.pageDataDb.get(pagePath)\n if (page) {\n const pageResources = toPageResources(page.payload)\n\n return [\n ...createComponentUrls(pageResources.page.componentChunkName),\n createPageDataUrl(pagePath),\n ]\n } else {\n return null\n }\n }\n\n isPageNotFound(rawPath) {\n const pagePath = findPath(rawPath)\n const page = this.pageDb.get(pagePath)\n return !page || page.notFound\n }\n\n loadAppData(retries = 0) {\n return this.memoizedGet(`${__PATH_PREFIX__}/page-data/app-data.json`).then(\n req => {\n const { status, responseText } = req\n\n let appData\n\n if (status !== 200 && retries < 3) {\n // Retry 3 times incase of non-200 responses\n return this.loadAppData(retries + 1)\n }\n\n // Handle 200\n if (status === 200) {\n try {\n const jsonPayload = JSON.parse(responseText)\n if (jsonPayload.webpackCompilationHash === undefined) {\n throw new Error(`not a valid app-data response`)\n }\n\n appData = jsonPayload\n } catch (err) {\n // continue regardless of error\n }\n }\n\n return appData\n }\n )\n }\n}\n\nconst createComponentUrls = componentChunkName =>\n (window.___chunkMapping[componentChunkName] || []).map(\n chunk => __PATH_PREFIX__ + chunk\n )\n\nexport class ProdLoader extends BaseLoader {\n constructor(asyncRequires, matchPaths) {\n const loadComponent = chunkName =>\n asyncRequires.components[chunkName]\n ? asyncRequires.components[chunkName]()\n .then(preferDefault)\n // loader will handle the case when component is null\n .catch(() => null)\n : Promise.resolve()\n\n super(loadComponent, matchPaths)\n }\n\n doPrefetch(pagePath) {\n return super.doPrefetch(pagePath).then(result => {\n if (result.status !== PageResourceStatus.Success) {\n return Promise.resolve()\n }\n const pageData = result.payload\n const chunkName = pageData.componentChunkName\n const componentUrls = createComponentUrls(chunkName)\n return Promise.all(componentUrls.map(prefetchHelper)).then(() => pageData)\n })\n }\n\n loadPageDataJson(rawPath) {\n return super.loadPageDataJson(rawPath).then(data => {\n if (data.notFound) {\n // check if html file exist using HEAD request:\n // if it does we should navigate to it instead of showing 404\n return doFetch(rawPath, `HEAD`).then(req => {\n if (req.status === 200) {\n // page (.html file) actually exist (or we asked for 404 )\n // returning page resources status as errored to trigger\n // regular browser navigation to given page\n return {\n status: PageResourceStatus.Error,\n }\n }\n\n // if HEAD request wasn't 200, return notFound result\n // and show 404 page\n return data\n })\n }\n return data\n })\n }\n}\n\nlet instance\n\nexport const setLoader = _loader => {\n instance = _loader\n}\n\nexport const publicLoader = {\n // Deprecated methods. As far as we're aware, these are only used by\n // core gatsby and the offline plugin, however there's a very small\n // chance they're called by others.\n getResourcesForPathname: rawPath => {\n console.warn(\n `Warning: getResourcesForPathname is deprecated. Use loadPage instead`\n )\n return instance.i.loadPage(rawPath)\n },\n getResourcesForPathnameSync: rawPath => {\n console.warn(\n `Warning: getResourcesForPathnameSync is deprecated. Use loadPageSync instead`\n )\n return instance.i.loadPageSync(rawPath)\n },\n enqueue: rawPath => instance.prefetch(rawPath),\n\n // Real methods\n getResourceURLsForPathname: rawPath =>\n instance.getResourceURLsForPathname(rawPath),\n loadPage: rawPath => instance.loadPage(rawPath),\n loadPageSync: rawPath => instance.loadPageSync(rawPath),\n prefetch: rawPath => instance.prefetch(rawPath),\n isPageNotFound: rawPath => instance.isPageNotFound(rawPath),\n hovering: rawPath => instance.hovering(rawPath),\n loadAppData: () => instance.loadAppData(),\n}\n\nexport default publicLoader\n\nexport function getStaticQueryResults() {\n if (instance) {\n return instance.staticQueryDb\n } else {\n return {}\n }\n}\n","var ceil = Math.ceil;\nvar floor = Math.floor;\n\n// `ToInteger` abstract operation\n// https://tc39.es/ecma262/#sec-tointeger\nmodule.exports = function (argument) {\n return isNaN(argument = +argument) ? 0 : (argument > 0 ? floor : ceil)(argument);\n};\n","var global = require('../internals/global');\n\nmodule.exports = global;\n","\"use strict\";\n\nvar offsetY = 0;\n\nvar getTargetOffset = function getTargetOffset(hash) {\n var id = window.decodeURI(hash.replace(\"#\", \"\"));\n\n if (id !== \"\") {\n var element = document.getElementById(id);\n\n if (element) {\n var scrollTop = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop;\n var clientTop = document.documentElement.clientTop || document.body.clientTop || 0;\n var computedStyles = window.getComputedStyle(element);\n var scrollMarginTop = computedStyles.getPropertyValue(\"scroll-margin-top\") || computedStyles.getPropertyValue(\"scroll-snap-margin-top\") || \"0px\";\n return element.getBoundingClientRect().top + scrollTop - parseInt(scrollMarginTop, 10) - clientTop - offsetY;\n }\n }\n\n return null;\n};\n\nexports.onInitialClientRender = function (_, pluginOptions) {\n if (pluginOptions.offsetY) {\n offsetY = pluginOptions.offsetY;\n }\n\n requestAnimationFrame(function () {\n var offset = getTargetOffset(window.location.hash);\n\n if (offset !== null) {\n window.scrollTo(0, offset);\n }\n });\n};\n\nexports.shouldUpdateScroll = function (_ref) {\n var location = _ref.routerProps.location;\n var offset = getTargetOffset(location.hash);\n return offset !== null ? [0, offset] : true;\n};","\"use strict\";\n\nvar _interopRequireWildcard = require(\"@babel/runtime/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.ScrollContainer = void 0;\n\nvar _extends2 = _interopRequireDefault(require(\"@babel/runtime/helpers/extends\"));\n\nvar _inheritsLoose2 = _interopRequireDefault(require(\"@babel/runtime/helpers/inheritsLoose\"));\n\nvar React = _interopRequireWildcard(require(\"react\"));\n\nvar _reactDom = _interopRequireDefault(require(\"react-dom\"));\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _scrollHandler = require(\"./scroll-handler\");\n\nvar _router = require(\"@reach/router\");\n\n// TODO: In Gatsby v3, this file should be removed.\n// We are deprecating this in V2 in favor of useScrollRestoration\nvar propTypes = {\n scrollKey: _propTypes.default.string.isRequired,\n shouldUpdateScroll: _propTypes.default.func,\n children: _propTypes.default.element.isRequired\n};\nvar hasNotWarnedDeprecation = true;\n\nvar ScrollContainerImplementation = /*#__PURE__*/function (_React$Component) {\n (0, _inheritsLoose2.default)(ScrollContainerImplementation, _React$Component);\n\n function ScrollContainerImplementation(props) {\n var _this;\n\n _this = _React$Component.call(this, props) || this;\n\n if (process.env.NODE_ENV !== \"production\" && hasNotWarnedDeprecation) {\n hasNotWarnedDeprecation = false;\n console.log(\"Deprecation Warning:\\n\\n Gatsby <ScrollContainer> is deprecated in Gatsby v2 and will be removed in Gatsby v3.\\n Update to the React hook alternative useScrollRestoration, like this:.\\n \\n ```\\n import React from 'react';\\n import { useScrollRestoration } from 'gatsby-react-router-scroll';\\n\\n function Component() {\\n const scrollRestoration = useScrollRestoration('\" + _this.props.scrollKey + \"');\\n\\n return <ul {...scrollRestoration} />;\\n }\\n ```\\n \");\n }\n\n return _this;\n }\n\n var _proto = ScrollContainerImplementation.prototype;\n\n _proto.componentDidMount = function componentDidMount() {\n var _this2 = this;\n\n // eslint-disable-next-line react/no-find-dom-node\n var node = _reactDom.default.findDOMNode(this);\n\n var _this$props = this.props,\n location = _this$props.location,\n scrollKey = _this$props.scrollKey;\n if (!node) return;\n node.addEventListener(\"scroll\", function () {\n _this2.props.context.save(location, scrollKey, node.scrollTop);\n });\n var position = this.props.context.read(location, scrollKey);\n node.scrollTo(0, position || 0);\n };\n\n _proto.render = function render() {\n return this.props.children;\n };\n\n return ScrollContainerImplementation;\n}(React.Component);\n\nvar ScrollContainer = function ScrollContainer(props) {\n return /*#__PURE__*/React.createElement(_router.Location, null, function (_ref) {\n var location = _ref.location;\n return /*#__PURE__*/React.createElement(_scrollHandler.ScrollContext.Consumer, null, function (context) {\n return /*#__PURE__*/React.createElement(ScrollContainerImplementation, (0, _extends2.default)({}, props, {\n context: context,\n location: location\n }));\n });\n });\n};\n\nexports.ScrollContainer = ScrollContainer;\nScrollContainer.propTypes = propTypes;","var global = require('../internals/global');\nvar createNonEnumerableProperty = require('../internals/create-non-enumerable-property');\n\nmodule.exports = function (key, value) {\n try {\n createNonEnumerableProperty(global, key, value);\n } catch (error) {\n global[key] = value;\n } return value;\n};\n","var global = require('../internals/global');\nvar setGlobal = require('../internals/set-global');\n\nvar SHARED = '__core-js_shared__';\nvar store = global[SHARED] || setGlobal(SHARED, {});\n\nmodule.exports = store;\n","exports.f = Object.getOwnPropertySymbols;\n","var path = require('../internals/path');\nvar global = require('../internals/global');\n\nvar aFunction = function (variable) {\n return typeof variable == 'function' ? variable : undefined;\n};\n\nmodule.exports = function (namespace, method) {\n return arguments.length < 2 ? aFunction(path[namespace]) || aFunction(global[namespace])\n : path[namespace] && path[namespace][method] || global[namespace] && global[namespace][method];\n};\n","var DESCRIPTORS = require('../internals/descriptors');\nvar IE8_DOM_DEFINE = require('../internals/ie8-dom-define');\nvar anObject = require('../internals/an-object');\nvar toPrimitive = require('../internals/to-primitive');\n\nvar nativeDefineProperty = Object.defineProperty;\n\n// `Object.defineProperty` method\n// https://tc39.es/ecma262/#sec-object.defineproperty\nexports.f = DESCRIPTORS ? nativeDefineProperty : function defineProperty(O, P, Attributes) {\n anObject(O);\n P = toPrimitive(P, true);\n anObject(Attributes);\n if (IE8_DOM_DEFINE) try {\n return nativeDefineProperty(O, P, Attributes);\n } catch (error) { /* empty */ }\n if ('get' in Attributes || 'set' in Attributes) throw TypeError('Accessors not supported');\n if ('value' in Attributes) O[P] = Attributes.value;\n return O;\n};\n","var store = require('../internals/shared-store');\n\nvar functionToString = Function.toString;\n\n// this helper broken in `3.4.1-3.4.4`, so we can't use `shared` helper\nif (typeof store.inspectSource != 'function') {\n store.inspectSource = function (it) {\n return functionToString.call(it);\n };\n}\n\nmodule.exports = store.inspectSource;\n","module.exports = false;\n","const preferDefault = m => (m && m.default) || m\n\nif (process.env.BUILD_STAGE === `develop`) {\n module.exports = preferDefault(require(`./public-page-renderer-dev`))\n} else if (process.env.BUILD_STAGE === `build-javascript`) {\n module.exports = preferDefault(require(`./public-page-renderer-prod`))\n} else {\n module.exports = () => null\n}\n","var isObject = require('../internals/is-object');\n\nmodule.exports = function (it) {\n if (!isObject(it)) {\n throw TypeError(String(it) + ' is not an object');\n } return it;\n};\n","/*\n Why commonjs and not ES imports/exports?\n\n This module is used to alias `create-react-context` package, but drop the the actual implementation part\n because Gatsby requires version of react that has implementatoin baked in.\n \n Package source is using ES modules:\n - https://github.com/jamiebuilds/create-react-context/blob/v0.3.0/src/index.js\n \n But to build this package `babel-plugin-add-module-exports` is used ( https://www.npmjs.com/package/babel-plugin-add-module-exports).\n Which result in both `module.exports` and `exports.default` being set to same thing.\n\n We don't use that babel plugin so we only have `exports.default`.\n\n This cause problems in various 3rd party react components that rely on `module.exports` being set.\n See https://github.com/gatsbyjs/gatsby/issues/23645 for example of it.\n \n Instead of adding same babel plugin we mimic output here. Adding babel plugin just for this would:\n a) unnecesairly slow down compilation for all other files (if we just apply it everywhere)\n b) or complicate babel-loader configuration with overwrite specifically for this file\n*/\n\nconst { createContext } = require(`react`)\n\nmodule.exports = createContext\nmodule.exports.default = createContext\n","var aFunction = require('../internals/a-function');\nvar toObject = require('../internals/to-object');\nvar IndexedObject = require('../internals/indexed-object');\nvar toLength = require('../internals/to-length');\n\n// `Array.prototype.{ reduce, reduceRight }` methods implementation\nvar createMethod = function (IS_RIGHT) {\n return function (that, callbackfn, argumentsLength, memo) {\n aFunction(callbackfn);\n var O = toObject(that);\n var self = IndexedObject(O);\n var length = toLength(O.length);\n var index = IS_RIGHT ? length - 1 : 0;\n var i = IS_RIGHT ? -1 : 1;\n if (argumentsLength < 2) while (true) {\n if (index in self) {\n memo = self[index];\n index += i;\n break;\n }\n index += i;\n if (IS_RIGHT ? index < 0 : length <= index) {\n throw TypeError('Reduce of empty array with no initial value');\n }\n }\n for (;IS_RIGHT ? index >= 0 : length > index; index += i) if (index in self) {\n memo = callbackfn(memo, self[index], index, O);\n }\n return memo;\n };\n};\n\nmodule.exports = {\n // `Array.prototype.reduce` method\n // https://tc39.es/ecma262/#sec-array.prototype.reduce\n left: createMethod(false),\n // `Array.prototype.reduceRight` method\n // https://tc39.es/ecma262/#sec-array.prototype.reduceright\n right: createMethod(true)\n};\n","function _extends() {\n module.exports = _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nmodule.exports = _extends;","import React from \"react\"\nimport PropTypes from \"prop-types\"\n\nimport loader from \"./loader\"\nimport InternalPageRenderer from \"./page-renderer\"\n\nconst ProdPageRenderer = ({ location }) => {\n const pageResources = loader.loadPageSync(location.pathname)\n if (!pageResources) {\n return null\n }\n return React.createElement(InternalPageRenderer, {\n location,\n pageResources,\n ...pageResources.json,\n })\n}\n\nProdPageRenderer.propTypes = {\n location: PropTypes.shape({\n pathname: PropTypes.string.isRequired,\n }).isRequired,\n}\n\nexport default ProdPageRenderer\n","var shared = require('../internals/shared');\nvar uid = require('../internals/uid');\n\nvar keys = shared('keys');\n\nmodule.exports = function (key) {\n return keys[key] || (keys[key] = uid(key));\n};\n","module.exports = function (it) {\n if (typeof it != 'function') {\n throw TypeError(String(it) + ' is not a function');\n } return it;\n};\n","const plugins = require(`./api-runner-browser-plugins`)\nconst {\n getResourcesForPathname,\n getResourcesForPathnameSync,\n getResourceURLsForPathname,\n loadPage,\n loadPageSync,\n} = require(`./loader`).publicLoader\n\nexports.apiRunner = (api, args = {}, defaultReturn, argTransform) => {\n // Hooks for gatsby-cypress's API handler\n if (process.env.CYPRESS_SUPPORT) {\n if (window.___apiHandler) {\n window.___apiHandler(api)\n } else if (window.___resolvedAPIs) {\n window.___resolvedAPIs.push(api)\n } else {\n window.___resolvedAPIs = [api]\n }\n }\n\n let results = plugins.map(plugin => {\n if (!plugin.plugin[api]) {\n return undefined\n }\n\n // Deprecated April 2019. Use `loadPageSync` instead\n args.getResourcesForPathnameSync = getResourcesForPathnameSync\n // Deprecated April 2019. Use `loadPage` instead\n args.getResourcesForPathname = getResourcesForPathname\n args.getResourceURLsForPathname = getResourceURLsForPathname\n args.loadPage = loadPage\n args.loadPageSync = loadPageSync\n\n const result = plugin.plugin[api](args, plugin.options)\n if (result && argTransform) {\n args = argTransform({ args, result, plugin })\n }\n return result\n })\n\n // Filter out undefined results.\n results = results.filter(result => typeof result !== `undefined`)\n\n if (results.length > 0) {\n return results\n } else if (defaultReturn) {\n return [defaultReturn]\n } else {\n return []\n }\n}\n\nexports.apiRunnerAsync = (api, args, defaultReturn) =>\n plugins.reduce(\n (previous, next) =>\n next.plugin[api]\n ? previous.then(() => next.plugin[api](args, next.options))\n : previous,\n Promise.resolve()\n )\n","var DESCRIPTORS = require('../internals/descriptors');\nvar fails = require('../internals/fails');\nvar has = require('../internals/has');\n\nvar defineProperty = Object.defineProperty;\nvar cache = {};\n\nvar thrower = function (it) { throw it; };\n\nmodule.exports = function (METHOD_NAME, options) {\n if (has(cache, METHOD_NAME)) return cache[METHOD_NAME];\n if (!options) options = {};\n var method = [][METHOD_NAME];\n var ACCESSORS = has(options, 'ACCESSORS') ? options.ACCESSORS : false;\n var argument0 = has(options, 0) ? options[0] : thrower;\n var argument1 = has(options, 1) ? options[1] : undefined;\n\n return cache[METHOD_NAME] = !!method && !fails(function () {\n if (ACCESSORS && !DESCRIPTORS) return true;\n var O = { length: -1 };\n\n if (ACCESSORS) defineProperty(O, 1, { enumerable: true, get: thrower });\n else O[1] = 1;\n\n method.call(O, argument0, argument1);\n });\n};\n","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n","var internalObjectKeys = require('../internals/object-keys-internal');\nvar enumBugKeys = require('../internals/enum-bug-keys');\n\nvar hiddenKeys = enumBugKeys.concat('length', 'prototype');\n\n// `Object.getOwnPropertyNames` method\n// https://tc39.es/ecma262/#sec-object.getownpropertynames\nexports.f = Object.getOwnPropertyNames || function getOwnPropertyNames(O) {\n return internalObjectKeys(O, hiddenKeys);\n};\n"],"sourceRoot":""}
\ No newline at end of file
diff --git a/app-d7398b08e923fe8a3caa.js b/app-d7398b08e923fe8a3caa.js
deleted file mode 100644
index 35ebba9..0000000
--- a/app-d7398b08e923fe8a3caa.js
+++ /dev/null
@@ -1,2 +0,0 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[3],{"+ZDr":function(t,e,n){"use strict";var r=n("TqRt");e.__esModule=!0,e.withPrefix=h,e.withAssetPrefix=function(t){return h(t,v())},e.navigateTo=e.replace=e.push=e.navigate=e.default=void 0;var o=r(n("8OQS")),a=r(n("pVnL")),i=r(n("PJYZ")),u=r(n("VbXa")),c=r(n("17x9")),s=r(n("q1tI")),l=n("YwZP"),p=n("LYrO"),f=n("cu4x");e.parsePath=f.parsePath;var d=function(t){return null==t?void 0:t.startsWith("/")};function h(t,e){var n,r;if(void 0===e&&(e=m()),!g(t))return t;if(t.startsWith("./")||t.startsWith("../"))return t;var o=null!==(n=null!==(r=e)&&void 0!==r?r:v())&&void 0!==n?n:"/";return""+((null==o?void 0:o.endsWith("/"))?o.slice(0,-1):o)+(t.startsWith("/")?t:"/"+t)}var v=function(){return"/jkube"},m=function(){return"/jkube"},g=function(t){return t&&!t.startsWith("http://")&&!t.startsWith("https://")&&!t.startsWith("//")};var y=function(t,e){return"number"==typeof t?t:g(t)?d(t)?h(t):function(t,e){return d(t)?t:(0,p.resolve)(t,e)}(t,e):t},w={activeClassName:c.default.string,activeStyle:c.default.object,partiallyActive:c.default.bool},b=function(t){function e(e){var n;(n=t.call(this,e)||this).defaultGetProps=function(t){var e=t.isPartiallyCurrent,r=t.isCurrent;return(n.props.partiallyActive?e:r)?{className:[n.props.className,n.props.activeClassName].filter(Boolean).join(" "),style:(0,a.default)({},n.props.style,n.props.activeStyle)}:null};var r=!1;return"undefined"!=typeof window&&window.IntersectionObserver&&(r=!0),n.state={IOSupported:r},n.handleRef=n.handleRef.bind((0,i.default)(n)),n}(0,u.default)(e,t);var n=e.prototype;return n.componentDidUpdate=function(t,e){this.props.to===t.to||this.state.IOSupported||___loader.enqueue((0,f.parsePath)(y(this.props.to,window.location.pathname)).pathname)},n.componentDidMount=function(){this.state.IOSupported||___loader.enqueue((0,f.parsePath)(y(this.props.to,window.location.pathname)).pathname)},n.componentWillUnmount=function(){if(this.io){var t=this.io,e=t.instance,n=t.el;e.unobserve(n),e.disconnect()}},n.handleRef=function(t){var e,n,r,o=this;this.props.innerRef&&this.props.innerRef.hasOwnProperty("current")?this.props.innerRef.current=t:this.props.innerRef&&this.props.innerRef(t),this.state.IOSupported&&t&&(this.io=(e=t,n=function(){___loader.enqueue((0,f.parsePath)(y(o.props.to,window.location.pathname)).pathname)},(r=new window.IntersectionObserver((function(t){t.forEach((function(t){e===t.target&&(t.isIntersecting||t.intersectionRatio>0)&&(r.unobserve(e),r.disconnect(),n())}))}))).observe(e),{instance:r,el:e}))},n.render=function(){var t=this,e=this.props,n=e.to,r=e.getProps,i=void 0===r?this.defaultGetProps:r,u=e.onClick,c=e.onMouseEnter,p=(e.activeClassName,e.activeStyle,e.innerRef,e.partiallyActive,e.state),d=e.replace,h=(0,o.default)(e,["to","getProps","onClick","onMouseEnter","activeClassName","activeStyle","innerRef","partiallyActive","state","replace"]);return s.default.createElement(l.Location,null,(function(e){var r=e.location,o=y(n,r.pathname);return g(o)?s.default.createElement(l.Link,(0,a.default)({to:o,state:p,getProps:i,innerRef:t.handleRef,onMouseEnter:function(t){c&&c(t),___loader.hovering((0,f.parsePath)(o).pathname)},onClick:function(e){if(u&&u(e),!(0!==e.button||t.props.target||e.defaultPrevented||e.metaKey||e.altKey||e.ctrlKey||e.shiftKey)){e.preventDefault();var n=d,r=encodeURI(o)===window.location.pathname;"boolean"!=typeof d&&r&&(n=!0),window.___navigate(o,{state:p,replace:n})}return!0}},h)):s.default.createElement("a",(0,a.default)({href:o},h))}))},e}(s.default.Component);b.propTypes=(0,a.default)({},w,{onClick:c.default.func,to:c.default.string.isRequired,replace:c.default.bool,state:c.default.object});var P=function(t,e,n){return console.warn('The "'+t+'" method is now deprecated and will be removed in Gatsby v'+n+'. Please use "'+e+'" instead.')},R=s.default.forwardRef((function(t,e){return s.default.createElement(b,(0,a.default)({innerRef:e},t))}));e.default=R;e.navigate=function(t,e){window.___navigate(y(t,window.location.pathname),e)};var S=function(t){P("push","navigate",3),window.___push(y(t,window.location.pathname))};e.push=S;e.replace=function(t){P("replace","navigate",3),window.___replace(y(t,window.location.pathname))};e.navigateTo=function(t){return P("navigateTo","navigate",3),S(t)}},"/hTd":function(t,e,n){"use strict";e.__esModule=!0,e.SessionStorage=void 0;var r=function(){function t(){}var e=t.prototype;return e.read=function(t,e){var n=this.getStateKey(t,e);try{var r=window.sessionStorage.getItem(n);return r?JSON.parse(r):0}catch(o){return window&&window.___GATSBY_REACT_ROUTER_SCROLL&&window.___GATSBY_REACT_ROUTER_SCROLL[n]?window.___GATSBY_REACT_ROUTER_SCROLL[n]:0}},e.save=function(t,e,n){var r=this.getStateKey(t,e),o=JSON.stringify(n);try{window.sessionStorage.setItem(r,o)}catch(a){window&&window.___GATSBY_REACT_ROUTER_SCROLL||(window.___GATSBY_REACT_ROUTER_SCROLL={}),window.___GATSBY_REACT_ROUTER_SCROLL[r]=JSON.parse(o)}},e.getStateKey=function(t,e){var n="@@scroll|"+t.pathname;return null==e?n:n+"|"+e},t}();e.SessionStorage=r},"284h":function(t,e,n){var r=n("cDf5");function o(){if("function"!=typeof WeakMap)return null;var t=new WeakMap;return o=function(){return t},t}t.exports=function(t){if(t&&t.__esModule)return t;if(null===t||"object"!==r(t)&&"function"!=typeof t)return{default:t};var e=o();if(e&&e.has(t))return e.get(t);var n={},a=Object.defineProperty&&Object.getOwnPropertyDescriptor;for(var i in t)if(Object.prototype.hasOwnProperty.call(t,i)){var u=a?Object.getOwnPropertyDescriptor(t,i):null;u&&(u.get||u.set)?Object.defineProperty(n,i,u):n[i]=t[i]}return n.default=t,e&&e.set(t,n),n}},"3uz+":function(t,e,n){"use strict";e.__esModule=!0,e.useScrollRestoration=function(t){var e=(0,a.useLocation)(),n=(0,o.useContext)(r.ScrollContext),i=(0,o.useRef)();return(0,o.useLayoutEffect)((function(){if(i.current){var r=n.read(e,t);i.current.scrollTo(0,r||0)}}),[]),{ref:i,onScroll:function(){i.current&&n.save(e,t,i.current.scrollTop)}}};var r=n("Enzk"),o=n("q1tI"),a=n("YwZP")},"5yr3":function(t,e,n){"use strict";var r=function(t){return t=t||Object.create(null),{on:function(e,n){(t[e]||(t[e]=[])).push(n)},off:function(e,n){t[e]&&t[e].splice(t[e].indexOf(n)>>>0,1)},emit:function(e,n){(t[e]||[]).slice().map((function(t){t(n)})),(t["*"]||[]).slice().map((function(t){t(e,n)}))}}}();e.a=r},"6qGY":function(t,e){t.exports=Object.assign},"7hJ6":function(t,e,n){"use strict";e.__esModule=!0,e.useScrollRestoration=e.ScrollContainer=e.ScrollContext=void 0;var r=n("Enzk");e.ScrollContext=r.ScrollHandler;var o=n("hd9s");e.ScrollContainer=o.ScrollContainer;var a=n("3uz+");e.useScrollRestoration=a.useScrollRestoration},"8OQS":function(t,e){t.exports=function(t,e){if(null==t)return{};var n,r,o={},a=Object.keys(t);for(r=0;r<a.length;r++)n=a[r],e.indexOf(n)>=0||(o[n]=t[n]);return o}},"94VI":function(t,e){e.polyfill=function(t){return t}},"9Xx/":function(t,e,n){"use strict";n.d(e,"c",(function(){return c})),n.d(e,"d",(function(){return s})),n.d(e,"a",(function(){return a})),n.d(e,"b",(function(){return i}));var r=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},o=function(t){var e=t.location,n=e.search,r=e.hash,o=e.href,a=e.origin,i=e.protocol,c=e.host,s=e.hostname,l=e.port,p=t.location.pathname;!p&&o&&u&&(p=new URL(o).pathname);return{pathname:encodeURI(decodeURI(p)),search:n,hash:r,href:o,origin:a,protocol:i,host:c,hostname:s,port:l,state:t.history.state,key:t.history.state&&t.history.state.key||"initial"}},a=function(t,e){var n=[],a=o(t),i=!1,u=function(){};return{get location(){return a},get transitioning(){return i},_onTransitionComplete:function(){i=!1,u()},listen:function(e){n.push(e);var r=function(){a=o(t),e({location:a,action:"POP"})};return t.addEventListener("popstate",r),function(){t.removeEventListener("popstate",r),n=n.filter((function(t){return t!==e}))}},navigate:function(e){var c=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},s=c.state,l=c.replace,p=void 0!==l&&l;if("number"==typeof e)t.history.go(e);else{s=r({},s,{key:Date.now()+""});try{i||p?t.history.replaceState(s,null,e):t.history.pushState(s,null,e)}catch(d){t.location[p?"replace":"assign"](e)}}a=o(t),i=!0;var f=new Promise((function(t){return u=t}));return n.forEach((function(t){return t({location:a,action:"PUSH"})})),f}}},i=function(){var t=arguments.length>0&&void 0!==arguments[0]?arguments[0]:"/",e=t.indexOf("?"),n={pathname:e>-1?t.substr(0,e):t,search:e>-1?t.substr(e):""},r=0,o=[n],a=[null];return{get location(){return o[r]},addEventListener:function(t,e){},removeEventListener:function(t,e){},history:{get entries(){return o},get index(){return r},get state(){return a[r]},pushState:function(t,e,n){var i=n.split("?"),u=i[0],c=i[1],s=void 0===c?"":c;r++,o.push({pathname:u,search:s.length?"?"+s:s}),a.push(t)},replaceState:function(t,e,n){var i=n.split("?"),u=i[0],c=i[1],s=void 0===c?"":c;o[r]={pathname:u,search:s},a[r]=t},go:function(t){var e=r+t;e<0||e>a.length-1||(r=e)}}}},u=!("undefined"==typeof window||!window.document||!window.document.createElement),c=a(u?window:i()),s=c.navigate},Enzk:function(t,e,n){"use strict";var r=n("284h"),o=n("TqRt");e.__esModule=!0,e.ScrollHandler=e.ScrollContext=void 0;var a=o(n("PJYZ")),i=o(n("VbXa")),u=r(n("q1tI")),c=o(n("17x9")),s=n("/hTd"),l=u.createContext(new s.SessionStorage);e.ScrollContext=l,l.displayName="GatsbyScrollContext";var p=function(t){function e(){for(var e,n=arguments.length,r=new Array(n),o=0;o<n;o++)r[o]=arguments[o];return(e=t.call.apply(t,[this].concat(r))||this)._stateStorage=new s.SessionStorage,e.scrollListener=function(){var t=e.props.location.key;t&&e._stateStorage.save(e.props.location,t,window.scrollY)},e.windowScroll=function(t,n){e.shouldUpdateScroll(n,e.props)&&window.scrollTo(0,t)},e.scrollToHash=function(t,n){var r=document.getElementById(t.substring(1));r&&e.shouldUpdateScroll(n,e.props)&&r.scrollIntoView()},e.shouldUpdateScroll=function(t,n){var r=e.props.shouldUpdateScroll;return!r||r.call((0,a.default)(e),t,n)},e}(0,i.default)(e,t);var n=e.prototype;return n.componentDidMount=function(){var t;window.addEventListener("scroll",this.scrollListener);var e=this.props.location,n=e.key,r=e.hash;n&&(t=this._stateStorage.read(this.props.location,n)),t?this.windowScroll(t,void 0):r&&this.scrollToHash(decodeURI(r),void 0)},n.componentWillUnmount=function(){window.removeEventListener("scroll",this.scrollListener)},n.componentDidUpdate=function(t){var e,n=this.props.location,r=n.hash,o=n.key;o&&(e=this._stateStorage.read(this.props.location,o)),r&&0===e?this.scrollToHash(decodeURI(r),t):this.windowScroll(e,t)},n.render=function(){return u.createElement(l.Provider,{value:this._stateStorage},this.props.children)},e}(u.Component);e.ScrollHandler=p,p.propTypes={shouldUpdateScroll:c.default.func,children:c.default.element.isRequired,location:c.default.object.isRequired}},IOVJ:function(t,e,n){"use strict";var r=n("dI71"),o=n("q1tI"),a=n.n(o),i=n("emEt"),u=n("xtsi"),c=function(t){function e(){return t.apply(this,arguments)||this}return Object(r.a)(e,t),e.prototype.render=function(){var t=Object.assign({},this.props,{pathContext:this.props.pageContext}),e=Object(u.apiRunner)("replaceComponentRenderer",{props:this.props,loader:i.publicLoader})[0]||Object(o.createElement)(this.props.pageResources.component,Object.assign({},t,{key:this.props.path||this.props.pageResources.page.path}));return Object(u.apiRunner)("wrapPageElement",{element:e,props:t},e,(function(e){return{element:e.result,props:t}})).pop()},e}(a.a.Component);e.a=c},LYrO:function(t,e,n){"use strict";n.r(e),n.d(e,"startsWith",(function(){return a})),n.d(e,"pick",(function(){return i})),n.d(e,"match",(function(){return u})),n.d(e,"resolve",(function(){return c})),n.d(e,"insertParams",(function(){return s})),n.d(e,"validateRedirect",(function(){return l})),n.d(e,"shallowCompare",(function(){return w}));var r=n("QLaP"),o=n.n(r),a=function(t,e){return t.substr(0,e.length)===e},i=function(t,e){for(var n=void 0,r=void 0,a=e.split("?")[0],i=m(a),u=""===i[0],c=v(t),s=0,l=c.length;s<l;s++){var f=!1,h=c[s].route;if(h.default)r={route:h,params:{},uri:e};else{for(var g=m(h.path),w={},b=Math.max(i.length,g.length),P=0;P<b;P++){var R=g[P],S=i[P];if(d(R)){w[R.slice(1)||"*"]=i.slice(P).map(decodeURIComponent).join("/");break}if(void 0===S){f=!0;break}var O=p.exec(R);if(O&&!u){-1===y.indexOf(O[1])||o()(!1);var j=decodeURIComponent(S);w[O[1]]=j}else if(R!==S){f=!0;break}}if(!f){n={route:h,params:w,uri:"/"+i.slice(0,P).join("/")};break}}}return n||r||null},u=function(t,e){return i([{path:t}],e)},c=function(t,e){if(a(t,"/"))return t;var n=t.split("?"),r=n[0],o=n[1],i=e.split("?")[0],u=m(r),c=m(i);if(""===u[0])return g(i,o);if(!a(u[0],".")){var s=c.concat(u).join("/");return g(("/"===i?"":"/")+s,o)}for(var l=c.concat(u),p=[],f=0,d=l.length;f<d;f++){var h=l[f];".."===h?p.pop():"."!==h&&p.push(h)}return g("/"+p.join("/"),o)},s=function(t,e){var n=t.split("?"),r=n[0],o=n[1],a=void 0===o?"":o,i="/"+m(r).map((function(t){var n=p.exec(t);return n?e[n[1]]:t})).join("/"),u=e.location,c=(u=void 0===u?{}:u).search,s=(void 0===c?"":c).split("?")[1]||"";return i=g(i,a,s)},l=function(t,e){var n=function(t){return f(t)};return m(t).filter(n).sort().join("/")===m(e).filter(n).sort().join("/")},p=/^:(.+)/,f=function(t){return p.test(t)},d=function(t){return t&&"*"===t[0]},h=function(t,e){return{route:t,score:t.default?0:m(t.path).reduce((function(t,e){return t+=4,!function(t){return""===t}(e)?f(e)?t+=2:d(e)?t-=5:t+=3:t+=1,t}),0),index:e}},v=function(t){return t.map(h).sort((function(t,e){return t.score<e.score?1:t.score>e.score?-1:t.index-e.index}))},m=function(t){return t.replace(/(^\/+|\/+$)/g,"").split("/")},g=function(t){for(var e=arguments.length,n=Array(e>1?e-1:0),r=1;r<e;r++)n[r-1]=arguments[r];return t+((n=n.filter((function(t){return t&&t.length>0})))&&n.length>0?"?"+n.join("&"):"")},y=["uri","path"],w=function(t,e){var n=Object.keys(t);return n.length===Object.keys(e).length&&n.every((function(n){return e.hasOwnProperty(n)&&t[n]===e[n]}))}},LeKB:function(t,e,n){t.exports=[{plugin:n("hUyl"),options:{plugins:[]}}]},MMVs:function(t,e,n){t.exports=function(){var t=!1;-1!==navigator.appVersion.indexOf("MSIE 10")&&(t=!0);var e,n=[],r="object"==typeof document&&document,o=t?r.documentElement.doScroll("left"):r.documentElement.doScroll,a=r&&(o?/^loaded|^c/:/^loaded|^i|^c/).test(r.readyState);return!a&&r&&r.addEventListener("DOMContentLoaded",e=function(){for(r.removeEventListener("DOMContentLoaded",e),a=1;e=n.shift();)e()}),function(t){a?setTimeout(t,0):n.push(t)}}()},NSX3:function(t,e,n){"use strict";n.r(e);var r=n("xtsi");"https:"!==window.location.protocol&&"localhost"!==window.location.hostname?console.error("Service workers can only be used over HTTPS, or on localhost for development"):"serviceWorker"in navigator&&navigator.serviceWorker.register("/jkube/sw.js").then((function(t){t.addEventListener("updatefound",(function(){Object(r.apiRunner)("onServiceWorkerUpdateFound",{serviceWorker:t});var e=t.installing;console.log("installingWorker",e),e.addEventListener("statechange",(function(){switch(e.state){case"installed":navigator.serviceWorker.controller?(window.___swUpdated=!0,Object(r.apiRunner)("onServiceWorkerUpdateReady",{serviceWorker:t}),window.___failedResources&&(console.log("resources failed, SW updated - reloading"),window.location.reload())):(console.log("Content is now available offline!"),Object(r.apiRunner)("onServiceWorkerInstalled",{serviceWorker:t}));break;case"redundant":console.error("The installing service worker became redundant."),Object(r.apiRunner)("onServiceWorkerRedundant",{serviceWorker:t});break;case"activated":Object(r.apiRunner)("onServiceWorkerActive",{serviceWorker:t})}}))}))})).catch((function(t){console.error("Error during service worker registration:",t)}))},PJYZ:function(t,e){t.exports=function(t){if(void 0===t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return t}},QLaP:function(t,e,n){"use strict";t.exports=function(t,e,n,r,o,a,i,u){if(!t){var c;if(void 0===e)c=new Error("Minified exception occurred; use the non-minified dev environment for the full error message and additional helpful warnings.");else{var s=[n,r,o,a,i,u],l=0;(c=new Error(e.replace(/%s/g,(function(){return s[l++]})))).name="Invariant Violation"}throw c.framesToPop=1,c}}},TqRt:function(t,e){t.exports=function(t){return t&&t.__esModule?t:{default:t}}},UxWs:function(t,e,n){"use strict";n.r(e);var r=n("dI71"),o=n("xtsi"),a=n("q1tI"),i=n.n(a),u=n("i8i4"),c=n.n(u),s=n("YwZP"),l=n("7hJ6"),p=n("MMVs"),f=n.n(p),d=n("Wbzz"),h=n("emEt"),v=n("YLt+"),m=n("5yr3"),g={id:"gatsby-announcer",style:{position:"absolute",top:0,width:1,height:1,padding:0,overflow:"hidden",clip:"rect(0, 0, 0, 0)",whiteSpace:"nowrap",border:0},"aria-live":"assertive","aria-atomic":"true"},y=n("9Xx/"),w=n("+ZDr"),b=v.reduce((function(t,e){return t[e.fromPath]=e,t}),{});function P(t){var e=b[t];return null!=e&&(window.___replace(e.toPath),!0)}var R=function(t,e){P(t.pathname)||Object(o.apiRunner)("onPreRouteUpdate",{location:t,prevLocation:e})},S=function(t,e){P(t.pathname)||Object(o.apiRunner)("onRouteUpdate",{location:t,prevLocation:e})},O=function(t,e){if(void 0===e&&(e={}),"number"!=typeof t){var n=Object(w.parsePath)(t).pathname,r=b[n];if(r&&(t=r.toPath,n=Object(w.parsePath)(t).pathname),window.___swUpdated)window.location=n;else{var a=setTimeout((function(){m.a.emit("onDelayedLoadPageResources",{pathname:n}),Object(o.apiRunner)("onRouteUpdateDelayed",{location:window.location})}),1e3);h.default.loadPage(n).then((function(r){if(!r||r.status===h.PageResourceStatus.Error)return window.history.replaceState({},"",location.href),window.location=n,void clearTimeout(a);r&&r.page.webpackCompilationHash!==window.___webpackCompilationHash&&("serviceWorker"in navigator&&null!==navigator.serviceWorker.controller&&"activated"===navigator.serviceWorker.controller.state&&navigator.serviceWorker.controller.postMessage({gatsbyApi:"clearPathResources"}),console.log("Site has changed on server. Reloading browser"),window.location=n),Object(s.navigate)(t,e),clearTimeout(a)}))}}else y.c.navigate(t)};function j(t,e){var n=this,r=e.location,a=r.pathname,i=r.hash,u=Object(o.apiRunner)("shouldUpdateScroll",{prevRouterProps:t,pathname:a,routerProps:{location:r},getSavedScrollPosition:function(t){return n._stateStorage.read(t)}});if(u.length>0)return u[u.length-1];if(t&&t.location.pathname===a)return i?decodeURI(i.slice(1)):[0,0];return!0}var E=function(t){function e(e){var n;return(n=t.call(this,e)||this).announcementRef=i.a.createRef(),n}Object(r.a)(e,t);var n=e.prototype;return n.componentDidUpdate=function(t,e){var n=this;requestAnimationFrame((function(){var t="new page at "+n.props.location.pathname;document.title&&(t=document.title);var e=document.querySelectorAll("#gatsby-focus-wrapper h1");e&&e.length&&(t=e[0].textContent);var r="Navigated to "+t;n.announcementRef.current&&(n.announcementRef.current.innerText!==r&&(n.announcementRef.current.innerText=r))}))},n.render=function(){return i.a.createElement("div",Object.assign({},g,{ref:this.announcementRef}))},e}(i.a.Component),_=function(t){function e(e){var n;return n=t.call(this,e)||this,R(e.location,null),n}Object(r.a)(e,t);var n=e.prototype;return n.componentDidMount=function(){S(this.props.location,null)},n.componentDidUpdate=function(t,e,n){n&&S(this.props.location,t.location)},n.getSnapshotBeforeUpdate=function(t){return this.props.location.pathname!==t.location.pathname&&(R(this.props.location,t.location),!0)},n.render=function(){return i.a.createElement(i.a.Fragment,null,this.props.children,i.a.createElement(E,{location:location}))},e}(i.a.Component),C=n("IOVJ"),k=n("WM4P"),x=n.n(k);function L(t,e){for(var n in t)if(!(n in e))return!0;for(var r in e)if(t[r]!==e[r])return!0;return!1}var D=function(t){function e(e){var n;n=t.call(this)||this;var r=e.location,o=e.pageResources;return n.state={location:Object.assign({},r),pageResources:o||h.default.loadPageSync(r.pathname)},n}Object(r.a)(e,t),e.getDerivedStateFromProps=function(t,e){var n=t.location;return e.location.href!==n.href?{pageResources:h.default.loadPageSync(n.pathname),location:Object.assign({},n)}:{location:Object.assign({},n)}};var n=e.prototype;return n.loadResources=function(t){var e=this;h.default.loadPage(t).then((function(n){n&&n.status!==h.PageResourceStatus.Error?e.setState({location:Object.assign({},window.location),pageResources:n}):(window.history.replaceState({},"",location.href),window.location=t)}))},n.shouldComponentUpdate=function(t,e){return e.pageResources?this.state.pageResources!==e.pageResources||(this.state.pageResources.component!==e.pageResources.component||(this.state.pageResources.json!==e.pageResources.json||(!(this.state.location.key===e.location.key||!e.pageResources.page||!e.pageResources.page.matchPath&&!e.pageResources.page.path)||function(t,e,n){return L(t.props,e)||L(t.state,n)}(this,t,e)))):(this.loadResources(t.location.pathname),!1)},n.render=function(){return this.props.children(this.state)},e}(i.a.Component),T=n("cSJ8"),U=n("Vd8h"),I=new h.ProdLoader(x.a,U);Object(h.setLoader)(I),I.setApiRunner(o.apiRunner),window.asyncRequires=x.a,window.___emitter=m.a,window.___loader=h.publicLoader,y.c.listen((function(t){t.location.action=t.action})),window.___push=function(t){return O(t,{replace:!1})},window.___replace=function(t){return O(t,{replace:!0})},window.___navigate=function(t,e){return O(t,e)},P(window.location.pathname),Object(o.apiRunnerAsync)("onClientEntry").then((function(){Object(o.apiRunner)("registerServiceWorker").length>0&&n("NSX3");var t=function(t){return i.a.createElement(s.BaseContext.Provider,{value:{baseuri:"/",basepath:"/"}},i.a.createElement(C.a,t))},e=i.a.createContext({}),a=function(t){function n(){return t.apply(this,arguments)||this}return Object(r.a)(n,t),n.prototype.render=function(){var t=this.props.children;return i.a.createElement(s.Location,null,(function(n){var r=n.location;return i.a.createElement(D,{location:r},(function(n){var r=n.pageResources,o=n.location;return i.a.createElement(d.b.Provider,{value:r.staticQueryResults},i.a.createElement(e.Provider,{value:{pageResources:r,location:o}},t))}))}))},n}(i.a.Component),u=function(n){function o(){return n.apply(this,arguments)||this}return Object(r.a)(o,n),o.prototype.render=function(){var n=this;return i.a.createElement(e.Consumer,null,(function(e){var r=e.pageResources,o=e.location;return i.a.createElement(_,{location:o},i.a.createElement(l.ScrollContext,{location:o,shouldUpdateScroll:j},i.a.createElement(s.Router,{basepath:"/jkube",location:o,id:"gatsby-focus-wrapper"},i.a.createElement(t,Object.assign({path:"/404.html"===r.page.path?Object(T.a)(o.pathname,"/jkube"):encodeURI(r.page.matchPath||r.page.path)},n.props,{location:o,pageResources:r},r.json)))))}))},o}(i.a.Component),p=window,v=p.pagePath,m=p.location;v&&"/jkube"+v!==m.pathname&&!(I.findMatchPath(Object(T.a)(m.pathname,"/jkube"))||"/404.html"===v||v.match(/^\/404\/?$/)||v.match(/^\/offline-plugin-app-shell-fallback\/?$/))&&Object(s.navigate)("/jkube"+v+m.search+m.hash,{replace:!0}),h.publicLoader.loadPage(m.pathname).then((function(t){if(!t||t.status===h.PageResourceStatus.Error)throw new Error("page resources for "+m.pathname+" not found. Not rendering React");window.___webpackCompilationHash=t.page.webpackCompilationHash;var e=Object(o.apiRunner)("wrapRootElement",{element:i.a.createElement(u,null)},i.a.createElement(u,null),(function(t){return{element:t.result}})).pop(),n=function(){return i.a.createElement(a,null,e)},r=Object(o.apiRunner)("replaceHydrateFunction",void 0,c.a.hydrate)[0];f()((function(){r(i.a.createElement(n,null),"undefined"!=typeof window?document.getElementById("___gatsby"):void 0,(function(){Object(o.apiRunner)("onInitialClientRender")}))}))}))}))},VbXa:function(t,e){t.exports=function(t,e){t.prototype=Object.create(e.prototype),t.prototype.constructor=t,t.__proto__=e}},Vd8h:function(t){t.exports=JSON.parse("[]")},WM4P:function(t,e,n){e.components={"component---src-pages-quickstarts-index-jsx":function(){return Promise.all([n.e(1),n.e(0),n.e(4)]).then(n.bind(null,"qG+M"))},"component---src-templates-doc-jsx":function(){return Promise.all([n.e(1),n.e(0),n.e(5)]).then(n.bind(null,"DjDE"))},"component---src-templates-main-jsx":function(){return Promise.all([n.e(1),n.e(0),n.e(6)]).then(n.bind(null,"2ggT"))}}},Wbzz:function(t,e,n){"use strict";n.d(e,"b",(function(){return u}));var r=n("q1tI"),o=n.n(r),a=n("+ZDr"),i=n.n(a);n.d(e,"a",(function(){return i.a}));n("7hJ6"),n("lw3w"),n("emEt").default.enqueue;var u=o.a.createContext({})},"YLt+":function(t){t.exports=JSON.parse("[]")},YwZP:function(t,e,n){"use strict";n.r(e),n.d(e,"Link",(function(){return D})),n.d(e,"Location",(function(){return w})),n.d(e,"LocationProvider",(function(){return b})),n.d(e,"Match",(function(){return F})),n.d(e,"Redirect",(function(){return A})),n.d(e,"Router",(function(){return S})),n.d(e,"ServerLocation",(function(){return P})),n.d(e,"isRedirect",(function(){return U})),n.d(e,"redirectTo",(function(){return I})),n.d(e,"useLocation",(function(){return W})),n.d(e,"useNavigate",(function(){return q})),n.d(e,"useParams",(function(){return N})),n.d(e,"useMatch",(function(){return J})),n.d(e,"BaseContext",(function(){return R}));var r=n("q1tI"),o=n.n(r),a=(n("17x9"),n("QLaP")),i=n.n(a),u=n("nqlD"),c=n.n(u),s=n("94VI"),l=n("LYrO");n.d(e,"matchPath",(function(){return l.match}));var p=n("9Xx/");n.d(e,"createHistory",(function(){return p.a})),n.d(e,"createMemorySource",(function(){return p.b})),n.d(e,"navigate",(function(){return p.d})),n.d(e,"globalHistory",(function(){return p.c}));var f=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t};function d(t,e){var n={};for(var r in t)e.indexOf(r)>=0||Object.prototype.hasOwnProperty.call(t,r)&&(n[r]=t[r]);return n}function h(t,e){if(!(t instanceof e))throw new TypeError("Cannot call a class as a function")}function v(t,e){if(!t)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!e||"object"!=typeof e&&"function"!=typeof e?t:e}function m(t,e){if("function"!=typeof e&&null!==e)throw new TypeError("Super expression must either be null or a function, not "+typeof e);t.prototype=Object.create(e&&e.prototype,{constructor:{value:t,enumerable:!1,writable:!0,configurable:!0}}),e&&(Object.setPrototypeOf?Object.setPrototypeOf(t,e):t.__proto__=e)}var g=function(t,e){var n=c()(e);return n.displayName=t,n},y=g("Location"),w=function(t){var e=t.children;return o.a.createElement(y.Consumer,null,(function(t){return t?e(t):o.a.createElement(b,null,e)}))},b=function(t){function e(){var n,r;h(this,e);for(var o=arguments.length,a=Array(o),i=0;i<o;i++)a[i]=arguments[i];return n=r=v(this,t.call.apply(t,[this].concat(a))),r.state={context:r.getContext(),refs:{unlisten:null}},v(r,n)}return m(e,t),e.prototype.getContext=function(){var t=this.props.history;return{navigate:t.navigate,location:t.location}},e.prototype.componentDidCatch=function(t,e){if(!U(t))throw t;(0,this.props.history.navigate)(t.uri,{replace:!0})},e.prototype.componentDidUpdate=function(t,e){e.context.location!==this.state.context.location&&this.props.history._onTransitionComplete()},e.prototype.componentDidMount=function(){var t=this,e=this.state.refs,n=this.props.history;n._onTransitionComplete(),e.unlisten=n.listen((function(){Promise.resolve().then((function(){requestAnimationFrame((function(){t.unmounted||t.setState((function(){return{context:t.getContext()}}))}))}))}))},e.prototype.componentWillUnmount=function(){var t=this.state.refs;this.unmounted=!0,t.unlisten()},e.prototype.render=function(){var t=this.state.context,e=this.props.children;return o.a.createElement(y.Provider,{value:t},"function"==typeof e?e(t):e||null)},e}(o.a.Component);b.defaultProps={history:p.c};var P=function(t){var e=t.url,n=t.children,r=e.indexOf("?"),a=void 0,i="";return r>-1?(a=e.substring(0,r),i=e.substring(r)):a=e,o.a.createElement(y.Provider,{value:{location:{pathname:a,search:i,hash:""},navigate:function(){throw new Error("You can't call navigate on the server.")}}},n)},R=g("Base",{baseuri:"/",basepath:"/"}),S=function(t){return o.a.createElement(R.Consumer,null,(function(e){return o.a.createElement(w,null,(function(n){return o.a.createElement(O,f({},e,n,t))}))}))},O=function(t){function e(){return h(this,e),v(this,t.apply(this,arguments))}return m(e,t),e.prototype.render=function(){var t=this.props,e=t.location,n=t.navigate,r=t.basepath,a=t.primary,i=t.children,u=(t.baseuri,t.component),c=void 0===u?"div":u,s=d(t,["location","navigate","basepath","primary","children","baseuri","component"]),p=o.a.Children.toArray(i).reduce((function(t,e){var n=Y(r)(e);return t.concat(n)}),[]),h=e.pathname,v=Object(l.pick)(p,h);if(v){var m=v.params,g=v.uri,y=v.route,w=v.route.value;r=y.default?r:y.path.replace(/\*$/,"");var b=f({},m,{uri:g,location:e,navigate:function(t,e){return n(Object(l.resolve)(t,g),e)}}),P=o.a.cloneElement(w,b,w.props.children?o.a.createElement(S,{location:e,primary:a},w.props.children):void 0),O=a?E:c,j=a?f({uri:g,location:e,component:c},s):s;return o.a.createElement(R.Provider,{value:{baseuri:g,basepath:r}},o.a.createElement(O,j,P))}return null},e}(o.a.PureComponent);O.defaultProps={primary:!0};var j=g("Focus"),E=function(t){var e=t.uri,n=t.location,r=t.component,a=d(t,["uri","location","component"]);return o.a.createElement(j.Consumer,null,(function(t){return o.a.createElement(k,f({},a,{component:r,requestFocus:t,uri:e,location:n}))}))},_=!0,C=0,k=function(t){function e(){var n,r;h(this,e);for(var o=arguments.length,a=Array(o),i=0;i<o;i++)a[i]=arguments[i];return n=r=v(this,t.call.apply(t,[this].concat(a))),r.state={},r.requestFocus=function(t){!r.state.shouldFocus&&t&&t.focus()},v(r,n)}return m(e,t),e.getDerivedStateFromProps=function(t,e){if(null==e.uri)return f({shouldFocus:!0},t);var n=t.uri!==e.uri,r=e.location.pathname!==t.location.pathname&&t.location.pathname===t.uri;return f({shouldFocus:n||r},t)},e.prototype.componentDidMount=function(){C++,this.focus()},e.prototype.componentWillUnmount=function(){0===--C&&(_=!0)},e.prototype.componentDidUpdate=function(t,e){t.location!==this.props.location&&this.state.shouldFocus&&this.focus()},e.prototype.focus=function(){var t=this.props.requestFocus;t?t(this.node):_?_=!1:this.node&&(this.node.contains(document.activeElement)||this.node.focus())},e.prototype.render=function(){var t=this,e=this.props,n=(e.children,e.style),r=(e.requestFocus,e.component),a=void 0===r?"div":r,i=(e.uri,e.location,d(e,["children","style","requestFocus","component","uri","location"]));return o.a.createElement(a,f({style:f({outline:"none"},n),tabIndex:"-1",ref:function(e){return t.node=e}},i),o.a.createElement(j.Provider,{value:this.requestFocus},this.props.children))},e}(o.a.Component);Object(s.polyfill)(k);var x=function(){},L=o.a.forwardRef;void 0===L&&(L=function(t){return t});var D=L((function(t,e){var n=t.innerRef,r=d(t,["innerRef"]);return o.a.createElement(R.Consumer,null,(function(t){t.basepath;var a=t.baseuri;return o.a.createElement(w,null,(function(t){var i=t.location,u=t.navigate,c=r.to,s=r.state,p=r.replace,h=r.getProps,v=void 0===h?x:h,m=d(r,["to","state","replace","getProps"]),g=Object(l.resolve)(c,a),y=encodeURI(g),w=i.pathname===y,b=Object(l.startsWith)(i.pathname,y);return o.a.createElement("a",f({ref:e||n,"aria-current":w?"page":void 0},m,v({isCurrent:w,isPartiallyCurrent:b,href:g,location:i}),{href:g,onClick:function(t){if(m.onClick&&m.onClick(t),V(t)){t.preventDefault();var e=p;if("boolean"!=typeof p&&w){var n=f({},i.state),r=(n.key,d(n,["key"]));e=Object(l.shallowCompare)(f({},s),r)}u(g,{state:s,replace:e})}}}))}))}))}));function T(t){this.uri=t}D.displayName="Link";var U=function(t){return t instanceof T},I=function(t){throw new T(t)},M=function(t){function e(){return h(this,e),v(this,t.apply(this,arguments))}return m(e,t),e.prototype.componentDidMount=function(){var t=this.props,e=t.navigate,n=t.to,r=(t.from,t.replace),o=void 0===r||r,a=t.state,i=(t.noThrow,t.baseuri),u=d(t,["navigate","to","from","replace","state","noThrow","baseuri"]);Promise.resolve().then((function(){var t=Object(l.resolve)(n,i);e(Object(l.insertParams)(t,u),{replace:o,state:a})}))},e.prototype.render=function(){var t=this.props,e=(t.navigate,t.to),n=(t.from,t.replace,t.state,t.noThrow),r=t.baseuri,o=d(t,["navigate","to","from","replace","state","noThrow","baseuri"]),a=Object(l.resolve)(e,r);return n||I(Object(l.insertParams)(a,o)),null},e}(o.a.Component),A=function(t){return o.a.createElement(R.Consumer,null,(function(e){var n=e.baseuri;return o.a.createElement(w,null,(function(e){return o.a.createElement(M,f({},e,{baseuri:n},t))}))}))},F=function(t){var e=t.path,n=t.children;return o.a.createElement(R.Consumer,null,(function(t){var r=t.baseuri;return o.a.createElement(w,null,(function(t){var o=t.navigate,a=t.location,i=Object(l.resolve)(e,r),u=Object(l.match)(i,a.pathname);return n({navigate:o,location:a,match:u?f({},u.params,{uri:u.uri,path:e}):null})}))}))},W=function(){var t=Object(r.useContext)(y);if(!t)throw new Error("useLocation hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router");return t.location},q=function(){var t=Object(r.useContext)(y);if(!t)throw new Error("useNavigate hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router");return t.navigate},N=function(){var t=Object(r.useContext)(R);if(!t)throw new Error("useParams hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router");var e=W(),n=Object(l.match)(t.basepath,e.pathname);return n?n.params:null},J=function(t){if(!t)throw new Error("useMatch(path: string) requires an argument of a string to match against");var e=Object(r.useContext)(R);if(!e)throw new Error("useMatch hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router");var n=W(),o=Object(l.resolve)(t,e.baseuri),a=Object(l.match)(o,n.pathname);return a?f({},a.params,{uri:a.uri,path:t}):null},H=function(t){return t.replace(/(^\/+|\/+$)/g,"")},Y=function t(e){return function(n){if(!n)return null;if(n.type===o.a.Fragment&&n.props.children)return o.a.Children.map(n.props.children,t(e));if(n.props.path||n.props.default||n.type===A||i()(!1),n.type!==A||n.props.from&&n.props.to||i()(!1),n.type!==A||Object(l.validateRedirect)(n.props.from,n.props.to)||i()(!1),n.props.default)return{value:n,default:!0};var r=n.type===A?n.props.from:n.props.path,a="/"===r?e:H(e)+"/"+H(r);return{value:n,default:n.props.default,path:n.props.children?H(a)+"/*":a}}},V=function(t){return!t.defaultPrevented&&0===t.button&&!(t.metaKey||t.altKey||t.ctrlKey||t.shiftKey)}},cDf5:function(t,e){function n(e){return"function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?t.exports=n=function(t){return typeof t}:t.exports=n=function(t){return t&&"function"==typeof Symbol&&t.constructor===Symbol&&t!==Symbol.prototype?"symbol":typeof t},n(e)}t.exports=n},cSJ8:function(t,e,n){"use strict";function r(t,e){return void 0===e&&(e=""),e?t===e?"/":t.startsWith(e+"/")?t.slice(e.length):t:t}n.d(e,"a",(function(){return r}))},cu4x:function(t,e,n){"use strict";e.__esModule=!0,e.parsePath=function(t){var e=t||"/",n="",r="",o=e.indexOf("#");-1!==o&&(r=e.substr(o),e=e.substr(0,o));var a=e.indexOf("?");-1!==a&&(n=e.substr(a),e=e.substr(0,a));return{pathname:e,search:"?"===n?"":n,hash:"#"===r?"":r}}},dI71:function(t,e,n){"use strict";function r(t,e){t.prototype=Object.create(e.prototype),t.prototype.constructor=t,t.__proto__=e}n.d(e,"a",(function(){return r}))},emEt:function(t,e,n){"use strict";n.r(e),n.d(e,"PageResourceStatus",(function(){return R})),n.d(e,"BaseLoader",(function(){return C})),n.d(e,"ProdLoader",(function(){return x})),n.d(e,"setLoader",(function(){return L})),n.d(e,"publicLoader",(function(){return D}));var r=n("dI71");function o(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}function a(t){return function(t){if(Array.isArray(t))return o(t)}(t)||function(t){if("undefined"!=typeof Symbol&&Symbol.iterator in Object(t))return Array.from(t)}(t)||function(t,e){if(t){if("string"==typeof t)return o(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);return"Object"===n&&t.constructor&&(n=t.constructor.name),"Map"===n||"Set"===n?Array.from(t):"Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)?o(t,e):void 0}}(t)||function(){throw new TypeError("Invalid attempt to spread non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}var i=function(t){if("undefined"==typeof document)return!1;var e=document.createElement("link");try{if(e.relList&&"function"==typeof e.relList.supports)return e.relList.supports(t)}catch(n){return!1}return!1}("prefetch")?function(t,e){return new Promise((function(n,r){if("undefined"!=typeof document){var o=document.createElement("link");o.setAttribute("rel","prefetch"),o.setAttribute("href",t),Object.keys(e).forEach((function(t){o.setAttribute(t,e[t])})),o.onload=n,o.onerror=r,(document.getElementsByTagName("head")[0]||document.getElementsByName("script")[0].parentNode).appendChild(o)}else r()}))}:function(t){return new Promise((function(e,n){var r=new XMLHttpRequest;r.open("GET",t,!0),r.onload=function(){200===r.status?e():n()},r.send(null)}))},u={},c=function(t,e){return new Promise((function(n){u[t]?n():i(t,e).then((function(){n(),u[t]=!0})).catch((function(){}))}))},s=n("5yr3"),l=n("LYrO"),p=n("cSJ8"),f=function(t){return void 0===t?t:"/"===t?"/":"/"===t.charAt(t.length-1)?t.slice(0,-1):t};function d(t,e){var n;if("undefined"==typeof Symbol||null==t[Symbol.iterator]){if(Array.isArray(t)||(n=function(t,e){if(!t)return;if("string"==typeof t)return h(t,e);var n=Object.prototype.toString.call(t).slice(8,-1);"Object"===n&&t.constructor&&(n=t.constructor.name);if("Map"===n||"Set"===n)return Array.from(t);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return h(t,e)}(t))||e&&t&&"number"==typeof t.length){n&&(t=n);var r=0;return function(){return r>=t.length?{done:!0}:{done:!1,value:t[r++]}}}throw new TypeError("Invalid attempt to iterate non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}return(n=t[Symbol.iterator]()).next.bind(n)}function h(t,e){(null==e||e>t.length)&&(e=t.length);for(var n=0,r=new Array(e);n<e;n++)r[n]=t[n];return r}var v=new Map,m=[],g=function(t){var e=decodeURIComponent(t);return Object(p.a)(e,"/jkube").split("#")[0].split("?")[0]};function y(t){return t.startsWith("/")||t.startsWith("https://")||t.startsWith("http://")?t:new URL(t,window.location.href+(window.location.href.endsWith("/")?"":"/")).pathname}var w=function(t){for(var e,n=P(t),r=d(m);!(e=r()).done;){var o=e.value,a=o.matchPath,i=o.path;if(Object(l.match)(a,n))return f(i)}return null},b=function(t){var e=g(y(t));if(v.has(e))return v.get(e);var n=w(e);return n||(n=P(t)),v.set(e,n),n},P=function(t){var e=g(y(t));return"/index.html"===e&&(e="/"),e=f(e)},R={Error:"error",Success:"success"},S=function(t){return t&&t.default||t},O=function(t){var e;return"/jkube/page-data/"+("/"===t?"index":e=(e="/"===(e=t)[0]?e.slice(1):e).endsWith("/")?e.slice(0,-1):e)+"/page-data.json"};function j(t,e){return void 0===e&&(e="GET"),new Promise((function(n,r){var o=new XMLHttpRequest;o.open(e,t,!0),o.onreadystatechange=function(){4==o.readyState&&n(o)},o.send(null)}))}var E,_=function(t,e){void 0===e&&(e=null);var n={componentChunkName:t.componentChunkName,path:t.path,webpackCompilationHash:t.webpackCompilationHash,matchPath:t.matchPath,staticQueryHashes:t.staticQueryHashes};return{component:e,json:t.result,page:n}},C=function(){function t(t,e){this.inFlightNetworkRequests=new Map,this.pageDb=new Map,this.inFlightDb=new Map,this.staticQueryDb=new Map,this.pageDataDb=new Map,this.prefetchTriggered=new Set,this.prefetchCompleted=new Set,this.loadComponent=t,m=e}var e=t.prototype;return e.memoizedGet=function(t){var e=this,n=this.inFlightNetworkRequests.get(t);return n||(n=j(t,"GET"),this.inFlightNetworkRequests.set(t,n)),n.then((function(n){return e.inFlightNetworkRequests.delete(t),n})).catch((function(n){throw e.inFlightNetworkRequests.delete(t),n}))},e.setApiRunner=function(t){this.apiRunner=t,this.prefetchDisabled=t("disableCorePrefetching").some((function(t){return t}))},e.fetchPageDataJson=function(t){var e=this,n=t.pagePath,r=t.retries,o=void 0===r?0:r,a=O(n);return this.memoizedGet(a).then((function(r){var a=r.status,i=r.responseText;if(200===a)try{var u=JSON.parse(i);if(void 0===u.path)throw new Error("not a valid pageData response");return Object.assign(t,{status:R.Success,payload:u})}catch(c){}return 404===a||200===a?"/404.html"===n?Object.assign(t,{status:R.Error}):e.fetchPageDataJson(Object.assign(t,{pagePath:"/404.html",notFound:!0})):500===a?Object.assign(t,{status:R.Error}):o<3?e.fetchPageDataJson(Object.assign(t,{retries:o+1})):Object.assign(t,{status:R.Error})}))},e.loadPageDataJson=function(t){var e=this,n=b(t);return this.pageDataDb.has(n)?Promise.resolve(this.pageDataDb.get(n)):this.fetchPageDataJson({pagePath:n}).then((function(t){return e.pageDataDb.set(n,t),t}))},e.findMatchPath=function(t){return w(t)},e.loadPage=function(t){var e=this,n=b(t);if(this.pageDb.has(n)){var r=this.pageDb.get(n);return Promise.resolve(r.payload)}if(this.inFlightDb.has(n))return this.inFlightDb.get(n);var o=Promise.all([this.loadAppData(),this.loadPageDataJson(n)]).then((function(t){var r=t[1];if(r.status===R.Error)return{status:R.Error};var o=r.payload,a=o,i=a.componentChunkName,u=a.staticQueryHashes,c=void 0===u?[]:u,l={},p=e.loadComponent(i).then((function(e){var n;return l.createdAt=new Date,e?(l.status=R.Success,!0===r.notFound&&(l.notFound=!0),o=Object.assign(o,{webpackCompilationHash:t[0]?t[0].webpackCompilationHash:""}),n=_(o,e)):l.status=R.Error,n})),f=Promise.all(c.map((function(t){if(e.staticQueryDb.has(t)){var n=e.staticQueryDb.get(t);return{staticQueryHash:t,jsonPayload:n}}return e.memoizedGet("/jkube/static/d/"+t+".json").then((function(e){var n=JSON.parse(e.responseText);return{staticQueryHash:t,jsonPayload:n}}))}))).then((function(t){var n={};return t.forEach((function(t){var r=t.staticQueryHash,o=t.jsonPayload;n[r]=o,e.staticQueryDb.set(r,o)})),n}));return Promise.all([p,f]).then((function(t){var r,o=t[0],a=t[1];return o&&(r=Object.assign({},o,{staticQueryResults:a}),l.payload=r,s.a.emit("onPostLoadPageResources",{page:r,pageResources:r})),e.pageDb.set(n,l),r}))}));return o.then((function(t){e.inFlightDb.delete(n)})).catch((function(t){throw e.inFlightDb.delete(n),t})),this.inFlightDb.set(n,o),o},e.loadPageSync=function(t){var e=b(t);if(this.pageDb.has(e))return this.pageDb.get(e).payload},e.shouldPrefetch=function(t){return!!function(){if("connection"in navigator&&void 0!==navigator.connection){if((navigator.connection.effectiveType||"").includes("2g"))return!1;if(navigator.connection.saveData)return!1}return!0}()&&!this.pageDb.has(t)},e.prefetch=function(t){var e=this;if(!this.shouldPrefetch(t))return!1;if(this.prefetchTriggered.has(t)||(this.apiRunner("onPrefetchPathname",{pathname:t}),this.prefetchTriggered.add(t)),this.prefetchDisabled)return!1;var n=b(t);return this.doPrefetch(n).then((function(){e.prefetchCompleted.has(t)||(e.apiRunner("onPostPrefetchPathname",{pathname:t}),e.prefetchCompleted.add(t))})),!0},e.doPrefetch=function(t){throw new Error("doPrefetch not implemented")},e.hovering=function(t){this.loadPage(t)},e.getResourceURLsForPathname=function(t){var e=b(t),n=this.pageDataDb.get(e);if(n){var r=_(n.payload);return[].concat(a(k(r.page.componentChunkName)),[O(e)])}return null},e.isPageNotFound=function(t){var e=b(t),n=this.pageDb.get(e);return n&&!0===n.notFound},e.loadAppData=function(t){var e=this;return void 0===t&&(t=0),this.memoizedGet("/jkube/page-data/app-data.json").then((function(n){var r,o=n.status,a=n.responseText;if(200!==o&&t<3)return e.loadAppData(t+1);if(200===o)try{var i=JSON.parse(a);if(void 0===i.webpackCompilationHash)throw new Error("not a valid app-data response");r=i}catch(u){}return r}))},t}(),k=function(t){return(window.___chunkMapping[t]||[]).map((function(t){return"/jkube"+t}))},x=function(t){function e(e,n){return t.call(this,(function(t){return e.components[t]?e.components[t]().then(S).catch((function(){return null})):Promise.resolve()}),n)||this}Object(r.a)(e,t);var n=e.prototype;return n.doPrefetch=function(t){var e=this,n=O(t);return c(n,{crossOrigin:"anonymous",as:"fetch"}).then((function(){return e.loadPageDataJson(t)})).then((function(t){if(t.status!==R.Success)return Promise.resolve();var e=t.payload,n=e.componentChunkName,r=k(n);return Promise.all(r.map(c)).then((function(){return e}))}))},n.loadPageDataJson=function(e){return t.prototype.loadPageDataJson.call(this,e).then((function(t){return t.notFound?j(e,"HEAD").then((function(e){return 200===e.status?{status:R.Error}:t})):t}))},e}(C),L=function(t){E=t},D={getResourcesForPathname:function(t){return console.warn("Warning: getResourcesForPathname is deprecated. Use loadPage instead"),E.i.loadPage(t)},getResourcesForPathnameSync:function(t){return console.warn("Warning: getResourcesForPathnameSync is deprecated. Use loadPageSync instead"),E.i.loadPageSync(t)},enqueue:function(t){return E.prefetch(t)},getResourceURLsForPathname:function(t){return E.getResourceURLsForPathname(t)},loadPage:function(t){return E.loadPage(t)},loadPageSync:function(t){return E.loadPageSync(t)},prefetch:function(t){return E.prefetch(t)},isPageNotFound:function(t){return E.isPageNotFound(t)},hovering:function(t){return E.hovering(t)},loadAppData:function(){return E.loadAppData()}};e.default=D},hUyl:function(t,e,n){"use strict";var r=0,o=function(t){var e=window.decodeURI(t.replace("#",""));if(""!==e){var n=document.getElementById(e);if(n){var o=window.pageYOffset||document.documentElement.scrollTop||document.body.scrollTop,a=document.documentElement.clientTop||document.body.clientTop||0,i=window.getComputedStyle(n),u=i.getPropertyValue("scroll-margin-top")||i.getPropertyValue("scroll-snap-margin-top")||"0px";return n.getBoundingClientRect().top+o-parseInt(u,10)-a-r}}return null};e.onInitialClientRender=function(t,e){e.offsetY&&(r=e.offsetY),requestAnimationFrame((function(){var t=o(window.location.hash);null!==t&&window.scrollTo(0,t)}))},e.shouldUpdateScroll=function(t){var e=t.routerProps.location,n=o(e.hash);return null===n||[0,n]}},hd9s:function(t,e,n){"use strict";var r=n("284h"),o=n("TqRt");e.__esModule=!0,e.ScrollContainer=void 0;var a=o(n("pVnL")),i=o(n("VbXa")),u=r(n("q1tI")),c=o(n("i8i4")),s=o(n("17x9")),l=n("Enzk"),p=n("YwZP"),f={scrollKey:s.default.string.isRequired,shouldUpdateScroll:s.default.func,children:s.default.element.isRequired},d=function(t){function e(e){return t.call(this,e)||this}(0,i.default)(e,t);var n=e.prototype;return n.componentDidMount=function(){var t=this,e=c.default.findDOMNode(this),n=this.props,r=n.location,o=n.scrollKey;if(e){e.addEventListener("scroll",(function(){t.props.context.save(r,o,e.scrollTop)}));var a=this.props.context.read(r,o);e.scrollTo(0,a||0)}},n.render=function(){return this.props.children},e}(u.Component),h=function(t){return u.createElement(p.Location,null,(function(e){var n=e.location;return u.createElement(l.ScrollContext.Consumer,null,(function(e){return u.createElement(d,(0,a.default)({},t,{context:e,location:n}))}))}))};e.ScrollContainer=h,h.propTypes=f},lw3w:function(t,e,n){var r;t.exports=(r=n("rzlk"))&&r.default||r},nqlD:function(t,e,n){var r=n("q1tI").createContext;t.exports=r,t.exports.default=r},pVnL:function(t,e){function n(){return t.exports=n=Object.assign||function(t){for(var e=1;e<arguments.length;e++){var n=arguments[e];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(t[r]=n[r])}return t},n.apply(this,arguments)}t.exports=n},rzlk:function(t,e,n){"use strict";n.r(e);var r=n("q1tI"),o=n.n(r),a=n("IOVJ");e.default=function(t){var e=t.location,n=t.pageResources;return n?o.a.createElement(a.a,Object.assign({location:e,pageResources:n},n.json)):null}},xtsi:function(t,e,n){var r=n("LeKB"),o=n("emEt").publicLoader,a=o.getResourcesForPathname,i=o.getResourcesForPathnameSync,u=o.getResourceURLsForPathname,c=o.loadPage,s=o.loadPageSync;e.apiRunner=function(t,e,n,o){void 0===e&&(e={});var l=r.map((function(n){if(n.plugin[t]){e.getResourcesForPathnameSync=i,e.getResourcesForPathname=a,e.getResourceURLsForPathname=u,e.loadPage=c,e.loadPageSync=s;var r=n.plugin[t](e,n.options);return r&&o&&(e=o({args:e,result:r,plugin:n})),r}}));return(l=l.filter((function(t){return void 0!==t}))).length>0?l:n?[n]:[]},e.apiRunnerAsync=function(t,e,n){return r.reduce((function(n,r){return r.plugin[t]?n.then((function(){return r.plugin[t](e,r.options)})):n}),Promise.resolve())}}},[["UxWs",2,7]]]);
-//# sourceMappingURL=app-d7398b08e923fe8a3caa.js.map
\ No newline at end of file
diff --git a/app-d7398b08e923fe8a3caa.js.map b/app-d7398b08e923fe8a3caa.js.map
deleted file mode 100644
index b088d74..0000000
--- a/app-d7398b08e923fe8a3caa.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":["webpack:///./node_modules/gatsby-link/index.js","webpack:///./node_modules/gatsby-react-router-scroll/session-storage.js","webpack:///./node_modules/@babel/runtime/helpers/interopRequireWildcard.js","webpack:///./node_modules/gatsby-react-router-scroll/use-scroll-restoration.js","webpack:///./node_modules/mitt/dist/mitt.es.js","webpack:///./.cache/emitter.js","webpack:///./.cache/polyfills/object-assign.js","webpack:///./node_modules/gatsby-react-router-scroll/index.js","webpack:///./node_modules/@babel/runtime/helpers/objectWithoutPropertiesLoose.js","webpack:///./.cache/react-lifecycles-compat.js","webpack:///./node_modules/@reach/router/es/lib/history.js","webpack:///./node_modules/gatsby-react-router-scroll/scroll-handler.js","webpack:///./.cache/page-renderer.js","webpack:///./node_modules/@reach/router/es/lib/utils.js","webpack:///./.cache/api-runner-browser-plugins.js","webpack:///./node_modules/@mikaelkristiansson/domready/ready.js","webpack:///./.cache/register-service-worker.js","webpack:///./node_modules/@babel/runtime/helpers/assertThisInitialized.js","webpack:///./node_modules/invariant/browser.js","webpack:///./node_modules/@babel/runtime/helpers/interopRequireDefault.js","webpack:///./.cache/route-announcer-props.js","webpack:///./.cache/navigation.js","webpack:///./node_modules/shallow-compare/es/index.js","webpack:///./.cache/ensure-resources.js","webpack:///./.cache/production-app.js","webpack:///./node_modules/@babel/runtime/helpers/inheritsLoose.js","webpack:///./_this_is_virtual_fs_path_/$virtual/async-requires.js","webpack:///./.cache/gatsby-browser-entry.js","webpack:///./node_modules/@reach/router/es/index.js","webpack:///./node_modules/@babel/runtime/helpers/typeof.js","webpack:///./.cache/strip-prefix.js","webpack:///./node_modules/gatsby-link/parse-path.js","webpack:///./node_modules/@babel/runtime/helpers/esm/inheritsLoose.js","webpack:///./node_modules/@babel/runtime/helpers/esm/arrayLikeToArray.js","webpack:///./node_modules/@babel/runtime/helpers/esm/toConsumableArray.js","webpack:///./node_modules/@babel/runtime/helpers/esm/arrayWithoutHoles.js","webpack:///./node_modules/@babel/runtime/helpers/esm/iterableToArray.js","webpack:///./node_modules/@babel/runtime/helpers/esm/unsupportedIterableToArray.js","webpack:///./node_modules/@babel/runtime/helpers/esm/nonIterableSpread.js","webpack:///./.cache/prefetch.js","webpack:///./.cache/normalize-page-path.js","webpack:///./.cache/find-path.js","webpack:///./.cache/loader.js","webpack:///./node_modules/gatsby-remark-autolink-headers/gatsby-browser.js","webpack:///./node_modules/gatsby-react-router-scroll/scroll-container.js","webpack:///./.cache/public-page-renderer.js","webpack:///./.cache/create-react-context.js","webpack:///./node_modules/@babel/runtime/helpers/extends.js","webpack:///./.cache/public-page-renderer-prod.js","webpack:///./.cache/api-runner-browser.js"],"names":["_interopRequireDefault","exports","__esModule","withPrefix","withAssetPrefix","path","getGlobalPathPrefix","navigateTo","replace","push","navigate","default","_objectWithoutPropertiesLoose2","_extends2","_assertThisInitialized2","_inheritsLoose2","_propTypes","_react","_router","_utils","_parsePath","parsePath","isAbsolutePath","startsWith","prefix","_ref","_prefix","getGlobalBasePrefix","isLocalLink","base","endsWith","slice","rewriteLinkPath","relativeTo","current","resolve","absolutify","NavLinkPropTypes","activeClassName","string","activeStyle","object","partiallyActive","bool","GatsbyLink","_React$Component","props","_this","call","this","defaultGetProps","_ref2","isPartiallyCurrent","isCurrent","className","filter","Boolean","join","style","IOSupported","window","IntersectionObserver","state","handleRef","bind","_proto","prototype","componentDidUpdate","prevProps","prevState","to","___loader","enqueue","location","pathname","componentDidMount","componentWillUnmount","io","_this$io","instance","el","unobserve","disconnect","ref","cb","_this2","innerRef","hasOwnProperty","entries","forEach","entry","target","isIntersecting","intersectionRatio","observe","render","_this3","_this$props","_this$props$getProps","getProps","_onClick","onClick","_onMouseEnter","onMouseEnter","rest","createElement","Location","_ref3","prefixedTo","Link","e","hovering","button","defaultPrevented","metaKey","altKey","ctrlKey","shiftKey","preventDefault","shouldReplace","encodeURI","___navigate","href","Component","propTypes","func","isRequired","showDeprecationWarning","functionName","altFunctionName","version","console","warn","_default","forwardRef","options","___push","___replace","SessionStorage","read","key","stateKey","getStateKey","value","sessionStorage","getItem","JSON","parse","save","storedValue","stringify","setItem","stateKeyBase","_typeof","_getRequireWildcardCache","WeakMap","cache","module","obj","has","get","newObj","hasPropertyDescriptor","Object","defineProperty","getOwnPropertyDescriptor","desc","set","useScrollRestoration","identifier","useLocation","useContext","_scrollHandler","ScrollContext","useRef","useLayoutEffect","position","scrollTo","onScroll","scrollTop","emitter","all","create","on","type","handler","off","splice","indexOf","emit","evt","map","mitt","assign","ScrollContainer","ScrollHandler","_scrollContainer","_useScrollRestoration","source","excluded","i","sourceKeys","keys","length","polyfill","_extends","arguments","getLocation","_source$location","search","hash","origin","protocol","host","hostname","port","canUseDOM","URL","decodeURI","history","createHistory","listeners","transitioning","resolveTransition","_onTransitionComplete","listen","listener","popstateListener","action","addEventListener","removeEventListener","fn","undefined","_ref$replace","go","Date","now","replaceState","pushState","transition","Promise","res","createMemorySource","initialPath","searchIndex","initialLocation","substr","index","stack","states","name","_","uri","_uri$split","split","_uri$split$","_uri$split2","_uri$split2$","newIndex","document","globalHistory","_interopRequireWildcard","React","_sessionStorage","createContext","displayName","_len","args","Array","_key","apply","concat","_stateStorage","scrollListener","scrollY","windowScroll","shouldUpdateScroll","scrollToHash","node","getElementById","substring","scrollIntoView","prevRouterProps","routerProps","scrollPosition","_this$props$location","_this$props$location2","Provider","children","element","PageRenderer","pathContext","pageContext","pageElement","apiRunner","loader","publicLoader","pageResources","component","page","result","pop","pick","routes","match","default_","uriPathname","uriSegments","segmentize","isRootUri","ranked","rankRoutes","l","missed","route","params","routeSegments","max","Math","routeSegment","uriSegment","isSplat","decodeURIComponent","dynamicMatch","paramRe","exec","reservedNames","_to$split","toPathname","toQuery","basePathname","toSegments","baseSegments","addQuery","allSegments","segments","segment","insertParams","_path$split","pathBase","_path$split$","query","constructedPath","_params$location","_params$location$sear","searchSplit","validateRedirect","from","isDynamic","sort","test","rankRoute","score","reduce","isRootSegment","SEGMENT_POINTS","a","b","q","shallowCompare","obj1","obj2","obj1Keys","every","plugin","require","ie10","navigator","appVersion","fns","doc","hack","documentElement","doScroll","loaded","readyState","shift","setTimeout","definition","error","serviceWorker","register","__BASE_PATH__","then","reg","installingWorker","installing","log","controller","___swUpdated","___failedResources","reload","catch","self","ReferenceError","condition","format","c","d","f","Error","argIndex","framesToPop","RouteAnnouncerProps","id","top","width","height","padding","overflow","clip","whiteSpace","border","redirectMap","redirects","redirect","fromPath","maybeRedirect","toPath","onPreRouteUpdate","prevLocation","onRouteUpdate","timeoutId","loadPage","status","PageResourceStatus","clearTimeout","webpackCompilationHash","___webpackCompilationHash","postMessage","gatsbyApi","reachNavigate","results","getSavedScrollPosition","RouteAnnouncer","announcementRef","createRef","nextProps","requestAnimationFrame","pageName","title","pageHeadings","querySelectorAll","textContent","newAnnouncement","innerText","RouteUpdates","shouldFireRouteUpdate","getSnapshotBeforeUpdate","Fragment","shallowDiffers","_i","EnsureResources","loadPageSync","getDerivedStateFromProps","loadResources","rawPath","setState","shouldComponentUpdate","nextState","json","matchPath","ProdLoader","asyncRequires","matchPaths","setLoader","setApiRunner","___emitter","apiRunnerAsync","RouteHandler","baseuri","basepath","DataContext","GatsbyRoot","staticQueryResults","LocationHandler","Consumer","stripPrefix","pagePath","browserLoc","findMatchPath","SiteRoot","App","renderer","ReactDOM","hydrate","domReady","subClass","superClass","constructor","__proto__","components","StaticQueryContext","_objectWithoutProperties","_classCallCheck","Constructor","TypeError","_possibleConstructorReturn","_inherits","enumerable","writable","configurable","setPrototypeOf","createNamedContext","defaultValue","Ctx","LocationContext","context","LocationProvider","_temp","getContext","refs","unlisten","_props$history","componentDidCatch","info","isRedirect","_navigate","unmounted","defaultProps","ServerLocation","url","BaseContext","Router","baseContext","locationContext","RouterImpl","_React$PureComponent","_props","_navigate2","primary","_props$component","domProps","Children","toArray","array","child","createRoute","clone","cloneElement","FocusWrapper","FocusHandler","wrapperProps","PureComponent","FocusContext","requestFocus","FocusHandlerImpl","initialRender","focusHandlerCount","_React$Component2","_temp2","_this4","_len2","_key2","shouldFocus","focus","myURIChanged","navigatedUpToMe","contains","activeElement","_this5","_props2","_props2$component","Comp","outline","tabIndex","n","k","C","_ref4","_ref5","_ref6","_props$getProps","anchorProps","encodedHref","event","shouldNavigate","_location$state","restState","RedirectRequest","o","redirectTo","RedirectImpl","_React$Component3","_props3","_props3$replace","noThrow","resolvedTo","_props4","Redirect","_ref7","Match","_ref8","_ref9","_ref10","resolvedPath","useNavigate","useParams","useMatch","stripSlashes","str","elementPath","Symbol","iterator","hashIndex","_inheritsLoose","_arrayLikeToArray","arr","len","arr2","_toConsumableArray","isArray","iter","minLen","toString","supportedPrefetchStrategy","feature","fakeLink","relList","supports","err","support","reject","link","setAttribute","onload","onerror","getElementsByTagName","getElementsByName","parentNode","appendChild","req","XMLHttpRequest","open","send","preFetched","prefetch","charAt","pathCache","Map","trimPathname","rawPathname","trimmedPathname","cleanPath","normalizePagePath","findPath","foundPath","Success","preferDefault","m","createPageDataUrl","s","__PATH_PREFIX__","doFetch","method","onreadystatechange","toPageResources","pageData","componentChunkName","staticQueryHashes","BaseLoader","loadComponent","inFlightNetworkRequests","pageDb","inFlightDb","staticQueryDb","pageDataDb","prefetchTriggered","Set","prefetchCompleted","memoizedGet","inFlightPromise","response","delete","prefetchDisabled","some","fetchPageDataJson","loadObj","retries","responseText","jsonPayload","payload","notFound","loadPageDataJson","loadAppData","allData","finalResult","componentChunkPromise","createdAt","staticQueryBatchPromise","staticQueryHash","staticQueryResultsMap","shouldPrefetch","connection","effectiveType","includes","saveData","doesConnectionSupportPrefetch","add","realPath","doPrefetch","getResourceURLsForPathname","createComponentUrls","isPageNotFound","appData","___chunkMapping","chunk","chunkName","pageDataUrl","prefetchHelper","crossOrigin","as","componentUrls","data","_loader","getResourcesForPathname","getResourcesForPathnameSync","offsetY","getTargetOffset","pageYOffset","body","clientTop","computedStyles","getComputedStyle","scrollMarginTop","getPropertyValue","getBoundingClientRect","parseInt","onInitialClientRender","pluginOptions","offset","_reactDom","scrollKey","ScrollContainerImplementation","findDOMNode","ProdPageRenderer","InternalPageRenderer","plugins","api","defaultReturn","argTransform","previous","next"],"mappings":"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","file":"app-d7398b08e923fe8a3caa.js","sourcesContent":["\"use strict\";\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.withPrefix = withPrefix;\nexports.withAssetPrefix = withAssetPrefix;\nexports.navigateTo = exports.replace = exports.push = exports.navigate = exports.default = void 0;\n\nvar _objectWithoutPropertiesLoose2 = _interopRequireDefault(require(\"@babel/runtime/helpers/objectWithoutPropertiesLoose\"));\n\nvar _extends2 = _interopRequireDefault(require(\"@babel/runtime/helpers/extends\"));\n\nvar _assertThisInitialized2 = _interopRequireDefault(require(\"@babel/runtime/helpers/assertThisInitialized\"));\n\nvar _inheritsLoose2 = _interopRequireDefault(require(\"@babel/runtime/helpers/inheritsLoose\"));\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _react = _interopRequireDefault(require(\"react\"));\n\nvar _router = require(\"@reach/router\");\n\nvar _utils = require(\"@reach/router/lib/utils\");\n\nvar _parsePath = require(\"./parse-path\");\n\nexports.parsePath = _parsePath.parsePath;\n\nvar isAbsolutePath = function isAbsolutePath(path) {\n return path === null || path === void 0 ? void 0 : path.startsWith(\"/\");\n};\n\nfunction withPrefix(path, prefix) {\n var _ref, _prefix;\n\n if (prefix === void 0) {\n prefix = getGlobalBasePrefix();\n }\n\n if (!isLocalLink(path)) {\n return path;\n }\n\n if (path.startsWith(\"./\") || path.startsWith(\"../\")) {\n return path;\n }\n\n var base = (_ref = (_prefix = prefix) !== null && _prefix !== void 0 ? _prefix : getGlobalPathPrefix()) !== null && _ref !== void 0 ? _ref : \"/\";\n return \"\" + ((base === null || base === void 0 ? void 0 : base.endsWith(\"/\")) ? base.slice(0, -1) : base) + (path.startsWith(\"/\") ? path : \"/\" + path);\n} // These global values are wrapped in typeof clauses to ensure the values exist.\n// This is especially problematic in unit testing of this component.\n\n\nvar getGlobalPathPrefix = function getGlobalPathPrefix() {\n return process.env.NODE_ENV !== \"production\" ? typeof __PATH_PREFIX__ !== \"undefined\" ? __PATH_PREFIX__ : undefined : __PATH_PREFIX__;\n};\n\nvar getGlobalBasePrefix = function getGlobalBasePrefix() {\n return process.env.NODE_ENV !== \"production\" ? typeof __BASE_PATH__ !== \"undefined\" ? __BASE_PATH__ : undefined : __BASE_PATH__;\n};\n\nvar isLocalLink = function isLocalLink(path) {\n return path && !path.startsWith(\"http://\") && !path.startsWith(\"https://\") && !path.startsWith(\"//\");\n};\n\nfunction withAssetPrefix(path) {\n return withPrefix(path, getGlobalPathPrefix());\n}\n\nfunction absolutify(path, current) {\n // If it's already absolute, return as-is\n if (isAbsolutePath(path)) {\n return path;\n }\n\n return (0, _utils.resolve)(path, current);\n}\n\nvar rewriteLinkPath = function rewriteLinkPath(path, relativeTo) {\n if (typeof path === \"number\") {\n return path;\n }\n\n if (!isLocalLink(path)) {\n return path;\n }\n\n return isAbsolutePath(path) ? withPrefix(path) : absolutify(path, relativeTo);\n};\n\nvar NavLinkPropTypes = {\n activeClassName: _propTypes.default.string,\n activeStyle: _propTypes.default.object,\n partiallyActive: _propTypes.default.bool\n}; // Set up IntersectionObserver\n\nvar createIntersectionObserver = function createIntersectionObserver(el, cb) {\n var io = new window.IntersectionObserver(function (entries) {\n entries.forEach(function (entry) {\n if (el === entry.target) {\n // Check if element is within viewport, remove listener, destroy observer, and run link callback.\n // MSEdge doesn't currently support isIntersecting, so also test for an intersectionRatio > 0\n if (entry.isIntersecting || entry.intersectionRatio > 0) {\n io.unobserve(el);\n io.disconnect();\n cb();\n }\n }\n });\n }); // Add element to the observer\n\n io.observe(el);\n return {\n instance: io,\n el: el\n };\n};\n\nvar GatsbyLink = /*#__PURE__*/function (_React$Component) {\n (0, _inheritsLoose2.default)(GatsbyLink, _React$Component);\n\n function GatsbyLink(props) {\n var _this;\n\n _this = _React$Component.call(this, props) || this; // Default to no support for IntersectionObserver\n\n _this.defaultGetProps = function (_ref2) {\n var isPartiallyCurrent = _ref2.isPartiallyCurrent,\n isCurrent = _ref2.isCurrent;\n\n if (_this.props.partiallyActive ? isPartiallyCurrent : isCurrent) {\n return {\n className: [_this.props.className, _this.props.activeClassName].filter(Boolean).join(\" \"),\n style: (0, _extends2.default)({}, _this.props.style, _this.props.activeStyle)\n };\n }\n\n return null;\n };\n\n var IOSupported = false;\n\n if (typeof window !== \"undefined\" && window.IntersectionObserver) {\n IOSupported = true;\n }\n\n _this.state = {\n IOSupported: IOSupported\n };\n _this.handleRef = _this.handleRef.bind((0, _assertThisInitialized2.default)(_this));\n return _this;\n }\n\n var _proto = GatsbyLink.prototype;\n\n _proto.componentDidUpdate = function componentDidUpdate(prevProps, prevState) {\n // Preserve non IO functionality if no support\n if (this.props.to !== prevProps.to && !this.state.IOSupported) {\n ___loader.enqueue((0, _parsePath.parsePath)(rewriteLinkPath(this.props.to, window.location.pathname)).pathname);\n }\n };\n\n _proto.componentDidMount = function componentDidMount() {\n // Preserve non IO functionality if no support\n if (!this.state.IOSupported) {\n ___loader.enqueue((0, _parsePath.parsePath)(rewriteLinkPath(this.props.to, window.location.pathname)).pathname);\n }\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n if (!this.io) {\n return;\n }\n\n var _this$io = this.io,\n instance = _this$io.instance,\n el = _this$io.el;\n instance.unobserve(el);\n instance.disconnect();\n };\n\n _proto.handleRef = function handleRef(ref) {\n var _this2 = this;\n\n if (this.props.innerRef && this.props.innerRef.hasOwnProperty(\"current\")) {\n this.props.innerRef.current = ref;\n } else if (this.props.innerRef) {\n this.props.innerRef(ref);\n }\n\n if (this.state.IOSupported && ref) {\n // If IO supported and element reference found, setup Observer functionality\n this.io = createIntersectionObserver(ref, function () {\n ___loader.enqueue((0, _parsePath.parsePath)(rewriteLinkPath(_this2.props.to, window.location.pathname)).pathname);\n });\n }\n };\n\n _proto.render = function render() {\n var _this3 = this;\n\n var _this$props = this.props,\n to = _this$props.to,\n _this$props$getProps = _this$props.getProps,\n getProps = _this$props$getProps === void 0 ? this.defaultGetProps : _this$props$getProps,\n _onClick = _this$props.onClick,\n _onMouseEnter = _this$props.onMouseEnter,\n $activeClassName = _this$props.activeClassName,\n $activeStyle = _this$props.activeStyle,\n $innerRef = _this$props.innerRef,\n partiallyActive = _this$props.partiallyActive,\n state = _this$props.state,\n replace = _this$props.replace,\n rest = (0, _objectWithoutPropertiesLoose2.default)(_this$props, [\"to\", \"getProps\", \"onClick\", \"onMouseEnter\", \"activeClassName\", \"activeStyle\", \"innerRef\", \"partiallyActive\", \"state\", \"replace\"]);\n\n if (process.env.NODE_ENV !== \"production\" && !isLocalLink(to)) {\n console.warn(\"External link \" + to + \" was detected in a Link component. Use the Link component only for internal links. See: https://gatsby.dev/internal-links\");\n }\n\n return /*#__PURE__*/_react.default.createElement(_router.Location, null, function (_ref3) {\n var location = _ref3.location;\n var prefixedTo = rewriteLinkPath(to, location.pathname);\n return isLocalLink(prefixedTo) ? /*#__PURE__*/_react.default.createElement(_router.Link, (0, _extends2.default)({\n to: prefixedTo,\n state: state,\n getProps: getProps,\n innerRef: _this3.handleRef,\n onMouseEnter: function onMouseEnter(e) {\n if (_onMouseEnter) {\n _onMouseEnter(e);\n }\n\n ___loader.hovering((0, _parsePath.parsePath)(prefixedTo).pathname);\n },\n onClick: function onClick(e) {\n if (_onClick) {\n _onClick(e);\n }\n\n if (e.button === 0 && // ignore right clicks\n !_this3.props.target && // let browser handle \"target=_blank\"\n !e.defaultPrevented && // onClick prevented default\n !e.metaKey && // ignore clicks with modifier keys...\n !e.altKey && !e.ctrlKey && !e.shiftKey) {\n e.preventDefault();\n var shouldReplace = replace;\n var isCurrent = encodeURI(prefixedTo) === window.location.pathname;\n\n if (typeof replace !== \"boolean\" && isCurrent) {\n shouldReplace = true;\n } // Make sure the necessary scripts and data are\n // loaded before continuing.\n\n\n window.___navigate(prefixedTo, {\n state: state,\n replace: shouldReplace\n });\n }\n\n return true;\n }\n }, rest)) : /*#__PURE__*/_react.default.createElement(\"a\", (0, _extends2.default)({\n href: prefixedTo\n }, rest));\n });\n };\n\n return GatsbyLink;\n}(_react.default.Component);\n\nGatsbyLink.propTypes = (0, _extends2.default)({}, NavLinkPropTypes, {\n onClick: _propTypes.default.func,\n to: _propTypes.default.string.isRequired,\n replace: _propTypes.default.bool,\n state: _propTypes.default.object\n});\n\nvar showDeprecationWarning = function showDeprecationWarning(functionName, altFunctionName, version) {\n return console.warn(\"The \\\"\" + functionName + \"\\\" method is now deprecated and will be removed in Gatsby v\" + version + \". Please use \\\"\" + altFunctionName + \"\\\" instead.\");\n};\n\nvar _default = /*#__PURE__*/_react.default.forwardRef(function (props, ref) {\n return /*#__PURE__*/_react.default.createElement(GatsbyLink, (0, _extends2.default)({\n innerRef: ref\n }, props));\n});\n\nexports.default = _default;\n\nvar navigate = function navigate(to, options) {\n window.___navigate(rewriteLinkPath(to, window.location.pathname), options);\n};\n\nexports.navigate = navigate;\n\nvar push = function push(to) {\n showDeprecationWarning(\"push\", \"navigate\", 3);\n\n window.___push(rewriteLinkPath(to, window.location.pathname));\n};\n\nexports.push = push;\n\nvar replace = function replace(to) {\n showDeprecationWarning(\"replace\", \"navigate\", 3);\n\n window.___replace(rewriteLinkPath(to, window.location.pathname));\n}; // TODO: Remove navigateTo for Gatsby v3\n\n\nexports.replace = replace;\n\nvar navigateTo = function navigateTo(to) {\n showDeprecationWarning(\"navigateTo\", \"navigate\", 3);\n return push(to);\n};\n\nexports.navigateTo = navigateTo;","\"use strict\";\n\nexports.__esModule = true;\nexports.SessionStorage = void 0;\nvar STATE_KEY_PREFIX = \"@@scroll|\";\nvar GATSBY_ROUTER_SCROLL_STATE = \"___GATSBY_REACT_ROUTER_SCROLL\";\n\nvar SessionStorage = /*#__PURE__*/function () {\n function SessionStorage() {}\n\n var _proto = SessionStorage.prototype;\n\n _proto.read = function read(location, key) {\n var stateKey = this.getStateKey(location, key);\n\n try {\n var value = window.sessionStorage.getItem(stateKey);\n return value ? JSON.parse(value) : 0;\n } catch (e) {\n if (process.env.NODE_ENV !== \"production\") {\n console.warn(\"[gatsby-react-router-scroll] Unable to access sessionStorage; sessionStorage is not available.\");\n }\n\n if (window && window[GATSBY_ROUTER_SCROLL_STATE] && window[GATSBY_ROUTER_SCROLL_STATE][stateKey]) {\n return window[GATSBY_ROUTER_SCROLL_STATE][stateKey];\n }\n\n return 0;\n }\n };\n\n _proto.save = function save(location, key, value) {\n var stateKey = this.getStateKey(location, key);\n var storedValue = JSON.stringify(value);\n\n try {\n window.sessionStorage.setItem(stateKey, storedValue);\n } catch (e) {\n if (window && window[GATSBY_ROUTER_SCROLL_STATE]) {\n window[GATSBY_ROUTER_SCROLL_STATE][stateKey] = JSON.parse(storedValue);\n } else {\n window[GATSBY_ROUTER_SCROLL_STATE] = {};\n window[GATSBY_ROUTER_SCROLL_STATE][stateKey] = JSON.parse(storedValue);\n }\n\n if (process.env.NODE_ENV !== \"production\") {\n console.warn(\"[gatsby-react-router-scroll] Unable to save state in sessionStorage; sessionStorage is not available.\");\n }\n }\n };\n\n _proto.getStateKey = function getStateKey(location, key) {\n var stateKeyBase = \"\" + STATE_KEY_PREFIX + location.pathname;\n return key === null || typeof key === \"undefined\" ? stateKeyBase : stateKeyBase + \"|\" + key;\n };\n\n return SessionStorage;\n}();\n\nexports.SessionStorage = SessionStorage;","var _typeof = require(\"../helpers/typeof\");\n\nfunction _getRequireWildcardCache() {\n if (typeof WeakMap !== \"function\") return null;\n var cache = new WeakMap();\n\n _getRequireWildcardCache = function _getRequireWildcardCache() {\n return cache;\n };\n\n return cache;\n}\n\nfunction _interopRequireWildcard(obj) {\n if (obj && obj.__esModule) {\n return obj;\n }\n\n if (obj === null || _typeof(obj) !== \"object\" && typeof obj !== \"function\") {\n return {\n \"default\": obj\n };\n }\n\n var cache = _getRequireWildcardCache();\n\n if (cache && cache.has(obj)) {\n return cache.get(obj);\n }\n\n var newObj = {};\n var hasPropertyDescriptor = Object.defineProperty && Object.getOwnPropertyDescriptor;\n\n for (var key in obj) {\n if (Object.prototype.hasOwnProperty.call(obj, key)) {\n var desc = hasPropertyDescriptor ? Object.getOwnPropertyDescriptor(obj, key) : null;\n\n if (desc && (desc.get || desc.set)) {\n Object.defineProperty(newObj, key, desc);\n } else {\n newObj[key] = obj[key];\n }\n }\n }\n\n newObj[\"default\"] = obj;\n\n if (cache) {\n cache.set(obj, newObj);\n }\n\n return newObj;\n}\n\nmodule.exports = _interopRequireWildcard;","\"use strict\";\n\nexports.__esModule = true;\nexports.useScrollRestoration = useScrollRestoration;\n\nvar _scrollHandler = require(\"./scroll-handler\");\n\nvar _react = require(\"react\");\n\nvar _router = require(\"@reach/router\");\n\nfunction useScrollRestoration(identifier) {\n var location = (0, _router.useLocation)();\n var state = (0, _react.useContext)(_scrollHandler.ScrollContext);\n var ref = (0, _react.useRef)();\n (0, _react.useLayoutEffect)(function () {\n if (ref.current) {\n var position = state.read(location, identifier);\n ref.current.scrollTo(0, position || 0);\n }\n }, []);\n return {\n ref: ref,\n onScroll: function onScroll() {\n if (ref.current) {\n state.save(location, identifier, ref.current.scrollTop);\n }\n }\n };\n}","// \n// An event handler can take an optional event argument\n// and should not return a value\n \n \n\n// An array of all currently registered event handlers for a type\n \n \n// A map of event types and their corresponding event handlers.\n \n \n \n \n\n/** Mitt: Tiny (~200b) functional event emitter / pubsub.\n * @name mitt\n * @returns {Mitt}\n */\nfunction mitt(all ) {\n\tall = all || Object.create(null);\n\n\treturn {\n\t\t/**\n\t\t * Register an event handler for the given type.\n\t\t *\n\t\t * @param {String} type\tType of event to listen for, or `\"*\"` for all events\n\t\t * @param {Function} handler Function to call in response to given event\n\t\t * @memberOf mitt\n\t\t */\n\t\ton: function on(type , handler ) {\n\t\t\t(all[type] || (all[type] = [])).push(handler);\n\t\t},\n\n\t\t/**\n\t\t * Remove an event handler for the given type.\n\t\t *\n\t\t * @param {String} type\tType of event to unregister `handler` from, or `\"*\"`\n\t\t * @param {Function} handler Handler function to remove\n\t\t * @memberOf mitt\n\t\t */\n\t\toff: function off(type , handler ) {\n\t\t\tif (all[type]) {\n\t\t\t\tall[type].splice(all[type].indexOf(handler) >>> 0, 1);\n\t\t\t}\n\t\t},\n\n\t\t/**\n\t\t * Invoke all handlers for the given type.\n\t\t * If present, `\"*\"` handlers are invoked after type-matched handlers.\n\t\t *\n\t\t * @param {String} type The event type to invoke\n\t\t * @param {Any} [evt] Any value (object is recommended and powerful), passed to each handler\n\t\t * @memberOf mitt\n\t\t */\n\t\temit: function emit(type , evt ) {\n\t\t\t(all[type] || []).slice().map(function (handler) { handler(evt); });\n\t\t\t(all['*'] || []).slice().map(function (handler) { handler(type, evt); });\n\t\t}\n\t};\n}\n\nexport default mitt;\n//# sourceMappingURL=mitt.es.js.map\n","import mitt from \"mitt\"\n\nconst emitter = mitt()\nexport default emitter\n","module.exports = Object.assign\n","\"use strict\";\n\nexports.__esModule = true;\nexports.useScrollRestoration = exports.ScrollContainer = exports.ScrollContext = void 0;\n\nvar _scrollHandler = require(\"./scroll-handler\");\n\nexports.ScrollContext = _scrollHandler.ScrollHandler;\n\nvar _scrollContainer = require(\"./scroll-container\");\n\nexports.ScrollContainer = _scrollContainer.ScrollContainer;\n\nvar _useScrollRestoration = require(\"./use-scroll-restoration\");\n\nexports.useScrollRestoration = _useScrollRestoration.useScrollRestoration;","function _objectWithoutPropertiesLoose(source, excluded) {\n if (source == null) return {};\n var target = {};\n var sourceKeys = Object.keys(source);\n var key, i;\n\n for (i = 0; i < sourceKeys.length; i++) {\n key = sourceKeys[i];\n if (excluded.indexOf(key) >= 0) continue;\n target[key] = source[key];\n }\n\n return target;\n}\n\nmodule.exports = _objectWithoutPropertiesLoose;","exports.polyfill = Component => Component\n","var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nvar getLocation = function getLocation(source) {\n var _source$location = source.location,\n search = _source$location.search,\n hash = _source$location.hash,\n href = _source$location.href,\n origin = _source$location.origin,\n protocol = _source$location.protocol,\n host = _source$location.host,\n hostname = _source$location.hostname,\n port = _source$location.port;\n var pathname = source.location.pathname;\n\n\n if (!pathname && href && canUseDOM) {\n var url = new URL(href);\n pathname = url.pathname;\n }\n\n return {\n pathname: encodeURI(decodeURI(pathname)),\n search: search,\n hash: hash,\n href: href,\n origin: origin,\n protocol: protocol,\n host: host,\n hostname: hostname,\n port: port,\n state: source.history.state,\n key: source.history.state && source.history.state.key || \"initial\"\n };\n};\n\nvar createHistory = function createHistory(source, options) {\n var listeners = [];\n var location = getLocation(source);\n var transitioning = false;\n var resolveTransition = function resolveTransition() {};\n\n return {\n get location() {\n return location;\n },\n\n get transitioning() {\n return transitioning;\n },\n\n _onTransitionComplete: function _onTransitionComplete() {\n transitioning = false;\n resolveTransition();\n },\n listen: function listen(listener) {\n listeners.push(listener);\n\n var popstateListener = function popstateListener() {\n location = getLocation(source);\n listener({ location: location, action: \"POP\" });\n };\n\n source.addEventListener(\"popstate\", popstateListener);\n\n return function () {\n source.removeEventListener(\"popstate\", popstateListener);\n listeners = listeners.filter(function (fn) {\n return fn !== listener;\n });\n };\n },\n navigate: function navigate(to) {\n var _ref = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {},\n state = _ref.state,\n _ref$replace = _ref.replace,\n replace = _ref$replace === undefined ? false : _ref$replace;\n\n if (typeof to === \"number\") {\n source.history.go(to);\n } else {\n state = _extends({}, state, { key: Date.now() + \"\" });\n // try...catch iOS Safari limits to 100 pushState calls\n try {\n if (transitioning || replace) {\n source.history.replaceState(state, null, to);\n } else {\n source.history.pushState(state, null, to);\n }\n } catch (e) {\n source.location[replace ? \"replace\" : \"assign\"](to);\n }\n }\n\n location = getLocation(source);\n transitioning = true;\n var transition = new Promise(function (res) {\n return resolveTransition = res;\n });\n listeners.forEach(function (listener) {\n return listener({ location: location, action: \"PUSH\" });\n });\n return transition;\n }\n };\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// Stores history entries in memory for testing or other platforms like Native\nvar createMemorySource = function createMemorySource() {\n var initialPath = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : \"/\";\n\n var searchIndex = initialPath.indexOf(\"?\");\n var initialLocation = {\n pathname: searchIndex > -1 ? initialPath.substr(0, searchIndex) : initialPath,\n search: searchIndex > -1 ? initialPath.substr(searchIndex) : \"\"\n };\n var index = 0;\n var stack = [initialLocation];\n var states = [null];\n\n return {\n get location() {\n return stack[index];\n },\n addEventListener: function addEventListener(name, fn) {},\n removeEventListener: function removeEventListener(name, fn) {},\n\n history: {\n get entries() {\n return stack;\n },\n get index() {\n return index;\n },\n get state() {\n return states[index];\n },\n pushState: function pushState(state, _, uri) {\n var _uri$split = uri.split(\"?\"),\n pathname = _uri$split[0],\n _uri$split$ = _uri$split[1],\n search = _uri$split$ === undefined ? \"\" : _uri$split$;\n\n index++;\n stack.push({ pathname: pathname, search: search.length ? \"?\" + search : search });\n states.push(state);\n },\n replaceState: function replaceState(state, _, uri) {\n var _uri$split2 = uri.split(\"?\"),\n pathname = _uri$split2[0],\n _uri$split2$ = _uri$split2[1],\n search = _uri$split2$ === undefined ? \"\" : _uri$split2$;\n\n stack[index] = { pathname: pathname, search: search };\n states[index] = state;\n },\n go: function go(to) {\n var newIndex = index + to;\n\n if (newIndex < 0 || newIndex > states.length - 1) {\n return;\n }\n\n index = newIndex;\n }\n }\n };\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// global history - uses window.history as the source if available, otherwise a\n// memory history\nvar canUseDOM = !!(typeof window !== \"undefined\" && window.document && window.document.createElement);\nvar getSource = function getSource() {\n return canUseDOM ? window : createMemorySource();\n};\n\nvar globalHistory = createHistory(getSource());\nvar navigate = globalHistory.navigate;\n\n////////////////////////////////////////////////////////////////////////////////\n\nexport { globalHistory, navigate, createHistory, createMemorySource };","\"use strict\";\n\nvar _interopRequireWildcard = require(\"@babel/runtime/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.ScrollHandler = exports.ScrollContext = void 0;\n\nvar _assertThisInitialized2 = _interopRequireDefault(require(\"@babel/runtime/helpers/assertThisInitialized\"));\n\nvar _inheritsLoose2 = _interopRequireDefault(require(\"@babel/runtime/helpers/inheritsLoose\"));\n\nvar React = _interopRequireWildcard(require(\"react\"));\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _sessionStorage = require(\"./session-storage\");\n\nvar ScrollContext = React.createContext(new _sessionStorage.SessionStorage());\nexports.ScrollContext = ScrollContext;\nScrollContext.displayName = \"GatsbyScrollContext\";\n\nvar ScrollHandler = /*#__PURE__*/function (_React$Component) {\n (0, _inheritsLoose2.default)(ScrollHandler, _React$Component);\n\n function ScrollHandler() {\n var _this;\n\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n _this = _React$Component.call.apply(_React$Component, [this].concat(args)) || this;\n _this._stateStorage = new _sessionStorage.SessionStorage();\n\n _this.scrollListener = function () {\n var key = _this.props.location.key;\n\n if (key) {\n _this._stateStorage.save(_this.props.location, key, window.scrollY);\n }\n };\n\n _this.windowScroll = function (position, prevProps) {\n if (_this.shouldUpdateScroll(prevProps, _this.props)) {\n window.scrollTo(0, position);\n }\n };\n\n _this.scrollToHash = function (hash, prevProps) {\n var node = document.getElementById(hash.substring(1));\n\n if (node && _this.shouldUpdateScroll(prevProps, _this.props)) {\n node.scrollIntoView();\n }\n };\n\n _this.shouldUpdateScroll = function (prevRouterProps, routerProps) {\n var shouldUpdateScroll = _this.props.shouldUpdateScroll;\n\n if (!shouldUpdateScroll) {\n return true;\n } // Hack to allow accessing this._stateStorage.\n\n\n return shouldUpdateScroll.call((0, _assertThisInitialized2.default)(_this), prevRouterProps, routerProps);\n };\n\n return _this;\n }\n\n var _proto = ScrollHandler.prototype;\n\n _proto.componentDidMount = function componentDidMount() {\n window.addEventListener(\"scroll\", this.scrollListener);\n var scrollPosition;\n var _this$props$location = this.props.location,\n key = _this$props$location.key,\n hash = _this$props$location.hash;\n\n if (key) {\n scrollPosition = this._stateStorage.read(this.props.location, key);\n }\n\n if (scrollPosition) {\n this.windowScroll(scrollPosition, undefined);\n } else if (hash) {\n this.scrollToHash(decodeURI(hash), undefined);\n }\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n window.removeEventListener(\"scroll\", this.scrollListener);\n };\n\n _proto.componentDidUpdate = function componentDidUpdate(prevProps) {\n var _this$props$location2 = this.props.location,\n hash = _this$props$location2.hash,\n key = _this$props$location2.key;\n var scrollPosition;\n\n if (key) {\n scrollPosition = this._stateStorage.read(this.props.location, key);\n }\n\n if (hash && scrollPosition === 0) {\n this.scrollToHash(decodeURI(hash), prevProps);\n } else {\n this.windowScroll(scrollPosition, prevProps);\n }\n };\n\n _proto.render = function render() {\n return /*#__PURE__*/React.createElement(ScrollContext.Provider, {\n value: this._stateStorage\n }, this.props.children);\n };\n\n return ScrollHandler;\n}(React.Component);\n\nexports.ScrollHandler = ScrollHandler;\nScrollHandler.propTypes = {\n shouldUpdateScroll: _propTypes.default.func,\n children: _propTypes.default.element.isRequired,\n location: _propTypes.default.object.isRequired\n};","import React, { createElement } from \"react\"\nimport PropTypes from \"prop-types\"\nimport { publicLoader } from \"./loader\"\nimport { apiRunner } from \"./api-runner-browser\"\n\n// Renders page\nclass PageRenderer extends React.Component {\n render() {\n const props = {\n ...this.props,\n pathContext: this.props.pageContext,\n }\n\n const [replacementElement] = apiRunner(`replaceComponentRenderer`, {\n props: this.props,\n loader: publicLoader,\n })\n\n const pageElement =\n replacementElement ||\n createElement(this.props.pageResources.component, {\n ...props,\n key: this.props.path || this.props.pageResources.page.path,\n })\n\n const wrappedPage = apiRunner(\n `wrapPageElement`,\n { element: pageElement, props },\n pageElement,\n ({ result }) => {\n return { element: result, props }\n }\n ).pop()\n\n return wrappedPage\n }\n}\n\nPageRenderer.propTypes = {\n location: PropTypes.object.isRequired,\n pageResources: PropTypes.object.isRequired,\n data: PropTypes.object,\n pageContext: PropTypes.object.isRequired,\n}\n\nexport default PageRenderer\n","import invariant from \"invariant\";\n\n////////////////////////////////////////////////////////////////////////////////\n// startsWith(string, search) - Check if `string` starts with `search`\nvar startsWith = function startsWith(string, search) {\n return string.substr(0, search.length) === search;\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// pick(routes, uri)\n//\n// Ranks and picks the best route to match. Each segment gets the highest\n// amount of points, then the type of segment gets an additional amount of\n// points where\n//\n// static > dynamic > splat > root\n//\n// This way we don't have to worry about the order of our routes, let the\n// computers do it.\n//\n// A route looks like this\n//\n// { path, default, value }\n//\n// And a returned match looks like:\n//\n// { route, params, uri }\n//\n// I know, I should use TypeScript not comments for these types.\nvar pick = function pick(routes, uri) {\n var match = void 0;\n var default_ = void 0;\n\n var _uri$split = uri.split(\"?\"),\n uriPathname = _uri$split[0];\n\n var uriSegments = segmentize(uriPathname);\n var isRootUri = uriSegments[0] === \"\";\n var ranked = rankRoutes(routes);\n\n for (var i = 0, l = ranked.length; i < l; i++) {\n var missed = false;\n var route = ranked[i].route;\n\n if (route.default) {\n default_ = {\n route: route,\n params: {},\n uri: uri\n };\n continue;\n }\n\n var routeSegments = segmentize(route.path);\n var params = {};\n var max = Math.max(uriSegments.length, routeSegments.length);\n var index = 0;\n\n for (; index < max; index++) {\n var routeSegment = routeSegments[index];\n var uriSegment = uriSegments[index];\n\n if (isSplat(routeSegment)) {\n // Hit a splat, just grab the rest, and return a match\n // uri: /files/documents/work\n // route: /files/*\n var param = routeSegment.slice(1) || \"*\";\n params[param] = uriSegments.slice(index).map(decodeURIComponent).join(\"/\");\n break;\n }\n\n if (uriSegment === undefined) {\n // URI is shorter than the route, no match\n // uri: /users\n // route: /users/:userId\n missed = true;\n break;\n }\n\n var dynamicMatch = paramRe.exec(routeSegment);\n\n if (dynamicMatch && !isRootUri) {\n var matchIsNotReserved = reservedNames.indexOf(dynamicMatch[1]) === -1;\n !matchIsNotReserved ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"<Router> dynamic segment \\\"\" + dynamicMatch[1] + \"\\\" is a reserved name. Please use a different name in path \\\"\" + route.path + \"\\\".\") : invariant(false) : void 0;\n var value = decodeURIComponent(uriSegment);\n params[dynamicMatch[1]] = value;\n } else if (routeSegment !== uriSegment) {\n // Current segments don't match, not dynamic, not splat, so no match\n // uri: /users/123/settings\n // route: /users/:id/profile\n missed = true;\n break;\n }\n }\n\n if (!missed) {\n match = {\n route: route,\n params: params,\n uri: \"/\" + uriSegments.slice(0, index).join(\"/\")\n };\n break;\n }\n }\n\n return match || default_ || null;\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// match(path, uri) - Matches just one path to a uri, also lol\nvar match = function match(path, uri) {\n return pick([{ path: path }], uri);\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// resolve(to, basepath)\n//\n// Resolves URIs as though every path is a directory, no files. Relative URIs\n// in the browser can feel awkward because not only can you be \"in a directory\"\n// you can be \"at a file\", too. For example\n//\n// browserSpecResolve('foo', '/bar/') => /bar/foo\n// browserSpecResolve('foo', '/bar') => /foo\n//\n// But on the command line of a file system, it's not as complicated, you can't\n// `cd` from a file, only directories. This way, links have to know less about\n// their current path. To go deeper you can do this:\n//\n// <Link to=\"deeper\"/>\n// // instead of\n// <Link to=`{${props.uri}/deeper}`/>\n//\n// Just like `cd`, if you want to go deeper from the command line, you do this:\n//\n// cd deeper\n// # not\n// cd $(pwd)/deeper\n//\n// By treating every path as a directory, linking to relative paths should\n// require less contextual information and (fingers crossed) be more intuitive.\nvar resolve = function resolve(to, base) {\n // /foo/bar, /baz/qux => /foo/bar\n if (startsWith(to, \"/\")) {\n return to;\n }\n\n var _to$split = to.split(\"?\"),\n toPathname = _to$split[0],\n toQuery = _to$split[1];\n\n var _base$split = base.split(\"?\"),\n basePathname = _base$split[0];\n\n var toSegments = segmentize(toPathname);\n var baseSegments = segmentize(basePathname);\n\n // ?a=b, /users?b=c => /users?a=b\n if (toSegments[0] === \"\") {\n return addQuery(basePathname, toQuery);\n }\n\n // profile, /users/789 => /users/789/profile\n if (!startsWith(toSegments[0], \".\")) {\n var pathname = baseSegments.concat(toSegments).join(\"/\");\n return addQuery((basePathname === \"/\" ? \"\" : \"/\") + pathname, toQuery);\n }\n\n // ./ /users/123 => /users/123\n // ../ /users/123 => /users\n // ../.. /users/123 => /\n // ../../one /a/b/c/d => /a/b/one\n // .././one /a/b/c/d => /a/b/c/one\n var allSegments = baseSegments.concat(toSegments);\n var segments = [];\n for (var i = 0, l = allSegments.length; i < l; i++) {\n var segment = allSegments[i];\n if (segment === \"..\") segments.pop();else if (segment !== \".\") segments.push(segment);\n }\n\n return addQuery(\"/\" + segments.join(\"/\"), toQuery);\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// insertParams(path, params)\n\nvar insertParams = function insertParams(path, params) {\n var _path$split = path.split(\"?\"),\n pathBase = _path$split[0],\n _path$split$ = _path$split[1],\n query = _path$split$ === undefined ? \"\" : _path$split$;\n\n var segments = segmentize(pathBase);\n var constructedPath = \"/\" + segments.map(function (segment) {\n var match = paramRe.exec(segment);\n return match ? params[match[1]] : segment;\n }).join(\"/\");\n var _params$location = params.location;\n _params$location = _params$location === undefined ? {} : _params$location;\n var _params$location$sear = _params$location.search,\n search = _params$location$sear === undefined ? \"\" : _params$location$sear;\n\n var searchSplit = search.split(\"?\")[1] || \"\";\n constructedPath = addQuery(constructedPath, query, searchSplit);\n return constructedPath;\n};\n\nvar validateRedirect = function validateRedirect(from, to) {\n var filter = function filter(segment) {\n return isDynamic(segment);\n };\n var fromString = segmentize(from).filter(filter).sort().join(\"/\");\n var toString = segmentize(to).filter(filter).sort().join(\"/\");\n return fromString === toString;\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// Junk\nvar paramRe = /^:(.+)/;\n\nvar SEGMENT_POINTS = 4;\nvar STATIC_POINTS = 3;\nvar DYNAMIC_POINTS = 2;\nvar SPLAT_PENALTY = 1;\nvar ROOT_POINTS = 1;\n\nvar isRootSegment = function isRootSegment(segment) {\n return segment === \"\";\n};\nvar isDynamic = function isDynamic(segment) {\n return paramRe.test(segment);\n};\nvar isSplat = function isSplat(segment) {\n return segment && segment[0] === \"*\";\n};\n\nvar rankRoute = function rankRoute(route, index) {\n var score = route.default ? 0 : segmentize(route.path).reduce(function (score, segment) {\n score += SEGMENT_POINTS;\n if (isRootSegment(segment)) score += ROOT_POINTS;else if (isDynamic(segment)) score += DYNAMIC_POINTS;else if (isSplat(segment)) score -= SEGMENT_POINTS + SPLAT_PENALTY;else score += STATIC_POINTS;\n return score;\n }, 0);\n return { route: route, score: score, index: index };\n};\n\nvar rankRoutes = function rankRoutes(routes) {\n return routes.map(rankRoute).sort(function (a, b) {\n return a.score < b.score ? 1 : a.score > b.score ? -1 : a.index - b.index;\n });\n};\n\nvar segmentize = function segmentize(uri) {\n return uri\n // strip starting/ending slashes\n .replace(/(^\\/+|\\/+$)/g, \"\").split(\"/\");\n};\n\nvar addQuery = function addQuery(pathname) {\n for (var _len = arguments.length, query = Array(_len > 1 ? _len - 1 : 0), _key = 1; _key < _len; _key++) {\n query[_key - 1] = arguments[_key];\n }\n\n query = query.filter(function (q) {\n return q && q.length > 0;\n });\n return pathname + (query && query.length > 0 ? \"?\" + query.join(\"&\") : \"\");\n};\n\nvar reservedNames = [\"uri\", \"path\"];\n\n/**\n * Shallow compares two objects.\n * @param {Object} obj1 The first object to compare.\n * @param {Object} obj2 The second object to compare.\n */\nvar shallowCompare = function shallowCompare(obj1, obj2) {\n var obj1Keys = Object.keys(obj1);\n return obj1Keys.length === Object.keys(obj2).length && obj1Keys.every(function (key) {\n return obj2.hasOwnProperty(key) && obj1[key] === obj2[key];\n });\n};\n\n////////////////////////////////////////////////////////////////////////////////\nexport { startsWith, pick, match, resolve, insertParams, validateRedirect, shallowCompare };","module.exports = [{\n plugin: require('../node_modules/gatsby-remark-autolink-headers/gatsby-browser.js'),\n options: {\"plugins\":[]},\n }]\n","/*!\n * domready (c) Dustin Diaz 2014 - License MIT\n * ie10 fix - Mikael Kristiansson 2019\n */\n!(function(name, definition) {\n if (typeof module != \"undefined\") module.exports = definition();\n else if (typeof define == \"function\" && typeof define.amd == \"object\")\n define(definition);\n else this[name] = definition();\n})(\"domready\", function() {\n var ie10 = false;\n if (navigator.appVersion.indexOf(\"MSIE 10\") !== -1) {\n ie10 = true;\n }\n\n var fns = [],\n listener,\n doc = typeof document === \"object\" && document,\n hack = ie10\n ? doc.documentElement.doScroll(\"left\")\n : doc.documentElement.doScroll,\n domContentLoaded = \"DOMContentLoaded\",\n loaded =\n doc && (hack ? /^loaded|^c/ : /^loaded|^i|^c/).test(doc.readyState);\n\n if (!loaded && doc)\n doc.addEventListener(\n domContentLoaded,\n (listener = function() {\n doc.removeEventListener(domContentLoaded, listener);\n loaded = 1;\n while ((listener = fns.shift())) listener();\n })\n );\n\n return function(fn) {\n loaded ? setTimeout(fn, 0) : fns.push(fn);\n };\n});\n","import { apiRunner } from \"./api-runner-browser\"\n\nif (\n window.location.protocol !== `https:` &&\n window.location.hostname !== `localhost`\n) {\n console.error(\n `Service workers can only be used over HTTPS, or on localhost for development`\n )\n} else if (`serviceWorker` in navigator) {\n navigator.serviceWorker\n .register(`${__BASE_PATH__}/sw.js`)\n .then(function (reg) {\n reg.addEventListener(`updatefound`, () => {\n apiRunner(`onServiceWorkerUpdateFound`, { serviceWorker: reg })\n // The updatefound event implies that reg.installing is set; see\n // https://w3c.github.io/ServiceWorker/#service-worker-registration-updatefound-event\n const installingWorker = reg.installing\n console.log(`installingWorker`, installingWorker)\n installingWorker.addEventListener(`statechange`, () => {\n switch (installingWorker.state) {\n case `installed`:\n if (navigator.serviceWorker.controller) {\n // At this point, the old content will have been purged and the fresh content will\n // have been added to the cache.\n\n // We set a flag so Gatsby Link knows to refresh the page on next navigation attempt\n window.___swUpdated = true\n // We call the onServiceWorkerUpdateReady API so users can show update prompts.\n apiRunner(`onServiceWorkerUpdateReady`, { serviceWorker: reg })\n\n // If resources failed for the current page, reload.\n if (window.___failedResources) {\n console.log(`resources failed, SW updated - reloading`)\n window.location.reload()\n }\n } else {\n // At this point, everything has been precached.\n // It's the perfect time to display a \"Content is cached for offline use.\" message.\n console.log(`Content is now available offline!`)\n\n // Post to service worker that install is complete.\n // Delay to allow time for the event listener to be added --\n // otherwise fetch is called too soon and resources aren't cached.\n apiRunner(`onServiceWorkerInstalled`, { serviceWorker: reg })\n }\n break\n\n case `redundant`:\n console.error(`The installing service worker became redundant.`)\n apiRunner(`onServiceWorkerRedundant`, { serviceWorker: reg })\n break\n\n case `activated`:\n apiRunner(`onServiceWorkerActive`, { serviceWorker: reg })\n break\n }\n })\n })\n })\n .catch(function (e) {\n console.error(`Error during service worker registration:`, e)\n })\n}\n","function _assertThisInitialized(self) {\n if (self === void 0) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return self;\n}\n\nmodule.exports = _assertThisInitialized;","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\n/**\n * Use invariant() to assert state which your program assumes to be true.\n *\n * Provide sprintf-style format (only %s is supported) and arguments\n * to provide information about what broke and what you were\n * expecting.\n *\n * The invariant message will be stripped in production, but the invariant\n * will remain to ensure logic does not differ in production.\n */\n\nvar invariant = function(condition, format, a, b, c, d, e, f) {\n if (process.env.NODE_ENV !== 'production') {\n if (format === undefined) {\n throw new Error('invariant requires an error message argument');\n }\n }\n\n if (!condition) {\n var error;\n if (format === undefined) {\n error = new Error(\n 'Minified exception occurred; use the non-minified dev environment ' +\n 'for the full error message and additional helpful warnings.'\n );\n } else {\n var args = [a, b, c, d, e, f];\n var argIndex = 0;\n error = new Error(\n format.replace(/%s/g, function() { return args[argIndex++]; })\n );\n error.name = 'Invariant Violation';\n }\n\n error.framesToPop = 1; // we don't care about invariant's own frame\n throw error;\n }\n};\n\nmodule.exports = invariant;\n","function _interopRequireDefault(obj) {\n return obj && obj.__esModule ? obj : {\n \"default\": obj\n };\n}\n\nmodule.exports = _interopRequireDefault;","// This is extracted to separate module because it's shared\n// between browser and SSR code\nexport const RouteAnnouncerProps = {\n id: `gatsby-announcer`,\n style: {\n position: `absolute`,\n top: 0,\n width: 1,\n height: 1,\n padding: 0,\n overflow: `hidden`,\n clip: `rect(0, 0, 0, 0)`,\n whiteSpace: `nowrap`,\n border: 0,\n },\n \"aria-live\": `assertive`,\n \"aria-atomic\": `true`,\n}\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\nimport loader, { PageResourceStatus } from \"./loader\"\nimport redirects from \"./redirects.json\"\nimport { apiRunner } from \"./api-runner-browser\"\nimport emitter from \"./emitter\"\nimport { RouteAnnouncerProps } from \"./route-announcer-props\"\nimport { navigate as reachNavigate } from \"@reach/router\"\nimport { globalHistory } from \"@reach/router/lib/history\"\nimport { parsePath } from \"gatsby-link\"\n\n// Convert to a map for faster lookup in maybeRedirect()\nconst redirectMap = redirects.reduce((map, redirect) => {\n map[redirect.fromPath] = redirect\n return map\n}, {})\n\nfunction maybeRedirect(pathname) {\n const redirect = redirectMap[pathname]\n\n if (redirect != null) {\n if (process.env.NODE_ENV !== `production`) {\n if (!loader.isPageNotFound(pathname)) {\n console.error(\n `The route \"${pathname}\" matches both a page and a redirect; this is probably not intentional.`\n )\n }\n }\n\n window.___replace(redirect.toPath)\n return true\n } else {\n return false\n }\n}\n\nconst onPreRouteUpdate = (location, prevLocation) => {\n if (!maybeRedirect(location.pathname)) {\n apiRunner(`onPreRouteUpdate`, { location, prevLocation })\n }\n}\n\nconst onRouteUpdate = (location, prevLocation) => {\n if (!maybeRedirect(location.pathname)) {\n apiRunner(`onRouteUpdate`, { location, prevLocation })\n }\n}\n\nconst navigate = (to, options = {}) => {\n // Support forward/backward navigation with numbers\n // navigate(-2) (jumps back 2 history steps)\n // navigate(2) (jumps forward 2 history steps)\n if (typeof to === `number`) {\n globalHistory.navigate(to)\n return\n }\n\n let { pathname } = parsePath(to)\n const redirect = redirectMap[pathname]\n\n // If we're redirecting, just replace the passed in pathname\n // to the one we want to redirect to.\n if (redirect) {\n to = redirect.toPath\n pathname = parsePath(to).pathname\n }\n\n // If we had a service worker update, no matter the path, reload window and\n // reset the pathname whitelist\n if (window.___swUpdated) {\n window.location = pathname\n return\n }\n\n // Start a timer to wait for a second before transitioning and showing a\n // loader in case resources aren't around yet.\n const timeoutId = setTimeout(() => {\n emitter.emit(`onDelayedLoadPageResources`, { pathname })\n apiRunner(`onRouteUpdateDelayed`, {\n location: window.location,\n })\n }, 1000)\n\n loader.loadPage(pathname).then(pageResources => {\n // If no page resources, then refresh the page\n // Do this, rather than simply `window.location.reload()`, so that\n // pressing the back/forward buttons work - otherwise when pressing\n // back, the browser will just change the URL and expect JS to handle\n // the change, which won't always work since it might not be a Gatsby\n // page.\n if (!pageResources || pageResources.status === PageResourceStatus.Error) {\n window.history.replaceState({}, ``, location.href)\n window.location = pathname\n clearTimeout(timeoutId)\n return\n }\n\n // If the loaded page has a different compilation hash to the\n // window, then a rebuild has occurred on the server. Reload.\n if (process.env.NODE_ENV === `production` && pageResources) {\n if (\n pageResources.page.webpackCompilationHash !==\n window.___webpackCompilationHash\n ) {\n // Purge plugin-offline cache\n if (\n `serviceWorker` in navigator &&\n navigator.serviceWorker.controller !== null &&\n navigator.serviceWorker.controller.state === `activated`\n ) {\n navigator.serviceWorker.controller.postMessage({\n gatsbyApi: `clearPathResources`,\n })\n }\n\n console.log(`Site has changed on server. Reloading browser`)\n window.location = pathname\n }\n }\n reachNavigate(to, options)\n clearTimeout(timeoutId)\n })\n}\n\nfunction shouldUpdateScroll(prevRouterProps, { location }) {\n const { pathname, hash } = location\n const results = apiRunner(`shouldUpdateScroll`, {\n prevRouterProps,\n // `pathname` for backwards compatibility\n pathname,\n routerProps: { location },\n getSavedScrollPosition: args => this._stateStorage.read(args),\n })\n if (results.length > 0) {\n // Use the latest registered shouldUpdateScroll result, this allows users to override plugin's configuration\n // @see https://github.com/gatsbyjs/gatsby/issues/12038\n return results[results.length - 1]\n }\n\n if (prevRouterProps) {\n const {\n location: { pathname: oldPathname },\n } = prevRouterProps\n if (oldPathname === pathname) {\n // Scroll to element if it exists, if it doesn't, or no hash is provided,\n // scroll to top.\n return hash ? decodeURI(hash.slice(1)) : [0, 0]\n }\n }\n return true\n}\n\nfunction init() {\n // The \"scroll-behavior\" package expects the \"action\" to be on the location\n // object so let's copy it over.\n globalHistory.listen(args => {\n args.location.action = args.action\n })\n\n window.___push = to => navigate(to, { replace: false })\n window.___replace = to => navigate(to, { replace: true })\n window.___navigate = (to, options) => navigate(to, options)\n\n // Check for initial page-load redirect\n maybeRedirect(window.location.pathname)\n}\n\nclass RouteAnnouncer extends React.Component {\n constructor(props) {\n super(props)\n this.announcementRef = React.createRef()\n }\n\n componentDidUpdate(prevProps, nextProps) {\n requestAnimationFrame(() => {\n let pageName = `new page at ${this.props.location.pathname}`\n if (document.title) {\n pageName = document.title\n }\n const pageHeadings = document.querySelectorAll(`#gatsby-focus-wrapper h1`)\n if (pageHeadings && pageHeadings.length) {\n pageName = pageHeadings[0].textContent\n }\n const newAnnouncement = `Navigated to ${pageName}`\n if (this.announcementRef.current) {\n const oldAnnouncement = this.announcementRef.current.innerText\n if (oldAnnouncement !== newAnnouncement) {\n this.announcementRef.current.innerText = newAnnouncement\n }\n }\n })\n }\n\n render() {\n return <div {...RouteAnnouncerProps} ref={this.announcementRef}></div>\n }\n}\n\n// Fire on(Pre)RouteUpdate APIs\nclass RouteUpdates extends React.Component {\n constructor(props) {\n super(props)\n onPreRouteUpdate(props.location, null)\n }\n\n componentDidMount() {\n onRouteUpdate(this.props.location, null)\n }\n\n componentDidUpdate(prevProps, prevState, shouldFireRouteUpdate) {\n if (shouldFireRouteUpdate) {\n onRouteUpdate(this.props.location, prevProps.location)\n }\n }\n\n getSnapshotBeforeUpdate(prevProps) {\n if (this.props.location.pathname !== prevProps.location.pathname) {\n onPreRouteUpdate(this.props.location, prevProps.location)\n return true\n }\n\n return false\n }\n\n render() {\n return (\n <React.Fragment>\n {this.props.children}\n <RouteAnnouncer location={location} />\n </React.Fragment>\n )\n }\n}\n\nRouteUpdates.propTypes = {\n location: PropTypes.object.isRequired,\n}\n\nexport { init, shouldUpdateScroll, RouteUpdates }\n","// Pulled from react-compat\n// https://github.com/developit/preact-compat/blob/7c5de00e7c85e2ffd011bf3af02899b63f699d3a/src/index.js#L349\nfunction shallowDiffers(a, b) {\n for (var i in a) {\n if (!(i in b)) return true;\n }for (var _i in b) {\n if (a[_i] !== b[_i]) return true;\n }return false;\n}\n\nexport default (function (instance, nextProps, nextState) {\n return shallowDiffers(instance.props, nextProps) || shallowDiffers(instance.state, nextState);\n});","import React from \"react\"\nimport loader, { PageResourceStatus } from \"./loader\"\nimport shallowCompare from \"shallow-compare\"\n\nclass EnsureResources extends React.Component {\n constructor(props) {\n super()\n const { location, pageResources } = props\n this.state = {\n location: { ...location },\n pageResources: pageResources || loader.loadPageSync(location.pathname),\n }\n }\n\n static getDerivedStateFromProps({ location }, prevState) {\n if (prevState.location.href !== location.href) {\n const pageResources = loader.loadPageSync(location.pathname)\n return {\n pageResources,\n location: { ...location },\n }\n }\n\n return {\n location: { ...location },\n }\n }\n\n loadResources(rawPath) {\n loader.loadPage(rawPath).then(pageResources => {\n if (pageResources && pageResources.status !== PageResourceStatus.Error) {\n this.setState({\n location: { ...window.location },\n pageResources,\n })\n } else {\n window.history.replaceState({}, ``, location.href)\n window.location = rawPath\n }\n })\n }\n\n shouldComponentUpdate(nextProps, nextState) {\n // Always return false if we're missing resources.\n if (!nextState.pageResources) {\n this.loadResources(nextProps.location.pathname)\n return false\n }\n\n // Check if the component or json have changed.\n if (this.state.pageResources !== nextState.pageResources) {\n return true\n }\n if (\n this.state.pageResources.component !== nextState.pageResources.component\n ) {\n return true\n }\n\n if (this.state.pageResources.json !== nextState.pageResources.json) {\n return true\n }\n // Check if location has changed on a page using internal routing\n // via matchPath configuration.\n if (\n this.state.location.key !== nextState.location.key &&\n nextState.pageResources.page &&\n (nextState.pageResources.page.matchPath ||\n nextState.pageResources.page.path)\n ) {\n return true\n }\n return shallowCompare(this, nextProps, nextState)\n }\n\n render() {\n if (process.env.NODE_ENV !== `production` && !this.state.pageResources) {\n throw new Error(\n `EnsureResources was not able to find resources for path: \"${this.props.location.pathname}\"\nThis typically means that an issue occurred building components for that path.\nRun \\`gatsby clean\\` to remove any cached elements.`\n )\n }\n\n return this.props.children(this.state)\n }\n}\n\nexport default EnsureResources\n","import { apiRunner, apiRunnerAsync } from \"./api-runner-browser\"\nimport React from \"react\"\nimport ReactDOM from \"react-dom\"\nimport { Router, navigate, Location, BaseContext } from \"@reach/router\"\nimport { ScrollContext } from \"gatsby-react-router-scroll\"\nimport domReady from \"@mikaelkristiansson/domready\"\nimport { StaticQueryContext } from \"gatsby\"\nimport {\n shouldUpdateScroll,\n init as navigationInit,\n RouteUpdates,\n} from \"./navigation\"\nimport emitter from \"./emitter\"\nimport PageRenderer from \"./page-renderer\"\nimport asyncRequires from \"$virtual/async-requires\"\nimport {\n setLoader,\n ProdLoader,\n publicLoader,\n PageResourceStatus,\n} from \"./loader\"\nimport EnsureResources from \"./ensure-resources\"\nimport stripPrefix from \"./strip-prefix\"\n\n// Generated during bootstrap\nimport matchPaths from \"$virtual/match-paths.json\"\n\nconst loader = new ProdLoader(asyncRequires, matchPaths)\nsetLoader(loader)\nloader.setApiRunner(apiRunner)\n\nwindow.asyncRequires = asyncRequires\nwindow.___emitter = emitter\nwindow.___loader = publicLoader\n\nnavigationInit()\n\napiRunnerAsync(`onClientEntry`).then(() => {\n // Let plugins register a service worker. The plugin just needs\n // to return true.\n if (apiRunner(`registerServiceWorker`).length > 0) {\n require(`./register-service-worker`)\n }\n\n // In gatsby v2 if Router is used in page using matchPaths\n // paths need to contain full path.\n // For example:\n // - page have `/app/*` matchPath\n // - inside template user needs to use `/app/xyz` as path\n // Resetting `basepath`/`baseuri` keeps current behaviour\n // to not introduce breaking change.\n // Remove this in v3\n const RouteHandler = props => (\n <BaseContext.Provider\n value={{\n baseuri: `/`,\n basepath: `/`,\n }}\n >\n <PageRenderer {...props} />\n </BaseContext.Provider>\n )\n\n const DataContext = React.createContext({})\n\n class GatsbyRoot extends React.Component {\n render() {\n const { children } = this.props\n return (\n <Location>\n {({ location }) => (\n <EnsureResources location={location}>\n {({ pageResources, location }) => (\n <StaticQueryContext.Provider\n value={pageResources.staticQueryResults}\n >\n <DataContext.Provider value={{ pageResources, location }}>\n {children}\n </DataContext.Provider>\n </StaticQueryContext.Provider>\n )}\n </EnsureResources>\n )}\n </Location>\n )\n }\n }\n\n class LocationHandler extends React.Component {\n render() {\n return (\n <DataContext.Consumer>\n {({ pageResources, location }) => (\n <RouteUpdates location={location}>\n <ScrollContext\n location={location}\n shouldUpdateScroll={shouldUpdateScroll}\n >\n <Router\n basepath={__BASE_PATH__}\n location={location}\n id=\"gatsby-focus-wrapper\"\n >\n <RouteHandler\n path={\n pageResources.page.path === `/404.html`\n ? stripPrefix(location.pathname, __BASE_PATH__)\n : encodeURI(\n pageResources.page.matchPath ||\n pageResources.page.path\n )\n }\n {...this.props}\n location={location}\n pageResources={pageResources}\n {...pageResources.json}\n />\n </Router>\n </ScrollContext>\n </RouteUpdates>\n )}\n </DataContext.Consumer>\n )\n }\n }\n\n const { pagePath, location: browserLoc } = window\n\n // Explicitly call navigate if the canonical path (window.pagePath)\n // is different to the browser path (window.location.pathname). But\n // only if NONE of the following conditions hold:\n //\n // - The url matches a client side route (page.matchPath)\n // - it's a 404 page\n // - it's the offline plugin shell (/offline-plugin-app-shell-fallback/)\n if (\n pagePath &&\n __BASE_PATH__ + pagePath !== browserLoc.pathname &&\n !(\n loader.findMatchPath(stripPrefix(browserLoc.pathname, __BASE_PATH__)) ||\n pagePath === `/404.html` ||\n pagePath.match(/^\\/404\\/?$/) ||\n pagePath.match(/^\\/offline-plugin-app-shell-fallback\\/?$/)\n )\n ) {\n navigate(__BASE_PATH__ + pagePath + browserLoc.search + browserLoc.hash, {\n replace: true,\n })\n }\n\n publicLoader.loadPage(browserLoc.pathname).then(page => {\n if (!page || page.status === PageResourceStatus.Error) {\n throw new Error(\n `page resources for ${browserLoc.pathname} not found. Not rendering React`\n )\n }\n\n window.___webpackCompilationHash = page.page.webpackCompilationHash\n\n const SiteRoot = apiRunner(\n `wrapRootElement`,\n { element: <LocationHandler /> },\n <LocationHandler />,\n ({ result }) => {\n return { element: result }\n }\n ).pop()\n\n const App = () => <GatsbyRoot>{SiteRoot}</GatsbyRoot>\n\n const renderer = apiRunner(\n `replaceHydrateFunction`,\n undefined,\n ReactDOM.hydrate\n )[0]\n\n domReady(() => {\n renderer(\n <App />,\n typeof window !== `undefined`\n ? document.getElementById(`___gatsby`)\n : void 0,\n () => {\n apiRunner(`onInitialClientRender`)\n }\n )\n })\n })\n})\n","function _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n subClass.__proto__ = superClass;\n}\n\nmodule.exports = _inheritsLoose;","// prefer default export if available\nconst preferDefault = m => m && m.default || m\n\nexports.components = {\n \"component---src-pages-quickstarts-index-jsx\": () => import(\"./../../src/pages/quickstarts/index.jsx\" /* webpackChunkName: \"component---src-pages-quickstarts-index-jsx\" */),\n \"component---src-templates-doc-jsx\": () => import(\"./../../src/templates/doc.jsx\" /* webpackChunkName: \"component---src-templates-doc-jsx\" */),\n \"component---src-templates-main-jsx\": () => import(\"./../../src/templates/main.jsx\" /* webpackChunkName: \"component---src-templates-main-jsx\" */)\n}\n\n","import React from \"react\"\nimport PropTypes from \"prop-types\"\nimport Link, {\n withPrefix,\n withAssetPrefix,\n navigate,\n push,\n replace,\n navigateTo,\n parsePath,\n} from \"gatsby-link\"\nimport { useScrollRestoration } from \"gatsby-react-router-scroll\"\nimport PageRenderer from \"./public-page-renderer\"\nimport loader from \"./loader\"\n\nconst prefetchPathname = loader.enqueue\n\nconst StaticQueryContext = React.createContext({})\n\nfunction StaticQueryDataRenderer({ staticQueryData, data, query, render }) {\n const finalData = data\n ? data.data\n : staticQueryData[query] && staticQueryData[query].data\n\n return (\n <React.Fragment>\n {finalData && render(finalData)}\n {!finalData && <div>Loading (StaticQuery)</div>}\n </React.Fragment>\n )\n}\n\nconst StaticQuery = props => {\n const { data, query, render, children } = props\n\n return (\n <StaticQueryContext.Consumer>\n {staticQueryData => (\n <StaticQueryDataRenderer\n data={data}\n query={query}\n render={render || children}\n staticQueryData={staticQueryData}\n />\n )}\n </StaticQueryContext.Consumer>\n )\n}\n\nconst useStaticQuery = query => {\n if (\n typeof React.useContext !== `function` &&\n process.env.NODE_ENV === `development`\n ) {\n throw new Error(\n `You're likely using a version of React that doesn't support Hooks\\n` +\n `Please update React and ReactDOM to 16.8.0 or later to use the useStaticQuery hook.`\n )\n }\n const context = React.useContext(StaticQueryContext)\n\n // query is a stringified number like `3303882` when wrapped with graphql, If a user forgets\n // to wrap the query in a grqphql, then casting it to a Number results in `NaN` allowing us to\n // catch the misuse of the API and give proper direction\n if (isNaN(Number(query))) {\n throw new Error(`useStaticQuery was called with a string but expects to be called using \\`graphql\\`. Try this:\n\nimport { useStaticQuery, graphql } from 'gatsby';\n\nuseStaticQuery(graphql\\`${query}\\`);\n`)\n }\n\n if (context?.[query]?.data) {\n return context[query].data\n } else {\n throw new Error(\n `The result of this StaticQuery could not be fetched.\\n\\n` +\n `This is likely a bug in Gatsby and if refreshing the page does not fix it, ` +\n `please open an issue in https://github.com/gatsbyjs/gatsby/issues`\n )\n }\n}\n\nStaticQuery.propTypes = {\n data: PropTypes.object,\n query: PropTypes.string.isRequired,\n render: PropTypes.func,\n children: PropTypes.func,\n}\n\nfunction graphql() {\n throw new Error(\n `It appears like Gatsby is misconfigured. Gatsby related \\`graphql\\` calls ` +\n `are supposed to only be evaluated at compile time, and then compiled away. ` +\n `Unfortunately, something went wrong and the query was left in the compiled code.\\n\\n` +\n `Unless your site has a complex or custom babel/Gatsby configuration this is likely a bug in Gatsby.`\n )\n}\n\nexport {\n Link,\n withAssetPrefix,\n withPrefix,\n graphql,\n parsePath,\n navigate,\n push, // TODO replace for v3\n replace, // TODO remove replace for v3\n navigateTo, // TODO: remove navigateTo for v3\n useScrollRestoration,\n StaticQueryContext,\n StaticQuery,\n PageRenderer,\n useStaticQuery,\n prefetchPathname,\n}\n","var _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; };\n\nfunction _objectWithoutProperties(obj, keys) { var target = {}; for (var i in obj) { if (keys.indexOf(i) >= 0) continue; if (!Object.prototype.hasOwnProperty.call(obj, i)) continue; target[i] = obj[i]; } return target; }\n\nfunction _classCallCheck(instance, Constructor) { if (!(instance instanceof Constructor)) { throw new TypeError(\"Cannot call a class as a function\"); } }\n\nfunction _possibleConstructorReturn(self, call) { if (!self) { throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\"); } return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self; }\n\nfunction _inherits(subClass, superClass) { if (typeof superClass !== \"function\" && superClass !== null) { throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass); } subClass.prototype = Object.create(superClass && superClass.prototype, { constructor: { value: subClass, enumerable: false, writable: true, configurable: true } }); if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass; }\n\n/* eslint-disable jsx-a11y/anchor-has-content */\nimport React, { useContext } from \"react\";\nimport PropTypes from \"prop-types\";\nimport invariant from \"invariant\";\nimport createContext from \"create-react-context\";\nimport { polyfill } from \"react-lifecycles-compat\";\nimport { startsWith, pick, resolve, match, insertParams, validateRedirect, shallowCompare } from \"./lib/utils\";\nimport { globalHistory, navigate, createHistory, createMemorySource } from \"./lib/history\";\n\n////////////////////////////////////////////////////////////////////////////////\n\nvar createNamedContext = function createNamedContext(name, defaultValue) {\n var Ctx = createContext(defaultValue);\n Ctx.displayName = name;\n return Ctx;\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// Location Context/Provider\nvar LocationContext = createNamedContext(\"Location\");\n\n// sets up a listener if there isn't one already so apps don't need to be\n// wrapped in some top level provider\nvar Location = function Location(_ref) {\n var children = _ref.children;\n return React.createElement(\n LocationContext.Consumer,\n null,\n function (context) {\n return context ? children(context) : React.createElement(\n LocationProvider,\n null,\n children\n );\n }\n );\n};\n\nvar LocationProvider = function (_React$Component) {\n _inherits(LocationProvider, _React$Component);\n\n function LocationProvider() {\n var _temp, _this, _ret;\n\n _classCallCheck(this, LocationProvider);\n\n for (var _len = arguments.length, args = Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n\n return _ret = (_temp = (_this = _possibleConstructorReturn(this, _React$Component.call.apply(_React$Component, [this].concat(args))), _this), _this.state = {\n context: _this.getContext(),\n refs: { unlisten: null }\n }, _temp), _possibleConstructorReturn(_this, _ret);\n }\n\n LocationProvider.prototype.getContext = function getContext() {\n var _props$history = this.props.history,\n navigate = _props$history.navigate,\n location = _props$history.location;\n\n return { navigate: navigate, location: location };\n };\n\n LocationProvider.prototype.componentDidCatch = function componentDidCatch(error, info) {\n if (isRedirect(error)) {\n var _navigate = this.props.history.navigate;\n\n _navigate(error.uri, { replace: true });\n } else {\n throw error;\n }\n };\n\n LocationProvider.prototype.componentDidUpdate = function componentDidUpdate(prevProps, prevState) {\n if (prevState.context.location !== this.state.context.location) {\n this.props.history._onTransitionComplete();\n }\n };\n\n LocationProvider.prototype.componentDidMount = function componentDidMount() {\n var _this2 = this;\n\n var refs = this.state.refs,\n history = this.props.history;\n\n history._onTransitionComplete();\n refs.unlisten = history.listen(function () {\n Promise.resolve().then(function () {\n // TODO: replace rAF with react deferred update API when it's ready https://github.com/facebook/react/issues/13306\n requestAnimationFrame(function () {\n if (!_this2.unmounted) {\n _this2.setState(function () {\n return { context: _this2.getContext() };\n });\n }\n });\n });\n });\n };\n\n LocationProvider.prototype.componentWillUnmount = function componentWillUnmount() {\n var refs = this.state.refs;\n\n this.unmounted = true;\n refs.unlisten();\n };\n\n LocationProvider.prototype.render = function render() {\n var context = this.state.context,\n children = this.props.children;\n\n return React.createElement(\n LocationContext.Provider,\n { value: context },\n typeof children === \"function\" ? children(context) : children || null\n );\n };\n\n return LocationProvider;\n}(React.Component);\n\n////////////////////////////////////////////////////////////////////////////////\n\n\nLocationProvider.defaultProps = {\n history: globalHistory\n};\nprocess.env.NODE_ENV !== \"production\" ? LocationProvider.propTypes = {\n history: PropTypes.object.isRequired\n} : void 0;\nvar ServerLocation = function ServerLocation(_ref2) {\n var url = _ref2.url,\n children = _ref2.children;\n\n var searchIndex = url.indexOf(\"?\");\n var searchExists = searchIndex > -1;\n var pathname = void 0;\n var search = \"\";\n var hash = \"\";\n\n if (searchExists) {\n pathname = url.substring(0, searchIndex);\n search = url.substring(searchIndex);\n } else {\n pathname = url;\n }\n\n return React.createElement(\n LocationContext.Provider,\n {\n value: {\n location: {\n pathname: pathname,\n search: search,\n hash: hash\n },\n navigate: function navigate() {\n throw new Error(\"You can't call navigate on the server.\");\n }\n }\n },\n children\n );\n};\n////////////////////////////////////////////////////////////////////////////////\n// Sets baseuri and basepath for nested routers and links\nvar BaseContext = createNamedContext(\"Base\", { baseuri: \"/\", basepath: \"/\" });\n\n////////////////////////////////////////////////////////////////////////////////\n// The main event, welcome to the show everybody.\nvar Router = function Router(props) {\n return React.createElement(\n BaseContext.Consumer,\n null,\n function (baseContext) {\n return React.createElement(\n Location,\n null,\n function (locationContext) {\n return React.createElement(RouterImpl, _extends({}, baseContext, locationContext, props));\n }\n );\n }\n );\n};\n\nvar RouterImpl = function (_React$PureComponent) {\n _inherits(RouterImpl, _React$PureComponent);\n\n function RouterImpl() {\n _classCallCheck(this, RouterImpl);\n\n return _possibleConstructorReturn(this, _React$PureComponent.apply(this, arguments));\n }\n\n RouterImpl.prototype.render = function render() {\n var _props = this.props,\n location = _props.location,\n _navigate2 = _props.navigate,\n basepath = _props.basepath,\n primary = _props.primary,\n children = _props.children,\n baseuri = _props.baseuri,\n _props$component = _props.component,\n component = _props$component === undefined ? \"div\" : _props$component,\n domProps = _objectWithoutProperties(_props, [\"location\", \"navigate\", \"basepath\", \"primary\", \"children\", \"baseuri\", \"component\"]);\n\n var routes = React.Children.toArray(children).reduce(function (array, child) {\n var routes = createRoute(basepath)(child);\n return array.concat(routes);\n }, []);\n var pathname = location.pathname;\n\n\n var match = pick(routes, pathname);\n\n if (match) {\n var params = match.params,\n uri = match.uri,\n route = match.route,\n element = match.route.value;\n\n // remove the /* from the end for child routes relative paths\n\n basepath = route.default ? basepath : route.path.replace(/\\*$/, \"\");\n\n var props = _extends({}, params, {\n uri: uri,\n location: location,\n navigate: function navigate(to, options) {\n return _navigate2(resolve(to, uri), options);\n }\n });\n\n var clone = React.cloneElement(element, props, element.props.children ? React.createElement(\n Router,\n { location: location, primary: primary },\n element.props.children\n ) : undefined);\n\n // using 'div' for < 16.3 support\n var FocusWrapper = primary ? FocusHandler : component;\n // don't pass any props to 'div'\n var wrapperProps = primary ? _extends({ uri: uri, location: location, component: component }, domProps) : domProps;\n\n return React.createElement(\n BaseContext.Provider,\n { value: { baseuri: uri, basepath: basepath } },\n React.createElement(\n FocusWrapper,\n wrapperProps,\n clone\n )\n );\n } else {\n // Not sure if we want this, would require index routes at every level\n // warning(\n // false,\n // `<Router basepath=\"${basepath}\">\\n\\nNothing matched:\\n\\t${\n // location.pathname\n // }\\n\\nPaths checked: \\n\\t${routes\n // .map(route => route.path)\n // .join(\n // \"\\n\\t\"\n // )}\\n\\nTo get rid of this warning, add a default NotFound component as child of Router:\n // \\n\\tlet NotFound = () => <div>Not Found!</div>\n // \\n\\t<Router>\\n\\t <NotFound default/>\\n\\t {/* ... */}\\n\\t</Router>`\n // );\n return null;\n }\n };\n\n return RouterImpl;\n}(React.PureComponent);\n\nRouterImpl.defaultProps = {\n primary: true\n};\n\n\nvar FocusContext = createNamedContext(\"Focus\");\n\nvar FocusHandler = function FocusHandler(_ref3) {\n var uri = _ref3.uri,\n location = _ref3.location,\n component = _ref3.component,\n domProps = _objectWithoutProperties(_ref3, [\"uri\", \"location\", \"component\"]);\n\n return React.createElement(\n FocusContext.Consumer,\n null,\n function (requestFocus) {\n return React.createElement(FocusHandlerImpl, _extends({}, domProps, {\n component: component,\n requestFocus: requestFocus,\n uri: uri,\n location: location\n }));\n }\n );\n};\n\n// don't focus on initial render\nvar initialRender = true;\nvar focusHandlerCount = 0;\n\nvar FocusHandlerImpl = function (_React$Component2) {\n _inherits(FocusHandlerImpl, _React$Component2);\n\n function FocusHandlerImpl() {\n var _temp2, _this4, _ret2;\n\n _classCallCheck(this, FocusHandlerImpl);\n\n for (var _len2 = arguments.length, args = Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n\n return _ret2 = (_temp2 = (_this4 = _possibleConstructorReturn(this, _React$Component2.call.apply(_React$Component2, [this].concat(args))), _this4), _this4.state = {}, _this4.requestFocus = function (node) {\n if (!_this4.state.shouldFocus && node) {\n node.focus();\n }\n }, _temp2), _possibleConstructorReturn(_this4, _ret2);\n }\n\n FocusHandlerImpl.getDerivedStateFromProps = function getDerivedStateFromProps(nextProps, prevState) {\n var initial = prevState.uri == null;\n if (initial) {\n return _extends({\n shouldFocus: true\n }, nextProps);\n } else {\n var myURIChanged = nextProps.uri !== prevState.uri;\n var navigatedUpToMe = prevState.location.pathname !== nextProps.location.pathname && nextProps.location.pathname === nextProps.uri;\n return _extends({\n shouldFocus: myURIChanged || navigatedUpToMe\n }, nextProps);\n }\n };\n\n FocusHandlerImpl.prototype.componentDidMount = function componentDidMount() {\n focusHandlerCount++;\n this.focus();\n };\n\n FocusHandlerImpl.prototype.componentWillUnmount = function componentWillUnmount() {\n focusHandlerCount--;\n if (focusHandlerCount === 0) {\n initialRender = true;\n }\n };\n\n FocusHandlerImpl.prototype.componentDidUpdate = function componentDidUpdate(prevProps, prevState) {\n if (prevProps.location !== this.props.location && this.state.shouldFocus) {\n this.focus();\n }\n };\n\n FocusHandlerImpl.prototype.focus = function focus() {\n if (process.env.NODE_ENV === \"test\") {\n // getting cannot read property focus of null in the tests\n // and that bit of global `initialRender` state causes problems\n // should probably figure it out!\n return;\n }\n\n var requestFocus = this.props.requestFocus;\n\n\n if (requestFocus) {\n requestFocus(this.node);\n } else {\n if (initialRender) {\n initialRender = false;\n } else if (this.node) {\n // React polyfills [autofocus] and it fires earlier than cDM,\n // so we were stealing focus away, this line prevents that.\n if (!this.node.contains(document.activeElement)) {\n this.node.focus();\n }\n }\n }\n };\n\n FocusHandlerImpl.prototype.render = function render() {\n var _this5 = this;\n\n var _props2 = this.props,\n children = _props2.children,\n style = _props2.style,\n requestFocus = _props2.requestFocus,\n _props2$component = _props2.component,\n Comp = _props2$component === undefined ? \"div\" : _props2$component,\n uri = _props2.uri,\n location = _props2.location,\n domProps = _objectWithoutProperties(_props2, [\"children\", \"style\", \"requestFocus\", \"component\", \"uri\", \"location\"]);\n\n return React.createElement(\n Comp,\n _extends({\n style: _extends({ outline: \"none\" }, style),\n tabIndex: \"-1\",\n ref: function ref(n) {\n return _this5.node = n;\n }\n }, domProps),\n React.createElement(\n FocusContext.Provider,\n { value: this.requestFocus },\n this.props.children\n )\n );\n };\n\n return FocusHandlerImpl;\n}(React.Component);\n\npolyfill(FocusHandlerImpl);\n\nvar k = function k() {};\n\n////////////////////////////////////////////////////////////////////////////////\nvar forwardRef = React.forwardRef;\n\nif (typeof forwardRef === \"undefined\") {\n forwardRef = function forwardRef(C) {\n return C;\n };\n}\n\nvar Link = forwardRef(function (_ref4, ref) {\n var innerRef = _ref4.innerRef,\n props = _objectWithoutProperties(_ref4, [\"innerRef\"]);\n\n return React.createElement(\n BaseContext.Consumer,\n null,\n function (_ref5) {\n var basepath = _ref5.basepath,\n baseuri = _ref5.baseuri;\n return React.createElement(\n Location,\n null,\n function (_ref6) {\n var location = _ref6.location,\n navigate = _ref6.navigate;\n\n var to = props.to,\n state = props.state,\n replace = props.replace,\n _props$getProps = props.getProps,\n getProps = _props$getProps === undefined ? k : _props$getProps,\n anchorProps = _objectWithoutProperties(props, [\"to\", \"state\", \"replace\", \"getProps\"]);\n\n var href = resolve(to, baseuri);\n var encodedHref = encodeURI(href);\n var isCurrent = location.pathname === encodedHref;\n var isPartiallyCurrent = startsWith(location.pathname, encodedHref);\n\n return React.createElement(\"a\", _extends({\n ref: ref || innerRef,\n \"aria-current\": isCurrent ? \"page\" : undefined\n }, anchorProps, getProps({ isCurrent: isCurrent, isPartiallyCurrent: isPartiallyCurrent, href: href, location: location }), {\n href: href,\n onClick: function onClick(event) {\n if (anchorProps.onClick) anchorProps.onClick(event);\n if (shouldNavigate(event)) {\n event.preventDefault();\n var shouldReplace = replace;\n if (typeof replace !== \"boolean\" && isCurrent) {\n var _location$state = _extends({}, location.state),\n key = _location$state.key,\n restState = _objectWithoutProperties(_location$state, [\"key\"]);\n\n shouldReplace = shallowCompare(_extends({}, state), restState);\n }\n navigate(href, {\n state: state,\n replace: shouldReplace\n });\n }\n }\n }));\n }\n );\n }\n );\n});\n\nLink.displayName = \"Link\";\n\nprocess.env.NODE_ENV !== \"production\" ? Link.propTypes = {\n to: PropTypes.string.isRequired\n} : void 0;\n\n////////////////////////////////////////////////////////////////////////////////\nfunction RedirectRequest(uri) {\n this.uri = uri;\n}\n\nvar isRedirect = function isRedirect(o) {\n return o instanceof RedirectRequest;\n};\n\nvar redirectTo = function redirectTo(to) {\n throw new RedirectRequest(to);\n};\n\nvar RedirectImpl = function (_React$Component3) {\n _inherits(RedirectImpl, _React$Component3);\n\n function RedirectImpl() {\n _classCallCheck(this, RedirectImpl);\n\n return _possibleConstructorReturn(this, _React$Component3.apply(this, arguments));\n }\n\n // Support React < 16 with this hook\n RedirectImpl.prototype.componentDidMount = function componentDidMount() {\n var _props3 = this.props,\n navigate = _props3.navigate,\n to = _props3.to,\n from = _props3.from,\n _props3$replace = _props3.replace,\n replace = _props3$replace === undefined ? true : _props3$replace,\n state = _props3.state,\n noThrow = _props3.noThrow,\n baseuri = _props3.baseuri,\n props = _objectWithoutProperties(_props3, [\"navigate\", \"to\", \"from\", \"replace\", \"state\", \"noThrow\", \"baseuri\"]);\n\n Promise.resolve().then(function () {\n var resolvedTo = resolve(to, baseuri);\n navigate(insertParams(resolvedTo, props), { replace: replace, state: state });\n });\n };\n\n RedirectImpl.prototype.render = function render() {\n var _props4 = this.props,\n navigate = _props4.navigate,\n to = _props4.to,\n from = _props4.from,\n replace = _props4.replace,\n state = _props4.state,\n noThrow = _props4.noThrow,\n baseuri = _props4.baseuri,\n props = _objectWithoutProperties(_props4, [\"navigate\", \"to\", \"from\", \"replace\", \"state\", \"noThrow\", \"baseuri\"]);\n\n var resolvedTo = resolve(to, baseuri);\n if (!noThrow) redirectTo(insertParams(resolvedTo, props));\n return null;\n };\n\n return RedirectImpl;\n}(React.Component);\n\nvar Redirect = function Redirect(props) {\n return React.createElement(\n BaseContext.Consumer,\n null,\n function (_ref7) {\n var baseuri = _ref7.baseuri;\n return React.createElement(\n Location,\n null,\n function (locationContext) {\n return React.createElement(RedirectImpl, _extends({}, locationContext, { baseuri: baseuri }, props));\n }\n );\n }\n );\n};\n\nprocess.env.NODE_ENV !== \"production\" ? Redirect.propTypes = {\n from: PropTypes.string,\n to: PropTypes.string.isRequired\n} : void 0;\n\n////////////////////////////////////////////////////////////////////////////////\nvar Match = function Match(_ref8) {\n var path = _ref8.path,\n children = _ref8.children;\n return React.createElement(\n BaseContext.Consumer,\n null,\n function (_ref9) {\n var baseuri = _ref9.baseuri;\n return React.createElement(\n Location,\n null,\n function (_ref10) {\n var navigate = _ref10.navigate,\n location = _ref10.location;\n\n var resolvedPath = resolve(path, baseuri);\n var result = match(resolvedPath, location.pathname);\n return children({\n navigate: navigate,\n location: location,\n match: result ? _extends({}, result.params, {\n uri: result.uri,\n path: path\n }) : null\n });\n }\n );\n }\n );\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// Hooks\n\nvar useLocation = function useLocation() {\n var context = useContext(LocationContext);\n\n if (!context) {\n throw new Error(\"useLocation hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router\");\n }\n\n return context.location;\n};\n\nvar useNavigate = function useNavigate() {\n var context = useContext(LocationContext);\n\n if (!context) {\n throw new Error(\"useNavigate hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router\");\n }\n\n return context.navigate;\n};\n\nvar useParams = function useParams() {\n var context = useContext(BaseContext);\n\n if (!context) {\n throw new Error(\"useParams hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router\");\n }\n\n var location = useLocation();\n\n var results = match(context.basepath, location.pathname);\n\n return results ? results.params : null;\n};\n\nvar useMatch = function useMatch(path) {\n if (!path) {\n throw new Error(\"useMatch(path: string) requires an argument of a string to match against\");\n }\n var context = useContext(BaseContext);\n\n if (!context) {\n throw new Error(\"useMatch hook was used but a LocationContext.Provider was not found in the parent tree. Make sure this is used in a component that is a child of Router\");\n }\n\n var location = useLocation();\n\n var resolvedPath = resolve(path, context.baseuri);\n var result = match(resolvedPath, location.pathname);\n return result ? _extends({}, result.params, {\n uri: result.uri,\n path: path\n }) : null;\n};\n\n////////////////////////////////////////////////////////////////////////////////\n// Junk\nvar stripSlashes = function stripSlashes(str) {\n return str.replace(/(^\\/+|\\/+$)/g, \"\");\n};\n\nvar createRoute = function createRoute(basepath) {\n return function (element) {\n if (!element) {\n return null;\n }\n\n if (element.type === React.Fragment && element.props.children) {\n return React.Children.map(element.props.children, createRoute(basepath));\n }\n !(element.props.path || element.props.default || element.type === Redirect) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"<Router>: Children of <Router> must have a `path` or `default` prop, or be a `<Redirect>`. None found on element type `\" + element.type + \"`\") : invariant(false) : void 0;\n\n !!(element.type === Redirect && (!element.props.from || !element.props.to)) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"<Redirect from=\\\"\" + element.props.from + \"\\\" to=\\\"\" + element.props.to + \"\\\"/> requires both \\\"from\\\" and \\\"to\\\" props when inside a <Router>.\") : invariant(false) : void 0;\n\n !!(element.type === Redirect && !validateRedirect(element.props.from, element.props.to)) ? process.env.NODE_ENV !== \"production\" ? invariant(false, \"<Redirect from=\\\"\" + element.props.from + \" to=\\\"\" + element.props.to + \"\\\"/> has mismatched dynamic segments, ensure both paths have the exact same dynamic segments.\") : invariant(false) : void 0;\n\n if (element.props.default) {\n return { value: element, default: true };\n }\n\n var elementPath = element.type === Redirect ? element.props.from : element.props.path;\n\n var path = elementPath === \"/\" ? basepath : stripSlashes(basepath) + \"/\" + stripSlashes(elementPath);\n\n return {\n value: element,\n default: element.props.default,\n path: element.props.children ? stripSlashes(path) + \"/*\" : path\n };\n };\n};\n\nvar shouldNavigate = function shouldNavigate(event) {\n return !event.defaultPrevented && event.button === 0 && !(event.metaKey || event.altKey || event.ctrlKey || event.shiftKey);\n};\n\n////////////////////////////////////////////////////////////////////////\nexport { Link, Location, LocationProvider, Match, Redirect, Router, ServerLocation, createHistory, createMemorySource, isRedirect, navigate, redirectTo, globalHistory, match as matchPath, useLocation, useNavigate, useParams, useMatch , BaseContext };","function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n if (typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\") {\n module.exports = _typeof = function _typeof(obj) {\n return typeof obj;\n };\n } else {\n module.exports = _typeof = function _typeof(obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n };\n }\n\n return _typeof(obj);\n}\n\nmodule.exports = _typeof;","/**\n * Remove a prefix from a string. Return the input string if the given prefix\n * isn't found.\n */\n\nexport default function stripPrefix(str, prefix = ``) {\n if (!prefix) {\n return str\n }\n\n if (str === prefix) {\n return `/`\n }\n\n if (str.startsWith(`${prefix}/`)) {\n return str.slice(prefix.length)\n }\n\n return str\n}\n","\"use strict\";\n\nexports.__esModule = true;\nexports.parsePath = parsePath;\n\nfunction parsePath(path) {\n var pathname = path || \"/\";\n var search = \"\";\n var hash = \"\";\n var hashIndex = pathname.indexOf(\"#\");\n\n if (hashIndex !== -1) {\n hash = pathname.substr(hashIndex);\n pathname = pathname.substr(0, hashIndex);\n }\n\n var searchIndex = pathname.indexOf(\"?\");\n\n if (searchIndex !== -1) {\n search = pathname.substr(searchIndex);\n pathname = pathname.substr(0, searchIndex);\n }\n\n return {\n pathname: pathname,\n search: search === \"?\" ? \"\" : search,\n hash: hash === \"#\" ? \"\" : hash\n };\n}","export default function _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n subClass.__proto__ = superClass;\n}","export default function _arrayLikeToArray(arr, len) {\n if (len == null || len > arr.length) len = arr.length;\n\n for (var i = 0, arr2 = new Array(len); i < len; i++) {\n arr2[i] = arr[i];\n }\n\n return arr2;\n}","import arrayWithoutHoles from \"./arrayWithoutHoles\";\nimport iterableToArray from \"./iterableToArray\";\nimport unsupportedIterableToArray from \"./unsupportedIterableToArray\";\nimport nonIterableSpread from \"./nonIterableSpread\";\nexport default function _toConsumableArray(arr) {\n return arrayWithoutHoles(arr) || iterableToArray(arr) || unsupportedIterableToArray(arr) || nonIterableSpread();\n}","import arrayLikeToArray from \"./arrayLikeToArray\";\nexport default function _arrayWithoutHoles(arr) {\n if (Array.isArray(arr)) return arrayLikeToArray(arr);\n}","export default function _iterableToArray(iter) {\n if (typeof Symbol !== \"undefined\" && Symbol.iterator in Object(iter)) return Array.from(iter);\n}","import arrayLikeToArray from \"./arrayLikeToArray\";\nexport default function _unsupportedIterableToArray(o, minLen) {\n if (!o) return;\n if (typeof o === \"string\") return arrayLikeToArray(o, minLen);\n var n = Object.prototype.toString.call(o).slice(8, -1);\n if (n === \"Object\" && o.constructor) n = o.constructor.name;\n if (n === \"Map\" || n === \"Set\") return Array.from(o);\n if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return arrayLikeToArray(o, minLen);\n}","export default function _nonIterableSpread() {\n throw new TypeError(\"Invalid attempt to spread non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\");\n}","const support = function (feature) {\n if (typeof document === `undefined`) {\n return false\n }\n const fakeLink = document.createElement(`link`)\n try {\n if (fakeLink.relList && typeof fakeLink.relList.supports === `function`) {\n return fakeLink.relList.supports(feature)\n }\n } catch (err) {\n return false\n }\n return false\n}\n\nconst linkPrefetchStrategy = function (url, options) {\n return new Promise((resolve, reject) => {\n if (typeof document === `undefined`) {\n reject()\n return\n }\n\n const link = document.createElement(`link`)\n link.setAttribute(`rel`, `prefetch`)\n link.setAttribute(`href`, url)\n\n Object.keys(options).forEach(key => {\n link.setAttribute(key, options[key])\n })\n\n link.onload = resolve\n link.onerror = reject\n\n const parentElement =\n document.getElementsByTagName(`head`)[0] ||\n document.getElementsByName(`script`)[0].parentNode\n parentElement.appendChild(link)\n })\n}\n\nconst xhrPrefetchStrategy = function (url) {\n return new Promise((resolve, reject) => {\n const req = new XMLHttpRequest()\n req.open(`GET`, url, true)\n\n req.onload = () => {\n if (req.status === 200) {\n resolve()\n } else {\n reject()\n }\n }\n\n req.send(null)\n })\n}\n\nconst supportedPrefetchStrategy = support(`prefetch`)\n ? linkPrefetchStrategy\n : xhrPrefetchStrategy\n\nconst preFetched = {}\n\nconst prefetch = function (url, options) {\n return new Promise(resolve => {\n if (preFetched[url]) {\n resolve()\n return\n }\n\n supportedPrefetchStrategy(url, options)\n .then(() => {\n resolve()\n preFetched[url] = true\n })\n .catch(() => {}) // 404s are logged to the console anyway\n })\n}\n\nexport default prefetch\n","export default path => {\n if (path === undefined) {\n return path\n }\n if (path === `/`) {\n return `/`\n }\n if (path.charAt(path.length - 1) === `/`) {\n return path.slice(0, -1)\n }\n return path\n}\n","import { match } from \"@reach/router/lib/utils\"\nimport stripPrefix from \"./strip-prefix\"\nimport normalizePagePath from \"./normalize-page-path\"\n\nconst pathCache = new Map()\nlet matchPaths = []\n\nconst trimPathname = rawPathname => {\n const pathname = decodeURIComponent(rawPathname)\n // Remove the pathPrefix from the pathname.\n const trimmedPathname = stripPrefix(pathname, __BASE_PATH__)\n // Remove any hashfragment\n .split(`#`)[0]\n // Remove search query\n .split(`?`)[0]\n\n return trimmedPathname\n}\n\nfunction absolutify(path) {\n // If it's already absolute, return as-is\n if (\n path.startsWith(`/`) ||\n path.startsWith(`https://`) ||\n path.startsWith(`http://`)\n ) {\n return path\n }\n // Calculate path relative to current location, adding a trailing slash to\n // match behavior of @reach/router\n return new URL(\n path,\n window.location.href + (window.location.href.endsWith(`/`) ? `` : `/`)\n ).pathname\n}\n\n/**\n * Set list of matchPaths\n *\n * @param {Array<{path: string, matchPath: string}>} value collection of matchPaths\n */\nexport const setMatchPaths = value => {\n matchPaths = value\n}\n\n/**\n * Return a matchpath url\n * if `match-paths.json` contains `{ \"/foo*\": \"/page1\", ...}`, then\n * `/foo?bar=far` => `/page1`\n *\n * @param {string} rawPathname A raw pathname\n * @return {string|null}\n */\nexport const findMatchPath = rawPathname => {\n const trimmedPathname = cleanPath(rawPathname)\n\n for (const { matchPath, path } of matchPaths) {\n if (match(matchPath, trimmedPathname)) {\n return normalizePagePath(path)\n }\n }\n\n return null\n}\n\n// Given a raw URL path, returns the cleaned version of it (trim off\n// `#` and query params), or if it matches an entry in\n// `match-paths.json`, its matched path is returned\n//\n// E.g. `/foo?bar=far` => `/foo`\n//\n// Or if `match-paths.json` contains `{ \"/foo*\": \"/page1\", ...}`, then\n// `/foo?bar=far` => `/page1`\nexport const findPath = rawPathname => {\n const trimmedPathname = trimPathname(absolutify(rawPathname))\n if (pathCache.has(trimmedPathname)) {\n return pathCache.get(trimmedPathname)\n }\n\n let foundPath = findMatchPath(trimmedPathname)\n\n if (!foundPath) {\n foundPath = cleanPath(rawPathname)\n }\n\n pathCache.set(trimmedPathname, foundPath)\n\n return foundPath\n}\n\n/**\n * Clean a url and converts /index.html => /\n * E.g. `/foo?bar=far` => `/foo`\n *\n * @param {string} rawPathname A raw pathname\n * @return {string}\n */\nexport const cleanPath = rawPathname => {\n const trimmedPathname = trimPathname(absolutify(rawPathname))\n\n let foundPath = trimmedPathname\n if (foundPath === `/index.html`) {\n foundPath = `/`\n }\n\n foundPath = normalizePagePath(foundPath)\n\n return foundPath\n}\n","import prefetchHelper from \"./prefetch\"\nimport emitter from \"./emitter\"\nimport { setMatchPaths, findPath, findMatchPath } from \"./find-path\"\n\n/**\n * Available resource loading statuses\n */\nexport const PageResourceStatus = {\n /**\n * At least one of critical resources failed to load\n */\n Error: `error`,\n /**\n * Resources loaded successfully\n */\n Success: `success`,\n}\n\nconst preferDefault = m => (m && m.default) || m\n\nconst stripSurroundingSlashes = s => {\n s = s[0] === `/` ? s.slice(1) : s\n s = s.endsWith(`/`) ? s.slice(0, -1) : s\n return s\n}\n\nconst createPageDataUrl = path => {\n const fixedPath = path === `/` ? `index` : stripSurroundingSlashes(path)\n return `${__PATH_PREFIX__}/page-data/${fixedPath}/page-data.json`\n}\n\nfunction doFetch(url, method = `GET`) {\n return new Promise((resolve, reject) => {\n const req = new XMLHttpRequest()\n req.open(method, url, true)\n req.onreadystatechange = () => {\n if (req.readyState == 4) {\n resolve(req)\n }\n }\n req.send(null)\n })\n}\n\nconst doesConnectionSupportPrefetch = () => {\n if (\n `connection` in navigator &&\n typeof navigator.connection !== `undefined`\n ) {\n if ((navigator.connection.effectiveType || ``).includes(`2g`)) {\n return false\n }\n if (navigator.connection.saveData) {\n return false\n }\n }\n return true\n}\n\nconst toPageResources = (pageData, component = null) => {\n const page = {\n componentChunkName: pageData.componentChunkName,\n path: pageData.path,\n webpackCompilationHash: pageData.webpackCompilationHash,\n matchPath: pageData.matchPath,\n staticQueryHashes: pageData.staticQueryHashes,\n }\n\n return {\n component,\n json: pageData.result,\n page,\n }\n}\n\nexport class BaseLoader {\n constructor(loadComponent, matchPaths) {\n // Map of pagePath -> Page. Where Page is an object with: {\n // status: PageResourceStatus.Success || PageResourceStatus.Error,\n // payload: PageResources, // undefined if PageResourceStatus.Error\n // }\n // PageResources is {\n // component,\n // json: pageData.result,\n // page: {\n // componentChunkName,\n // path,\n // webpackCompilationHash,\n // staticQueryHashes\n // },\n // staticQueryResults\n // }\n this.pageDb = new Map()\n this.inFlightDb = new Map()\n this.staticQueryDb = new Map()\n this.pageDataDb = new Map()\n this.prefetchTriggered = new Set()\n this.prefetchCompleted = new Set()\n this.loadComponent = loadComponent\n setMatchPaths(matchPaths)\n }\n\n inFlightNetworkRequests = new Map()\n\n memoizedGet(url) {\n let inFlightPromise = this.inFlightNetworkRequests.get(url)\n\n if (!inFlightPromise) {\n inFlightPromise = doFetch(url, `GET`)\n this.inFlightNetworkRequests.set(url, inFlightPromise)\n }\n\n // Prefer duplication with then + catch over .finally to prevent problems in ie11 + firefox\n return inFlightPromise\n .then(response => {\n this.inFlightNetworkRequests.delete(url)\n return response\n })\n .catch(err => {\n this.inFlightNetworkRequests.delete(url)\n throw err\n })\n }\n\n setApiRunner(apiRunner) {\n this.apiRunner = apiRunner\n this.prefetchDisabled = apiRunner(`disableCorePrefetching`).some(a => a)\n }\n\n fetchPageDataJson(loadObj) {\n const { pagePath, retries = 0 } = loadObj\n const url = createPageDataUrl(pagePath)\n return this.memoizedGet(url).then(req => {\n const { status, responseText } = req\n\n // Handle 200\n if (status === 200) {\n try {\n const jsonPayload = JSON.parse(responseText)\n if (jsonPayload.path === undefined) {\n throw new Error(`not a valid pageData response`)\n }\n\n return Object.assign(loadObj, {\n status: PageResourceStatus.Success,\n payload: jsonPayload,\n })\n } catch (err) {\n // continue regardless of error\n }\n }\n\n // Handle 404\n if (status === 404 || status === 200) {\n // If the request was for a 404 page and it doesn't exist, we're done\n if (pagePath === `/404.html`) {\n return Object.assign(loadObj, {\n status: PageResourceStatus.Error,\n })\n }\n\n // Need some code here to cache the 404 request. In case\n // multiple loadPageDataJsons result in 404s\n return this.fetchPageDataJson(\n Object.assign(loadObj, { pagePath: `/404.html`, notFound: true })\n )\n }\n\n // handle 500 response (Unrecoverable)\n if (status === 500) {\n return Object.assign(loadObj, {\n status: PageResourceStatus.Error,\n })\n }\n\n // Handle everything else, including status === 0, and 503s. Should retry\n if (retries < 3) {\n return this.fetchPageDataJson(\n Object.assign(loadObj, { retries: retries + 1 })\n )\n }\n\n // Retried 3 times already, result is an error.\n return Object.assign(loadObj, {\n status: PageResourceStatus.Error,\n })\n })\n }\n\n loadPageDataJson(rawPath) {\n const pagePath = findPath(rawPath)\n if (this.pageDataDb.has(pagePath)) {\n return Promise.resolve(this.pageDataDb.get(pagePath))\n }\n\n return this.fetchPageDataJson({ pagePath }).then(pageData => {\n this.pageDataDb.set(pagePath, pageData)\n\n return pageData\n })\n }\n\n findMatchPath(rawPath) {\n return findMatchPath(rawPath)\n }\n\n // TODO check all uses of this and whether they use undefined for page resources not exist\n loadPage(rawPath) {\n const pagePath = findPath(rawPath)\n if (this.pageDb.has(pagePath)) {\n const page = this.pageDb.get(pagePath)\n return Promise.resolve(page.payload)\n }\n\n if (this.inFlightDb.has(pagePath)) {\n return this.inFlightDb.get(pagePath)\n }\n\n const inFlightPromise = Promise.all([\n this.loadAppData(),\n this.loadPageDataJson(pagePath),\n ]).then(allData => {\n const result = allData[1]\n if (result.status === PageResourceStatus.Error) {\n return {\n status: PageResourceStatus.Error,\n }\n }\n\n let pageData = result.payload\n const { componentChunkName, staticQueryHashes = [] } = pageData\n\n const finalResult = {}\n\n const componentChunkPromise = this.loadComponent(componentChunkName).then(\n component => {\n finalResult.createdAt = new Date()\n let pageResources\n if (!component) {\n finalResult.status = PageResourceStatus.Error\n } else {\n finalResult.status = PageResourceStatus.Success\n if (result.notFound === true) {\n finalResult.notFound = true\n }\n pageData = Object.assign(pageData, {\n webpackCompilationHash: allData[0]\n ? allData[0].webpackCompilationHash\n : ``,\n })\n pageResources = toPageResources(pageData, component)\n }\n // undefined if final result is an error\n return pageResources\n }\n )\n\n const staticQueryBatchPromise = Promise.all(\n staticQueryHashes.map(staticQueryHash => {\n // Check for cache in case this static query result has already been loaded\n if (this.staticQueryDb.has(staticQueryHash)) {\n const jsonPayload = this.staticQueryDb.get(staticQueryHash)\n return { staticQueryHash, jsonPayload }\n }\n\n return this.memoizedGet(\n `${__PATH_PREFIX__}/static/d/${staticQueryHash}.json`\n ).then(req => {\n const jsonPayload = JSON.parse(req.responseText)\n return { staticQueryHash, jsonPayload }\n })\n })\n ).then(staticQueryResults => {\n const staticQueryResultsMap = {}\n\n staticQueryResults.forEach(({ staticQueryHash, jsonPayload }) => {\n staticQueryResultsMap[staticQueryHash] = jsonPayload\n this.staticQueryDb.set(staticQueryHash, jsonPayload)\n })\n\n return staticQueryResultsMap\n })\n\n return Promise.all([componentChunkPromise, staticQueryBatchPromise]).then(\n ([pageResources, staticQueryResults]) => {\n let payload\n if (pageResources) {\n payload = { ...pageResources, staticQueryResults }\n finalResult.payload = payload\n emitter.emit(`onPostLoadPageResources`, {\n page: payload,\n pageResources: payload,\n })\n }\n\n this.pageDb.set(pagePath, finalResult)\n\n return payload\n }\n )\n })\n\n inFlightPromise\n .then(response => {\n this.inFlightDb.delete(pagePath)\n })\n .catch(error => {\n this.inFlightDb.delete(pagePath)\n throw error\n })\n\n this.inFlightDb.set(pagePath, inFlightPromise)\n\n return inFlightPromise\n }\n\n // returns undefined if loading page ran into errors\n loadPageSync(rawPath) {\n const pagePath = findPath(rawPath)\n if (this.pageDb.has(pagePath)) {\n const pageData = this.pageDb.get(pagePath).payload\n return pageData\n }\n return undefined\n }\n\n shouldPrefetch(pagePath) {\n // Skip prefetching if we know user is on slow or constrained connection\n if (!doesConnectionSupportPrefetch()) {\n return false\n }\n\n // Check if the page exists.\n if (this.pageDb.has(pagePath)) {\n return false\n }\n\n return true\n }\n\n prefetch(pagePath) {\n if (!this.shouldPrefetch(pagePath)) {\n return false\n }\n\n // Tell plugins with custom prefetching logic that they should start\n // prefetching this path.\n if (!this.prefetchTriggered.has(pagePath)) {\n this.apiRunner(`onPrefetchPathname`, { pathname: pagePath })\n this.prefetchTriggered.add(pagePath)\n }\n\n // If a plugin has disabled core prefetching, stop now.\n if (this.prefetchDisabled) {\n return false\n }\n\n const realPath = findPath(pagePath)\n // Todo make doPrefetch logic cacheable\n // eslint-disable-next-line consistent-return\n this.doPrefetch(realPath).then(() => {\n if (!this.prefetchCompleted.has(pagePath)) {\n this.apiRunner(`onPostPrefetchPathname`, { pathname: pagePath })\n this.prefetchCompleted.add(pagePath)\n }\n })\n\n return true\n }\n\n doPrefetch(pagePath) {\n throw new Error(`doPrefetch not implemented`)\n }\n\n hovering(rawPath) {\n this.loadPage(rawPath)\n }\n\n getResourceURLsForPathname(rawPath) {\n const pagePath = findPath(rawPath)\n const page = this.pageDataDb.get(pagePath)\n if (page) {\n const pageResources = toPageResources(page.payload)\n\n return [\n ...createComponentUrls(pageResources.page.componentChunkName),\n createPageDataUrl(pagePath),\n ]\n } else {\n return null\n }\n }\n\n isPageNotFound(rawPath) {\n const pagePath = findPath(rawPath)\n const page = this.pageDb.get(pagePath)\n return page && page.notFound === true\n }\n\n loadAppData(retries = 0) {\n return this.memoizedGet(`${__PATH_PREFIX__}/page-data/app-data.json`).then(\n req => {\n const { status, responseText } = req\n\n let appData\n\n if (status !== 200 && retries < 3) {\n // Retry 3 times incase of non-200 responses\n return this.loadAppData(retries + 1)\n }\n\n // Handle 200\n if (status === 200) {\n try {\n const jsonPayload = JSON.parse(responseText)\n if (jsonPayload.webpackCompilationHash === undefined) {\n throw new Error(`not a valid app-data response`)\n }\n\n appData = jsonPayload\n } catch (err) {\n // continue regardless of error\n }\n }\n\n return appData\n }\n )\n }\n}\n\nconst createComponentUrls = componentChunkName =>\n (window.___chunkMapping[componentChunkName] || []).map(\n chunk => __PATH_PREFIX__ + chunk\n )\n\nexport class ProdLoader extends BaseLoader {\n constructor(asyncRequires, matchPaths) {\n const loadComponent = chunkName =>\n asyncRequires.components[chunkName]\n ? asyncRequires.components[chunkName]()\n .then(preferDefault)\n // loader will handle the case when component is null\n .catch(() => null)\n : Promise.resolve()\n\n super(loadComponent, matchPaths)\n }\n\n doPrefetch(pagePath) {\n const pageDataUrl = createPageDataUrl(pagePath)\n return prefetchHelper(pageDataUrl, {\n crossOrigin: `anonymous`,\n as: `fetch`,\n })\n .then(() =>\n // This was just prefetched, so will return a response from\n // the cache instead of making another request to the server\n this.loadPageDataJson(pagePath)\n )\n .then(result => {\n if (result.status !== PageResourceStatus.Success) {\n return Promise.resolve()\n }\n const pageData = result.payload\n const chunkName = pageData.componentChunkName\n const componentUrls = createComponentUrls(chunkName)\n return Promise.all(componentUrls.map(prefetchHelper)).then(\n () => pageData\n )\n })\n }\n\n loadPageDataJson(rawPath) {\n return super.loadPageDataJson(rawPath).then(data => {\n if (data.notFound) {\n // check if html file exist using HEAD request:\n // if it does we should navigate to it instead of showing 404\n return doFetch(rawPath, `HEAD`).then(req => {\n if (req.status === 200) {\n // page (.html file) actually exist (or we asked for 404 )\n // returning page resources status as errored to trigger\n // regular browser navigation to given page\n return {\n status: PageResourceStatus.Error,\n }\n }\n\n // if HEAD request wasn't 200, return notFound result\n // and show 404 page\n return data\n })\n }\n return data\n })\n }\n}\n\nlet instance\n\nexport const setLoader = _loader => {\n instance = _loader\n}\n\nexport const publicLoader = {\n // Deprecated methods. As far as we're aware, these are only used by\n // core gatsby and the offline plugin, however there's a very small\n // chance they're called by others.\n getResourcesForPathname: rawPath => {\n console.warn(\n `Warning: getResourcesForPathname is deprecated. Use loadPage instead`\n )\n return instance.i.loadPage(rawPath)\n },\n getResourcesForPathnameSync: rawPath => {\n console.warn(\n `Warning: getResourcesForPathnameSync is deprecated. Use loadPageSync instead`\n )\n return instance.i.loadPageSync(rawPath)\n },\n enqueue: rawPath => instance.prefetch(rawPath),\n\n // Real methods\n getResourceURLsForPathname: rawPath =>\n instance.getResourceURLsForPathname(rawPath),\n loadPage: rawPath => instance.loadPage(rawPath),\n loadPageSync: rawPath => instance.loadPageSync(rawPath),\n prefetch: rawPath => instance.prefetch(rawPath),\n isPageNotFound: rawPath => instance.isPageNotFound(rawPath),\n hovering: rawPath => instance.hovering(rawPath),\n loadAppData: () => instance.loadAppData(),\n}\n\nexport default publicLoader\n","\"use strict\";\n\nvar offsetY = 0;\n\nvar getTargetOffset = function getTargetOffset(hash) {\n var id = window.decodeURI(hash.replace(\"#\", \"\"));\n\n if (id !== \"\") {\n var element = document.getElementById(id);\n\n if (element) {\n var scrollTop = window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop;\n var clientTop = document.documentElement.clientTop || document.body.clientTop || 0;\n var computedStyles = window.getComputedStyle(element);\n var scrollMarginTop = computedStyles.getPropertyValue(\"scroll-margin-top\") || computedStyles.getPropertyValue(\"scroll-snap-margin-top\") || \"0px\";\n return element.getBoundingClientRect().top + scrollTop - parseInt(scrollMarginTop, 10) - clientTop - offsetY;\n }\n }\n\n return null;\n};\n\nexports.onInitialClientRender = function (_, pluginOptions) {\n if (pluginOptions.offsetY) {\n offsetY = pluginOptions.offsetY;\n }\n\n requestAnimationFrame(function () {\n var offset = getTargetOffset(window.location.hash);\n\n if (offset !== null) {\n window.scrollTo(0, offset);\n }\n });\n};\n\nexports.shouldUpdateScroll = function (_ref) {\n var location = _ref.routerProps.location;\n var offset = getTargetOffset(location.hash);\n return offset !== null ? [0, offset] : true;\n};","\"use strict\";\n\nvar _interopRequireWildcard = require(\"@babel/runtime/helpers/interopRequireWildcard\");\n\nvar _interopRequireDefault = require(\"@babel/runtime/helpers/interopRequireDefault\");\n\nexports.__esModule = true;\nexports.ScrollContainer = void 0;\n\nvar _extends2 = _interopRequireDefault(require(\"@babel/runtime/helpers/extends\"));\n\nvar _inheritsLoose2 = _interopRequireDefault(require(\"@babel/runtime/helpers/inheritsLoose\"));\n\nvar React = _interopRequireWildcard(require(\"react\"));\n\nvar _reactDom = _interopRequireDefault(require(\"react-dom\"));\n\nvar _propTypes = _interopRequireDefault(require(\"prop-types\"));\n\nvar _scrollHandler = require(\"./scroll-handler\");\n\nvar _router = require(\"@reach/router\");\n\n// TODO: In Gatsby v3, this file should be removed.\n// We are deprecating this in V2 in favor of useScrollRestoration\nvar propTypes = {\n scrollKey: _propTypes.default.string.isRequired,\n shouldUpdateScroll: _propTypes.default.func,\n children: _propTypes.default.element.isRequired\n};\nvar hasNotWarnedDeprecation = true;\n\nvar ScrollContainerImplementation = /*#__PURE__*/function (_React$Component) {\n (0, _inheritsLoose2.default)(ScrollContainerImplementation, _React$Component);\n\n function ScrollContainerImplementation(props) {\n var _this;\n\n _this = _React$Component.call(this, props) || this;\n\n if (process.env.NODE_ENV !== \"production\" && hasNotWarnedDeprecation) {\n hasNotWarnedDeprecation = false;\n console.log(\"Deprecation Warning:\\n\\n Gatsby <ScrollContainer> is deprecated in Gatsby v2 and will be removed in Gatsby v3.\\n Update to the React hook alternative useScrollRestoration, like this:.\\n \\n ```\\n import React from 'react';\\n import { useScrollRestoration } from 'gatsby-react-router-scroll';\\n\\n function Component() {\\n const scrollRestoration = useScrollRestoration('\" + _this.props.scrollKey + \"');\\n\\n return <ul {...scrollRestoration} />;\\n }\\n ```\\n \");\n }\n\n return _this;\n }\n\n var _proto = ScrollContainerImplementation.prototype;\n\n _proto.componentDidMount = function componentDidMount() {\n var _this2 = this;\n\n // eslint-disable-next-line react/no-find-dom-node\n var node = _reactDom.default.findDOMNode(this);\n\n var _this$props = this.props,\n location = _this$props.location,\n scrollKey = _this$props.scrollKey;\n if (!node) return;\n node.addEventListener(\"scroll\", function () {\n _this2.props.context.save(location, scrollKey, node.scrollTop);\n });\n var position = this.props.context.read(location, scrollKey);\n node.scrollTo(0, position || 0);\n };\n\n _proto.render = function render() {\n return this.props.children;\n };\n\n return ScrollContainerImplementation;\n}(React.Component);\n\nvar ScrollContainer = function ScrollContainer(props) {\n return /*#__PURE__*/React.createElement(_router.Location, null, function (_ref) {\n var location = _ref.location;\n return /*#__PURE__*/React.createElement(_scrollHandler.ScrollContext.Consumer, null, function (context) {\n return /*#__PURE__*/React.createElement(ScrollContainerImplementation, (0, _extends2.default)({}, props, {\n context: context,\n location: location\n }));\n });\n });\n};\n\nexports.ScrollContainer = ScrollContainer;\nScrollContainer.propTypes = propTypes;","const preferDefault = m => (m && m.default) || m\n\nif (process.env.BUILD_STAGE === `develop`) {\n module.exports = preferDefault(require(`./public-page-renderer-dev`))\n} else if (process.env.BUILD_STAGE === `build-javascript`) {\n module.exports = preferDefault(require(`./public-page-renderer-prod`))\n} else {\n module.exports = () => null\n}\n","/*\n Why commonjs and not ES imports/exports?\n\n This module is used to alias `create-react-context` package, but drop the the actual implementation part\n because Gatsby requires version of react that has implementatoin baked in.\n \n Package source is using ES modules:\n - https://github.com/jamiebuilds/create-react-context/blob/v0.3.0/src/index.js\n \n But to build this package `babel-plugin-add-module-exports` is used ( https://www.npmjs.com/package/babel-plugin-add-module-exports).\n Which result in both `module.exports` and `exports.default` being set to same thing.\n\n We don't use that babel plugin so we only have `exports.default`.\n\n This cause problems in various 3rd party react components that rely on `module.exports` being set.\n See https://github.com/gatsbyjs/gatsby/issues/23645 for example of it.\n \n Instead of adding same babel plugin we mimic output here. Adding babel plugin just for this would:\n a) unnecesairly slow down compilation for all other files (if we just apply it everywhere)\n b) or complicate babel-loader configuration with overwrite specifically for this file\n*/\n\nconst { createContext } = require(`react`)\n\nmodule.exports = createContext\nmodule.exports.default = createContext\n","function _extends() {\n module.exports = _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n };\n\n return _extends.apply(this, arguments);\n}\n\nmodule.exports = _extends;","import React from \"react\"\nimport PropTypes from \"prop-types\"\n\nimport InternalPageRenderer from \"./page-renderer\"\n\nconst ProdPageRenderer = ({ location, pageResources }) => {\n if (!pageResources) {\n return null\n }\n return React.createElement(InternalPageRenderer, {\n location,\n pageResources,\n ...pageResources.json,\n })\n}\n\nProdPageRenderer.propTypes = {\n location: PropTypes.shape({\n pathname: PropTypes.string.isRequired,\n }).isRequired,\n}\n\nexport default ProdPageRenderer\n","const plugins = require(`./api-runner-browser-plugins`)\nconst {\n getResourcesForPathname,\n getResourcesForPathnameSync,\n getResourceURLsForPathname,\n loadPage,\n loadPageSync,\n} = require(`./loader`).publicLoader\n\nexports.apiRunner = (api, args = {}, defaultReturn, argTransform) => {\n // Hooks for gatsby-cypress's API handler\n if (process.env.CYPRESS_SUPPORT) {\n if (window.___apiHandler) {\n window.___apiHandler(api)\n } else if (window.___resolvedAPIs) {\n window.___resolvedAPIs.push(api)\n } else {\n window.___resolvedAPIs = [api]\n }\n }\n\n let results = plugins.map(plugin => {\n if (!plugin.plugin[api]) {\n return undefined\n }\n\n // Deprecated April 2019. Use `loadPageSync` instead\n args.getResourcesForPathnameSync = getResourcesForPathnameSync\n // Deprecated April 2019. Use `loadPage` instead\n args.getResourcesForPathname = getResourcesForPathname\n args.getResourceURLsForPathname = getResourceURLsForPathname\n args.loadPage = loadPage\n args.loadPageSync = loadPageSync\n\n const result = plugin.plugin[api](args, plugin.options)\n if (result && argTransform) {\n args = argTransform({ args, result, plugin })\n }\n return result\n })\n\n // Filter out undefined results.\n results = results.filter(result => typeof result !== `undefined`)\n\n if (results.length > 0) {\n return results\n } else if (defaultReturn) {\n return [defaultReturn]\n } else {\n return []\n }\n}\n\nexports.apiRunnerAsync = (api, args, defaultReturn) =>\n plugins.reduce(\n (previous, next) =>\n next.plugin[api]\n ? previous.then(() => next.plugin[api](args, next.options))\n : previous,\n Promise.resolve()\n )\n"],"sourceRoot":""}
\ No newline at end of file
diff --git a/chunk-map.json b/chunk-map.json
index a50e0b1..6f2bb3e 100644
--- a/chunk-map.json
+++ b/chunk-map.json
@@ -1 +1 @@
-{"polyfill":["/polyfill-88d9aed314b16f9b2adc.js"],"app":["/app-d7398b08e923fe8a3caa.js"],"component---src-pages-quickstarts-index-jsx":["/component---src-pages-quickstarts-index-jsx-a1e42093b41968828647.js"],"component---src-templates-doc-jsx":["/component---src-templates-doc-jsx-5366dbd1b50f3447a412.js"],"component---src-templates-main-jsx":["/component---src-templates-main-jsx-456568a5c9ae2c9095ee.js"]}
\ No newline at end of file
+{"polyfill":["/polyfill-e4957c11759bdfc149d9.js"],"app":["/app-59faa9989d677dd59195.js"],"component---src-pages-quickstarts-index-jsx":["/component---src-pages-quickstarts-index-jsx-8b53e5455e208a3e59b9.js"],"component---src-templates-doc-jsx":["/component---src-templates-doc-jsx-21a94bb36ef3df298f42.js"],"component---src-templates-main-jsx":["/component---src-templates-main-jsx-8853cf342e1cf1bead5c.js"]}
\ No newline at end of file
diff --git a/commons-8b827618f0536ebfeda2.js b/commons-8b827618f0536ebfeda2.js
deleted file mode 100644
index 6730367..0000000
--- a/commons-8b827618f0536ebfeda2.js
+++ /dev/null
@@ -1,2 +0,0 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[0],{"+5i3":function(e,t,n){},5748:function(e,t){e.exports="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K"},"8+s/":function(e,t,n){"use strict";var r,i=n("q1tI"),o=(r=i)&&"object"==typeof r&&"default"in r?r.default:r;function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var u=!("undefined"==typeof window||!window.document||!window.document.createElement);e.exports=function(e,t,n){if("function"!=typeof e)throw new Error("Expected reducePropsToState to be a function.");if("function"!=typeof t)throw new Error("Expected handleStateChangeOnClient to be a function.");if(void 0!==n&&"function"!=typeof n)throw new Error("Expected mapStateOnServer to either be undefined or a function.");return function(r){if("function"!=typeof r)throw new Error("Expected WrappedComponent to be a React component.");var c,s=[];function l(){c=e(s.map((function(e){return e.props}))),L.canUseDOM?t(c):n&&(c=n(c))}var L=function(e){var t,n;function i(){return e.apply(this,arguments)||this}n=e,(t=i).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n,i.peek=function(){return c},i.rewind=function(){if(i.canUseDOM)throw new Error("You may only call rewind() on the server. Call peek() to read the current state.");var e=c;return c=void 0,s=[],e};var a=i.prototype;return a.UNSAFE_componentWillMount=function(){s.push(this),l()},a.componentDidUpdate=function(){l()},a.componentWillUnmount=function(){var e=s.indexOf(this);s.splice(e,1),l()},a.render=function(){return o.createElement(r,this.props)},i}(i.PureComponent);return a(L,"displayName","SideEffect("+function(e){return e.displayName||e.name||"Component"}(r)+")"),a(L,"canUseDOM",u),L}}},Rb52:function(e,t,n){"use strict";var r=n("q1tI"),i=n.n(r),o=n("Wbzz"),a=n("s/A6"),u=n.n(a),c=n("5748"),s=n.n(c),l=n("kiXb"),L="eclipse-jkube__header",f=function(){return i.a.createElement("span",{className:L+"-trade-mark"},"™")};t.a=function(e){var t=e.lang,n=Object(l.resolveI18nPath)(t);return i.a.createElement("header",{className:L},i.a.createElement("div",{className:L+"-container"},i.a.createElement(o.a,{to:n("/"),className:L+"-logo"},i.a.createElement("div",{className:L+"-logo-eclipse-image"},i.a.createElement("img",{src:u.a,alt:"Eclipse Foundation"})),i.a.createElement("div",{className:L+"-logo-jkube"},i.a.createElement("img",{className:L+"-logo-jkube-image",src:s.a,alt:"JKube"}),i.a.createElement(f,null))),i.a.createElement("div",{className:L+"-content"},i.a.createElement("ul",null,i.a.createElement("li",null,i.a.createElement(o.a,{to:n("/docs")},"Docs")),i.a.createElement("li",null,i.a.createElement(o.a,{to:n("/demos")},"Demos")),i.a.createElement("li",null,i.a.createElement(o.a,{to:n("/community")},"Community")),i.a.createElement("li",null,i.a.createElement(o.a,{to:n("/contributing")},"Contributing")),i.a.createElement("li",null,i.a.createElement("a",{className:L+"-stars",href:"https://github.com/eclipse/jkube",title:"eclipse/jkube",target:"_blank",rel:"nofollow noopener noreferrer"},i.a.createElement("img",{src:"https://img.shields.io/github/stars/eclipse/jkube?style=social",alt:"eclipse/jkube stargazers"})))))))}},bmMU:function(e,t){var n="undefined"!=typeof Element,r="function"==typeof Map,i="function"==typeof Set,o="function"==typeof ArrayBuffer&&!!ArrayBuffer.isView;e.exports=function(e,t){try{return function e(t,a){if(t===a)return!0;if(t&&a&&"object"==typeof t&&"object"==typeof a){if(t.constructor!==a.constructor)return!1;var u,c,s,l;if(Array.isArray(t)){if((u=t.length)!=a.length)return!1;for(c=u;0!=c--;)if(!e(t[c],a[c]))return!1;return!0}if(r&&t instanceof Map&&a instanceof Map){if(t.size!==a.size)return!1;for(l=t.entries();!(c=l.next()).done;)if(!a.has(c.value[0]))return!1;for(l=t.entries();!(c=l.next()).done;)if(!e(c.value[1],a.get(c.value[0])))return!1;return!0}if(i&&t instanceof Set&&a instanceof Set){if(t.size!==a.size)return!1;for(l=t.entries();!(c=l.next()).done;)if(!a.has(c.value[0]))return!1;return!0}if(o&&ArrayBuffer.isView(t)&&ArrayBuffer.isView(a)){if((u=t.length)!=a.length)return!1;for(c=u;0!=c--;)if(t[c]!==a[c])return!1;return!0}if(t.constructor===RegExp)return t.source===a.source&&t.flags===a.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===a.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===a.toString();if((u=(s=Object.keys(t)).length)!==Object.keys(a).length)return!1;for(c=u;0!=c--;)if(!Object.prototype.hasOwnProperty.call(a,s[c]))return!1;if(n&&t instanceof Element)return!1;for(c=u;0!=c--;)if(("_owner"!==s[c]&&"__v"!==s[c]&&"__o"!==s[c]||!t.$$typeof)&&!e(t[s[c]],a[s[c]]))return!1;return!0}return t!=t&&a!=a}(e,t)}catch(a){if((a.message||"").match(/stack|recursion/i))return console.warn("react-fast-compare cannot handle circular refs"),!1;throw a}}},dmsj:function(e,t,n){"use strict";var r=n("q1tI"),i=n.n(r),o=n("qhky");t.a=function(e){var t=e.lang,n=e.title,r=e.description;return i.a.createElement(o.a,null,i.a.createElement("meta",{charSet:"UTF-8"}),i.a.createElement("html",{lang:t}),i.a.createElement("title",null,n),i.a.createElement("meta",{name:"description",content:r}))}},kiXb:function(e,t){e.exports={defaultLangKey:"en",resolveI18nPath:function(e){return function(t){return"en"===e?t:e+"/"+t}}}},qhky:function(e,t,n){"use strict";(function(e){var r,i,o,a,u=n("17x9"),c=n.n(u),s=n("8+s/"),l=n.n(s),L=n("bmMU"),f=n.n(L),M=n("q1tI"),y=n.n(M),p=n("6qGY"),j=n.n(p),d="bodyAttributes",w="htmlAttributes",T="titleAttributes",m={BASE:"base",BODY:"body",HEAD:"head",HTML:"html",LINK:"link",META:"meta",NOSCRIPT:"noscript",SCRIPT:"script",STYLE:"style",TITLE:"title"},g=(Object.keys(m).map((function(e){return m[e]})),"charset"),h="cssText",C="href",b="http-equiv",S="innerHTML",N="itemprop",E="name",I="property",v="rel",O="src",A="target",x={accesskey:"accessKey",charset:"charSet",class:"className",contenteditable:"contentEditable",contextmenu:"contextMenu","http-equiv":"httpEquiv",itemprop:"itemProp",tabindex:"tabIndex"},D="defaultTitle",k="defer",z="encodeSpecialCharacters",Y="onChangeClientState",P="titleTemplate",Q=Object.keys(x).reduce((function(e,t){return e[x[t]]=t,e}),{}),Z=[m.NOSCRIPT,m.SCRIPT,m.STYLE],J="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},W=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},G=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),U=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},H=function(e,t){var n={};for(var r in e)t.indexOf(r)>=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n},R=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t},X=function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return!1===t?String(e):String(e).replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")},B=function(e){var t=_(e,m.TITLE),n=_(e,P);if(n&&t)return n.replace(/%s/g,(function(){return Array.isArray(t)?t.join(""):t}));var r=_(e,D);return t||r||void 0},V=function(e){return _(e,Y)||function(){}},q=function(e,t){return t.filter((function(t){return void 0!==t[e]})).map((function(t){return t[e]})).reduce((function(e,t){return U({},e,t)}),{})},F=function(e,t){return t.filter((function(e){return void 0!==e[m.BASE]})).map((function(e){return e[m.BASE]})).reverse().reduce((function(t,n){if(!t.length)for(var r=Object.keys(n),i=0;i<r.length;i++){var o=r[i].toLowerCase();if(-1!==e.indexOf(o)&&n[o])return t.concat(n)}return t}),[])},K=function(e,t,n){var r={};return n.filter((function(t){return!!Array.isArray(t[e])||(void 0!==t[e]&&re("Helmet: "+e+' should be of type "Array". Instead found type "'+J(t[e])+'"'),!1)})).map((function(t){return t[e]})).reverse().reduce((function(e,n){var i={};n.filter((function(e){for(var n=void 0,o=Object.keys(e),a=0;a<o.length;a++){var u=o[a],c=u.toLowerCase();-1===t.indexOf(c)||n===v&&"canonical"===e[n].toLowerCase()||c===v&&"stylesheet"===e[c].toLowerCase()||(n=c),-1===t.indexOf(u)||u!==S&&u!==h&&u!==N||(n=u)}if(!n||!e[n])return!1;var s=e[n].toLowerCase();return r[n]||(r[n]={}),i[n]||(i[n]={}),!r[n][s]&&(i[n][s]=!0,!0)})).reverse().forEach((function(t){return e.push(t)}));for(var o=Object.keys(i),a=0;a<o.length;a++){var u=o[a],c=j()({},r[u],i[u]);r[u]=c}return e}),[]).reverse()},_=function(e,t){for(var n=e.length-1;n>=0;n--){var r=e[n];if(r.hasOwnProperty(t))return r[t]}return null},$=(r=Date.now(),function(e){var t=Date.now();t-r>16?(r=t,e(t)):setTimeout((function(){$(e)}),0)}),ee=function(e){return clearTimeout(e)},te="undefined"!=typeof window?window.requestAnimationFrame&&window.requestAnimationFrame.bind(window)||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||$:e.requestAnimationFrame||$,ne="undefined"!=typeof window?window.cancelAnimationFrame||window.webkitCancelAnimationFrame||window.mozCancelAnimationFrame||ee:e.cancelAnimationFrame||ee,re=function(e){return console&&"function"==typeof console.warn&&console.warn(e)},ie=null,oe=function(e,t){var n=e.baseTag,r=e.bodyAttributes,i=e.htmlAttributes,o=e.linkTags,a=e.metaTags,u=e.noscriptTags,c=e.onChangeClientState,s=e.scriptTags,l=e.styleTags,L=e.title,f=e.titleAttributes;ce(m.BODY,r),ce(m.HTML,i),ue(L,f);var M={baseTag:se(m.BASE,n),linkTags:se(m.LINK,o),metaTags:se(m.META,a),noscriptTags:se(m.NOSCRIPT,u),scriptTags:se(m.SCRIPT,s),styleTags:se(m.STYLE,l)},y={},p={};Object.keys(M).forEach((function(e){var t=M[e],n=t.newTags,r=t.oldTags;n.length&&(y[e]=n),r.length&&(p[e]=M[e].oldTags)})),t&&t(),c(e,y,p)},ae=function(e){return Array.isArray(e)?e.join(""):e},ue=function(e,t){void 0!==e&&document.title!==e&&(document.title=ae(e)),ce(m.TITLE,t)},ce=function(e,t){var n=document.getElementsByTagName(e)[0];if(n){for(var r=n.getAttribute("data-react-helmet"),i=r?r.split(","):[],o=[].concat(i),a=Object.keys(t),u=0;u<a.length;u++){var c=a[u],s=t[c]||"";n.getAttribute(c)!==s&&n.setAttribute(c,s),-1===i.indexOf(c)&&i.push(c);var l=o.indexOf(c);-1!==l&&o.splice(l,1)}for(var L=o.length-1;L>=0;L--)n.removeAttribute(o[L]);i.length===o.length?n.removeAttribute("data-react-helmet"):n.getAttribute("data-react-helmet")!==a.join(",")&&n.setAttribute("data-react-helmet",a.join(","))}},se=function(e,t){var n=document.head||document.querySelector(m.HEAD),r=n.querySelectorAll(e+"[data-react-helmet]"),i=Array.prototype.slice.call(r),o=[],a=void 0;return t&&t.length&&t.forEach((function(t){var n=document.createElement(e);for(var r in t)if(t.hasOwnProperty(r))if(r===S)n.innerHTML=t.innerHTML;else if(r===h)n.styleSheet?n.styleSheet.cssText=t.cssText:n.appendChild(document.createTextNode(t.cssText));else{var u=void 0===t[r]?"":t[r];n.setAttribute(r,u)}n.setAttribute("data-react-helmet","true"),i.some((function(e,t){return a=t,n.isEqualNode(e)}))?i.splice(a,1):o.push(n)})),i.forEach((function(e){return e.parentNode.removeChild(e)})),o.forEach((function(e){return n.appendChild(e)})),{oldTags:i,newTags:o}},le=function(e){return Object.keys(e).reduce((function(t,n){var r=void 0!==e[n]?n+'="'+e[n]+'"':""+n;return t?t+" "+r:r}),"")},Le=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Object.keys(e).reduce((function(t,n){return t[x[n]||n]=e[n],t}),t)},fe=function(e,t,n){switch(e){case m.TITLE:return{toComponent:function(){return e=t.title,n=t.titleAttributes,(r={key:e})["data-react-helmet"]=!0,i=Le(n,r),[y.a.createElement(m.TITLE,i,e)];var e,n,r,i},toString:function(){return function(e,t,n,r){var i=le(n),o=ae(t);return i?"<"+e+' data-react-helmet="true" '+i+">"+X(o,r)+"</"+e+">":"<"+e+' data-react-helmet="true">'+X(o,r)+"</"+e+">"}(e,t.title,t.titleAttributes,n)}};case d:case w:return{toComponent:function(){return Le(t)},toString:function(){return le(t)}};default:return{toComponent:function(){return function(e,t){return t.map((function(t,n){var r,i=((r={key:n})["data-react-helmet"]=!0,r);return Object.keys(t).forEach((function(e){var n=x[e]||e;if(n===S||n===h){var r=t.innerHTML||t.cssText;i.dangerouslySetInnerHTML={__html:r}}else i[n]=t[e]})),y.a.createElement(e,i)}))}(e,t)},toString:function(){return function(e,t,n){return t.reduce((function(t,r){var i=Object.keys(r).filter((function(e){return!(e===S||e===h)})).reduce((function(e,t){var i=void 0===r[t]?t:t+'="'+X(r[t],n)+'"';return e?e+" "+i:i}),""),o=r.innerHTML||r.cssText||"",a=-1===Z.indexOf(e);return t+"<"+e+' data-react-helmet="true" '+i+(a?"/>":">"+o+"</"+e+">")}),"")}(e,t,n)}}}},Me=function(e){var t=e.baseTag,n=e.bodyAttributes,r=e.encode,i=e.htmlAttributes,o=e.linkTags,a=e.metaTags,u=e.noscriptTags,c=e.scriptTags,s=e.styleTags,l=e.title,L=void 0===l?"":l,f=e.titleAttributes;return{base:fe(m.BASE,t,r),bodyAttributes:fe(d,n,r),htmlAttributes:fe(w,i,r),link:fe(m.LINK,o,r),meta:fe(m.META,a,r),noscript:fe(m.NOSCRIPT,u,r),script:fe(m.SCRIPT,c,r),style:fe(m.STYLE,s,r),title:fe(m.TITLE,{title:L,titleAttributes:f},r)}},ye=l()((function(e){return{baseTag:F([C,A],e),bodyAttributes:q(d,e),defer:_(e,k),encode:_(e,z),htmlAttributes:q(w,e),linkTags:K(m.LINK,[v,C],e),metaTags:K(m.META,[E,g,b,I,N],e),noscriptTags:K(m.NOSCRIPT,[S],e),onChangeClientState:V(e),scriptTags:K(m.SCRIPT,[O,S],e),styleTags:K(m.STYLE,[h],e),title:B(e),titleAttributes:q(T,e)}}),(function(e){ie&&ne(ie),e.defer?ie=te((function(){oe(e,(function(){ie=null}))})):(oe(e),ie=null)}),Me)((function(){return null})),pe=(i=ye,a=o=function(e){function t(){return W(this,t),R(this,e.apply(this,arguments))}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,e),t.prototype.shouldComponentUpdate=function(e){return!f()(this.props,e)},t.prototype.mapNestedChildrenToProps=function(e,t){if(!t)return null;switch(e.type){case m.SCRIPT:case m.NOSCRIPT:return{innerHTML:t};case m.STYLE:return{cssText:t}}throw new Error("<"+e.type+" /> elements are self-closing and can not contain children. Refer to our API for more information.")},t.prototype.flattenArrayTypeChildren=function(e){var t,n=e.child,r=e.arrayTypeChildren,i=e.newChildProps,o=e.nestedChildren;return U({},r,((t={})[n.type]=[].concat(r[n.type]||[],[U({},i,this.mapNestedChildrenToProps(n,o))]),t))},t.prototype.mapObjectTypeChildren=function(e){var t,n,r=e.child,i=e.newProps,o=e.newChildProps,a=e.nestedChildren;switch(r.type){case m.TITLE:return U({},i,((t={})[r.type]=a,t.titleAttributes=U({},o),t));case m.BODY:return U({},i,{bodyAttributes:U({},o)});case m.HTML:return U({},i,{htmlAttributes:U({},o)})}return U({},i,((n={})[r.type]=U({},o),n))},t.prototype.mapArrayTypeChildrenToProps=function(e,t){var n=U({},t);return Object.keys(e).forEach((function(t){var r;n=U({},n,((r={})[t]=e[t],r))})),n},t.prototype.warnOnInvalidChildren=function(e,t){return!0},t.prototype.mapChildrenToProps=function(e,t){var n=this,r={};return y.a.Children.forEach(e,(function(e){if(e&&e.props){var i=e.props,o=i.children,a=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Object.keys(e).reduce((function(t,n){return t[Q[n]||n]=e[n],t}),t)}(H(i,["children"]));switch(n.warnOnInvalidChildren(e,o),e.type){case m.LINK:case m.META:case m.NOSCRIPT:case m.SCRIPT:case m.STYLE:r=n.flattenArrayTypeChildren({child:e,arrayTypeChildren:r,newChildProps:a,nestedChildren:o});break;default:t=n.mapObjectTypeChildren({child:e,newProps:t,newChildProps:a,nestedChildren:o})}}})),t=this.mapArrayTypeChildrenToProps(r,t)},t.prototype.render=function(){var e=this.props,t=e.children,n=H(e,["children"]),r=U({},n);return t&&(r=this.mapChildrenToProps(t,r)),y.a.createElement(i,r)},G(t,null,[{key:"canUseDOM",set:function(e){i.canUseDOM=e}}]),t}(y.a.Component),o.propTypes={base:c.a.object,bodyAttributes:c.a.object,children:c.a.oneOfType([c.a.arrayOf(c.a.node),c.a.node]),defaultTitle:c.a.string,defer:c.a.bool,encodeSpecialCharacters:c.a.bool,htmlAttributes:c.a.object,link:c.a.arrayOf(c.a.object),meta:c.a.arrayOf(c.a.object),noscript:c.a.arrayOf(c.a.object),onChangeClientState:c.a.func,script:c.a.arrayOf(c.a.object),style:c.a.arrayOf(c.a.object),title:c.a.string,titleAttributes:c.a.object,titleTemplate:c.a.string},o.defaultProps={defer:!0,encodeSpecialCharacters:!0},o.peek=i.peek,o.rewind=function(){var e=i.rewind();return e||(e=Me({baseTag:[],bodyAttributes:{},encodeSpecialCharacters:!0,htmlAttributes:{},linkTags:[],metaTags:[],noscriptTags:[],scriptTags:[],styleTags:[],title:"",titleAttributes:{}})),e},a);pe.renderStatic=pe.rewind,t.a=pe}).call(this,n("yLpj"))},"s/A6":function(e,t,n){e.exports=n.p+"static/EF_WHT-OR_png-d0fd43ad31261ee9693a060be920e71e.png"},yLpj:function(e,t){var n;n=function(){return this}();try{n=n||new Function("return this")()}catch(r){"object"==typeof window&&(n=window)}e.exports=n}}]);
-//# sourceMappingURL=commons-8b827618f0536ebfeda2.js.map
\ No newline at end of file
diff --git a/commons-8b827618f0536ebfeda2.js.map b/commons-8b827618f0536ebfeda2.js.map
deleted file mode 100644
index 37e1ea0..0000000
--- a/commons-8b827618f0536ebfeda2.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":["webpack:///./src/assets/jkube-logo-horizontal-white.svg","webpack:///./node_modules/react-side-effect/lib/index.js","webpack:///./src/components/header.jsx","webpack:///./node_modules/react-fast-compare/index.js","webpack:///./src/components/seo.jsx","webpack:///./src/i18n.js","webpack:///./node_modules/react-helmet/es/Helmet.js","webpack:///./src/assets/EF_WHT-OR_png.png","webpack:///(webpack)/buildin/global.js"],"names":["module","exports","ex","React","React__default","_defineProperty","obj","key","value","Object","defineProperty","enumerable","configurable","writable","canUseDOM","window","document","createElement","reducePropsToState","handleStateChangeOnClient","mapStateOnServer","Error","WrappedComponent","state","mountedInstances","emitChange","map","instance","props","SideEffect","_PureComponent","subClass","superClass","apply","this","arguments","prototype","create","constructor","__proto__","peek","rewind","recordedState","undefined","_proto","UNSAFE_componentWillMount","push","componentDidUpdate","componentWillUnmount","index","indexOf","splice","render","PureComponent","displayName","name","getDisplayName","cClass","TM","className","Header","lang","resolvePath","resolveI18nPath","to","src","logo","alt","jkubeLogo","href","title","target","rel","hasElementType","Element","hasMap","Map","hasSet","Set","hasArrayBuffer","ArrayBuffer","isView","a","b","equal","length","i","keys","it","Array","isArray","size","entries","next","done","has","get","RegExp","source","flags","valueOf","toString","hasOwnProperty","call","$$typeof","error","message","match","console","warn","Seo","description","charSet","content","defaultLangKey","langKey","path","clock","Component","_class","_temp","ATTRIBUTE_NAMES","TAG_NAMES","BASE","BODY","HEAD","HTML","LINK","META","NOSCRIPT","SCRIPT","STYLE","TITLE","TAG_PROPERTIES","REACT_TAG_MAP","accesskey","charset","class","contenteditable","contextmenu","itemprop","tabindex","HELMET_PROPS","HTML_TAG_MAP","reduce","SELF_CLOSING_TAGS","_typeof","Symbol","iterator","classCallCheck","Constructor","TypeError","createClass","defineProperties","descriptor","protoProps","staticProps","_extends","assign","objectWithoutProperties","possibleConstructorReturn","self","ReferenceError","encodeSpecialCharacters","str","encode","String","replace","getTitleFromPropsList","propsList","innermostTitle","getInnermostProperty","innermostTemplate","join","innermostDefaultTitle","getOnChangeClientState","getAttributesFromPropsList","tagType","filter","tagAttrs","current","getBaseTagFromPropsList","primaryAttributes","reverse","innermostBaseTag","tag","lowerCaseAttributeKey","toLowerCase","concat","getTagsFromPropsList","tagName","approvedSeenTags","approvedTags","instanceTags","instanceSeenTags","primaryAttributeKey","attributeKey","forEach","tagUnion","property","rafPolyfill","Date","now","callback","currentTime","setTimeout","cafPolyfill","id","clearTimeout","requestAnimationFrame","bind","webkitRequestAnimationFrame","mozRequestAnimationFrame","global","cancelAnimationFrame","webkitCancelAnimationFrame","mozCancelAnimationFrame","msg","_helmetCallback","commitTagChanges","newState","cb","baseTag","bodyAttributes","htmlAttributes","linkTags","metaTags","noscriptTags","onChangeClientState","scriptTags","styleTags","titleAttributes","updateAttributes","updateTitle","tagUpdates","updateTags","addedTags","removedTags","_tagUpdates$tagType","newTags","oldTags","flattenArray","possibleArray","attributes","elementTag","getElementsByTagName","helmetAttributeString","getAttribute","helmetAttributes","split","attributesToRemove","attributeKeys","attribute","setAttribute","indexToSave","_i","removeAttribute","type","tags","headElement","head","querySelector","tagNodes","querySelectorAll","slice","indexToDelete","newElement","innerHTML","styleSheet","cssText","appendChild","createTextNode","some","existingTag","isEqualNode","parentNode","removeChild","generateElementAttributesAsString","attr","convertElementAttributestoReactProps","initProps","getMethodsForTag","toComponent","_initProps","attributeString","flattenedTitle","generateTitleAsString","_mappedTag","mappedTag","mappedAttribute","dangerouslySetInnerHTML","__html","generateTagsAsReactComponent","attributeHtml","string","tagContent","isSelfClosing","generateTagsAsString","_ref","_ref$title","base","link","meta","noscript","script","style","HelmetSideEffects","defer","HelmetExport","_React$Component","HelmetWrapper","setPrototypeOf","inherits","shouldComponentUpdate","nextProps","mapNestedChildrenToProps","child","nestedChildren","flattenArrayTypeChildren","_babelHelpers$extends","arrayTypeChildren","newChildProps","mapObjectTypeChildren","_ref2","_babelHelpers$extends2","_babelHelpers$extends3","newProps","mapArrayTypeChildrenToProps","newFlattenedProps","arrayChildName","_babelHelpers$extends4","warnOnInvalidChildren","mapChildrenToProps","children","_this2","Children","_child$props","initAttributes","convertReactPropstoHtmlAttributes","_props","set","propTypes","object","oneOfType","arrayOf","node","defaultTitle","bool","func","titleTemplate","defaultProps","mappedState","renderStatic","g","Function","e"],"mappings":"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","file":"commons-8b827618f0536ebfeda2.js","sourcesContent":["module.exports = \"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K\"","'use strict';\n\nfunction _interopDefault(ex) {\n return ex && typeof ex === 'object' && 'default' in ex ? ex['default'] : ex;\n}\n\nvar React = require('react');\n\nvar React__default = _interopDefault(React);\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n subClass.__proto__ = superClass;\n}\n\nvar canUseDOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement);\n\nfunction withSideEffect(reducePropsToState, handleStateChangeOnClient, mapStateOnServer) {\n if (typeof reducePropsToState !== 'function') {\n throw new Error('Expected reducePropsToState to be a function.');\n }\n\n if (typeof handleStateChangeOnClient !== 'function') {\n throw new Error('Expected handleStateChangeOnClient to be a function.');\n }\n\n if (typeof mapStateOnServer !== 'undefined' && typeof mapStateOnServer !== 'function') {\n throw new Error('Expected mapStateOnServer to either be undefined or a function.');\n }\n\n function getDisplayName(WrappedComponent) {\n return WrappedComponent.displayName || WrappedComponent.name || 'Component';\n }\n\n return function wrap(WrappedComponent) {\n if (typeof WrappedComponent !== 'function') {\n throw new Error('Expected WrappedComponent to be a React component.');\n }\n\n var mountedInstances = [];\n var state;\n\n function emitChange() {\n state = reducePropsToState(mountedInstances.map(function (instance) {\n return instance.props;\n }));\n\n if (SideEffect.canUseDOM) {\n handleStateChangeOnClient(state);\n } else if (mapStateOnServer) {\n state = mapStateOnServer(state);\n }\n }\n\n var SideEffect = /*#__PURE__*/function (_PureComponent) {\n _inheritsLoose(SideEffect, _PureComponent);\n\n function SideEffect() {\n return _PureComponent.apply(this, arguments) || this;\n } // Try to use displayName of wrapped component\n // Expose canUseDOM so tests can monkeypatch it\n\n\n SideEffect.peek = function peek() {\n return state;\n };\n\n SideEffect.rewind = function rewind() {\n if (SideEffect.canUseDOM) {\n throw new Error('You may only call rewind() on the server. Call peek() to read the current state.');\n }\n\n var recordedState = state;\n state = undefined;\n mountedInstances = [];\n return recordedState;\n };\n\n var _proto = SideEffect.prototype;\n\n _proto.UNSAFE_componentWillMount = function UNSAFE_componentWillMount() {\n mountedInstances.push(this);\n emitChange();\n };\n\n _proto.componentDidUpdate = function componentDidUpdate() {\n emitChange();\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n var index = mountedInstances.indexOf(this);\n mountedInstances.splice(index, 1);\n emitChange();\n };\n\n _proto.render = function render() {\n return React__default.createElement(WrappedComponent, this.props);\n };\n\n return SideEffect;\n }(React.PureComponent);\n\n _defineProperty(SideEffect, \"displayName\", \"SideEffect(\" + getDisplayName(WrappedComponent) + \")\");\n\n _defineProperty(SideEffect, \"canUseDOM\", canUseDOM);\n\n return SideEffect;\n };\n}\n\nmodule.exports = withSideEffect;","import React from 'react';\nimport {Link} from 'gatsby'\nimport logo from '../assets/EF_WHT-OR_png.png';\nimport jkubeLogo from '../assets/jkube-logo-horizontal-white.svg';\nimport PropTypes from 'prop-types';\nimport {resolveI18nPath} from \"../i18n\";\n\nconst cClass = 'eclipse-jkube__header';\n\nconst TM = () => (\n <span className={`${cClass}-trade-mark`}>™</span>\n);\n\nconst Header = ({lang}) => {\n const resolvePath = resolveI18nPath(lang);\n return (\n <header className={cClass}>\n <div className={`${cClass}-container`}>\n <Link to={resolvePath('/')} className={`${cClass}-logo`}>\n <div className={`${cClass}-logo-eclipse-image`}><img src={logo} alt='Eclipse Foundation' /></div>\n <div className={`${cClass}-logo-jkube`}>\n <img className={`${cClass}-logo-jkube-image`} src={jkubeLogo} alt='JKube' /><TM/>\n </div>\n </Link>\n <div className={`${cClass}-content`}>\n <ul>\n <li><Link to={resolvePath('/docs')}>Docs</Link></li>\n <li><Link to={resolvePath('/demos')}>Demos</Link></li>\n <li><Link to={resolvePath('/community')}>Community</Link></li>\n <li><Link to={resolvePath('/contributing')}>Contributing</Link></li>\n <li>\n <a\n className={`${cClass}-stars`}\n href='https://github.com/eclipse/jkube' title='eclipse/jkube'\n target='_blank' rel='nofollow noopener noreferrer'\n >\n <img src='https://img.shields.io/github/stars/eclipse/jkube?style=social' alt='eclipse/jkube stargazers' />\n </a>\n </li>\n </ul>\n </div>\n </div>\n </header>\n );\n};\n\nHeader.propTypes = {\n lang: PropTypes.string.isRequired,\n};\n\nexport default Header;\n","/* global Map:readonly, Set:readonly, ArrayBuffer:readonly */\nvar hasElementType = typeof Element !== 'undefined';\nvar hasMap = typeof Map === 'function';\nvar hasSet = typeof Set === 'function';\nvar hasArrayBuffer = typeof ArrayBuffer === 'function' && !!ArrayBuffer.isView; // Note: We **don't** need `envHasBigInt64Array` in fde es6/index.js\n\nfunction equal(a, b) {\n // START: fast-deep-equal es6/index.js 3.1.1\n if (a === b) return true;\n\n if (a && b && typeof a == 'object' && typeof b == 'object') {\n if (a.constructor !== b.constructor) return false;\n var length, i, keys;\n\n if (Array.isArray(a)) {\n length = a.length;\n if (length != b.length) return false;\n\n for (i = length; i-- !== 0;) {\n if (!equal(a[i], b[i])) return false;\n }\n\n return true;\n } // START: Modifications:\n // 1. Extra `has<Type> &&` helpers in initial condition allow es6 code\n // to co-exist with es5.\n // 2. Replace `for of` with es5 compliant iteration using `for`.\n // Basically, take:\n //\n // ```js\n // for (i of a.entries())\n // if (!b.has(i[0])) return false;\n // ```\n //\n // ... and convert to:\n //\n // ```js\n // it = a.entries();\n // while (!(i = it.next()).done)\n // if (!b.has(i.value[0])) return false;\n // ```\n //\n // **Note**: `i` access switches to `i.value`.\n\n\n var it;\n\n if (hasMap && a instanceof Map && b instanceof Map) {\n if (a.size !== b.size) return false;\n it = a.entries();\n\n while (!(i = it.next()).done) {\n if (!b.has(i.value[0])) return false;\n }\n\n it = a.entries();\n\n while (!(i = it.next()).done) {\n if (!equal(i.value[1], b.get(i.value[0]))) return false;\n }\n\n return true;\n }\n\n if (hasSet && a instanceof Set && b instanceof Set) {\n if (a.size !== b.size) return false;\n it = a.entries();\n\n while (!(i = it.next()).done) {\n if (!b.has(i.value[0])) return false;\n }\n\n return true;\n } // END: Modifications\n\n\n if (hasArrayBuffer && ArrayBuffer.isView(a) && ArrayBuffer.isView(b)) {\n length = a.length;\n if (length != b.length) return false;\n\n for (i = length; i-- !== 0;) {\n if (a[i] !== b[i]) return false;\n }\n\n return true;\n }\n\n if (a.constructor === RegExp) return a.source === b.source && a.flags === b.flags;\n if (a.valueOf !== Object.prototype.valueOf) return a.valueOf() === b.valueOf();\n if (a.toString !== Object.prototype.toString) return a.toString() === b.toString();\n keys = Object.keys(a);\n length = keys.length;\n if (length !== Object.keys(b).length) return false;\n\n for (i = length; i-- !== 0;) {\n if (!Object.prototype.hasOwnProperty.call(b, keys[i])) return false;\n } // END: fast-deep-equal\n // START: react-fast-compare\n // custom handling for DOM elements\n\n\n if (hasElementType && a instanceof Element) return false; // custom handling for React/Preact\n\n for (i = length; i-- !== 0;) {\n if ((keys[i] === '_owner' || keys[i] === '__v' || keys[i] === '__o') && a.$$typeof) {\n // React-specific: avoid traversing React elements' _owner\n // Preact-specific: avoid traversing Preact elements' __v and __o\n // __v = $_original / $_vnode\n // __o = $_owner\n // These properties contain circular references and are not needed when\n // comparing the actual elements (and not their owners)\n // .$$typeof and ._store on just reasonable markers of elements\n continue;\n } // all other properties should be traversed as usual\n\n\n if (!equal(a[keys[i]], b[keys[i]])) return false;\n } // END: react-fast-compare\n // START: fast-deep-equal\n\n\n return true;\n }\n\n return a !== a && b !== b;\n} // end fast-deep-equal\n\n\nmodule.exports = function isEqual(a, b) {\n try {\n return equal(a, b);\n } catch (error) {\n if ((error.message || '').match(/stack|recursion/i)) {\n // warn on circular references, don't crash\n // browsers give this different errors name and messages:\n // chrome/safari: \"RangeError\", \"Maximum call stack size exceeded\"\n // firefox: \"InternalError\", too much recursion\"\n // edge: \"Error\", \"Out of stack space\"\n console.warn('react-fast-compare cannot handle circular refs');\n return false;\n } // some other error. we should definitely know about these\n\n\n throw error;\n }\n};","import React from 'react';\nimport PropTypes from 'prop-types';\nimport Helmet from 'react-helmet';\n\nconst Seo = ({lang, title, description}) => {\n return (\n <Helmet>\n <meta charSet=\"UTF-8\" />\n <html lang={lang} />\n <title>{title}</title>\n <meta name=\"description\" content={description} />\n </Helmet>\n );\n};\n\nSeo.propTypes = {\n lang: PropTypes.string.isRequired,\n title: PropTypes.string.isRequired,\n description: PropTypes.string.isRequired,\n};\n\nexport default Seo;\n","\nconst defaultLangKey = 'en';\n\nconst resolveI18nPath = langKey => path =>\n langKey === defaultLangKey ? path : `${langKey}/${path}`;\n\nmodule.exports = {\n defaultLangKey,\n resolveI18nPath\n};\n","import PropTypes from 'prop-types';\nimport withSideEffect from 'react-side-effect';\nimport isEqual from 'react-fast-compare';\nimport React from 'react';\nimport objectAssign from 'object-assign';\nvar ATTRIBUTE_NAMES = {\n BODY: \"bodyAttributes\",\n HTML: \"htmlAttributes\",\n TITLE: \"titleAttributes\"\n};\nvar TAG_NAMES = {\n BASE: \"base\",\n BODY: \"body\",\n HEAD: \"head\",\n HTML: \"html\",\n LINK: \"link\",\n META: \"meta\",\n NOSCRIPT: \"noscript\",\n SCRIPT: \"script\",\n STYLE: \"style\",\n TITLE: \"title\"\n};\nvar VALID_TAG_NAMES = Object.keys(TAG_NAMES).map(function (name) {\n return TAG_NAMES[name];\n});\nvar TAG_PROPERTIES = {\n CHARSET: \"charset\",\n CSS_TEXT: \"cssText\",\n HREF: \"href\",\n HTTPEQUIV: \"http-equiv\",\n INNER_HTML: \"innerHTML\",\n ITEM_PROP: \"itemprop\",\n NAME: \"name\",\n PROPERTY: \"property\",\n REL: \"rel\",\n SRC: \"src\",\n TARGET: \"target\"\n};\nvar REACT_TAG_MAP = {\n accesskey: \"accessKey\",\n charset: \"charSet\",\n class: \"className\",\n contenteditable: \"contentEditable\",\n contextmenu: \"contextMenu\",\n \"http-equiv\": \"httpEquiv\",\n itemprop: \"itemProp\",\n tabindex: \"tabIndex\"\n};\nvar HELMET_PROPS = {\n DEFAULT_TITLE: \"defaultTitle\",\n DEFER: \"defer\",\n ENCODE_SPECIAL_CHARACTERS: \"encodeSpecialCharacters\",\n ON_CHANGE_CLIENT_STATE: \"onChangeClientState\",\n TITLE_TEMPLATE: \"titleTemplate\"\n};\nvar HTML_TAG_MAP = Object.keys(REACT_TAG_MAP).reduce(function (obj, key) {\n obj[REACT_TAG_MAP[key]] = key;\n return obj;\n}, {});\nvar SELF_CLOSING_TAGS = [TAG_NAMES.NOSCRIPT, TAG_NAMES.SCRIPT, TAG_NAMES.STYLE];\nvar HELMET_ATTRIBUTE = \"data-react-helmet\";\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) {\n return typeof obj;\n} : function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n};\n\nvar classCallCheck = function classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n};\n\nvar createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\n\nvar _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n};\n\nvar inherits = function inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n};\n\nvar objectWithoutProperties = function objectWithoutProperties(obj, keys) {\n var target = {};\n\n for (var i in obj) {\n if (keys.indexOf(i) >= 0) continue;\n if (!Object.prototype.hasOwnProperty.call(obj, i)) continue;\n target[i] = obj[i];\n }\n\n return target;\n};\n\nvar possibleConstructorReturn = function possibleConstructorReturn(self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n};\n\nvar encodeSpecialCharacters = function encodeSpecialCharacters(str) {\n var encode = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n\n if (encode === false) {\n return String(str);\n }\n\n return String(str).replace(/&/g, \"&\").replace(/</g, \"<\").replace(/>/g, \">\").replace(/\"/g, \""\").replace(/'/g, \"'\");\n};\n\nvar getTitleFromPropsList = function getTitleFromPropsList(propsList) {\n var innermostTitle = getInnermostProperty(propsList, TAG_NAMES.TITLE);\n var innermostTemplate = getInnermostProperty(propsList, HELMET_PROPS.TITLE_TEMPLATE);\n\n if (innermostTemplate && innermostTitle) {\n // use function arg to avoid need to escape $ characters\n return innermostTemplate.replace(/%s/g, function () {\n return Array.isArray(innermostTitle) ? innermostTitle.join(\"\") : innermostTitle;\n });\n }\n\n var innermostDefaultTitle = getInnermostProperty(propsList, HELMET_PROPS.DEFAULT_TITLE);\n return innermostTitle || innermostDefaultTitle || undefined;\n};\n\nvar getOnChangeClientState = function getOnChangeClientState(propsList) {\n return getInnermostProperty(propsList, HELMET_PROPS.ON_CHANGE_CLIENT_STATE) || function () {};\n};\n\nvar getAttributesFromPropsList = function getAttributesFromPropsList(tagType, propsList) {\n return propsList.filter(function (props) {\n return typeof props[tagType] !== \"undefined\";\n }).map(function (props) {\n return props[tagType];\n }).reduce(function (tagAttrs, current) {\n return _extends({}, tagAttrs, current);\n }, {});\n};\n\nvar getBaseTagFromPropsList = function getBaseTagFromPropsList(primaryAttributes, propsList) {\n return propsList.filter(function (props) {\n return typeof props[TAG_NAMES.BASE] !== \"undefined\";\n }).map(function (props) {\n return props[TAG_NAMES.BASE];\n }).reverse().reduce(function (innermostBaseTag, tag) {\n if (!innermostBaseTag.length) {\n var keys = Object.keys(tag);\n\n for (var i = 0; i < keys.length; i++) {\n var attributeKey = keys[i];\n var lowerCaseAttributeKey = attributeKey.toLowerCase();\n\n if (primaryAttributes.indexOf(lowerCaseAttributeKey) !== -1 && tag[lowerCaseAttributeKey]) {\n return innermostBaseTag.concat(tag);\n }\n }\n }\n\n return innermostBaseTag;\n }, []);\n};\n\nvar getTagsFromPropsList = function getTagsFromPropsList(tagName, primaryAttributes, propsList) {\n // Calculate list of tags, giving priority innermost component (end of the propslist)\n var approvedSeenTags = {};\n return propsList.filter(function (props) {\n if (Array.isArray(props[tagName])) {\n return true;\n }\n\n if (typeof props[tagName] !== \"undefined\") {\n warn(\"Helmet: \" + tagName + \" should be of type \\\"Array\\\". Instead found type \\\"\" + _typeof(props[tagName]) + \"\\\"\");\n }\n\n return false;\n }).map(function (props) {\n return props[tagName];\n }).reverse().reduce(function (approvedTags, instanceTags) {\n var instanceSeenTags = {};\n instanceTags.filter(function (tag) {\n var primaryAttributeKey = void 0;\n var keys = Object.keys(tag);\n\n for (var i = 0; i < keys.length; i++) {\n var attributeKey = keys[i];\n var lowerCaseAttributeKey = attributeKey.toLowerCase(); // Special rule with link tags, since rel and href are both primary tags, rel takes priority\n\n if (primaryAttributes.indexOf(lowerCaseAttributeKey) !== -1 && !(primaryAttributeKey === TAG_PROPERTIES.REL && tag[primaryAttributeKey].toLowerCase() === \"canonical\") && !(lowerCaseAttributeKey === TAG_PROPERTIES.REL && tag[lowerCaseAttributeKey].toLowerCase() === \"stylesheet\")) {\n primaryAttributeKey = lowerCaseAttributeKey;\n } // Special case for innerHTML which doesn't work lowercased\n\n\n if (primaryAttributes.indexOf(attributeKey) !== -1 && (attributeKey === TAG_PROPERTIES.INNER_HTML || attributeKey === TAG_PROPERTIES.CSS_TEXT || attributeKey === TAG_PROPERTIES.ITEM_PROP)) {\n primaryAttributeKey = attributeKey;\n }\n }\n\n if (!primaryAttributeKey || !tag[primaryAttributeKey]) {\n return false;\n }\n\n var value = tag[primaryAttributeKey].toLowerCase();\n\n if (!approvedSeenTags[primaryAttributeKey]) {\n approvedSeenTags[primaryAttributeKey] = {};\n }\n\n if (!instanceSeenTags[primaryAttributeKey]) {\n instanceSeenTags[primaryAttributeKey] = {};\n }\n\n if (!approvedSeenTags[primaryAttributeKey][value]) {\n instanceSeenTags[primaryAttributeKey][value] = true;\n return true;\n }\n\n return false;\n }).reverse().forEach(function (tag) {\n return approvedTags.push(tag);\n }); // Update seen tags with tags from this instance\n\n var keys = Object.keys(instanceSeenTags);\n\n for (var i = 0; i < keys.length; i++) {\n var attributeKey = keys[i];\n var tagUnion = objectAssign({}, approvedSeenTags[attributeKey], instanceSeenTags[attributeKey]);\n approvedSeenTags[attributeKey] = tagUnion;\n }\n\n return approvedTags;\n }, []).reverse();\n};\n\nvar getInnermostProperty = function getInnermostProperty(propsList, property) {\n for (var i = propsList.length - 1; i >= 0; i--) {\n var props = propsList[i];\n\n if (props.hasOwnProperty(property)) {\n return props[property];\n }\n }\n\n return null;\n};\n\nvar reducePropsToState = function reducePropsToState(propsList) {\n return {\n baseTag: getBaseTagFromPropsList([TAG_PROPERTIES.HREF, TAG_PROPERTIES.TARGET], propsList),\n bodyAttributes: getAttributesFromPropsList(ATTRIBUTE_NAMES.BODY, propsList),\n defer: getInnermostProperty(propsList, HELMET_PROPS.DEFER),\n encode: getInnermostProperty(propsList, HELMET_PROPS.ENCODE_SPECIAL_CHARACTERS),\n htmlAttributes: getAttributesFromPropsList(ATTRIBUTE_NAMES.HTML, propsList),\n linkTags: getTagsFromPropsList(TAG_NAMES.LINK, [TAG_PROPERTIES.REL, TAG_PROPERTIES.HREF], propsList),\n metaTags: getTagsFromPropsList(TAG_NAMES.META, [TAG_PROPERTIES.NAME, TAG_PROPERTIES.CHARSET, TAG_PROPERTIES.HTTPEQUIV, TAG_PROPERTIES.PROPERTY, TAG_PROPERTIES.ITEM_PROP], propsList),\n noscriptTags: getTagsFromPropsList(TAG_NAMES.NOSCRIPT, [TAG_PROPERTIES.INNER_HTML], propsList),\n onChangeClientState: getOnChangeClientState(propsList),\n scriptTags: getTagsFromPropsList(TAG_NAMES.SCRIPT, [TAG_PROPERTIES.SRC, TAG_PROPERTIES.INNER_HTML], propsList),\n styleTags: getTagsFromPropsList(TAG_NAMES.STYLE, [TAG_PROPERTIES.CSS_TEXT], propsList),\n title: getTitleFromPropsList(propsList),\n titleAttributes: getAttributesFromPropsList(ATTRIBUTE_NAMES.TITLE, propsList)\n };\n};\n\nvar rafPolyfill = function () {\n var clock = Date.now();\n return function (callback) {\n var currentTime = Date.now();\n\n if (currentTime - clock > 16) {\n clock = currentTime;\n callback(currentTime);\n } else {\n setTimeout(function () {\n rafPolyfill(callback);\n }, 0);\n }\n };\n}();\n\nvar cafPolyfill = function cafPolyfill(id) {\n return clearTimeout(id);\n};\n\nvar requestAnimationFrame = typeof window !== \"undefined\" ? window.requestAnimationFrame && window.requestAnimationFrame.bind(window) || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || rafPolyfill : global.requestAnimationFrame || rafPolyfill;\nvar cancelAnimationFrame = typeof window !== \"undefined\" ? window.cancelAnimationFrame || window.webkitCancelAnimationFrame || window.mozCancelAnimationFrame || cafPolyfill : global.cancelAnimationFrame || cafPolyfill;\n\nvar warn = function warn(msg) {\n return console && typeof console.warn === \"function\" && console.warn(msg);\n};\n\nvar _helmetCallback = null;\n\nvar handleClientStateChange = function handleClientStateChange(newState) {\n if (_helmetCallback) {\n cancelAnimationFrame(_helmetCallback);\n }\n\n if (newState.defer) {\n _helmetCallback = requestAnimationFrame(function () {\n commitTagChanges(newState, function () {\n _helmetCallback = null;\n });\n });\n } else {\n commitTagChanges(newState);\n _helmetCallback = null;\n }\n};\n\nvar commitTagChanges = function commitTagChanges(newState, cb) {\n var baseTag = newState.baseTag,\n bodyAttributes = newState.bodyAttributes,\n htmlAttributes = newState.htmlAttributes,\n linkTags = newState.linkTags,\n metaTags = newState.metaTags,\n noscriptTags = newState.noscriptTags,\n onChangeClientState = newState.onChangeClientState,\n scriptTags = newState.scriptTags,\n styleTags = newState.styleTags,\n title = newState.title,\n titleAttributes = newState.titleAttributes;\n updateAttributes(TAG_NAMES.BODY, bodyAttributes);\n updateAttributes(TAG_NAMES.HTML, htmlAttributes);\n updateTitle(title, titleAttributes);\n var tagUpdates = {\n baseTag: updateTags(TAG_NAMES.BASE, baseTag),\n linkTags: updateTags(TAG_NAMES.LINK, linkTags),\n metaTags: updateTags(TAG_NAMES.META, metaTags),\n noscriptTags: updateTags(TAG_NAMES.NOSCRIPT, noscriptTags),\n scriptTags: updateTags(TAG_NAMES.SCRIPT, scriptTags),\n styleTags: updateTags(TAG_NAMES.STYLE, styleTags)\n };\n var addedTags = {};\n var removedTags = {};\n Object.keys(tagUpdates).forEach(function (tagType) {\n var _tagUpdates$tagType = tagUpdates[tagType],\n newTags = _tagUpdates$tagType.newTags,\n oldTags = _tagUpdates$tagType.oldTags;\n\n if (newTags.length) {\n addedTags[tagType] = newTags;\n }\n\n if (oldTags.length) {\n removedTags[tagType] = tagUpdates[tagType].oldTags;\n }\n });\n cb && cb();\n onChangeClientState(newState, addedTags, removedTags);\n};\n\nvar flattenArray = function flattenArray(possibleArray) {\n return Array.isArray(possibleArray) ? possibleArray.join(\"\") : possibleArray;\n};\n\nvar updateTitle = function updateTitle(title, attributes) {\n if (typeof title !== \"undefined\" && document.title !== title) {\n document.title = flattenArray(title);\n }\n\n updateAttributes(TAG_NAMES.TITLE, attributes);\n};\n\nvar updateAttributes = function updateAttributes(tagName, attributes) {\n var elementTag = document.getElementsByTagName(tagName)[0];\n\n if (!elementTag) {\n return;\n }\n\n var helmetAttributeString = elementTag.getAttribute(HELMET_ATTRIBUTE);\n var helmetAttributes = helmetAttributeString ? helmetAttributeString.split(\",\") : [];\n var attributesToRemove = [].concat(helmetAttributes);\n var attributeKeys = Object.keys(attributes);\n\n for (var i = 0; i < attributeKeys.length; i++) {\n var attribute = attributeKeys[i];\n var value = attributes[attribute] || \"\";\n\n if (elementTag.getAttribute(attribute) !== value) {\n elementTag.setAttribute(attribute, value);\n }\n\n if (helmetAttributes.indexOf(attribute) === -1) {\n helmetAttributes.push(attribute);\n }\n\n var indexToSave = attributesToRemove.indexOf(attribute);\n\n if (indexToSave !== -1) {\n attributesToRemove.splice(indexToSave, 1);\n }\n }\n\n for (var _i = attributesToRemove.length - 1; _i >= 0; _i--) {\n elementTag.removeAttribute(attributesToRemove[_i]);\n }\n\n if (helmetAttributes.length === attributesToRemove.length) {\n elementTag.removeAttribute(HELMET_ATTRIBUTE);\n } else if (elementTag.getAttribute(HELMET_ATTRIBUTE) !== attributeKeys.join(\",\")) {\n elementTag.setAttribute(HELMET_ATTRIBUTE, attributeKeys.join(\",\"));\n }\n};\n\nvar updateTags = function updateTags(type, tags) {\n var headElement = document.head || document.querySelector(TAG_NAMES.HEAD);\n var tagNodes = headElement.querySelectorAll(type + \"[\" + HELMET_ATTRIBUTE + \"]\");\n var oldTags = Array.prototype.slice.call(tagNodes);\n var newTags = [];\n var indexToDelete = void 0;\n\n if (tags && tags.length) {\n tags.forEach(function (tag) {\n var newElement = document.createElement(type);\n\n for (var attribute in tag) {\n if (tag.hasOwnProperty(attribute)) {\n if (attribute === TAG_PROPERTIES.INNER_HTML) {\n newElement.innerHTML = tag.innerHTML;\n } else if (attribute === TAG_PROPERTIES.CSS_TEXT) {\n if (newElement.styleSheet) {\n newElement.styleSheet.cssText = tag.cssText;\n } else {\n newElement.appendChild(document.createTextNode(tag.cssText));\n }\n } else {\n var value = typeof tag[attribute] === \"undefined\" ? \"\" : tag[attribute];\n newElement.setAttribute(attribute, value);\n }\n }\n }\n\n newElement.setAttribute(HELMET_ATTRIBUTE, \"true\"); // Remove a duplicate tag from domTagstoRemove, so it isn't cleared.\n\n if (oldTags.some(function (existingTag, index) {\n indexToDelete = index;\n return newElement.isEqualNode(existingTag);\n })) {\n oldTags.splice(indexToDelete, 1);\n } else {\n newTags.push(newElement);\n }\n });\n }\n\n oldTags.forEach(function (tag) {\n return tag.parentNode.removeChild(tag);\n });\n newTags.forEach(function (tag) {\n return headElement.appendChild(tag);\n });\n return {\n oldTags: oldTags,\n newTags: newTags\n };\n};\n\nvar generateElementAttributesAsString = function generateElementAttributesAsString(attributes) {\n return Object.keys(attributes).reduce(function (str, key) {\n var attr = typeof attributes[key] !== \"undefined\" ? key + \"=\\\"\" + attributes[key] + \"\\\"\" : \"\" + key;\n return str ? str + \" \" + attr : attr;\n }, \"\");\n};\n\nvar generateTitleAsString = function generateTitleAsString(type, title, attributes, encode) {\n var attributeString = generateElementAttributesAsString(attributes);\n var flattenedTitle = flattenArray(title);\n return attributeString ? \"<\" + type + \" \" + HELMET_ATTRIBUTE + \"=\\\"true\\\" \" + attributeString + \">\" + encodeSpecialCharacters(flattenedTitle, encode) + \"</\" + type + \">\" : \"<\" + type + \" \" + HELMET_ATTRIBUTE + \"=\\\"true\\\">\" + encodeSpecialCharacters(flattenedTitle, encode) + \"</\" + type + \">\";\n};\n\nvar generateTagsAsString = function generateTagsAsString(type, tags, encode) {\n return tags.reduce(function (str, tag) {\n var attributeHtml = Object.keys(tag).filter(function (attribute) {\n return !(attribute === TAG_PROPERTIES.INNER_HTML || attribute === TAG_PROPERTIES.CSS_TEXT);\n }).reduce(function (string, attribute) {\n var attr = typeof tag[attribute] === \"undefined\" ? attribute : attribute + \"=\\\"\" + encodeSpecialCharacters(tag[attribute], encode) + \"\\\"\";\n return string ? string + \" \" + attr : attr;\n }, \"\");\n var tagContent = tag.innerHTML || tag.cssText || \"\";\n var isSelfClosing = SELF_CLOSING_TAGS.indexOf(type) === -1;\n return str + \"<\" + type + \" \" + HELMET_ATTRIBUTE + \"=\\\"true\\\" \" + attributeHtml + (isSelfClosing ? \"/>\" : \">\" + tagContent + \"</\" + type + \">\");\n }, \"\");\n};\n\nvar convertElementAttributestoReactProps = function convertElementAttributestoReactProps(attributes) {\n var initProps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return Object.keys(attributes).reduce(function (obj, key) {\n obj[REACT_TAG_MAP[key] || key] = attributes[key];\n return obj;\n }, initProps);\n};\n\nvar convertReactPropstoHtmlAttributes = function convertReactPropstoHtmlAttributes(props) {\n var initAttributes = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return Object.keys(props).reduce(function (obj, key) {\n obj[HTML_TAG_MAP[key] || key] = props[key];\n return obj;\n }, initAttributes);\n};\n\nvar generateTitleAsReactComponent = function generateTitleAsReactComponent(type, title, attributes) {\n var _initProps; // assigning into an array to define toString function on it\n\n\n var initProps = (_initProps = {\n key: title\n }, _initProps[HELMET_ATTRIBUTE] = true, _initProps);\n var props = convertElementAttributestoReactProps(attributes, initProps);\n return [React.createElement(TAG_NAMES.TITLE, props, title)];\n};\n\nvar generateTagsAsReactComponent = function generateTagsAsReactComponent(type, tags) {\n return tags.map(function (tag, i) {\n var _mappedTag;\n\n var mappedTag = (_mappedTag = {\n key: i\n }, _mappedTag[HELMET_ATTRIBUTE] = true, _mappedTag);\n Object.keys(tag).forEach(function (attribute) {\n var mappedAttribute = REACT_TAG_MAP[attribute] || attribute;\n\n if (mappedAttribute === TAG_PROPERTIES.INNER_HTML || mappedAttribute === TAG_PROPERTIES.CSS_TEXT) {\n var content = tag.innerHTML || tag.cssText;\n mappedTag.dangerouslySetInnerHTML = {\n __html: content\n };\n } else {\n mappedTag[mappedAttribute] = tag[attribute];\n }\n });\n return React.createElement(type, mappedTag);\n });\n};\n\nvar getMethodsForTag = function getMethodsForTag(type, tags, encode) {\n switch (type) {\n case TAG_NAMES.TITLE:\n return {\n toComponent: function toComponent() {\n return generateTitleAsReactComponent(type, tags.title, tags.titleAttributes, encode);\n },\n toString: function toString() {\n return generateTitleAsString(type, tags.title, tags.titleAttributes, encode);\n }\n };\n\n case ATTRIBUTE_NAMES.BODY:\n case ATTRIBUTE_NAMES.HTML:\n return {\n toComponent: function toComponent() {\n return convertElementAttributestoReactProps(tags);\n },\n toString: function toString() {\n return generateElementAttributesAsString(tags);\n }\n };\n\n default:\n return {\n toComponent: function toComponent() {\n return generateTagsAsReactComponent(type, tags);\n },\n toString: function toString() {\n return generateTagsAsString(type, tags, encode);\n }\n };\n }\n};\n\nvar mapStateOnServer = function mapStateOnServer(_ref) {\n var baseTag = _ref.baseTag,\n bodyAttributes = _ref.bodyAttributes,\n encode = _ref.encode,\n htmlAttributes = _ref.htmlAttributes,\n linkTags = _ref.linkTags,\n metaTags = _ref.metaTags,\n noscriptTags = _ref.noscriptTags,\n scriptTags = _ref.scriptTags,\n styleTags = _ref.styleTags,\n _ref$title = _ref.title,\n title = _ref$title === undefined ? \"\" : _ref$title,\n titleAttributes = _ref.titleAttributes;\n return {\n base: getMethodsForTag(TAG_NAMES.BASE, baseTag, encode),\n bodyAttributes: getMethodsForTag(ATTRIBUTE_NAMES.BODY, bodyAttributes, encode),\n htmlAttributes: getMethodsForTag(ATTRIBUTE_NAMES.HTML, htmlAttributes, encode),\n link: getMethodsForTag(TAG_NAMES.LINK, linkTags, encode),\n meta: getMethodsForTag(TAG_NAMES.META, metaTags, encode),\n noscript: getMethodsForTag(TAG_NAMES.NOSCRIPT, noscriptTags, encode),\n script: getMethodsForTag(TAG_NAMES.SCRIPT, scriptTags, encode),\n style: getMethodsForTag(TAG_NAMES.STYLE, styleTags, encode),\n title: getMethodsForTag(TAG_NAMES.TITLE, {\n title: title,\n titleAttributes: titleAttributes\n }, encode)\n };\n};\n\nvar Helmet = function Helmet(Component) {\n var _class, _temp;\n\n return _temp = _class = function (_React$Component) {\n inherits(HelmetWrapper, _React$Component);\n\n function HelmetWrapper() {\n classCallCheck(this, HelmetWrapper);\n return possibleConstructorReturn(this, _React$Component.apply(this, arguments));\n }\n\n HelmetWrapper.prototype.shouldComponentUpdate = function shouldComponentUpdate(nextProps) {\n return !isEqual(this.props, nextProps);\n };\n\n HelmetWrapper.prototype.mapNestedChildrenToProps = function mapNestedChildrenToProps(child, nestedChildren) {\n if (!nestedChildren) {\n return null;\n }\n\n switch (child.type) {\n case TAG_NAMES.SCRIPT:\n case TAG_NAMES.NOSCRIPT:\n return {\n innerHTML: nestedChildren\n };\n\n case TAG_NAMES.STYLE:\n return {\n cssText: nestedChildren\n };\n }\n\n throw new Error(\"<\" + child.type + \" /> elements are self-closing and can not contain children. Refer to our API for more information.\");\n };\n\n HelmetWrapper.prototype.flattenArrayTypeChildren = function flattenArrayTypeChildren(_ref) {\n var _babelHelpers$extends;\n\n var child = _ref.child,\n arrayTypeChildren = _ref.arrayTypeChildren,\n newChildProps = _ref.newChildProps,\n nestedChildren = _ref.nestedChildren;\n return _extends({}, arrayTypeChildren, (_babelHelpers$extends = {}, _babelHelpers$extends[child.type] = [].concat(arrayTypeChildren[child.type] || [], [_extends({}, newChildProps, this.mapNestedChildrenToProps(child, nestedChildren))]), _babelHelpers$extends));\n };\n\n HelmetWrapper.prototype.mapObjectTypeChildren = function mapObjectTypeChildren(_ref2) {\n var _babelHelpers$extends2, _babelHelpers$extends3;\n\n var child = _ref2.child,\n newProps = _ref2.newProps,\n newChildProps = _ref2.newChildProps,\n nestedChildren = _ref2.nestedChildren;\n\n switch (child.type) {\n case TAG_NAMES.TITLE:\n return _extends({}, newProps, (_babelHelpers$extends2 = {}, _babelHelpers$extends2[child.type] = nestedChildren, _babelHelpers$extends2.titleAttributes = _extends({}, newChildProps), _babelHelpers$extends2));\n\n case TAG_NAMES.BODY:\n return _extends({}, newProps, {\n bodyAttributes: _extends({}, newChildProps)\n });\n\n case TAG_NAMES.HTML:\n return _extends({}, newProps, {\n htmlAttributes: _extends({}, newChildProps)\n });\n }\n\n return _extends({}, newProps, (_babelHelpers$extends3 = {}, _babelHelpers$extends3[child.type] = _extends({}, newChildProps), _babelHelpers$extends3));\n };\n\n HelmetWrapper.prototype.mapArrayTypeChildrenToProps = function mapArrayTypeChildrenToProps(arrayTypeChildren, newProps) {\n var newFlattenedProps = _extends({}, newProps);\n\n Object.keys(arrayTypeChildren).forEach(function (arrayChildName) {\n var _babelHelpers$extends4;\n\n newFlattenedProps = _extends({}, newFlattenedProps, (_babelHelpers$extends4 = {}, _babelHelpers$extends4[arrayChildName] = arrayTypeChildren[arrayChildName], _babelHelpers$extends4));\n });\n return newFlattenedProps;\n };\n\n HelmetWrapper.prototype.warnOnInvalidChildren = function warnOnInvalidChildren(child, nestedChildren) {\n if (process.env.NODE_ENV !== \"production\") {\n if (!VALID_TAG_NAMES.some(function (name) {\n return child.type === name;\n })) {\n if (typeof child.type === \"function\") {\n return warn(\"You may be attempting to nest <Helmet> components within each other, which is not allowed. Refer to our API for more information.\");\n }\n\n return warn(\"Only elements types \" + VALID_TAG_NAMES.join(\", \") + \" are allowed. Helmet does not support rendering <\" + child.type + \"> elements. Refer to our API for more information.\");\n }\n\n if (nestedChildren && typeof nestedChildren !== \"string\" && (!Array.isArray(nestedChildren) || nestedChildren.some(function (nestedChild) {\n return typeof nestedChild !== \"string\";\n }))) {\n throw new Error(\"Helmet expects a string as a child of <\" + child.type + \">. Did you forget to wrap your children in braces? ( <\" + child.type + \">{``}</\" + child.type + \"> ) Refer to our API for more information.\");\n }\n }\n\n return true;\n };\n\n HelmetWrapper.prototype.mapChildrenToProps = function mapChildrenToProps(children, newProps) {\n var _this2 = this;\n\n var arrayTypeChildren = {};\n React.Children.forEach(children, function (child) {\n if (!child || !child.props) {\n return;\n }\n\n var _child$props = child.props,\n nestedChildren = _child$props.children,\n childProps = objectWithoutProperties(_child$props, [\"children\"]);\n var newChildProps = convertReactPropstoHtmlAttributes(childProps);\n\n _this2.warnOnInvalidChildren(child, nestedChildren);\n\n switch (child.type) {\n case TAG_NAMES.LINK:\n case TAG_NAMES.META:\n case TAG_NAMES.NOSCRIPT:\n case TAG_NAMES.SCRIPT:\n case TAG_NAMES.STYLE:\n arrayTypeChildren = _this2.flattenArrayTypeChildren({\n child: child,\n arrayTypeChildren: arrayTypeChildren,\n newChildProps: newChildProps,\n nestedChildren: nestedChildren\n });\n break;\n\n default:\n newProps = _this2.mapObjectTypeChildren({\n child: child,\n newProps: newProps,\n newChildProps: newChildProps,\n nestedChildren: nestedChildren\n });\n break;\n }\n });\n newProps = this.mapArrayTypeChildrenToProps(arrayTypeChildren, newProps);\n return newProps;\n };\n\n HelmetWrapper.prototype.render = function render() {\n var _props = this.props,\n children = _props.children,\n props = objectWithoutProperties(_props, [\"children\"]);\n\n var newProps = _extends({}, props);\n\n if (children) {\n newProps = this.mapChildrenToProps(children, newProps);\n }\n\n return React.createElement(Component, newProps);\n };\n\n createClass(HelmetWrapper, null, [{\n key: \"canUseDOM\",\n // Component.peek comes from react-side-effect:\n // For testing, you may use a static peek() method available on the returned component.\n // It lets you get the current state without resetting the mounted instance stack.\n // Don’t use it for anything other than testing.\n\n /**\n * @param {Object} base: {\"target\": \"_blank\", \"href\": \"http://mysite.com/\"}\n * @param {Object} bodyAttributes: {\"className\": \"root\"}\n * @param {String} defaultTitle: \"Default Title\"\n * @param {Boolean} defer: true\n * @param {Boolean} encodeSpecialCharacters: true\n * @param {Object} htmlAttributes: {\"lang\": \"en\", \"amp\": undefined}\n * @param {Array} link: [{\"rel\": \"canonical\", \"href\": \"http://mysite.com/example\"}]\n * @param {Array} meta: [{\"name\": \"description\", \"content\": \"Test description\"}]\n * @param {Array} noscript: [{\"innerHTML\": \"<img src='http://mysite.com/js/test.js'\"}]\n * @param {Function} onChangeClientState: \"(newState) => console.log(newState)\"\n * @param {Array} script: [{\"type\": \"text/javascript\", \"src\": \"http://mysite.com/js/test.js\"}]\n * @param {Array} style: [{\"type\": \"text/css\", \"cssText\": \"div { display: block; color: blue; }\"}]\n * @param {String} title: \"Title\"\n * @param {Object} titleAttributes: {\"itemprop\": \"name\"}\n * @param {String} titleTemplate: \"MySite.com - %s\"\n */\n set: function set$$1(canUseDOM) {\n Component.canUseDOM = canUseDOM;\n }\n }]);\n return HelmetWrapper;\n }(React.Component), _class.propTypes = {\n base: PropTypes.object,\n bodyAttributes: PropTypes.object,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n defaultTitle: PropTypes.string,\n defer: PropTypes.bool,\n encodeSpecialCharacters: PropTypes.bool,\n htmlAttributes: PropTypes.object,\n link: PropTypes.arrayOf(PropTypes.object),\n meta: PropTypes.arrayOf(PropTypes.object),\n noscript: PropTypes.arrayOf(PropTypes.object),\n onChangeClientState: PropTypes.func,\n script: PropTypes.arrayOf(PropTypes.object),\n style: PropTypes.arrayOf(PropTypes.object),\n title: PropTypes.string,\n titleAttributes: PropTypes.object,\n titleTemplate: PropTypes.string\n }, _class.defaultProps = {\n defer: true,\n encodeSpecialCharacters: true\n }, _class.peek = Component.peek, _class.rewind = function () {\n var mappedState = Component.rewind();\n\n if (!mappedState) {\n // provide fallback if mappedState is undefined\n mappedState = mapStateOnServer({\n baseTag: [],\n bodyAttributes: {},\n encodeSpecialCharacters: true,\n htmlAttributes: {},\n linkTags: [],\n metaTags: [],\n noscriptTags: [],\n scriptTags: [],\n styleTags: [],\n title: \"\",\n titleAttributes: {}\n });\n }\n\n return mappedState;\n }, _temp;\n};\n\nvar NullComponent = function NullComponent() {\n return null;\n};\n\nvar HelmetSideEffects = withSideEffect(reducePropsToState, handleClientStateChange, mapStateOnServer)(NullComponent);\nvar HelmetExport = Helmet(HelmetSideEffects);\nHelmetExport.renderStatic = HelmetExport.rewind;\nexport default HelmetExport;\nexport { HelmetExport as Helmet };","module.exports = __webpack_public_path__ + \"static/EF_WHT-OR_png-d0fd43ad31261ee9693a060be920e71e.png\";","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n"],"sourceRoot":""}
\ No newline at end of file
diff --git a/commons-ee34cd715ab4f7da30e0.js b/commons-ee34cd715ab4f7da30e0.js
new file mode 100644
index 0000000..eabea6e
--- /dev/null
+++ b/commons-ee34cd715ab4f7da30e0.js
@@ -0,0 +1,2 @@
+(window.webpackJsonp=window.webpackJsonp||[]).push([[0],{"+5i3":function(e,t,n){},5748:function(e,t){e.exports="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K"},"8+s/":function(e,t,n){"use strict";var r,i=n("q1tI"),o=(r=i)&&"object"==typeof r&&"default"in r?r.default:r;function a(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}var u=!("undefined"==typeof window||!window.document||!window.document.createElement);e.exports=function(e,t,n){if("function"!=typeof e)throw new Error("Expected reducePropsToState to be a function.");if("function"!=typeof t)throw new Error("Expected handleStateChangeOnClient to be a function.");if(void 0!==n&&"function"!=typeof n)throw new Error("Expected mapStateOnServer to either be undefined or a function.");return function(r){if("function"!=typeof r)throw new Error("Expected WrappedComponent to be a React component.");var c,s=[];function l(){c=e(s.map((function(e){return e.props}))),L.canUseDOM?t(c):n&&(c=n(c))}var L=function(e){var t,n;function i(){return e.apply(this,arguments)||this}n=e,(t=i).prototype=Object.create(n.prototype),t.prototype.constructor=t,t.__proto__=n,i.peek=function(){return c},i.rewind=function(){if(i.canUseDOM)throw new Error("You may only call rewind() on the server. Call peek() to read the current state.");var e=c;return c=void 0,s=[],e};var a=i.prototype;return a.UNSAFE_componentWillMount=function(){s.push(this),l()},a.componentDidUpdate=function(){l()},a.componentWillUnmount=function(){var e=s.indexOf(this);s.splice(e,1),l()},a.render=function(){return o.createElement(r,this.props)},i}(i.PureComponent);return a(L,"displayName","SideEffect("+function(e){return e.displayName||e.name||"Component"}(r)+")"),a(L,"canUseDOM",u),L}}},Rb52:function(e,t,n){"use strict";var r=n("q1tI"),i=n.n(r),o=n("Wbzz"),a=n("s/A6"),u=n.n(a),c=n("5748"),s=n.n(c),l=n("kiXb"),L="eclipse-jkube__header",f=function(){return i.a.createElement("span",{className:L+"-trade-mark"},"™")};t.a=function(e){var t=e.lang,n=Object(l.resolveI18nPath)(t);return i.a.createElement("header",{className:L},i.a.createElement("div",{className:L+"-container"},i.a.createElement(o.a,{to:n("/"),className:L+"-logo"},i.a.createElement("div",{className:L+"-logo-eclipse-image"},i.a.createElement("img",{src:u.a,alt:"Eclipse Foundation"})),i.a.createElement("div",{className:L+"-logo-jkube"},i.a.createElement("img",{className:L+"-logo-jkube-image",src:s.a,alt:"JKube"}),i.a.createElement(f,null))),i.a.createElement("div",{className:L+"-content"},i.a.createElement("ul",null,i.a.createElement("li",null,i.a.createElement(o.a,{to:n("/docs")},"Docs")),i.a.createElement("li",null,i.a.createElement(o.a,{to:n("/demos")},"Demos")),i.a.createElement("li",null,i.a.createElement(o.a,{to:n("/community")},"Community")),i.a.createElement("li",null,i.a.createElement(o.a,{to:n("/contributing")},"Contributing")),i.a.createElement("li",null,i.a.createElement("a",{className:L+"-stars",href:"https://github.com/eclipse/jkube",title:"eclipse/jkube",target:"_blank",rel:"nofollow noopener noreferrer"},i.a.createElement("img",{src:"https://img.shields.io/github/stars/eclipse/jkube?style=social",alt:"eclipse/jkube stargazers"})))))))}},bmMU:function(e,t){var n="undefined"!=typeof Element,r="function"==typeof Map,i="function"==typeof Set,o="function"==typeof ArrayBuffer&&!!ArrayBuffer.isView;e.exports=function(e,t){try{return function e(t,a){if(t===a)return!0;if(t&&a&&"object"==typeof t&&"object"==typeof a){if(t.constructor!==a.constructor)return!1;var u,c,s,l;if(Array.isArray(t)){if((u=t.length)!=a.length)return!1;for(c=u;0!=c--;)if(!e(t[c],a[c]))return!1;return!0}if(r&&t instanceof Map&&a instanceof Map){if(t.size!==a.size)return!1;for(l=t.entries();!(c=l.next()).done;)if(!a.has(c.value[0]))return!1;for(l=t.entries();!(c=l.next()).done;)if(!e(c.value[1],a.get(c.value[0])))return!1;return!0}if(i&&t instanceof Set&&a instanceof Set){if(t.size!==a.size)return!1;for(l=t.entries();!(c=l.next()).done;)if(!a.has(c.value[0]))return!1;return!0}if(o&&ArrayBuffer.isView(t)&&ArrayBuffer.isView(a)){if((u=t.length)!=a.length)return!1;for(c=u;0!=c--;)if(t[c]!==a[c])return!1;return!0}if(t.constructor===RegExp)return t.source===a.source&&t.flags===a.flags;if(t.valueOf!==Object.prototype.valueOf)return t.valueOf()===a.valueOf();if(t.toString!==Object.prototype.toString)return t.toString()===a.toString();if((u=(s=Object.keys(t)).length)!==Object.keys(a).length)return!1;for(c=u;0!=c--;)if(!Object.prototype.hasOwnProperty.call(a,s[c]))return!1;if(n&&t instanceof Element)return!1;for(c=u;0!=c--;)if(("_owner"!==s[c]&&"__v"!==s[c]&&"__o"!==s[c]||!t.$$typeof)&&!e(t[s[c]],a[s[c]]))return!1;return!0}return t!=t&&a!=a}(e,t)}catch(a){if((a.message||"").match(/stack|recursion/i))return console.warn("react-fast-compare cannot handle circular refs"),!1;throw a}}},dmsj:function(e,t,n){"use strict";var r=n("q1tI"),i=n.n(r),o=n("qhky");t.a=function(e){var t=e.lang,n=e.title,r=e.description;return i.a.createElement(o.a,null,i.a.createElement("meta",{charSet:"UTF-8"}),i.a.createElement("html",{lang:t}),i.a.createElement("title",null,n),i.a.createElement("meta",{name:"description",content:r}))}},kiXb:function(e,t){e.exports={defaultLangKey:"en",resolveI18nPath:function(e){return function(t){return"en"===e?t:e+"/"+t}}}},qhky:function(e,t,n){"use strict";(function(e){n("RUBk");var r,i,o,a,u=n("17x9"),c=n.n(u),s=n("8+s/"),l=n.n(s),L=n("bmMU"),f=n.n(L),M=n("q1tI"),y=n.n(M),p=n("YVoz"),j=n.n(p),d="bodyAttributes",w="htmlAttributes",T="titleAttributes",m={BASE:"base",BODY:"body",HEAD:"head",HTML:"html",LINK:"link",META:"meta",NOSCRIPT:"noscript",SCRIPT:"script",STYLE:"style",TITLE:"title"},g=(Object.keys(m).map((function(e){return m[e]})),"charset"),C="cssText",h="href",b="http-equiv",S="innerHTML",N="itemprop",E="name",I="property",O="rel",v="src",A="target",x={accesskey:"accessKey",charset:"charSet",class:"className",contenteditable:"contentEditable",contextmenu:"contextMenu","http-equiv":"httpEquiv",itemprop:"itemProp",tabindex:"tabIndex"},D="defaultTitle",k="defer",z="encodeSpecialCharacters",Y="onChangeClientState",P="titleTemplate",Q=Object.keys(x).reduce((function(e,t){return e[x[t]]=t,e}),{}),Z=[m.NOSCRIPT,m.SCRIPT,m.STYLE],J="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},W=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},U=function(){function e(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}}(),G=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e},H=function(e,t){var n={};for(var r in e)t.indexOf(r)>=0||Object.prototype.hasOwnProperty.call(e,r)&&(n[r]=e[r]);return n},R=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t},B=function(e){var t=!(arguments.length>1&&void 0!==arguments[1])||arguments[1];return!1===t?String(e):String(e).replace(/&/g,"&").replace(/</g,"<").replace(/>/g,">").replace(/"/g,""").replace(/'/g,"'")},X=function(e){var t=_(e,m.TITLE),n=_(e,P);if(n&&t)return n.replace(/%s/g,(function(){return Array.isArray(t)?t.join(""):t}));var r=_(e,D);return t||r||void 0},V=function(e){return _(e,Y)||function(){}},K=function(e,t){return t.filter((function(t){return void 0!==t[e]})).map((function(t){return t[e]})).reduce((function(e,t){return G({},e,t)}),{})},q=function(e,t){return t.filter((function(e){return void 0!==e[m.BASE]})).map((function(e){return e[m.BASE]})).reverse().reduce((function(t,n){if(!t.length)for(var r=Object.keys(n),i=0;i<r.length;i++){var o=r[i].toLowerCase();if(-1!==e.indexOf(o)&&n[o])return t.concat(n)}return t}),[])},F=function(e,t,n){var r={};return n.filter((function(t){return!!Array.isArray(t[e])||(void 0!==t[e]&&re("Helmet: "+e+' should be of type "Array". Instead found type "'+J(t[e])+'"'),!1)})).map((function(t){return t[e]})).reverse().reduce((function(e,n){var i={};n.filter((function(e){for(var n=void 0,o=Object.keys(e),a=0;a<o.length;a++){var u=o[a],c=u.toLowerCase();-1===t.indexOf(c)||n===O&&"canonical"===e[n].toLowerCase()||c===O&&"stylesheet"===e[c].toLowerCase()||(n=c),-1===t.indexOf(u)||u!==S&&u!==C&&u!==N||(n=u)}if(!n||!e[n])return!1;var s=e[n].toLowerCase();return r[n]||(r[n]={}),i[n]||(i[n]={}),!r[n][s]&&(i[n][s]=!0,!0)})).reverse().forEach((function(t){return e.push(t)}));for(var o=Object.keys(i),a=0;a<o.length;a++){var u=o[a],c=j()({},r[u],i[u]);r[u]=c}return e}),[]).reverse()},_=function(e,t){for(var n=e.length-1;n>=0;n--){var r=e[n];if(r.hasOwnProperty(t))return r[t]}return null},$=(r=Date.now(),function(e){var t=Date.now();t-r>16?(r=t,e(t)):setTimeout((function(){$(e)}),0)}),ee=function(e){return clearTimeout(e)},te="undefined"!=typeof window?window.requestAnimationFrame&&window.requestAnimationFrame.bind(window)||window.webkitRequestAnimationFrame||window.mozRequestAnimationFrame||$:e.requestAnimationFrame||$,ne="undefined"!=typeof window?window.cancelAnimationFrame||window.webkitCancelAnimationFrame||window.mozCancelAnimationFrame||ee:e.cancelAnimationFrame||ee,re=function(e){return console&&"function"==typeof console.warn&&console.warn(e)},ie=null,oe=function(e,t){var n=e.baseTag,r=e.bodyAttributes,i=e.htmlAttributes,o=e.linkTags,a=e.metaTags,u=e.noscriptTags,c=e.onChangeClientState,s=e.scriptTags,l=e.styleTags,L=e.title,f=e.titleAttributes;ce(m.BODY,r),ce(m.HTML,i),ue(L,f);var M={baseTag:se(m.BASE,n),linkTags:se(m.LINK,o),metaTags:se(m.META,a),noscriptTags:se(m.NOSCRIPT,u),scriptTags:se(m.SCRIPT,s),styleTags:se(m.STYLE,l)},y={},p={};Object.keys(M).forEach((function(e){var t=M[e],n=t.newTags,r=t.oldTags;n.length&&(y[e]=n),r.length&&(p[e]=M[e].oldTags)})),t&&t(),c(e,y,p)},ae=function(e){return Array.isArray(e)?e.join(""):e},ue=function(e,t){void 0!==e&&document.title!==e&&(document.title=ae(e)),ce(m.TITLE,t)},ce=function(e,t){var n=document.getElementsByTagName(e)[0];if(n){for(var r=n.getAttribute("data-react-helmet"),i=r?r.split(","):[],o=[].concat(i),a=Object.keys(t),u=0;u<a.length;u++){var c=a[u],s=t[c]||"";n.getAttribute(c)!==s&&n.setAttribute(c,s),-1===i.indexOf(c)&&i.push(c);var l=o.indexOf(c);-1!==l&&o.splice(l,1)}for(var L=o.length-1;L>=0;L--)n.removeAttribute(o[L]);i.length===o.length?n.removeAttribute("data-react-helmet"):n.getAttribute("data-react-helmet")!==a.join(",")&&n.setAttribute("data-react-helmet",a.join(","))}},se=function(e,t){var n=document.head||document.querySelector(m.HEAD),r=n.querySelectorAll(e+"[data-react-helmet]"),i=Array.prototype.slice.call(r),o=[],a=void 0;return t&&t.length&&t.forEach((function(t){var n=document.createElement(e);for(var r in t)if(t.hasOwnProperty(r))if(r===S)n.innerHTML=t.innerHTML;else if(r===C)n.styleSheet?n.styleSheet.cssText=t.cssText:n.appendChild(document.createTextNode(t.cssText));else{var u=void 0===t[r]?"":t[r];n.setAttribute(r,u)}n.setAttribute("data-react-helmet","true"),i.some((function(e,t){return a=t,n.isEqualNode(e)}))?i.splice(a,1):o.push(n)})),i.forEach((function(e){return e.parentNode.removeChild(e)})),o.forEach((function(e){return n.appendChild(e)})),{oldTags:i,newTags:o}},le=function(e){return Object.keys(e).reduce((function(t,n){var r=void 0!==e[n]?n+'="'+e[n]+'"':""+n;return t?t+" "+r:r}),"")},Le=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Object.keys(e).reduce((function(t,n){return t[x[n]||n]=e[n],t}),t)},fe=function(e,t,n){switch(e){case m.TITLE:return{toComponent:function(){return e=t.title,n=t.titleAttributes,(r={key:e})["data-react-helmet"]=!0,i=Le(n,r),[y.a.createElement(m.TITLE,i,e)];var e,n,r,i},toString:function(){return function(e,t,n,r){var i=le(n),o=ae(t);return i?"<"+e+' data-react-helmet="true" '+i+">"+B(o,r)+"</"+e+">":"<"+e+' data-react-helmet="true">'+B(o,r)+"</"+e+">"}(e,t.title,t.titleAttributes,n)}};case d:case w:return{toComponent:function(){return Le(t)},toString:function(){return le(t)}};default:return{toComponent:function(){return function(e,t){return t.map((function(t,n){var r,i=((r={key:n})["data-react-helmet"]=!0,r);return Object.keys(t).forEach((function(e){var n=x[e]||e;if(n===S||n===C){var r=t.innerHTML||t.cssText;i.dangerouslySetInnerHTML={__html:r}}else i[n]=t[e]})),y.a.createElement(e,i)}))}(e,t)},toString:function(){return function(e,t,n){return t.reduce((function(t,r){var i=Object.keys(r).filter((function(e){return!(e===S||e===C)})).reduce((function(e,t){var i=void 0===r[t]?t:t+'="'+B(r[t],n)+'"';return e?e+" "+i:i}),""),o=r.innerHTML||r.cssText||"",a=-1===Z.indexOf(e);return t+"<"+e+' data-react-helmet="true" '+i+(a?"/>":">"+o+"</"+e+">")}),"")}(e,t,n)}}}},Me=function(e){var t=e.baseTag,n=e.bodyAttributes,r=e.encode,i=e.htmlAttributes,o=e.linkTags,a=e.metaTags,u=e.noscriptTags,c=e.scriptTags,s=e.styleTags,l=e.title,L=void 0===l?"":l,f=e.titleAttributes;return{base:fe(m.BASE,t,r),bodyAttributes:fe(d,n,r),htmlAttributes:fe(w,i,r),link:fe(m.LINK,o,r),meta:fe(m.META,a,r),noscript:fe(m.NOSCRIPT,u,r),script:fe(m.SCRIPT,c,r),style:fe(m.STYLE,s,r),title:fe(m.TITLE,{title:L,titleAttributes:f},r)}},ye=l()((function(e){return{baseTag:q([h,A],e),bodyAttributes:K(d,e),defer:_(e,k),encode:_(e,z),htmlAttributes:K(w,e),linkTags:F(m.LINK,[O,h],e),metaTags:F(m.META,[E,g,b,I,N],e),noscriptTags:F(m.NOSCRIPT,[S],e),onChangeClientState:V(e),scriptTags:F(m.SCRIPT,[v,S],e),styleTags:F(m.STYLE,[C],e),title:X(e),titleAttributes:K(T,e)}}),(function(e){ie&&ne(ie),e.defer?ie=te((function(){oe(e,(function(){ie=null}))})):(oe(e),ie=null)}),Me)((function(){return null})),pe=(i=ye,a=o=function(e){function t(){return W(this,t),R(this,e.apply(this,arguments))}return function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}(t,e),t.prototype.shouldComponentUpdate=function(e){return!f()(this.props,e)},t.prototype.mapNestedChildrenToProps=function(e,t){if(!t)return null;switch(e.type){case m.SCRIPT:case m.NOSCRIPT:return{innerHTML:t};case m.STYLE:return{cssText:t}}throw new Error("<"+e.type+" /> elements are self-closing and can not contain children. Refer to our API for more information.")},t.prototype.flattenArrayTypeChildren=function(e){var t,n=e.child,r=e.arrayTypeChildren,i=e.newChildProps,o=e.nestedChildren;return G({},r,((t={})[n.type]=[].concat(r[n.type]||[],[G({},i,this.mapNestedChildrenToProps(n,o))]),t))},t.prototype.mapObjectTypeChildren=function(e){var t,n,r=e.child,i=e.newProps,o=e.newChildProps,a=e.nestedChildren;switch(r.type){case m.TITLE:return G({},i,((t={})[r.type]=a,t.titleAttributes=G({},o),t));case m.BODY:return G({},i,{bodyAttributes:G({},o)});case m.HTML:return G({},i,{htmlAttributes:G({},o)})}return G({},i,((n={})[r.type]=G({},o),n))},t.prototype.mapArrayTypeChildrenToProps=function(e,t){var n=G({},t);return Object.keys(e).forEach((function(t){var r;n=G({},n,((r={})[t]=e[t],r))})),n},t.prototype.warnOnInvalidChildren=function(e,t){return!0},t.prototype.mapChildrenToProps=function(e,t){var n=this,r={};return y.a.Children.forEach(e,(function(e){if(e&&e.props){var i=e.props,o=i.children,a=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return Object.keys(e).reduce((function(t,n){return t[Q[n]||n]=e[n],t}),t)}(H(i,["children"]));switch(n.warnOnInvalidChildren(e,o),e.type){case m.LINK:case m.META:case m.NOSCRIPT:case m.SCRIPT:case m.STYLE:r=n.flattenArrayTypeChildren({child:e,arrayTypeChildren:r,newChildProps:a,nestedChildren:o});break;default:t=n.mapObjectTypeChildren({child:e,newProps:t,newChildProps:a,nestedChildren:o})}}})),t=this.mapArrayTypeChildrenToProps(r,t)},t.prototype.render=function(){var e=this.props,t=e.children,n=H(e,["children"]),r=G({},n);return t&&(r=this.mapChildrenToProps(t,r)),y.a.createElement(i,r)},U(t,null,[{key:"canUseDOM",set:function(e){i.canUseDOM=e}}]),t}(y.a.Component),o.propTypes={base:c.a.object,bodyAttributes:c.a.object,children:c.a.oneOfType([c.a.arrayOf(c.a.node),c.a.node]),defaultTitle:c.a.string,defer:c.a.bool,encodeSpecialCharacters:c.a.bool,htmlAttributes:c.a.object,link:c.a.arrayOf(c.a.object),meta:c.a.arrayOf(c.a.object),noscript:c.a.arrayOf(c.a.object),onChangeClientState:c.a.func,script:c.a.arrayOf(c.a.object),style:c.a.arrayOf(c.a.object),title:c.a.string,titleAttributes:c.a.object,titleTemplate:c.a.string},o.defaultProps={defer:!0,encodeSpecialCharacters:!0},o.peek=i.peek,o.rewind=function(){var e=i.rewind();return e||(e=Me({baseTag:[],bodyAttributes:{},encodeSpecialCharacters:!0,htmlAttributes:{},linkTags:[],metaTags:[],noscriptTags:[],scriptTags:[],styleTags:[],title:"",titleAttributes:{}})),e},a);pe.renderStatic=pe.rewind,t.a=pe}).call(this,n("yLpj"))},"s/A6":function(e,t,n){e.exports=n.p+"static/EF_WHT-OR_png-d0fd43ad31261ee9693a060be920e71e.png"}}]);
+//# sourceMappingURL=commons-ee34cd715ab4f7da30e0.js.map
\ No newline at end of file
diff --git a/commons-ee34cd715ab4f7da30e0.js.map b/commons-ee34cd715ab4f7da30e0.js.map
new file mode 100644
index 0000000..01ade69
--- /dev/null
+++ b/commons-ee34cd715ab4f7da30e0.js.map
@@ -0,0 +1 @@
+{"version":3,"sources":["webpack:///./src/assets/jkube-logo-horizontal-white.svg","webpack:///./node_modules/react-side-effect/lib/index.js","webpack:///./src/components/header.jsx","webpack:///./node_modules/react-fast-compare/index.js","webpack:///./src/components/seo.jsx","webpack:///./src/i18n.js","webpack:///./node_modules/react-helmet/es/Helmet.js","webpack:///./src/assets/EF_WHT-OR_png.png"],"names":["module","exports","ex","React","React__default","_defineProperty","obj","key","value","Object","defineProperty","enumerable","configurable","writable","canUseDOM","window","document","createElement","reducePropsToState","handleStateChangeOnClient","mapStateOnServer","Error","WrappedComponent","state","mountedInstances","emitChange","map","instance","props","SideEffect","_PureComponent","subClass","superClass","apply","this","arguments","prototype","create","constructor","__proto__","peek","rewind","recordedState","undefined","_proto","UNSAFE_componentWillMount","push","componentDidUpdate","componentWillUnmount","index","indexOf","splice","render","PureComponent","displayName","name","getDisplayName","cClass","TM","className","Header","lang","resolvePath","resolveI18nPath","to","src","logo","alt","jkubeLogo","href","title","target","rel","hasElementType","Element","hasMap","Map","hasSet","Set","hasArrayBuffer","ArrayBuffer","isView","a","b","equal","length","i","keys","it","Array","isArray","size","entries","next","done","has","get","RegExp","source","flags","valueOf","toString","hasOwnProperty","call","$$typeof","error","message","match","console","warn","Seo","description","charSet","content","defaultLangKey","langKey","path","clock","Component","_class","_temp","ATTRIBUTE_NAMES","TAG_NAMES","BASE","BODY","HEAD","HTML","LINK","META","NOSCRIPT","SCRIPT","STYLE","TITLE","TAG_PROPERTIES","REACT_TAG_MAP","accesskey","charset","class","contenteditable","contextmenu","itemprop","tabindex","HELMET_PROPS","HTML_TAG_MAP","reduce","SELF_CLOSING_TAGS","_typeof","Symbol","iterator","classCallCheck","Constructor","TypeError","createClass","defineProperties","descriptor","protoProps","staticProps","_extends","assign","objectWithoutProperties","possibleConstructorReturn","self","ReferenceError","encodeSpecialCharacters","str","encode","String","replace","getTitleFromPropsList","propsList","innermostTitle","getInnermostProperty","innermostTemplate","join","innermostDefaultTitle","getOnChangeClientState","getAttributesFromPropsList","tagType","filter","tagAttrs","current","getBaseTagFromPropsList","primaryAttributes","reverse","innermostBaseTag","tag","lowerCaseAttributeKey","toLowerCase","concat","getTagsFromPropsList","tagName","approvedSeenTags","approvedTags","instanceTags","instanceSeenTags","primaryAttributeKey","attributeKey","forEach","tagUnion","property","rafPolyfill","Date","now","callback","currentTime","setTimeout","cafPolyfill","id","clearTimeout","requestAnimationFrame","bind","webkitRequestAnimationFrame","mozRequestAnimationFrame","global","cancelAnimationFrame","webkitCancelAnimationFrame","mozCancelAnimationFrame","msg","_helmetCallback","commitTagChanges","newState","cb","baseTag","bodyAttributes","htmlAttributes","linkTags","metaTags","noscriptTags","onChangeClientState","scriptTags","styleTags","titleAttributes","updateAttributes","updateTitle","tagUpdates","updateTags","addedTags","removedTags","_tagUpdates$tagType","newTags","oldTags","flattenArray","possibleArray","attributes","elementTag","getElementsByTagName","helmetAttributeString","getAttribute","helmetAttributes","split","attributesToRemove","attributeKeys","attribute","setAttribute","indexToSave","_i","removeAttribute","type","tags","headElement","head","querySelector","tagNodes","querySelectorAll","slice","indexToDelete","newElement","innerHTML","styleSheet","cssText","appendChild","createTextNode","some","existingTag","isEqualNode","parentNode","removeChild","generateElementAttributesAsString","attr","convertElementAttributestoReactProps","initProps","getMethodsForTag","toComponent","_initProps","attributeString","flattenedTitle","generateTitleAsString","_mappedTag","mappedTag","mappedAttribute","dangerouslySetInnerHTML","__html","generateTagsAsReactComponent","attributeHtml","string","tagContent","isSelfClosing","generateTagsAsString","_ref","_ref$title","base","link","meta","noscript","script","style","HelmetSideEffects","defer","HelmetExport","_React$Component","HelmetWrapper","setPrototypeOf","inherits","shouldComponentUpdate","nextProps","mapNestedChildrenToProps","child","nestedChildren","flattenArrayTypeChildren","_babelHelpers$extends","arrayTypeChildren","newChildProps","mapObjectTypeChildren","_ref2","_babelHelpers$extends2","_babelHelpers$extends3","newProps","mapArrayTypeChildrenToProps","newFlattenedProps","arrayChildName","_babelHelpers$extends4","warnOnInvalidChildren","mapChildrenToProps","children","_this2","Children","_child$props","initAttributes","convertReactPropstoHtmlAttributes","_props","set","propTypes","object","oneOfType","arrayOf","node","defaultTitle","bool","func","titleTemplate","defaultProps","mappedState","renderStatic"],"mappings":"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","file":"commons-ee34cd715ab4f7da30e0.js","sourcesContent":["module.exports = \"data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K\"","'use strict';\n\nfunction _interopDefault(ex) {\n return ex && typeof ex === 'object' && 'default' in ex ? ex['default'] : ex;\n}\n\nvar React = require('react');\n\nvar React__default = _interopDefault(React);\n\nfunction _defineProperty(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n\n return obj;\n}\n\nfunction _inheritsLoose(subClass, superClass) {\n subClass.prototype = Object.create(superClass.prototype);\n subClass.prototype.constructor = subClass;\n subClass.__proto__ = superClass;\n}\n\nvar canUseDOM = !!(typeof window !== 'undefined' && window.document && window.document.createElement);\n\nfunction withSideEffect(reducePropsToState, handleStateChangeOnClient, mapStateOnServer) {\n if (typeof reducePropsToState !== 'function') {\n throw new Error('Expected reducePropsToState to be a function.');\n }\n\n if (typeof handleStateChangeOnClient !== 'function') {\n throw new Error('Expected handleStateChangeOnClient to be a function.');\n }\n\n if (typeof mapStateOnServer !== 'undefined' && typeof mapStateOnServer !== 'function') {\n throw new Error('Expected mapStateOnServer to either be undefined or a function.');\n }\n\n function getDisplayName(WrappedComponent) {\n return WrappedComponent.displayName || WrappedComponent.name || 'Component';\n }\n\n return function wrap(WrappedComponent) {\n if (typeof WrappedComponent !== 'function') {\n throw new Error('Expected WrappedComponent to be a React component.');\n }\n\n var mountedInstances = [];\n var state;\n\n function emitChange() {\n state = reducePropsToState(mountedInstances.map(function (instance) {\n return instance.props;\n }));\n\n if (SideEffect.canUseDOM) {\n handleStateChangeOnClient(state);\n } else if (mapStateOnServer) {\n state = mapStateOnServer(state);\n }\n }\n\n var SideEffect = /*#__PURE__*/function (_PureComponent) {\n _inheritsLoose(SideEffect, _PureComponent);\n\n function SideEffect() {\n return _PureComponent.apply(this, arguments) || this;\n } // Try to use displayName of wrapped component\n // Expose canUseDOM so tests can monkeypatch it\n\n\n SideEffect.peek = function peek() {\n return state;\n };\n\n SideEffect.rewind = function rewind() {\n if (SideEffect.canUseDOM) {\n throw new Error('You may only call rewind() on the server. Call peek() to read the current state.');\n }\n\n var recordedState = state;\n state = undefined;\n mountedInstances = [];\n return recordedState;\n };\n\n var _proto = SideEffect.prototype;\n\n _proto.UNSAFE_componentWillMount = function UNSAFE_componentWillMount() {\n mountedInstances.push(this);\n emitChange();\n };\n\n _proto.componentDidUpdate = function componentDidUpdate() {\n emitChange();\n };\n\n _proto.componentWillUnmount = function componentWillUnmount() {\n var index = mountedInstances.indexOf(this);\n mountedInstances.splice(index, 1);\n emitChange();\n };\n\n _proto.render = function render() {\n return React__default.createElement(WrappedComponent, this.props);\n };\n\n return SideEffect;\n }(React.PureComponent);\n\n _defineProperty(SideEffect, \"displayName\", \"SideEffect(\" + getDisplayName(WrappedComponent) + \")\");\n\n _defineProperty(SideEffect, \"canUseDOM\", canUseDOM);\n\n return SideEffect;\n };\n}\n\nmodule.exports = withSideEffect;","import React from 'react';\nimport {Link} from 'gatsby'\nimport logo from '../assets/EF_WHT-OR_png.png';\nimport jkubeLogo from '../assets/jkube-logo-horizontal-white.svg';\nimport PropTypes from 'prop-types';\nimport {resolveI18nPath} from \"../i18n\";\n\nconst cClass = 'eclipse-jkube__header';\n\nconst TM = () => (\n <span className={`${cClass}-trade-mark`}>™</span>\n);\n\nconst Header = ({lang}) => {\n const resolvePath = resolveI18nPath(lang);\n return (\n <header className={cClass}>\n <div className={`${cClass}-container`}>\n <Link to={resolvePath('/')} className={`${cClass}-logo`}>\n <div className={`${cClass}-logo-eclipse-image`}><img src={logo} alt='Eclipse Foundation' /></div>\n <div className={`${cClass}-logo-jkube`}>\n <img className={`${cClass}-logo-jkube-image`} src={jkubeLogo} alt='JKube' /><TM/>\n </div>\n </Link>\n <div className={`${cClass}-content`}>\n <ul>\n <li><Link to={resolvePath('/docs')}>Docs</Link></li>\n <li><Link to={resolvePath('/demos')}>Demos</Link></li>\n <li><Link to={resolvePath('/community')}>Community</Link></li>\n <li><Link to={resolvePath('/contributing')}>Contributing</Link></li>\n <li>\n <a\n className={`${cClass}-stars`}\n href='https://github.com/eclipse/jkube' title='eclipse/jkube'\n target='_blank' rel='nofollow noopener noreferrer'\n >\n <img src='https://img.shields.io/github/stars/eclipse/jkube?style=social' alt='eclipse/jkube stargazers' />\n </a>\n </li>\n </ul>\n </div>\n </div>\n </header>\n );\n};\n\nHeader.propTypes = {\n lang: PropTypes.string.isRequired,\n};\n\nexport default Header;\n","/* global Map:readonly, Set:readonly, ArrayBuffer:readonly */\nvar hasElementType = typeof Element !== 'undefined';\nvar hasMap = typeof Map === 'function';\nvar hasSet = typeof Set === 'function';\nvar hasArrayBuffer = typeof ArrayBuffer === 'function' && !!ArrayBuffer.isView; // Note: We **don't** need `envHasBigInt64Array` in fde es6/index.js\n\nfunction equal(a, b) {\n // START: fast-deep-equal es6/index.js 3.1.1\n if (a === b) return true;\n\n if (a && b && typeof a == 'object' && typeof b == 'object') {\n if (a.constructor !== b.constructor) return false;\n var length, i, keys;\n\n if (Array.isArray(a)) {\n length = a.length;\n if (length != b.length) return false;\n\n for (i = length; i-- !== 0;) {\n if (!equal(a[i], b[i])) return false;\n }\n\n return true;\n } // START: Modifications:\n // 1. Extra `has<Type> &&` helpers in initial condition allow es6 code\n // to co-exist with es5.\n // 2. Replace `for of` with es5 compliant iteration using `for`.\n // Basically, take:\n //\n // ```js\n // for (i of a.entries())\n // if (!b.has(i[0])) return false;\n // ```\n //\n // ... and convert to:\n //\n // ```js\n // it = a.entries();\n // while (!(i = it.next()).done)\n // if (!b.has(i.value[0])) return false;\n // ```\n //\n // **Note**: `i` access switches to `i.value`.\n\n\n var it;\n\n if (hasMap && a instanceof Map && b instanceof Map) {\n if (a.size !== b.size) return false;\n it = a.entries();\n\n while (!(i = it.next()).done) {\n if (!b.has(i.value[0])) return false;\n }\n\n it = a.entries();\n\n while (!(i = it.next()).done) {\n if (!equal(i.value[1], b.get(i.value[0]))) return false;\n }\n\n return true;\n }\n\n if (hasSet && a instanceof Set && b instanceof Set) {\n if (a.size !== b.size) return false;\n it = a.entries();\n\n while (!(i = it.next()).done) {\n if (!b.has(i.value[0])) return false;\n }\n\n return true;\n } // END: Modifications\n\n\n if (hasArrayBuffer && ArrayBuffer.isView(a) && ArrayBuffer.isView(b)) {\n length = a.length;\n if (length != b.length) return false;\n\n for (i = length; i-- !== 0;) {\n if (a[i] !== b[i]) return false;\n }\n\n return true;\n }\n\n if (a.constructor === RegExp) return a.source === b.source && a.flags === b.flags;\n if (a.valueOf !== Object.prototype.valueOf) return a.valueOf() === b.valueOf();\n if (a.toString !== Object.prototype.toString) return a.toString() === b.toString();\n keys = Object.keys(a);\n length = keys.length;\n if (length !== Object.keys(b).length) return false;\n\n for (i = length; i-- !== 0;) {\n if (!Object.prototype.hasOwnProperty.call(b, keys[i])) return false;\n } // END: fast-deep-equal\n // START: react-fast-compare\n // custom handling for DOM elements\n\n\n if (hasElementType && a instanceof Element) return false; // custom handling for React/Preact\n\n for (i = length; i-- !== 0;) {\n if ((keys[i] === '_owner' || keys[i] === '__v' || keys[i] === '__o') && a.$$typeof) {\n // React-specific: avoid traversing React elements' _owner\n // Preact-specific: avoid traversing Preact elements' __v and __o\n // __v = $_original / $_vnode\n // __o = $_owner\n // These properties contain circular references and are not needed when\n // comparing the actual elements (and not their owners)\n // .$$typeof and ._store on just reasonable markers of elements\n continue;\n } // all other properties should be traversed as usual\n\n\n if (!equal(a[keys[i]], b[keys[i]])) return false;\n } // END: react-fast-compare\n // START: fast-deep-equal\n\n\n return true;\n }\n\n return a !== a && b !== b;\n} // end fast-deep-equal\n\n\nmodule.exports = function isEqual(a, b) {\n try {\n return equal(a, b);\n } catch (error) {\n if ((error.message || '').match(/stack|recursion/i)) {\n // warn on circular references, don't crash\n // browsers give this different errors name and messages:\n // chrome/safari: \"RangeError\", \"Maximum call stack size exceeded\"\n // firefox: \"InternalError\", too much recursion\"\n // edge: \"Error\", \"Out of stack space\"\n console.warn('react-fast-compare cannot handle circular refs');\n return false;\n } // some other error. we should definitely know about these\n\n\n throw error;\n }\n};","import React from 'react';\nimport PropTypes from 'prop-types';\nimport Helmet from 'react-helmet';\n\nconst Seo = ({lang, title, description}) => {\n return (\n <Helmet>\n <meta charSet=\"UTF-8\" />\n <html lang={lang} />\n <title>{title}</title>\n <meta name=\"description\" content={description} />\n </Helmet>\n );\n};\n\nSeo.propTypes = {\n lang: PropTypes.string.isRequired,\n title: PropTypes.string.isRequired,\n description: PropTypes.string.isRequired,\n};\n\nexport default Seo;\n","\nconst defaultLangKey = 'en';\n\nconst resolveI18nPath = langKey => path =>\n langKey === defaultLangKey ? path : `${langKey}/${path}`;\n\nmodule.exports = {\n defaultLangKey,\n resolveI18nPath\n};\n","import \"core-js/modules/es.array.reduce.js\";\nimport PropTypes from 'prop-types';\nimport withSideEffect from 'react-side-effect';\nimport isEqual from 'react-fast-compare';\nimport React from 'react';\nimport objectAssign from 'object-assign';\nvar ATTRIBUTE_NAMES = {\n BODY: \"bodyAttributes\",\n HTML: \"htmlAttributes\",\n TITLE: \"titleAttributes\"\n};\nvar TAG_NAMES = {\n BASE: \"base\",\n BODY: \"body\",\n HEAD: \"head\",\n HTML: \"html\",\n LINK: \"link\",\n META: \"meta\",\n NOSCRIPT: \"noscript\",\n SCRIPT: \"script\",\n STYLE: \"style\",\n TITLE: \"title\"\n};\nvar VALID_TAG_NAMES = Object.keys(TAG_NAMES).map(function (name) {\n return TAG_NAMES[name];\n});\nvar TAG_PROPERTIES = {\n CHARSET: \"charset\",\n CSS_TEXT: \"cssText\",\n HREF: \"href\",\n HTTPEQUIV: \"http-equiv\",\n INNER_HTML: \"innerHTML\",\n ITEM_PROP: \"itemprop\",\n NAME: \"name\",\n PROPERTY: \"property\",\n REL: \"rel\",\n SRC: \"src\",\n TARGET: \"target\"\n};\nvar REACT_TAG_MAP = {\n accesskey: \"accessKey\",\n charset: \"charSet\",\n class: \"className\",\n contenteditable: \"contentEditable\",\n contextmenu: \"contextMenu\",\n \"http-equiv\": \"httpEquiv\",\n itemprop: \"itemProp\",\n tabindex: \"tabIndex\"\n};\nvar HELMET_PROPS = {\n DEFAULT_TITLE: \"defaultTitle\",\n DEFER: \"defer\",\n ENCODE_SPECIAL_CHARACTERS: \"encodeSpecialCharacters\",\n ON_CHANGE_CLIENT_STATE: \"onChangeClientState\",\n TITLE_TEMPLATE: \"titleTemplate\"\n};\nvar HTML_TAG_MAP = Object.keys(REACT_TAG_MAP).reduce(function (obj, key) {\n obj[REACT_TAG_MAP[key]] = key;\n return obj;\n}, {});\nvar SELF_CLOSING_TAGS = [TAG_NAMES.NOSCRIPT, TAG_NAMES.SCRIPT, TAG_NAMES.STYLE];\nvar HELMET_ATTRIBUTE = \"data-react-helmet\";\n\nvar _typeof = typeof Symbol === \"function\" && typeof Symbol.iterator === \"symbol\" ? function (obj) {\n return typeof obj;\n} : function (obj) {\n return obj && typeof Symbol === \"function\" && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n};\n\nvar classCallCheck = function classCallCheck(instance, Constructor) {\n if (!(instance instanceof Constructor)) {\n throw new TypeError(\"Cannot call a class as a function\");\n }\n};\n\nvar createClass = function () {\n function defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n }\n\n return function (Constructor, protoProps, staticProps) {\n if (protoProps) defineProperties(Constructor.prototype, protoProps);\n if (staticProps) defineProperties(Constructor, staticProps);\n return Constructor;\n };\n}();\n\nvar _extends = Object.assign || function (target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = arguments[i];\n\n for (var key in source) {\n if (Object.prototype.hasOwnProperty.call(source, key)) {\n target[key] = source[key];\n }\n }\n }\n\n return target;\n};\n\nvar inherits = function inherits(subClass, superClass) {\n if (typeof superClass !== \"function\" && superClass !== null) {\n throw new TypeError(\"Super expression must either be null or a function, not \" + typeof superClass);\n }\n\n subClass.prototype = Object.create(superClass && superClass.prototype, {\n constructor: {\n value: subClass,\n enumerable: false,\n writable: true,\n configurable: true\n }\n });\n if (superClass) Object.setPrototypeOf ? Object.setPrototypeOf(subClass, superClass) : subClass.__proto__ = superClass;\n};\n\nvar objectWithoutProperties = function objectWithoutProperties(obj, keys) {\n var target = {};\n\n for (var i in obj) {\n if (keys.indexOf(i) >= 0) continue;\n if (!Object.prototype.hasOwnProperty.call(obj, i)) continue;\n target[i] = obj[i];\n }\n\n return target;\n};\n\nvar possibleConstructorReturn = function possibleConstructorReturn(self, call) {\n if (!self) {\n throw new ReferenceError(\"this hasn't been initialised - super() hasn't been called\");\n }\n\n return call && (typeof call === \"object\" || typeof call === \"function\") ? call : self;\n};\n\nvar encodeSpecialCharacters = function encodeSpecialCharacters(str) {\n var encode = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n\n if (encode === false) {\n return String(str);\n }\n\n return String(str).replace(/&/g, \"&\").replace(/</g, \"<\").replace(/>/g, \">\").replace(/\"/g, \""\").replace(/'/g, \"'\");\n};\n\nvar getTitleFromPropsList = function getTitleFromPropsList(propsList) {\n var innermostTitle = getInnermostProperty(propsList, TAG_NAMES.TITLE);\n var innermostTemplate = getInnermostProperty(propsList, HELMET_PROPS.TITLE_TEMPLATE);\n\n if (innermostTemplate && innermostTitle) {\n // use function arg to avoid need to escape $ characters\n return innermostTemplate.replace(/%s/g, function () {\n return Array.isArray(innermostTitle) ? innermostTitle.join(\"\") : innermostTitle;\n });\n }\n\n var innermostDefaultTitle = getInnermostProperty(propsList, HELMET_PROPS.DEFAULT_TITLE);\n return innermostTitle || innermostDefaultTitle || undefined;\n};\n\nvar getOnChangeClientState = function getOnChangeClientState(propsList) {\n return getInnermostProperty(propsList, HELMET_PROPS.ON_CHANGE_CLIENT_STATE) || function () {};\n};\n\nvar getAttributesFromPropsList = function getAttributesFromPropsList(tagType, propsList) {\n return propsList.filter(function (props) {\n return typeof props[tagType] !== \"undefined\";\n }).map(function (props) {\n return props[tagType];\n }).reduce(function (tagAttrs, current) {\n return _extends({}, tagAttrs, current);\n }, {});\n};\n\nvar getBaseTagFromPropsList = function getBaseTagFromPropsList(primaryAttributes, propsList) {\n return propsList.filter(function (props) {\n return typeof props[TAG_NAMES.BASE] !== \"undefined\";\n }).map(function (props) {\n return props[TAG_NAMES.BASE];\n }).reverse().reduce(function (innermostBaseTag, tag) {\n if (!innermostBaseTag.length) {\n var keys = Object.keys(tag);\n\n for (var i = 0; i < keys.length; i++) {\n var attributeKey = keys[i];\n var lowerCaseAttributeKey = attributeKey.toLowerCase();\n\n if (primaryAttributes.indexOf(lowerCaseAttributeKey) !== -1 && tag[lowerCaseAttributeKey]) {\n return innermostBaseTag.concat(tag);\n }\n }\n }\n\n return innermostBaseTag;\n }, []);\n};\n\nvar getTagsFromPropsList = function getTagsFromPropsList(tagName, primaryAttributes, propsList) {\n // Calculate list of tags, giving priority innermost component (end of the propslist)\n var approvedSeenTags = {};\n return propsList.filter(function (props) {\n if (Array.isArray(props[tagName])) {\n return true;\n }\n\n if (typeof props[tagName] !== \"undefined\") {\n warn(\"Helmet: \" + tagName + \" should be of type \\\"Array\\\". Instead found type \\\"\" + _typeof(props[tagName]) + \"\\\"\");\n }\n\n return false;\n }).map(function (props) {\n return props[tagName];\n }).reverse().reduce(function (approvedTags, instanceTags) {\n var instanceSeenTags = {};\n instanceTags.filter(function (tag) {\n var primaryAttributeKey = void 0;\n var keys = Object.keys(tag);\n\n for (var i = 0; i < keys.length; i++) {\n var attributeKey = keys[i];\n var lowerCaseAttributeKey = attributeKey.toLowerCase(); // Special rule with link tags, since rel and href are both primary tags, rel takes priority\n\n if (primaryAttributes.indexOf(lowerCaseAttributeKey) !== -1 && !(primaryAttributeKey === TAG_PROPERTIES.REL && tag[primaryAttributeKey].toLowerCase() === \"canonical\") && !(lowerCaseAttributeKey === TAG_PROPERTIES.REL && tag[lowerCaseAttributeKey].toLowerCase() === \"stylesheet\")) {\n primaryAttributeKey = lowerCaseAttributeKey;\n } // Special case for innerHTML which doesn't work lowercased\n\n\n if (primaryAttributes.indexOf(attributeKey) !== -1 && (attributeKey === TAG_PROPERTIES.INNER_HTML || attributeKey === TAG_PROPERTIES.CSS_TEXT || attributeKey === TAG_PROPERTIES.ITEM_PROP)) {\n primaryAttributeKey = attributeKey;\n }\n }\n\n if (!primaryAttributeKey || !tag[primaryAttributeKey]) {\n return false;\n }\n\n var value = tag[primaryAttributeKey].toLowerCase();\n\n if (!approvedSeenTags[primaryAttributeKey]) {\n approvedSeenTags[primaryAttributeKey] = {};\n }\n\n if (!instanceSeenTags[primaryAttributeKey]) {\n instanceSeenTags[primaryAttributeKey] = {};\n }\n\n if (!approvedSeenTags[primaryAttributeKey][value]) {\n instanceSeenTags[primaryAttributeKey][value] = true;\n return true;\n }\n\n return false;\n }).reverse().forEach(function (tag) {\n return approvedTags.push(tag);\n }); // Update seen tags with tags from this instance\n\n var keys = Object.keys(instanceSeenTags);\n\n for (var i = 0; i < keys.length; i++) {\n var attributeKey = keys[i];\n var tagUnion = objectAssign({}, approvedSeenTags[attributeKey], instanceSeenTags[attributeKey]);\n approvedSeenTags[attributeKey] = tagUnion;\n }\n\n return approvedTags;\n }, []).reverse();\n};\n\nvar getInnermostProperty = function getInnermostProperty(propsList, property) {\n for (var i = propsList.length - 1; i >= 0; i--) {\n var props = propsList[i];\n\n if (props.hasOwnProperty(property)) {\n return props[property];\n }\n }\n\n return null;\n};\n\nvar reducePropsToState = function reducePropsToState(propsList) {\n return {\n baseTag: getBaseTagFromPropsList([TAG_PROPERTIES.HREF, TAG_PROPERTIES.TARGET], propsList),\n bodyAttributes: getAttributesFromPropsList(ATTRIBUTE_NAMES.BODY, propsList),\n defer: getInnermostProperty(propsList, HELMET_PROPS.DEFER),\n encode: getInnermostProperty(propsList, HELMET_PROPS.ENCODE_SPECIAL_CHARACTERS),\n htmlAttributes: getAttributesFromPropsList(ATTRIBUTE_NAMES.HTML, propsList),\n linkTags: getTagsFromPropsList(TAG_NAMES.LINK, [TAG_PROPERTIES.REL, TAG_PROPERTIES.HREF], propsList),\n metaTags: getTagsFromPropsList(TAG_NAMES.META, [TAG_PROPERTIES.NAME, TAG_PROPERTIES.CHARSET, TAG_PROPERTIES.HTTPEQUIV, TAG_PROPERTIES.PROPERTY, TAG_PROPERTIES.ITEM_PROP], propsList),\n noscriptTags: getTagsFromPropsList(TAG_NAMES.NOSCRIPT, [TAG_PROPERTIES.INNER_HTML], propsList),\n onChangeClientState: getOnChangeClientState(propsList),\n scriptTags: getTagsFromPropsList(TAG_NAMES.SCRIPT, [TAG_PROPERTIES.SRC, TAG_PROPERTIES.INNER_HTML], propsList),\n styleTags: getTagsFromPropsList(TAG_NAMES.STYLE, [TAG_PROPERTIES.CSS_TEXT], propsList),\n title: getTitleFromPropsList(propsList),\n titleAttributes: getAttributesFromPropsList(ATTRIBUTE_NAMES.TITLE, propsList)\n };\n};\n\nvar rafPolyfill = function () {\n var clock = Date.now();\n return function (callback) {\n var currentTime = Date.now();\n\n if (currentTime - clock > 16) {\n clock = currentTime;\n callback(currentTime);\n } else {\n setTimeout(function () {\n rafPolyfill(callback);\n }, 0);\n }\n };\n}();\n\nvar cafPolyfill = function cafPolyfill(id) {\n return clearTimeout(id);\n};\n\nvar requestAnimationFrame = typeof window !== \"undefined\" ? window.requestAnimationFrame && window.requestAnimationFrame.bind(window) || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || rafPolyfill : global.requestAnimationFrame || rafPolyfill;\nvar cancelAnimationFrame = typeof window !== \"undefined\" ? window.cancelAnimationFrame || window.webkitCancelAnimationFrame || window.mozCancelAnimationFrame || cafPolyfill : global.cancelAnimationFrame || cafPolyfill;\n\nvar warn = function warn(msg) {\n return console && typeof console.warn === \"function\" && console.warn(msg);\n};\n\nvar _helmetCallback = null;\n\nvar handleClientStateChange = function handleClientStateChange(newState) {\n if (_helmetCallback) {\n cancelAnimationFrame(_helmetCallback);\n }\n\n if (newState.defer) {\n _helmetCallback = requestAnimationFrame(function () {\n commitTagChanges(newState, function () {\n _helmetCallback = null;\n });\n });\n } else {\n commitTagChanges(newState);\n _helmetCallback = null;\n }\n};\n\nvar commitTagChanges = function commitTagChanges(newState, cb) {\n var baseTag = newState.baseTag,\n bodyAttributes = newState.bodyAttributes,\n htmlAttributes = newState.htmlAttributes,\n linkTags = newState.linkTags,\n metaTags = newState.metaTags,\n noscriptTags = newState.noscriptTags,\n onChangeClientState = newState.onChangeClientState,\n scriptTags = newState.scriptTags,\n styleTags = newState.styleTags,\n title = newState.title,\n titleAttributes = newState.titleAttributes;\n updateAttributes(TAG_NAMES.BODY, bodyAttributes);\n updateAttributes(TAG_NAMES.HTML, htmlAttributes);\n updateTitle(title, titleAttributes);\n var tagUpdates = {\n baseTag: updateTags(TAG_NAMES.BASE, baseTag),\n linkTags: updateTags(TAG_NAMES.LINK, linkTags),\n metaTags: updateTags(TAG_NAMES.META, metaTags),\n noscriptTags: updateTags(TAG_NAMES.NOSCRIPT, noscriptTags),\n scriptTags: updateTags(TAG_NAMES.SCRIPT, scriptTags),\n styleTags: updateTags(TAG_NAMES.STYLE, styleTags)\n };\n var addedTags = {};\n var removedTags = {};\n Object.keys(tagUpdates).forEach(function (tagType) {\n var _tagUpdates$tagType = tagUpdates[tagType],\n newTags = _tagUpdates$tagType.newTags,\n oldTags = _tagUpdates$tagType.oldTags;\n\n if (newTags.length) {\n addedTags[tagType] = newTags;\n }\n\n if (oldTags.length) {\n removedTags[tagType] = tagUpdates[tagType].oldTags;\n }\n });\n cb && cb();\n onChangeClientState(newState, addedTags, removedTags);\n};\n\nvar flattenArray = function flattenArray(possibleArray) {\n return Array.isArray(possibleArray) ? possibleArray.join(\"\") : possibleArray;\n};\n\nvar updateTitle = function updateTitle(title, attributes) {\n if (typeof title !== \"undefined\" && document.title !== title) {\n document.title = flattenArray(title);\n }\n\n updateAttributes(TAG_NAMES.TITLE, attributes);\n};\n\nvar updateAttributes = function updateAttributes(tagName, attributes) {\n var elementTag = document.getElementsByTagName(tagName)[0];\n\n if (!elementTag) {\n return;\n }\n\n var helmetAttributeString = elementTag.getAttribute(HELMET_ATTRIBUTE);\n var helmetAttributes = helmetAttributeString ? helmetAttributeString.split(\",\") : [];\n var attributesToRemove = [].concat(helmetAttributes);\n var attributeKeys = Object.keys(attributes);\n\n for (var i = 0; i < attributeKeys.length; i++) {\n var attribute = attributeKeys[i];\n var value = attributes[attribute] || \"\";\n\n if (elementTag.getAttribute(attribute) !== value) {\n elementTag.setAttribute(attribute, value);\n }\n\n if (helmetAttributes.indexOf(attribute) === -1) {\n helmetAttributes.push(attribute);\n }\n\n var indexToSave = attributesToRemove.indexOf(attribute);\n\n if (indexToSave !== -1) {\n attributesToRemove.splice(indexToSave, 1);\n }\n }\n\n for (var _i = attributesToRemove.length - 1; _i >= 0; _i--) {\n elementTag.removeAttribute(attributesToRemove[_i]);\n }\n\n if (helmetAttributes.length === attributesToRemove.length) {\n elementTag.removeAttribute(HELMET_ATTRIBUTE);\n } else if (elementTag.getAttribute(HELMET_ATTRIBUTE) !== attributeKeys.join(\",\")) {\n elementTag.setAttribute(HELMET_ATTRIBUTE, attributeKeys.join(\",\"));\n }\n};\n\nvar updateTags = function updateTags(type, tags) {\n var headElement = document.head || document.querySelector(TAG_NAMES.HEAD);\n var tagNodes = headElement.querySelectorAll(type + \"[\" + HELMET_ATTRIBUTE + \"]\");\n var oldTags = Array.prototype.slice.call(tagNodes);\n var newTags = [];\n var indexToDelete = void 0;\n\n if (tags && tags.length) {\n tags.forEach(function (tag) {\n var newElement = document.createElement(type);\n\n for (var attribute in tag) {\n if (tag.hasOwnProperty(attribute)) {\n if (attribute === TAG_PROPERTIES.INNER_HTML) {\n newElement.innerHTML = tag.innerHTML;\n } else if (attribute === TAG_PROPERTIES.CSS_TEXT) {\n if (newElement.styleSheet) {\n newElement.styleSheet.cssText = tag.cssText;\n } else {\n newElement.appendChild(document.createTextNode(tag.cssText));\n }\n } else {\n var value = typeof tag[attribute] === \"undefined\" ? \"\" : tag[attribute];\n newElement.setAttribute(attribute, value);\n }\n }\n }\n\n newElement.setAttribute(HELMET_ATTRIBUTE, \"true\"); // Remove a duplicate tag from domTagstoRemove, so it isn't cleared.\n\n if (oldTags.some(function (existingTag, index) {\n indexToDelete = index;\n return newElement.isEqualNode(existingTag);\n })) {\n oldTags.splice(indexToDelete, 1);\n } else {\n newTags.push(newElement);\n }\n });\n }\n\n oldTags.forEach(function (tag) {\n return tag.parentNode.removeChild(tag);\n });\n newTags.forEach(function (tag) {\n return headElement.appendChild(tag);\n });\n return {\n oldTags: oldTags,\n newTags: newTags\n };\n};\n\nvar generateElementAttributesAsString = function generateElementAttributesAsString(attributes) {\n return Object.keys(attributes).reduce(function (str, key) {\n var attr = typeof attributes[key] !== \"undefined\" ? key + \"=\\\"\" + attributes[key] + \"\\\"\" : \"\" + key;\n return str ? str + \" \" + attr : attr;\n }, \"\");\n};\n\nvar generateTitleAsString = function generateTitleAsString(type, title, attributes, encode) {\n var attributeString = generateElementAttributesAsString(attributes);\n var flattenedTitle = flattenArray(title);\n return attributeString ? \"<\" + type + \" \" + HELMET_ATTRIBUTE + \"=\\\"true\\\" \" + attributeString + \">\" + encodeSpecialCharacters(flattenedTitle, encode) + \"</\" + type + \">\" : \"<\" + type + \" \" + HELMET_ATTRIBUTE + \"=\\\"true\\\">\" + encodeSpecialCharacters(flattenedTitle, encode) + \"</\" + type + \">\";\n};\n\nvar generateTagsAsString = function generateTagsAsString(type, tags, encode) {\n return tags.reduce(function (str, tag) {\n var attributeHtml = Object.keys(tag).filter(function (attribute) {\n return !(attribute === TAG_PROPERTIES.INNER_HTML || attribute === TAG_PROPERTIES.CSS_TEXT);\n }).reduce(function (string, attribute) {\n var attr = typeof tag[attribute] === \"undefined\" ? attribute : attribute + \"=\\\"\" + encodeSpecialCharacters(tag[attribute], encode) + \"\\\"\";\n return string ? string + \" \" + attr : attr;\n }, \"\");\n var tagContent = tag.innerHTML || tag.cssText || \"\";\n var isSelfClosing = SELF_CLOSING_TAGS.indexOf(type) === -1;\n return str + \"<\" + type + \" \" + HELMET_ATTRIBUTE + \"=\\\"true\\\" \" + attributeHtml + (isSelfClosing ? \"/>\" : \">\" + tagContent + \"</\" + type + \">\");\n }, \"\");\n};\n\nvar convertElementAttributestoReactProps = function convertElementAttributestoReactProps(attributes) {\n var initProps = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return Object.keys(attributes).reduce(function (obj, key) {\n obj[REACT_TAG_MAP[key] || key] = attributes[key];\n return obj;\n }, initProps);\n};\n\nvar convertReactPropstoHtmlAttributes = function convertReactPropstoHtmlAttributes(props) {\n var initAttributes = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n return Object.keys(props).reduce(function (obj, key) {\n obj[HTML_TAG_MAP[key] || key] = props[key];\n return obj;\n }, initAttributes);\n};\n\nvar generateTitleAsReactComponent = function generateTitleAsReactComponent(type, title, attributes) {\n var _initProps; // assigning into an array to define toString function on it\n\n\n var initProps = (_initProps = {\n key: title\n }, _initProps[HELMET_ATTRIBUTE] = true, _initProps);\n var props = convertElementAttributestoReactProps(attributes, initProps);\n return [React.createElement(TAG_NAMES.TITLE, props, title)];\n};\n\nvar generateTagsAsReactComponent = function generateTagsAsReactComponent(type, tags) {\n return tags.map(function (tag, i) {\n var _mappedTag;\n\n var mappedTag = (_mappedTag = {\n key: i\n }, _mappedTag[HELMET_ATTRIBUTE] = true, _mappedTag);\n Object.keys(tag).forEach(function (attribute) {\n var mappedAttribute = REACT_TAG_MAP[attribute] || attribute;\n\n if (mappedAttribute === TAG_PROPERTIES.INNER_HTML || mappedAttribute === TAG_PROPERTIES.CSS_TEXT) {\n var content = tag.innerHTML || tag.cssText;\n mappedTag.dangerouslySetInnerHTML = {\n __html: content\n };\n } else {\n mappedTag[mappedAttribute] = tag[attribute];\n }\n });\n return React.createElement(type, mappedTag);\n });\n};\n\nvar getMethodsForTag = function getMethodsForTag(type, tags, encode) {\n switch (type) {\n case TAG_NAMES.TITLE:\n return {\n toComponent: function toComponent() {\n return generateTitleAsReactComponent(type, tags.title, tags.titleAttributes, encode);\n },\n toString: function toString() {\n return generateTitleAsString(type, tags.title, tags.titleAttributes, encode);\n }\n };\n\n case ATTRIBUTE_NAMES.BODY:\n case ATTRIBUTE_NAMES.HTML:\n return {\n toComponent: function toComponent() {\n return convertElementAttributestoReactProps(tags);\n },\n toString: function toString() {\n return generateElementAttributesAsString(tags);\n }\n };\n\n default:\n return {\n toComponent: function toComponent() {\n return generateTagsAsReactComponent(type, tags);\n },\n toString: function toString() {\n return generateTagsAsString(type, tags, encode);\n }\n };\n }\n};\n\nvar mapStateOnServer = function mapStateOnServer(_ref) {\n var baseTag = _ref.baseTag,\n bodyAttributes = _ref.bodyAttributes,\n encode = _ref.encode,\n htmlAttributes = _ref.htmlAttributes,\n linkTags = _ref.linkTags,\n metaTags = _ref.metaTags,\n noscriptTags = _ref.noscriptTags,\n scriptTags = _ref.scriptTags,\n styleTags = _ref.styleTags,\n _ref$title = _ref.title,\n title = _ref$title === undefined ? \"\" : _ref$title,\n titleAttributes = _ref.titleAttributes;\n return {\n base: getMethodsForTag(TAG_NAMES.BASE, baseTag, encode),\n bodyAttributes: getMethodsForTag(ATTRIBUTE_NAMES.BODY, bodyAttributes, encode),\n htmlAttributes: getMethodsForTag(ATTRIBUTE_NAMES.HTML, htmlAttributes, encode),\n link: getMethodsForTag(TAG_NAMES.LINK, linkTags, encode),\n meta: getMethodsForTag(TAG_NAMES.META, metaTags, encode),\n noscript: getMethodsForTag(TAG_NAMES.NOSCRIPT, noscriptTags, encode),\n script: getMethodsForTag(TAG_NAMES.SCRIPT, scriptTags, encode),\n style: getMethodsForTag(TAG_NAMES.STYLE, styleTags, encode),\n title: getMethodsForTag(TAG_NAMES.TITLE, {\n title: title,\n titleAttributes: titleAttributes\n }, encode)\n };\n};\n\nvar Helmet = function Helmet(Component) {\n var _class, _temp;\n\n return _temp = _class = function (_React$Component) {\n inherits(HelmetWrapper, _React$Component);\n\n function HelmetWrapper() {\n classCallCheck(this, HelmetWrapper);\n return possibleConstructorReturn(this, _React$Component.apply(this, arguments));\n }\n\n HelmetWrapper.prototype.shouldComponentUpdate = function shouldComponentUpdate(nextProps) {\n return !isEqual(this.props, nextProps);\n };\n\n HelmetWrapper.prototype.mapNestedChildrenToProps = function mapNestedChildrenToProps(child, nestedChildren) {\n if (!nestedChildren) {\n return null;\n }\n\n switch (child.type) {\n case TAG_NAMES.SCRIPT:\n case TAG_NAMES.NOSCRIPT:\n return {\n innerHTML: nestedChildren\n };\n\n case TAG_NAMES.STYLE:\n return {\n cssText: nestedChildren\n };\n }\n\n throw new Error(\"<\" + child.type + \" /> elements are self-closing and can not contain children. Refer to our API for more information.\");\n };\n\n HelmetWrapper.prototype.flattenArrayTypeChildren = function flattenArrayTypeChildren(_ref) {\n var _babelHelpers$extends;\n\n var child = _ref.child,\n arrayTypeChildren = _ref.arrayTypeChildren,\n newChildProps = _ref.newChildProps,\n nestedChildren = _ref.nestedChildren;\n return _extends({}, arrayTypeChildren, (_babelHelpers$extends = {}, _babelHelpers$extends[child.type] = [].concat(arrayTypeChildren[child.type] || [], [_extends({}, newChildProps, this.mapNestedChildrenToProps(child, nestedChildren))]), _babelHelpers$extends));\n };\n\n HelmetWrapper.prototype.mapObjectTypeChildren = function mapObjectTypeChildren(_ref2) {\n var _babelHelpers$extends2, _babelHelpers$extends3;\n\n var child = _ref2.child,\n newProps = _ref2.newProps,\n newChildProps = _ref2.newChildProps,\n nestedChildren = _ref2.nestedChildren;\n\n switch (child.type) {\n case TAG_NAMES.TITLE:\n return _extends({}, newProps, (_babelHelpers$extends2 = {}, _babelHelpers$extends2[child.type] = nestedChildren, _babelHelpers$extends2.titleAttributes = _extends({}, newChildProps), _babelHelpers$extends2));\n\n case TAG_NAMES.BODY:\n return _extends({}, newProps, {\n bodyAttributes: _extends({}, newChildProps)\n });\n\n case TAG_NAMES.HTML:\n return _extends({}, newProps, {\n htmlAttributes: _extends({}, newChildProps)\n });\n }\n\n return _extends({}, newProps, (_babelHelpers$extends3 = {}, _babelHelpers$extends3[child.type] = _extends({}, newChildProps), _babelHelpers$extends3));\n };\n\n HelmetWrapper.prototype.mapArrayTypeChildrenToProps = function mapArrayTypeChildrenToProps(arrayTypeChildren, newProps) {\n var newFlattenedProps = _extends({}, newProps);\n\n Object.keys(arrayTypeChildren).forEach(function (arrayChildName) {\n var _babelHelpers$extends4;\n\n newFlattenedProps = _extends({}, newFlattenedProps, (_babelHelpers$extends4 = {}, _babelHelpers$extends4[arrayChildName] = arrayTypeChildren[arrayChildName], _babelHelpers$extends4));\n });\n return newFlattenedProps;\n };\n\n HelmetWrapper.prototype.warnOnInvalidChildren = function warnOnInvalidChildren(child, nestedChildren) {\n if (process.env.NODE_ENV !== \"production\") {\n if (!VALID_TAG_NAMES.some(function (name) {\n return child.type === name;\n })) {\n if (typeof child.type === \"function\") {\n return warn(\"You may be attempting to nest <Helmet> components within each other, which is not allowed. Refer to our API for more information.\");\n }\n\n return warn(\"Only elements types \" + VALID_TAG_NAMES.join(\", \") + \" are allowed. Helmet does not support rendering <\" + child.type + \"> elements. Refer to our API for more information.\");\n }\n\n if (nestedChildren && typeof nestedChildren !== \"string\" && (!Array.isArray(nestedChildren) || nestedChildren.some(function (nestedChild) {\n return typeof nestedChild !== \"string\";\n }))) {\n throw new Error(\"Helmet expects a string as a child of <\" + child.type + \">. Did you forget to wrap your children in braces? ( <\" + child.type + \">{``}</\" + child.type + \"> ) Refer to our API for more information.\");\n }\n }\n\n return true;\n };\n\n HelmetWrapper.prototype.mapChildrenToProps = function mapChildrenToProps(children, newProps) {\n var _this2 = this;\n\n var arrayTypeChildren = {};\n React.Children.forEach(children, function (child) {\n if (!child || !child.props) {\n return;\n }\n\n var _child$props = child.props,\n nestedChildren = _child$props.children,\n childProps = objectWithoutProperties(_child$props, [\"children\"]);\n var newChildProps = convertReactPropstoHtmlAttributes(childProps);\n\n _this2.warnOnInvalidChildren(child, nestedChildren);\n\n switch (child.type) {\n case TAG_NAMES.LINK:\n case TAG_NAMES.META:\n case TAG_NAMES.NOSCRIPT:\n case TAG_NAMES.SCRIPT:\n case TAG_NAMES.STYLE:\n arrayTypeChildren = _this2.flattenArrayTypeChildren({\n child: child,\n arrayTypeChildren: arrayTypeChildren,\n newChildProps: newChildProps,\n nestedChildren: nestedChildren\n });\n break;\n\n default:\n newProps = _this2.mapObjectTypeChildren({\n child: child,\n newProps: newProps,\n newChildProps: newChildProps,\n nestedChildren: nestedChildren\n });\n break;\n }\n });\n newProps = this.mapArrayTypeChildrenToProps(arrayTypeChildren, newProps);\n return newProps;\n };\n\n HelmetWrapper.prototype.render = function render() {\n var _props = this.props,\n children = _props.children,\n props = objectWithoutProperties(_props, [\"children\"]);\n\n var newProps = _extends({}, props);\n\n if (children) {\n newProps = this.mapChildrenToProps(children, newProps);\n }\n\n return React.createElement(Component, newProps);\n };\n\n createClass(HelmetWrapper, null, [{\n key: \"canUseDOM\",\n // Component.peek comes from react-side-effect:\n // For testing, you may use a static peek() method available on the returned component.\n // It lets you get the current state without resetting the mounted instance stack.\n // Don’t use it for anything other than testing.\n\n /**\n * @param {Object} base: {\"target\": \"_blank\", \"href\": \"http://mysite.com/\"}\n * @param {Object} bodyAttributes: {\"className\": \"root\"}\n * @param {String} defaultTitle: \"Default Title\"\n * @param {Boolean} defer: true\n * @param {Boolean} encodeSpecialCharacters: true\n * @param {Object} htmlAttributes: {\"lang\": \"en\", \"amp\": undefined}\n * @param {Array} link: [{\"rel\": \"canonical\", \"href\": \"http://mysite.com/example\"}]\n * @param {Array} meta: [{\"name\": \"description\", \"content\": \"Test description\"}]\n * @param {Array} noscript: [{\"innerHTML\": \"<img src='http://mysite.com/js/test.js'\"}]\n * @param {Function} onChangeClientState: \"(newState) => console.log(newState)\"\n * @param {Array} script: [{\"type\": \"text/javascript\", \"src\": \"http://mysite.com/js/test.js\"}]\n * @param {Array} style: [{\"type\": \"text/css\", \"cssText\": \"div { display: block; color: blue; }\"}]\n * @param {String} title: \"Title\"\n * @param {Object} titleAttributes: {\"itemprop\": \"name\"}\n * @param {String} titleTemplate: \"MySite.com - %s\"\n */\n set: function set$$1(canUseDOM) {\n Component.canUseDOM = canUseDOM;\n }\n }]);\n return HelmetWrapper;\n }(React.Component), _class.propTypes = {\n base: PropTypes.object,\n bodyAttributes: PropTypes.object,\n children: PropTypes.oneOfType([PropTypes.arrayOf(PropTypes.node), PropTypes.node]),\n defaultTitle: PropTypes.string,\n defer: PropTypes.bool,\n encodeSpecialCharacters: PropTypes.bool,\n htmlAttributes: PropTypes.object,\n link: PropTypes.arrayOf(PropTypes.object),\n meta: PropTypes.arrayOf(PropTypes.object),\n noscript: PropTypes.arrayOf(PropTypes.object),\n onChangeClientState: PropTypes.func,\n script: PropTypes.arrayOf(PropTypes.object),\n style: PropTypes.arrayOf(PropTypes.object),\n title: PropTypes.string,\n titleAttributes: PropTypes.object,\n titleTemplate: PropTypes.string\n }, _class.defaultProps = {\n defer: true,\n encodeSpecialCharacters: true\n }, _class.peek = Component.peek, _class.rewind = function () {\n var mappedState = Component.rewind();\n\n if (!mappedState) {\n // provide fallback if mappedState is undefined\n mappedState = mapStateOnServer({\n baseTag: [],\n bodyAttributes: {},\n encodeSpecialCharacters: true,\n htmlAttributes: {},\n linkTags: [],\n metaTags: [],\n noscriptTags: [],\n scriptTags: [],\n styleTags: [],\n title: \"\",\n titleAttributes: {}\n });\n }\n\n return mappedState;\n }, _temp;\n};\n\nvar NullComponent = function NullComponent() {\n return null;\n};\n\nvar HelmetSideEffects = withSideEffect(reducePropsToState, handleClientStateChange, mapStateOnServer)(NullComponent);\nvar HelmetExport = Helmet(HelmetSideEffects);\nHelmetExport.renderStatic = HelmetExport.rewind;\nexport default HelmetExport;\nexport { HelmetExport as Helmet };","module.exports = __webpack_public_path__ + \"static/EF_WHT-OR_png-d0fd43ad31261ee9693a060be920e71e.png\";"],"sourceRoot":""}
\ No newline at end of file
diff --git a/community/index.html b/community/index.html
index cd85be5..e6b0d43 100644
--- a/community/index.html
+++ b/community/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><style data-href="/jkube/styles.5c9b852c43e28f117cb7.css">@import url(https://fonts.googleapis.com/css?family=Libre+Franklin:100,300,400,600,700,|Roboto:300,400,500,700|Jura);@import url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css);@import url(https://unpkg.com/@coreui/icons/css/brand.min.css);code[class*=language-],pre[class*=language-]{color:#657b83;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-ms-hyphens:none;hyphens:none}code[class*=language-]::selection,code[class*=language-] ::selection,pre[class*=language-]::selection,pre[class*=language-] ::selection{background:#073642}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;border-radius:.3em}:not(pre)>code[class*=language-],pre[class*=language-]{background-color:#fdf6e3}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#93a1a1}.token.punctuation{color:#586e75}.token.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#268bd2}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string,.token.url{color:#2aa198}.token.entity{color:#657b83;background:#eee8d5}.token.atrule,.token.attr-value,.token.keyword{color:#859900}.token.class-name,.token.function{color:#b58900}.token.important,.token.regex,.token.variable{color:#cb4b16}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body,html{font-family:Libre Franklin,Roboto,sans-serif}body{margin:0;padding:0;outline:0;background:#f1f2f2;font-size:16px;color:#222}h1{font-size:3rem}h1,h2{margin-top:0;font-family:Roboto,sans-serif;font-weight:300}h2{font-size:2rem}h3{font-size:1.5rem;font-weight:300}a{color:#525c86}a:focus,a:hover{color:#222}.eclipse-jkube-footer{padding:16px;border-top:10px solid #222;background-color:#292c2f;font-size:19.2px;font-family:Roboto,sans-serif;font-weight:300;line-height:1.5}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube{display:flex;flex-direction:column;max-width:1170px;margin:0 auto 16px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-image{width:160px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-tagline{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links{max-width:1170px;margin:0 auto 16px;display:flex;flex-wrap:wrap}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list{padding:0;margin:0 48px 16px 0;list-style:none}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a{transition:color .1s linear;color:#f1f2f2}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a,.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a:hover{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a:hover{color:#525c86}.eclipse-jkube-footer .eclipse-jkube-footer__links a{text-decoration:none}.eclipse-jkube-footer .eclipse-jkube-footer__copyright{max-width:1170px;margin:0 auto 16px;font-family:Roboto,sans-serif;color:#939598}.eclipse-jkube__header{display:block;position:relative;height:175px;background-color:#292c2f}@media (min-width:700px){.eclipse-jkube__header{height:105px}}.eclipse-jkube__header .eclipse-jkube__header-trade-mark{font-size:.5em;font-size:.3em;line-height:2.5;vertical-align:top}.eclipse-jkube__header .eclipse-jkube__header-container{position:relative;margin:0 auto;padding:0 16px;height:100%;max-width:1170px}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-container{display:flex;flex-wrap:nowrap;height:105px}}.eclipse-jkube__header .eclipse-jkube__header-logo{display:flex;justify-content:center;align-items:center;font-size:32px;font-weight:400;color:#f1f2f2}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo{font-size:50px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:65px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:90px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image img{max-height:100%;max-width:100%}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:50px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:65px}}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube-image{height:100%}.eclipse-jkube__header .eclipse-jkube__header-logo:hover{color:#f1f2f2}.eclipse-jkube__header .eclipse-jkube__header-content{flex:1 0;min-width:1px;display:flex;justify-content:center;align-items:center}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-content{justify-content:flex-end}}.eclipse-jkube__header .eclipse-jkube__header-content ul{display:flex;flex-wrap:wrap;align-items:center;justify-content:center}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-content ul{justify-content:flex-start}}.eclipse-jkube__header .eclipse-jkube__header-content ul li{margin:4px 0;padding-right:16px;list-style:none;color:#f1f2f2;font-size:20px}.eclipse-jkube__header .eclipse-jkube__header-content .eclipse-jkube__header-stars{display:block;width:85px;height:20px;line-height:20px}.eclipse-jkube__header a{color:#f1f2f2;text-decoration:none}.eclipse-jkube__header a:hover{color:#dd8623;transition:color .3s}.quick-start-card{border:1px solid #d6d6d6;padding:16px}.quick-start-card .quick-start-card__title{margin:0;padding:0}.quick-start-card .quick-start-card__title a{text-decoration:none}.quick-start-card .quick-start-card__title a:active,.quick-start-card .quick-start-card__title a:hover{text-decoration:underline}.quick-start-card .quick-start-card__technologies{margin:16px 0 0;padding:0}.quick-start-card .quick-start-card__technologies-item{display:inline-flex;align-items:center;padding:.25rem .3rem;border-radius:.2rem;font-size:.8rem;margin:0 0 .5rem;background:#dd8623;color:#222}.quick-start-card .quick-start-card__technologies-item:not(:last-child){margin-right:.5rem}.quick-start-card .quick-start-card__technologies-item-icon{display:inline-block;height:.8rem;margin-right:.2rem}.quick-start-card .quick-start-card__description p{margin-top:0}.quick-start-card .quick-start-card__links a{display:inline-block;text-decoration:none;padding:.3rem .5rem;border-radius:.2rem;border:1px solid #d6d6d6;background:#d6d6d6;color:#222}.quick-start-card .quick-start-card__links a:active,.quick-start-card .quick-start-card__links a:hover{background-color:#f1f2f2}.eclipse-jkube{display:flex;flex-direction:column;min-height:100vh}.eclipse-jkube__main{flex:1 1}@media (min-width:1170px){.eclipse-jkube__main{overflow-x:hidden}}.eclipse-jkube__main .eclipse-jkube__content{margin:0 16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content{max-width:1154px;margin:0 auto}}.eclipse-jkube__main .eclipse-jkube__content img{max-width:100%}.eclipse-jkube__main .eclipse-jkube__content :not(pre)>code[class*=language-],.eclipse-jkube__main .eclipse-jkube__content pre[class*=language-]{background-color:transparent}.eclipse-jkube__main .eclipse-jkube__content .hero{margin:0 -16px 16px;display:block;background-color:#272727;background-image:url(/jkube/static/cubes-8e1e59c337437947105e6668f1f3790a.jpg);background-size:cover;color:#f1f2f2}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px;background-color:rgba(39,39,39,.7)}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px calc((100% - 1170px)/2)}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content .getting-involved{color:#f1f2f2;margin:0 -16px;padding:0 16px;display:flex;justify-content:flex-end}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content h1{font-size:2.5rem;font-family:Libre Franklin,Roboto,sans-serif;font-weight:400}.eclipse-jkube__main .eclipse-jkube__content .section-dark{background-color:#404040;color:#f1f2f2;margin:0 -16px;padding:16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;padding:16px calc((100% - 1170px)/2)}}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark>*{padding:0 calc((100% - 1170px)/2)}}.eclipse-jkube__main .eclipse-jkube__content .highlight{display:flex;align-items:center}.eclipse-jkube__main .eclipse-jkube__content .highlight>p{margin:16px 32px;display:none}@media (min-width:501px){.eclipse-jkube__main .eclipse-jkube__content .highlight>p{display:block}}.eclipse-jkube__main .eclipse-jkube__content .highlight>p img{max-width:100px}.eclipse-jkube__main .eclipse-jkube__content .highlight-description{flex:1 1;min-width:1px}.eclipse-jkube__main .eclipse-jkube__content .highlight ul{flex:1 1;min-width:1px;margin:0;padding:0}.eclipse-jkube__main .eclipse-jkube__content .highlight li{list-style:none;margin:16px 0}.eclipse-jkube__main .eclipse-jkube__content .calendar{position:relative;overflow:hidden;padding-bottom:75%;margin-bottom:16px}@media (min-width:666.66667px){.eclipse-jkube__main .eclipse-jkube__content .calendar{padding-bottom:0;height:500px}}.eclipse-jkube__main .eclipse-jkube__content .calendar iframe{position:absolute;top:0;height:100%;max-height:500px;width:100%}.eclipse-jkube__documentation{margin:0}@media screen and (min-width:768px){.eclipse-jkube__documentation{position:absolute;top:105px;bottom:0;width:100%;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content{position:relative;padding:16px;overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content article,.eclipse-jkube__documentation .eclipse-jkube__documentation-content aside,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figcaption,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure,.eclipse-jkube__documentation .eclipse-jkube__documentation-content footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content header,.eclipse-jkube__documentation .eclipse-jkube__documentation-content hgroup,.eclipse-jkube__documentation .eclipse-jkube__documentation-content main,.eclipse-jkube__documentation .eclipse-jkube__documentation-content nav,.eclipse-jkube__documentation .eclipse-jkube__documentation-content section{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio,.eclipse-jkube__documentation .eclipse-jkube__documentation-content video{display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio:not([controls]){display:none;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus{outline:thin dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{outline:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2em;margin:.67em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]{border-bottom:1px dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dfn{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{box-sizing:content-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content mark{background:#ff0;color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content samp{font-family:monospace;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{white-space:pre-wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content q{quotes:"\201C" "\201D" "\2018" "\2019"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub{bottom:-.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg:not(:root){overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure{margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content legend{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select,.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{font-family:inherit;font-size:100%;margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input{line-height:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[type=button],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=reset],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=submit]{-webkit-appearance:button;cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button[disabled],.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[disabled]{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=checkbox],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=radio]{box-sizing:border-box;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button::-moz-focus-inner,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input::-moz-focus-inner{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{overflow:auto;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{border-collapse:collapse;border-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content *,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :before{box-sizing:border-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body{background:#fff;color:rgba(0,0,0,.8);padding:0;margin:0;font-family:"Noto Serif","DejaVu Serif",serif;font-weight:400;font-style:normal;line-height:1;position:relative;cursor:auto;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{max-width:100%;height:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{height:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{-ms-interpolation-mode:bicubic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .left{float:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .right{float:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-left{text-align:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-right{text-align:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-center{text-align:center!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-justify{text-align:justify!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{display:inline-block;vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{height:auto;min-height:50px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .center{margin-left:auto;margin-right:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stretch{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .subheader,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{line-height:1.45;color:#7a2518;font-weight:400;margin-top:0;margin-bottom:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content div,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content form,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6,.eclipse-jkube__documentation .eclipse-jkube__documentation-content li,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin:0;padding:0;direction:ltr}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:#2156a5;text-decoration:underline;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{color:#1d4b8f}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{font-family:inherit;font-weight:400;font-size:1em;line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p aside{font-size:.875em;line-height:1.35;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-family:Open Sans,DejaVu Sans,sans-serif;font-weight:300;font-style:normal;color:#ba3925;text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:.5em;line-height:1.0125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 small{font-size:60%;color:#e99b8f;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5{font-size:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{border:solid #dddddf;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em,.eclipse-jkube__documentation .eclipse-jkube__documentation-content i{font-style:italic;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b,.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong{font-weight:700;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:60%;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;font-weight:400;color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{font-size:1em;line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ul{margin-left:1.25em;margin-bottom:0;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square li ul{list-style:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square{list-style-type:square}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle{list-style-type:circle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc{list-style-type:disc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ul{margin-left:1.25em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dt{margin-bottom:.3125em;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content acronym{text-transform:uppercase;font-size:90%;color:rgba(0,0,0,.8);border-bottom:1px dotted #ddd;cursor:help}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote{margin:0 0 1.25em;padding:.5625em 1.25em 0 1.1875em;border-left:1px solid #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite{display:block;font-size:.9375em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite:before{content:"\2014 "}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a:visited{color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote p{line-height:1.6;color:rgba(0,0,0,.85)}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:2.3125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4{font-size:1.4375em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{background:#fff;margin-bottom:1.25em;border:1px solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead{background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th{padding:.5em .625em .625em;font-size:inherit;color:rgba(0,0,0,.8);text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr th{padding:.5625em .625em;font-size:inherit;color:rgba(0,0,0,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.even{background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tbody tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td{display:table-cell;line-height:1.6}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2;word-spacing:-.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre):not([class^=L])>code{font-size:.9375em;font-style:normal!important;letter-spacing:0;padding:.1em .5ex;word-spacing:-.15em;background:#f7f7f8;border-radius:4px;line-height:1.45;text-rendering:optimizeSpeed;word-wrap:break-word}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nobreak{word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nowrap{white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{color:rgba(0,0,0,.9);font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;line-height:1.45;text-rendering:optimizeSpeed}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre pre{color:inherit;font-size:inherit;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre>code{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap pre{white-space:pre;word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em em{font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq{color:rgba(51,51,51,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;display:inline-block;color:rgba(0,0,0,.8);font-size:.65em;line-height:1.45;background:#f7f7f7;border:1px solid #ccc;border-radius:3px;box-shadow:0 1px 0 rgba(0,0,0,.2),inset 0 0 0 .1em #fff;margin:0 .15em;padding:.2em .5em;vertical-align:middle;position:relative;top:-.1em;white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:first-child{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:last-child{margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b:not(.caret){font-weight:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{word-spacing:-.02em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b.caret{font-size:1.25em;line-height:.8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq i.caret{font-weight:700;text-align:center;width:.45em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{position:relative;top:-1px;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{content:"[";padding:0 3px 0 2px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after{content:"]";padding:0 2px 0 3px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p a>code:hover{color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{width:100%;margin:0 auto;max-width:62.5em;*zoom:1;position:relative;padding-left:.9375em;padding-right:.9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-top:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before{content:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{color:rgba(0,0,0,.85);margin-top:2.25rem;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child+#toc{margin-top:8px;border-top:1px solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:only-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #dddddf;padding-bottom:8px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details{border-bottom:1px solid #dddddf;line-height:1.45;padding-top:.25em;padding-bottom:.25em;padding-left:.25em;color:rgba(0,0,0,.6);display:flex;flex-flow:row wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span:first-child{margin-left:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span.email a{color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span:before{content:"\A0\2013\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span.author:before{content:"\A0\22C5\A0";color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span#revremark:before{content:"\A0|\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber{text-transform:capitalize}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber:after{content:"\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content>h1:first-child:not([class]){color:rgba(0,0,0,.85);border-bottom:1px solid #dddddf;padding-bottom:8px;margin-top:0;padding-top:1rem;margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #e7e7e9;padding-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc>ul{margin-left:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0>li>a{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0 ul.sectlevel1{margin:.5em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul{font-family:Open Sans,DejaVu Sans,sans-serif;list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc li{line-height:1.3334;margin-top:.3334em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{color:#7a2518;font-size:1.2em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:15em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{margin-top:0!important;background:#f8f8f7;position:fixed;width:15em;left:0;top:0;border-right:1px solid #e7e7e9;border-top-width:0!important;border-bottom-width:0!important;z-index:1000;padding:1.25em 1em;height:100%;overflow:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{margin-top:0;margin-bottom:.8rem;font-size:1.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.9em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{margin-left:0;padding-left:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:.5em;margin-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:15em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right #toc.toc2{border-right-width:0;border-left:1px solid #e7e7e9;left:auto;right:0}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:20em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{width:20em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.95em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{padding-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:20em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc{border:1px solid #e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{max-width:100%;background:rgba(0,0,0,.8);padding:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:hsla(0,0%,100%,.8);line-height:1.44}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:.625em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:1.25em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1:last-child{padding-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border-top:1px solid #e7e7e9}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:before{content:"\A7";font-size:.85em;display:block;padding-top:.1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:hover{visibility:visible}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link{color:#ba3925;text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link:hover{color:#a53221}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content details>summary:first-of-type{cursor:pointer;display:list-item;outline:none;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{text-rendering:optimizeLegibility;text-align:left;font-family:"Noto Serif","DejaVu Serif",serif;font-size:1rem;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock.fit-content>caption.title{white-space:nowrap;width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #preamble>.sectionbody>[class=paragraph]:first-of-type p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph.lead>p{font-size:1.21875em;line-height:1.6;color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock #preamble>.sectionbody>[class=paragraph]:first-of-type p{font-size:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon{text-align:center;width:80px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon .title{font-weight:700;font-family:Open Sans,DejaVu Sans,sans-serif;text-transform:uppercase}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content{padding-left:1.125em;padding-right:1.25em;border-left:1px solid #dddddf;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{border:1px solid #e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#fff;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{border:1px solid #dbdbd6;margin-bottom:1.25em;padding:1.25em;background:#f3f3f2;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title{color:#7a2518;margin-top:0;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{border-radius:4px;word-wrap:break-word;overflow-x:auto;padding:1em;font-size:.8125em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:.90625em}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:1em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre:not(.highlight),.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class=highlight],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class^="highlight "],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock.output pre{color:#f7f7f8;background:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content{position:relative}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:none;content:attr(data-lang);position:absolute;font-size:.75em;top:.425rem;right:.5rem;line-height:1;text-transform:uppercase;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock:hover code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:before{content:attr(data-prompt);padding-right:.5em;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:not([data-prompt]):before{content:"$"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs{padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs>code{padding:1em;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.prettyprint{border-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .prettyprint{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint .linenums{line-height:1.45;margin-left:2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li{background:none;list-style-type:inherit;padding-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li code[data-lang]:before{opacity:1}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li:not(:first-child) code[data-lang]:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable{border-collapse:separate;border:0;margin-bottom:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td[class]{color:inherit;vertical-align:top;padding:0;line-height:inherit;white-space:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.code{padding-left:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.linenos{border-right:1px solid;opacity:.35;padding-right:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno{border-right:1px solid;opacity:.35;display:inline-block;margin-right:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno:before{content:"";margin-right:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock{margin:0 1em 1.25em 1.5em;display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock:not(.excerpt)>.title{margin-left:-1.5em;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock p{color:rgba(0,0,0,.85);font-size:1.15rem;line-height:1.75;word-spacing:.1em;letter-spacing:0;font-style:italic;text-align:justify}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote{margin:0;padding:0;border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote:before{content:"\201C";float:left;font-size:2.75em;font-weight:700;line-height:.6em;margin-left:-.6em;color:#7a2518;text-shadow:0 1px 2px rgba(0,0,0,.1)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote>.paragraph:last-child p{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution{margin-top:.75em;margin-right:.5ex;text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock{margin:0 1em 1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre{font-family:Open Sans,DejaVu Sans,sans;font-size:1.15rem;color:rgba(0,0,0,.85);font-weight:300;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{margin-top:1.25rem;margin-left:.5ex}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{font-size:.9375em;line-height:1.45;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution br,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution cite,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution cite{display:block;letter-spacing:-.025em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{line-height:1.6;word-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract{margin:0 1em 1.25em;display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract>.title{margin:0 0 .375em;font-size:1.15em;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt>blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{padding:0 0 .25em 1em;border-left:.25em solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{color:inherit;font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock .attribution{color:inherit;text-align:left;margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock{max-width:100%;border-collapse:separate}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child{margin-bottom:-1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child.sidebarblock{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{border:0 solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead>tr>.tableblock{border-width:0 1px 1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tfoot>tr>.tableblock{border-width:1px 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock{border-width:0 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead>tr>.tableblock{border-width:0 0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tfoot>tr>.tableblock{border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>*>tr>.tableblock:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock:last-child{border-right-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead:last-child>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead:last-child>tr>.tableblock{border-bottom-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-all{border-width:1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-sides{border-width:0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-ends,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-topbot{border-width:1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-all tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-even tr:nth-of-type(2n),.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-hover tr:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-odd tr:nth-of-type(odd){background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-left{text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-right,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-right{text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-center,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-center{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-top,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-top{vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-bottom,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-bottom{vertical-align:bottom}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-middle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-middle{vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead th{font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th{display:table-cell;line-height:1.6;background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th p{color:rgba(0,0,0,.8);font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock>code:only-child{background:none;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol{margin-left:1.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-left:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul dd{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-check-square-o:first-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-square-o:first-child{width:1.25em;font-size:.8em;position:relative;bottom:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>input[type=checkbox]:first-child{margin-right:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline{display:flex;flex-flow:row wrap;list-style:none;margin:0 0 .625em -1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline>li{margin-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .unstyled dl dt{font-weight:400;font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.arabic{list-style-type:decimal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.decimal{list-style-type:decimal-leading-zero}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.loweralpha{list-style-type:lower-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperalpha{list-style-type:upper-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowerroman{list-style-type:lower-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperroman{list-style-type:upper-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowergreek{list-style-type:lower-greek}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table{border:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table>tbody>tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table>tbody>tr{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist2{vertical-align:top;padding:0 .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1{font-weight:700;padding-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock+.colist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock+.colist{margin-top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child{padding:.4em .75em 0;line-height:1;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):last-child{padding:.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .thumb{line-height:0;display:inline-block;border:4px solid #fff;box-shadow:0 0 0 1px #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.left{margin:.25em .625em 1.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.right{margin:.25em 0 1.25em .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb{border-width:6px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb>.title{padding:0 .125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-top:.25em;margin-bottom:.25em;display:inline-block;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left{margin-right:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image{text-decoration:none;display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image object{pointer-events:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref{font-size:.875em;position:static;vertical-align:super}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 .75em;border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote{padding:0 .375em 0 .225em;line-height:1.3334;font-size:.875em;margin-left:1.2em;margin-bottom:.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote a:first-of-type{font-weight:700;text-decoration:none;margin-left:-1.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote:last-of-type{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table{border:0;background:#fff;width:100%;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table td.line-data{width:99%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.unbreakable{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .big{font-size:larger}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .small{font-size:smaller}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .underline{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .overline{text-decoration:overline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .line-through{text-decoration:line-through}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua{color:#00bfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua-background{background:#00fafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black-background{background:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue{color:#0000bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue-background{background:#0000fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia{color:#bf00bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia-background{background:#fa00fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray{color:#606060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray-background{background:#7d7d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green{color:#006000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green-background{background:#007d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime{color:#00bf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime-background{background:#00fa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon{color:#600000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon-background{background:#7d0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy{color:#000060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy-background{background:#00007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive{color:#606000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive-background{background:#7d7d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple{color:#600060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple-background{background:#7d007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red{color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red-background{background:#fa0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver{color:#909090}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver-background{background:#bcbcbc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal{color:#006060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal-background{background:#007d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white{color:#bfbfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white-background{background:#fafafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow{color:#bfbf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow-background{background:#fafa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.icon>.fa{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a span.icon>.fa{cursor:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;text-shadow:1px 1px 2px rgba(0,0,0,.5);cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-note:before{content:"\F05A";color:#19407c}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-tip:before{content:"\F0EB";text-shadow:1px 1px 2px rgba(155,155,0,.8);color:#111}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-warning:before{content:"\F071";color:#bf6900}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-caution:before{content:"\F06D";color:#bf3400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-important:before{content:"\F06A";color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]{display:inline-block;color:#fff!important;background:rgba(0,0,0,.8);border-radius:100px;text-align:center;font-size:.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:Open Sans,DejaVu Sans,sans-serif;font-style:normal;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value] *{color:#fff!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]+b{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]:after{content:attr(data-value)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre .conum[data-value]{position:relative;top:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.conum *{color:inherit!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum:not([data-value]):empty{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{letter-spacing:-.01em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content strong{letter-spacing:-.005em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{background:#fffef7;border-color:#e0e0dc;box-shadow:0 1px 4px #e0e0dc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:none!important}@page{.eclipse-jkube__documentation .eclipse-jkube__documentation-content{margin:1.25cm .75cm}}@media print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content *{box-shadow:none!important;text-shadow:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:inherit!important;text-decoration:underline!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.bare,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="#"],.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="mailto:"]{text-decoration:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="http:"]:not(.bare):after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="https:"]:not(.bare):after{content:"(" attr(href) ")";display:inline-block;font-size:.875em;padding-left:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]:after{content:" (" attr(title) ")"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tr{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content thead{display:table-header-group}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{max-width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1em;orphans:3;widows:3}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{page-break-after:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{background:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #dddddf!important;padding-bottom:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details{border:0!important;display:block;padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details span:first-child{margin-left:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br+span:before{content:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #preamble,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book .sect1>h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book h1.sect0{page-break-before:always}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{padding:0 .9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-on-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:block!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-for-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .show-for-print{display:inherit!important}}@media amzn-kf8,print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{margin-top:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:rgba(0,0,0,.6);font-size:.9em}}@media amzn-kf8{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{padding:0}}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content{padding-left:21em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .toc{position:fixed;width:20em;left:0;top:105px;bottom:0;z-index:1000;padding:0 16px;border-right:1px solid #efefed;border-top-width:0!important;border-bottom-width:0!important;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content i.fa{font-style:normal}.eclipse-jkube__quickstarts{padding:0}.eclipse-jkube__quickstarts-item{list-style:none}.eclipse-jkube__quickstarts-item:not(:last-child){margin-bottom:16px}</style><meta name="generator" content="Gatsby 2.24.12"/><title data-react-helmet="true">Eclipse JKube Community</title><meta data-react-helmet="true" charSet="UTF-8"/><meta data-react-helmet="true" name="description" content="Eclipse JKube Feedback and Community: Information about how to get involved in the project"/><style type="text/css">
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><style data-href="/jkube/styles.5c9b852c43e28f117cb7.css" id="gatsby-global-css">@import url(https://fonts.googleapis.com/css?family=Libre+Franklin:100,300,400,600,700,|Roboto:300,400,500,700|Jura);@import url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css);@import url(https://unpkg.com/@coreui/icons/css/brand.min.css);code[class*=language-],pre[class*=language-]{color:#657b83;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-ms-hyphens:none;hyphens:none}code[class*=language-]::selection,code[class*=language-] ::selection,pre[class*=language-]::selection,pre[class*=language-] ::selection{background:#073642}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;border-radius:.3em}:not(pre)>code[class*=language-],pre[class*=language-]{background-color:#fdf6e3}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#93a1a1}.token.punctuation{color:#586e75}.token.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#268bd2}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string,.token.url{color:#2aa198}.token.entity{color:#657b83;background:#eee8d5}.token.atrule,.token.attr-value,.token.keyword{color:#859900}.token.class-name,.token.function{color:#b58900}.token.important,.token.regex,.token.variable{color:#cb4b16}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body,html{font-family:Libre Franklin,Roboto,sans-serif}body{margin:0;padding:0;outline:0;background:#f1f2f2;font-size:16px;color:#222}h1{font-size:3rem}h1,h2{margin-top:0;font-family:Roboto,sans-serif;font-weight:300}h2{font-size:2rem}h3{font-size:1.5rem;font-weight:300}a{color:#525c86}a:focus,a:hover{color:#222}.eclipse-jkube-footer{padding:16px;border-top:10px solid #222;background-color:#292c2f;font-size:19.2px;font-family:Roboto,sans-serif;font-weight:300;line-height:1.5}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube{display:flex;flex-direction:column;max-width:1170px;margin:0 auto 16px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-image{width:160px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-tagline{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links{max-width:1170px;margin:0 auto 16px;display:flex;flex-wrap:wrap}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list{padding:0;margin:0 48px 16px 0;list-style:none}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a{transition:color .1s linear;color:#f1f2f2}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a,.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a:hover{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a:hover{color:#525c86}.eclipse-jkube-footer .eclipse-jkube-footer__links a{text-decoration:none}.eclipse-jkube-footer .eclipse-jkube-footer__copyright{max-width:1170px;margin:0 auto 16px;font-family:Roboto,sans-serif;color:#939598}.eclipse-jkube__header{display:block;position:relative;height:175px;background-color:#292c2f}@media (min-width:700px){.eclipse-jkube__header{height:105px}}.eclipse-jkube__header .eclipse-jkube__header-trade-mark{font-size:.5em;font-size:.3em;line-height:2.5;vertical-align:top}.eclipse-jkube__header .eclipse-jkube__header-container{position:relative;margin:0 auto;padding:0 16px;height:100%;max-width:1170px}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-container{display:flex;flex-wrap:nowrap;height:105px}}.eclipse-jkube__header .eclipse-jkube__header-logo{display:flex;justify-content:center;align-items:center;font-size:32px;font-weight:400;color:#f1f2f2}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo{font-size:50px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:65px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:90px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image img{max-height:100%;max-width:100%}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:50px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:65px}}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube-image{height:100%}.eclipse-jkube__header .eclipse-jkube__header-logo:hover{color:#f1f2f2}.eclipse-jkube__header .eclipse-jkube__header-content{flex:1 0;min-width:1px;display:flex;justify-content:center;align-items:center}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-content{justify-content:flex-end}}.eclipse-jkube__header .eclipse-jkube__header-content ul{display:flex;flex-wrap:wrap;align-items:center;justify-content:center}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-content ul{justify-content:flex-start}}.eclipse-jkube__header .eclipse-jkube__header-content ul li{margin:4px 0;padding-right:16px;list-style:none;color:#f1f2f2;font-size:20px}.eclipse-jkube__header .eclipse-jkube__header-content .eclipse-jkube__header-stars{display:block;width:85px;height:20px;line-height:20px}.eclipse-jkube__header a{color:#f1f2f2;text-decoration:none}.eclipse-jkube__header a:hover{color:#dd8623;transition:color .3s}.quick-start-card{border:1px solid #d6d6d6;padding:16px}.quick-start-card .quick-start-card__title{margin:0;padding:0}.quick-start-card .quick-start-card__title a{text-decoration:none}.quick-start-card .quick-start-card__title a:active,.quick-start-card .quick-start-card__title a:hover{text-decoration:underline}.quick-start-card .quick-start-card__technologies{margin:16px 0 0;padding:0}.quick-start-card .quick-start-card__technologies-item{display:inline-flex;align-items:center;padding:.25rem .3rem;border-radius:.2rem;font-size:.8rem;margin:0 0 .5rem;background:#dd8623;color:#222}.quick-start-card .quick-start-card__technologies-item:not(:last-child){margin-right:.5rem}.quick-start-card .quick-start-card__technologies-item-icon{display:inline-block;height:.8rem;margin-right:.2rem}.quick-start-card .quick-start-card__description p{margin-top:0}.quick-start-card .quick-start-card__links a{display:inline-block;text-decoration:none;padding:.3rem .5rem;border-radius:.2rem;border:1px solid #d6d6d6;background:#d6d6d6;color:#222}.quick-start-card .quick-start-card__links a:active,.quick-start-card .quick-start-card__links a:hover{background-color:#f1f2f2}.eclipse-jkube{display:flex;flex-direction:column;min-height:100vh}.eclipse-jkube__main{flex:1 1}@media (min-width:1170px){.eclipse-jkube__main{overflow-x:hidden}}.eclipse-jkube__main .eclipse-jkube__content{margin:0 16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content{max-width:1154px;margin:0 auto}}.eclipse-jkube__main .eclipse-jkube__content img{max-width:100%}.eclipse-jkube__main .eclipse-jkube__content :not(pre)>code[class*=language-],.eclipse-jkube__main .eclipse-jkube__content pre[class*=language-]{background-color:transparent}.eclipse-jkube__main .eclipse-jkube__content .hero{margin:0 -16px 16px;display:block;background-color:#272727;background-image:url(/jkube/static/cubes-8e1e59c337437947105e6668f1f3790a.jpg);background-size:cover;color:#f1f2f2}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px;background-color:rgba(39,39,39,.7)}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px calc(50% - 585px)}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content .getting-involved{color:#f1f2f2;margin:0 -16px;padding:0 16px;display:flex;justify-content:flex-end}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content h1{font-size:2.5rem;font-family:Libre Franklin,Roboto,sans-serif;font-weight:400}.eclipse-jkube__main .eclipse-jkube__content .section-dark{background-color:#404040;color:#f1f2f2;margin:0 -16px;padding:16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;padding:16px calc(50% - 585px)}}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark>*{padding:0 calc(50% - 585px)}}.eclipse-jkube__main .eclipse-jkube__content .highlight{display:flex;align-items:center}.eclipse-jkube__main .eclipse-jkube__content .highlight>p{margin:16px 32px;display:none}@media (min-width:501px){.eclipse-jkube__main .eclipse-jkube__content .highlight>p{display:block}}.eclipse-jkube__main .eclipse-jkube__content .highlight>p img{max-width:100px}.eclipse-jkube__main .eclipse-jkube__content .highlight-description{flex:1 1;min-width:1px}.eclipse-jkube__main .eclipse-jkube__content .highlight ul{flex:1 1;min-width:1px;margin:0;padding:0}.eclipse-jkube__main .eclipse-jkube__content .highlight li{list-style:none;margin:16px 0}.eclipse-jkube__main .eclipse-jkube__content .calendar{position:relative;overflow:hidden;padding-bottom:75%;margin-bottom:16px}@media (min-width:666.66667px){.eclipse-jkube__main .eclipse-jkube__content .calendar{padding-bottom:0;height:500px}}.eclipse-jkube__main .eclipse-jkube__content .calendar iframe{position:absolute;top:0;height:100%;max-height:500px;width:100%}.eclipse-jkube__documentation{margin:0}@media screen and (min-width:768px){.eclipse-jkube__documentation{position:absolute;top:105px;bottom:0;width:100%;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content{position:relative;padding:16px;overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content article,.eclipse-jkube__documentation .eclipse-jkube__documentation-content aside,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figcaption,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure,.eclipse-jkube__documentation .eclipse-jkube__documentation-content footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content header,.eclipse-jkube__documentation .eclipse-jkube__documentation-content hgroup,.eclipse-jkube__documentation .eclipse-jkube__documentation-content main,.eclipse-jkube__documentation .eclipse-jkube__documentation-content nav,.eclipse-jkube__documentation .eclipse-jkube__documentation-content section{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio,.eclipse-jkube__documentation .eclipse-jkube__documentation-content video{display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio:not([controls]){display:none;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus{outline:thin dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{outline:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2em;margin:.67em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]{border-bottom:1px dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dfn{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{box-sizing:content-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content mark{background:#ff0;color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content samp{font-family:monospace;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{white-space:pre-wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content q{quotes:"\201C" "\201D" "\2018" "\2019"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub{bottom:-.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg:not(:root){overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure{margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content legend{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select,.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{font-family:inherit;font-size:100%;margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input{line-height:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[type=button],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=reset],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=submit]{-webkit-appearance:button;cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button[disabled],.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[disabled]{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=checkbox],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=radio]{box-sizing:border-box;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button::-moz-focus-inner,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input::-moz-focus-inner{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{overflow:auto;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{border-collapse:collapse;border-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content *,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :before{box-sizing:border-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body{background:#fff;color:rgba(0,0,0,.8);padding:0;margin:0;font-family:"Noto Serif","DejaVu Serif",serif;font-weight:400;font-style:normal;line-height:1;position:relative;cursor:auto;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{max-width:100%;height:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{height:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{-ms-interpolation-mode:bicubic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .left{float:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .right{float:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-left{text-align:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-right{text-align:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-center{text-align:center!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-justify{text-align:justify!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{display:inline-block;vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{height:auto;min-height:50px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .center{margin-left:auto;margin-right:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stretch{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .subheader,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{line-height:1.45;color:#7a2518;font-weight:400;margin-top:0;margin-bottom:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content div,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content form,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6,.eclipse-jkube__documentation .eclipse-jkube__documentation-content li,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin:0;padding:0;direction:ltr}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:#2156a5;text-decoration:underline;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{color:#1d4b8f}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{font-family:inherit;font-weight:400;font-size:1em;line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p aside{font-size:.875em;line-height:1.35;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-family:Open Sans,DejaVu Sans,sans-serif;font-weight:300;font-style:normal;color:#ba3925;text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:.5em;line-height:1.0125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 small{font-size:60%;color:#e99b8f;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5{font-size:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{border:solid #dddddf;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em,.eclipse-jkube__documentation .eclipse-jkube__documentation-content i{font-style:italic;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b,.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong{font-weight:700;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:60%;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;font-weight:400;color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{font-size:1em;line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ul{margin-left:1.25em;margin-bottom:0;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square li ul{list-style:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square{list-style-type:square}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle{list-style-type:circle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc{list-style-type:disc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ul{margin-left:1.25em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dt{margin-bottom:.3125em;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content acronym{text-transform:uppercase;font-size:90%;color:rgba(0,0,0,.8);border-bottom:1px dotted #ddd;cursor:help}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote{margin:0 0 1.25em;padding:.5625em 1.25em 0 1.1875em;border-left:1px solid #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite{display:block;font-size:.9375em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite:before{content:"\2014 "}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a:visited{color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote p{line-height:1.6;color:rgba(0,0,0,.85)}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:2.3125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4{font-size:1.4375em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{background:#fff;margin-bottom:1.25em;border:1px solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead{background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th{padding:.5em .625em .625em;font-size:inherit;color:rgba(0,0,0,.8);text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr th{padding:.5625em .625em;font-size:inherit;color:rgba(0,0,0,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.even{background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tbody tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td{display:table-cell;line-height:1.6}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2;word-spacing:-.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre):not([class^=L])>code{font-size:.9375em;font-style:normal!important;letter-spacing:0;padding:.1em .5ex;word-spacing:-.15em;background:#f7f7f8;border-radius:4px;line-height:1.45;text-rendering:optimizeSpeed;word-wrap:break-word}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nobreak{word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nowrap{white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{color:rgba(0,0,0,.9);font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;line-height:1.45;text-rendering:optimizeSpeed}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre pre{color:inherit;font-size:inherit;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre>code{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap pre{white-space:pre;word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em em{font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq{color:rgba(51,51,51,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;display:inline-block;color:rgba(0,0,0,.8);font-size:.65em;line-height:1.45;background:#f7f7f7;border:1px solid #ccc;border-radius:3px;box-shadow:0 1px 0 rgba(0,0,0,.2),inset 0 0 0 .1em #fff;margin:0 .15em;padding:.2em .5em;vertical-align:middle;position:relative;top:-.1em;white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:first-child{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:last-child{margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b:not(.caret){font-weight:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{word-spacing:-.02em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b.caret{font-size:1.25em;line-height:.8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq i.caret{font-weight:700;text-align:center;width:.45em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{position:relative;top:-1px;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{content:"[";padding:0 3px 0 2px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after{content:"]";padding:0 2px 0 3px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p a>code:hover{color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{width:100%;margin:0 auto;max-width:62.5em;*zoom:1;position:relative;padding-left:.9375em;padding-right:.9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-top:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before{content:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{color:rgba(0,0,0,.85);margin-top:2.25rem;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child+#toc{margin-top:8px;border-top:1px solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:only-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #dddddf;padding-bottom:8px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details{border-bottom:1px solid #dddddf;line-height:1.45;padding-top:.25em;padding-bottom:.25em;padding-left:.25em;color:rgba(0,0,0,.6);display:flex;flex-flow:row wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span:first-child{margin-left:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span.email a{color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span:before{content:"\A0\2013\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span.author:before{content:"\A0\22C5\A0";color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span#revremark:before{content:"\A0|\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber{text-transform:capitalize}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber:after{content:"\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content>h1:first-child:not([class]){color:rgba(0,0,0,.85);border-bottom:1px solid #dddddf;padding-bottom:8px;margin-top:0;padding-top:1rem;margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #e7e7e9;padding-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc>ul{margin-left:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0>li>a{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0 ul.sectlevel1{margin:.5em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul{font-family:Open Sans,DejaVu Sans,sans-serif;list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc li{line-height:1.3334;margin-top:.3334em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{color:#7a2518;font-size:1.2em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:15em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{margin-top:0!important;background:#f8f8f7;position:fixed;width:15em;left:0;top:0;border-right:1px solid #e7e7e9;border-top-width:0!important;border-bottom-width:0!important;z-index:1000;padding:1.25em 1em;height:100%;overflow:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{margin-top:0;margin-bottom:.8rem;font-size:1.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.9em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{margin-left:0;padding-left:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:.5em;margin-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:15em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right #toc.toc2{border-right-width:0;border-left:1px solid #e7e7e9;left:auto;right:0}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:20em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{width:20em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.95em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{padding-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:20em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc{border:1px solid #e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{max-width:100%;background:rgba(0,0,0,.8);padding:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:hsla(0,0%,100%,.8);line-height:1.44}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:.625em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:1.25em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1:last-child{padding-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border-top:1px solid #e7e7e9}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:before{content:"\A7";font-size:.85em;display:block;padding-top:.1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:hover{visibility:visible}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link{color:#ba3925;text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link:hover{color:#a53221}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content details>summary:first-of-type{cursor:pointer;display:list-item;outline:none;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{text-rendering:optimizeLegibility;text-align:left;font-family:"Noto Serif","DejaVu Serif",serif;font-size:1rem;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock.fit-content>caption.title{white-space:nowrap;width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #preamble>.sectionbody>[class=paragraph]:first-of-type p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph.lead>p{font-size:1.21875em;line-height:1.6;color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock #preamble>.sectionbody>[class=paragraph]:first-of-type p{font-size:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon{text-align:center;width:80px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon .title{font-weight:700;font-family:Open Sans,DejaVu Sans,sans-serif;text-transform:uppercase}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content{padding-left:1.125em;padding-right:1.25em;border-left:1px solid #dddddf;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{border:1px solid #e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#fff;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{border:1px solid #dbdbd6;margin-bottom:1.25em;padding:1.25em;background:#f3f3f2;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title{color:#7a2518;margin-top:0;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{border-radius:4px;word-wrap:break-word;overflow-x:auto;padding:1em;font-size:.8125em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:.90625em}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:1em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre:not(.highlight),.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class=highlight],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class^="highlight "],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock.output pre{color:#f7f7f8;background:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content{position:relative}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:none;content:attr(data-lang);position:absolute;font-size:.75em;top:.425rem;right:.5rem;line-height:1;text-transform:uppercase;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock:hover code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:before{content:attr(data-prompt);padding-right:.5em;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:not([data-prompt]):before{content:"$"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs{padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs>code{padding:1em;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.prettyprint{border-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .prettyprint{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint .linenums{line-height:1.45;margin-left:2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li{background:none;list-style-type:inherit;padding-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li code[data-lang]:before{opacity:1}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li:not(:first-child) code[data-lang]:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable{border-collapse:separate;border:0;margin-bottom:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td[class]{color:inherit;vertical-align:top;padding:0;line-height:inherit;white-space:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.code{padding-left:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.linenos{border-right:1px solid;opacity:.35;padding-right:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno{border-right:1px solid;opacity:.35;display:inline-block;margin-right:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno:before{content:"";margin-right:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock{margin:0 1em 1.25em 1.5em;display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock:not(.excerpt)>.title{margin-left:-1.5em;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock p{color:rgba(0,0,0,.85);font-size:1.15rem;line-height:1.75;word-spacing:.1em;letter-spacing:0;font-style:italic;text-align:justify}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote{margin:0;padding:0;border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote:before{content:"\201C";float:left;font-size:2.75em;font-weight:700;line-height:.6em;margin-left:-.6em;color:#7a2518;text-shadow:0 1px 2px rgba(0,0,0,.1)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote>.paragraph:last-child p{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution{margin-top:.75em;margin-right:.5ex;text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock{margin:0 1em 1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre{font-family:Open Sans,DejaVu Sans,sans;font-size:1.15rem;color:rgba(0,0,0,.85);font-weight:300;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{margin-top:1.25rem;margin-left:.5ex}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{font-size:.9375em;line-height:1.45;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution br,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution cite,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution cite{display:block;letter-spacing:-.025em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{line-height:1.6;word-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract{margin:0 1em 1.25em;display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract>.title{margin:0 0 .375em;font-size:1.15em;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt>blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{padding:0 0 .25em 1em;border-left:.25em solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{color:inherit;font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock .attribution{color:inherit;text-align:left;margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock{max-width:100%;border-collapse:separate}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child{margin-bottom:-1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child.sidebarblock{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{border:0 solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead>tr>.tableblock{border-width:0 1px 1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tfoot>tr>.tableblock{border-width:1px 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock{border-width:0 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead>tr>.tableblock{border-width:0 0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tfoot>tr>.tableblock{border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>*>tr>.tableblock:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock:last-child{border-right-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead:last-child>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead:last-child>tr>.tableblock{border-bottom-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-all{border-width:1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-sides{border-width:0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-ends,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-topbot{border-width:1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-all tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-even tr:nth-of-type(2n),.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-hover tr:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-odd tr:nth-of-type(odd){background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-left{text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-right,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-right{text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-center,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-center{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-top,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-top{vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-bottom,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-bottom{vertical-align:bottom}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-middle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-middle{vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead th{font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th{display:table-cell;line-height:1.6;background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th p{color:rgba(0,0,0,.8);font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock>code:only-child{background:none;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol{margin-left:1.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-left:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul dd{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-check-square-o:first-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-square-o:first-child{width:1.25em;font-size:.8em;position:relative;bottom:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>input[type=checkbox]:first-child{margin-right:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline{display:flex;flex-flow:row wrap;list-style:none;margin:0 0 .625em -1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline>li{margin-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .unstyled dl dt{font-weight:400;font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.arabic{list-style-type:decimal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.decimal{list-style-type:decimal-leading-zero}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.loweralpha{list-style-type:lower-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperalpha{list-style-type:upper-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowerroman{list-style-type:lower-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperroman{list-style-type:upper-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowergreek{list-style-type:lower-greek}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table{border:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table>tbody>tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table>tbody>tr{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist2{vertical-align:top;padding:0 .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1{font-weight:700;padding-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock+.colist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock+.colist{margin-top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child{padding:.4em .75em 0;line-height:1;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):last-child{padding:.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .thumb{line-height:0;display:inline-block;border:4px solid #fff;box-shadow:0 0 0 1px #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.left{margin:.25em .625em 1.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.right{margin:.25em 0 1.25em .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb{border-width:6px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb>.title{padding:0 .125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-top:.25em;margin-bottom:.25em;display:inline-block;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left{margin-right:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image{text-decoration:none;display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image object{pointer-events:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref{font-size:.875em;position:static;vertical-align:super}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 .75em;border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote{padding:0 .375em 0 .225em;line-height:1.3334;font-size:.875em;margin-left:1.2em;margin-bottom:.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote a:first-of-type{font-weight:700;text-decoration:none;margin-left:-1.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote:last-of-type{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table{border:0;background:#fff;width:100%;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table td.line-data{width:99%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.unbreakable{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .big{font-size:larger}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .small{font-size:smaller}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .underline{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .overline{text-decoration:overline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .line-through{text-decoration:line-through}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua{color:#00bfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua-background{background:#00fafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black-background{background:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue{color:#0000bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue-background{background:#0000fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia{color:#bf00bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia-background{background:#fa00fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray{color:#606060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray-background{background:#7d7d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green{color:#006000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green-background{background:#007d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime{color:#00bf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime-background{background:#00fa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon{color:#600000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon-background{background:#7d0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy{color:#000060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy-background{background:#00007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive{color:#606000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive-background{background:#7d7d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple{color:#600060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple-background{background:#7d007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red{color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red-background{background:#fa0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver{color:#909090}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver-background{background:#bcbcbc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal{color:#006060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal-background{background:#007d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white{color:#bfbfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white-background{background:#fafafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow{color:#bfbf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow-background{background:#fafa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.icon>.fa{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a span.icon>.fa{cursor:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;text-shadow:1px 1px 2px rgba(0,0,0,.5);cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-note:before{content:"\F05A";color:#19407c}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-tip:before{content:"\F0EB";text-shadow:1px 1px 2px rgba(155,155,0,.8);color:#111}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-warning:before{content:"\F071";color:#bf6900}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-caution:before{content:"\F06D";color:#bf3400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-important:before{content:"\F06A";color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]{display:inline-block;color:#fff!important;background:rgba(0,0,0,.8);border-radius:100px;text-align:center;font-size:.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:Open Sans,DejaVu Sans,sans-serif;font-style:normal;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value] *{color:#fff!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]+b{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]:after{content:attr(data-value)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre .conum[data-value]{position:relative;top:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.conum *{color:inherit!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum:not([data-value]):empty{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{letter-spacing:-.01em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content strong{letter-spacing:-.005em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{background:#fffef7;border-color:#e0e0dc;box-shadow:0 1px 4px #e0e0dc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:none!important}@page{.eclipse-jkube__documentation .eclipse-jkube__documentation-content{margin:1.25cm .75cm}}@media print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content *{box-shadow:none!important;text-shadow:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:inherit!important;text-decoration:underline!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.bare,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="#"],.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="mailto:"]{text-decoration:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="http:"]:not(.bare):after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="https:"]:not(.bare):after{content:"(" attr(href) ")";display:inline-block;font-size:.875em;padding-left:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]:after{content:" (" attr(title) ")"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tr{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content thead{display:table-header-group}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{max-width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1em;orphans:3;widows:3}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{page-break-after:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{background:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #dddddf!important;padding-bottom:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details{border:0!important;display:block;padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details span:first-child{margin-left:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br+span:before{content:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #preamble,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book .sect1>h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book h1.sect0{page-break-before:always}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{padding:0 .9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-on-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:block!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-for-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .show-for-print{display:inherit!important}}@media amzn-kf8,print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{margin-top:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:rgba(0,0,0,.6);font-size:.9em}}@media amzn-kf8{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{padding:0}}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content{padding-left:21em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .toc{position:fixed;width:20em;left:0;top:105px;bottom:0;z-index:1000;padding:0 16px;border-right:1px solid #efefed;border-top-width:0!important;border-bottom-width:0!important;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content i.fa{font-style:normal}.eclipse-jkube__quickstarts{padding:0}.eclipse-jkube__quickstarts-item{list-style:none}.eclipse-jkube__quickstarts-item:not(:last-child){margin-bottom:16px}</style><meta name="generator" content="Gatsby 2.30.1"/><title data-react-helmet="true">Eclipse JKube Community</title><meta data-react-helmet="true" charSet="UTF-8"/><meta data-react-helmet="true" name="description" content="Eclipse JKube Feedback and Community: Information about how to get involved in the project"/><style type="text/css">
.anchor.before {
position: absolute;
top: 0;
@@ -48,7 +48,7 @@
}
}
})
- </script><link as="script" rel="preload" href="/jkube/webpack-runtime-5e7a06a902090b1f37ba.js"/><link as="script" rel="preload" href="/jkube/framework-fd2b85530eec85104a39.js"/><link as="script" rel="preload" href="/jkube/app-d7398b08e923fe8a3caa.js"/><link as="script" rel="preload" href="/jkube/styles-c2fe8482057191dca484.js"/><link as="script" rel="preload" href="/jkube/commons-8b827618f0536ebfeda2.js"/><link as="script" rel="preload" href="/jkube/component---src-templates-main-jsx-456568a5c9ae2c9095ee.js"/><link as="fetch" rel="preload" href="/jkube/page-data/community/page-data.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/jkube/page-data/app-data.json" crossorigin="anonymous"/></head><body><div id="___gatsby"><div style="outline:none" tabindex="-1" id="gatsby-focus-wrapper"><div class="eclipse-jkube"><header class="eclipse-jkube__header"><div class="eclipse-jkube__header-container"><a class="eclipse-jkube__header-logo" href="/jkube/"><div class="eclipse-jkube__header-logo-eclipse-image"><img src="/jkube/static/EF_WHT-OR_png-d0fd43ad31261ee9693a060be920e71e.png" alt="Eclipse Foundation"/></div><div class="eclipse-jkube__header-logo-jkube"><img class="eclipse-jkube__header-logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/><span class="eclipse-jkube__header-trade-mark">™</span></div></a><div class="eclipse-jkube__header-content"><ul><li><a href="/jkube/docs">Docs</a></li><li><a href="/jkube/demos">Demos</a></li><li><a href="/jkube/community">Community</a></li><li><a href="/jkube/contributing">Contributing</a></li><li><a class="eclipse-jkube__header-stars" href="https://github.com/eclipse/jkube" title="eclipse/jkube" target="_blank" rel="nofollow noopener noreferrer"><img src="https://img.shields.io/github/stars/eclipse/jkube?style=social" alt="eclipse/jkube stargazers"/></a></li></ul></div></div></header><div class="eclipse-jkube__main"><div class="eclipse-jkube__content"><div class="hero">
+ </script><link as="script" rel="preload" href="/jkube/webpack-runtime-b52c77882f7d7b54b2b3.js"/><link as="script" rel="preload" href="/jkube/framework-5e01c8af6b1735c9eaa3.js"/><link as="script" rel="preload" href="/jkube/app-59faa9989d677dd59195.js"/><link as="script" rel="preload" href="/jkube/styles-e9d24b1846c7d6eb9685.js"/><link as="script" rel="preload" href="/jkube/commons-ee34cd715ab4f7da30e0.js"/><link as="script" rel="preload" href="/jkube/component---src-templates-main-jsx-8853cf342e1cf1bead5c.js"/><link as="fetch" rel="preload" href="/jkube/page-data/community/page-data.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/jkube/page-data/app-data.json" crossorigin="anonymous"/></head><body><div id="___gatsby"><div style="outline:none" tabindex="-1" id="gatsby-focus-wrapper"><div class="eclipse-jkube"><header class="eclipse-jkube__header"><div class="eclipse-jkube__header-container"><a class="eclipse-jkube__header-logo" href="/jkube/"><div class="eclipse-jkube__header-logo-eclipse-image"><img src="/jkube/static/EF_WHT-OR_png-d0fd43ad31261ee9693a060be920e71e.png" alt="Eclipse Foundation"/></div><div class="eclipse-jkube__header-logo-jkube"><img class="eclipse-jkube__header-logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/><span class="eclipse-jkube__header-trade-mark">™</span></div></a><div class="eclipse-jkube__header-content"><ul><li><a href="/jkube/docs">Docs</a></li><li><a href="/jkube/demos">Demos</a></li><li><a href="/jkube/community">Community</a></li><li><a href="/jkube/contributing">Contributing</a></li><li><a class="eclipse-jkube__header-stars" href="https://github.com/eclipse/jkube" title="eclipse/jkube" target="_blank" rel="nofollow noopener noreferrer"><img src="https://img.shields.io/github/stars/eclipse/jkube?style=social" alt="eclipse/jkube stargazers"/></a></li></ul></div></div></header><div class="eclipse-jkube__main"><div class="eclipse-jkube__content"><div class="hero">
<div class="hero-content">
<h1 id="feedback-and-community" style="position:relative;"><a href="#feedback-and-community" aria-label="feedback and community permalink" class="anchor before"><svg aria-hidden="true" focusable="false" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Feedback and Community</h1>
<p>Do you have any questions or comments on Eclipse JKube?</p>
@@ -83,4 +83,4 @@
<a href="https://bluejeans.com/656779179" target="_blank" rel="nofollow noopener noreferrer">public meeting room</a>.</p>
<div class="calendar">
<iframe src="https://calendar.google.com/calendar/embed?height=600&wkst=2&bgcolor=%23F1F2F2&ctz=Etc%2FGMT&src=n38b3vf86tupe7ennn65ntmchk%40group.calendar.google.com&color=%237CB342&showTitle=0" style="border-width:0" frameborder="0" scrolling="no"></iframe>
-</div></div></div><div class="eclipse-jkube-footer"><div class="eclipse-jkube-footer__logo-jkube"><a href="/jkube/"><img class="eclipse-jkube-footer__logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/></a><span class="eclipse-jkube-footer__logo-jkube-tagline">Cloud-Native Java Applications without a hassle</span></div><div class="eclipse-jkube-footer__links"><ul class="eclipse-jkube-footer__links-list"><li><a href="/jkube/docs#getting-started">Get Started</a></li><li><a href="/jkube/docs">Docs</a></li><li><a href="/jkube/quickstarts">Quickstarts</a></li><li><a href="/jkube/docs#katacoda-courses">Katacoda Courses</a></li><li><a href="/jkube/demos">Demos</a></li></ul><ul class="eclipse-jkube-footer__links-list"><li><a href="/jkube/community">Community</a></li><li><a href="/jkube/community#planning-and-meetings">Get Involved</a></li><li><a href="/jkube/contributing">Contributing</a></li></ul><ul class="eclipse-jkube-footer__links-list"><li><a href="https://www.eclipse.org" target="_blank" rel="nofollow noopener noreferrer">Eclipse Foundation</a></li><li><a href="https://www.eclipse.org/legal/privacy.php" target="_blank" rel="nofollow noopener noreferrer">Privacy Policy</a></li><li><a href="https://www.eclipse.org/legal/termsofuse.php" target="_blank" rel="nofollow noopener noreferrer">Terms of Use</a></li><li><a href="https://www.eclipse.org/legal/copyright.php" target="_blank" rel="nofollow noopener noreferrer">Copyright Agent</a></li><li><a href="https://www.eclipse.org/legal" target="_blank" rel="nofollow noopener noreferrer">Legal Resources</a></li></ul></div><div class="eclipse-jkube-footer__copyright">Copyright © Eclipse Foundation 2020</div></div></div></div><div id="gatsby-announcer" style="position:absolute;top:0;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0" aria-live="assertive" aria-atomic="true"></div></div><script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/community/";/*]]>*/</script><script id="gatsby-chunk-mapping">/*<![CDATA[*/window.___chunkMapping={"polyfill":["/polyfill-88d9aed314b16f9b2adc.js"],"app":["/app-d7398b08e923fe8a3caa.js"],"component---src-pages-quickstarts-index-jsx":["/component---src-pages-quickstarts-index-jsx-a1e42093b41968828647.js"],"component---src-templates-doc-jsx":["/component---src-templates-doc-jsx-5366dbd1b50f3447a412.js"],"component---src-templates-main-jsx":["/component---src-templates-main-jsx-456568a5c9ae2c9095ee.js"]};/*]]>*/</script><script src="/jkube/polyfill-88d9aed314b16f9b2adc.js" nomodule=""></script><script src="/jkube/component---src-templates-main-jsx-456568a5c9ae2c9095ee.js" async=""></script><script src="/jkube/commons-8b827618f0536ebfeda2.js" async=""></script><script src="/jkube/styles-c2fe8482057191dca484.js" async=""></script><script src="/jkube/app-d7398b08e923fe8a3caa.js" async=""></script><script src="/jkube/framework-fd2b85530eec85104a39.js" async=""></script><script src="/jkube/webpack-runtime-5e7a06a902090b1f37ba.js" async=""></script></body></html>
\ No newline at end of file
+</div></div></div><div class="eclipse-jkube-footer"><div class="eclipse-jkube-footer__logo-jkube"><a href="/jkube/"><img class="eclipse-jkube-footer__logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/></a><span class="eclipse-jkube-footer__logo-jkube-tagline">Cloud-Native Java Applications without a hassle</span></div><div class="eclipse-jkube-footer__links"><ul class="eclipse-jkube-footer__links-list"><li><a href="/jkube/docs#getting-started">Get Started</a></li><li><a href="/jkube/docs">Docs</a></li><li><a href="/jkube/quickstarts">Quickstarts</a></li><li><a href="/jkube/docs#katacoda-courses">Katacoda Courses</a></li><li><a href="/jkube/demos">Demos</a></li></ul><ul class="eclipse-jkube-footer__links-list"><li><a href="/jkube/community">Community</a></li><li><a href="/jkube/community#planning-and-meetings">Get Involved</a></li><li><a href="/jkube/contributing">Contributing</a></li></ul><ul class="eclipse-jkube-footer__links-list"><li><a href="https://www.eclipse.org" target="_blank" rel="nofollow noopener noreferrer">Eclipse Foundation</a></li><li><a href="https://www.eclipse.org/legal/privacy.php" target="_blank" rel="nofollow noopener noreferrer">Privacy Policy</a></li><li><a href="https://www.eclipse.org/legal/termsofuse.php" target="_blank" rel="nofollow noopener noreferrer">Terms of Use</a></li><li><a href="https://www.eclipse.org/legal/copyright.php" target="_blank" rel="nofollow noopener noreferrer">Copyright Agent</a></li><li><a href="https://www.eclipse.org/legal" target="_blank" rel="nofollow noopener noreferrer">Legal Resources</a></li></ul></div><div class="eclipse-jkube-footer__copyright">Copyright © Eclipse Foundation 2020</div></div></div></div><div id="gatsby-announcer" style="position:absolute;top:0;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0" aria-live="assertive" aria-atomic="true"></div></div><script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/community/";/*]]>*/</script><script id="gatsby-chunk-mapping">/*<![CDATA[*/window.___chunkMapping={"polyfill":["/polyfill-e4957c11759bdfc149d9.js"],"app":["/app-59faa9989d677dd59195.js"],"component---src-pages-quickstarts-index-jsx":["/component---src-pages-quickstarts-index-jsx-8b53e5455e208a3e59b9.js"],"component---src-templates-doc-jsx":["/component---src-templates-doc-jsx-21a94bb36ef3df298f42.js"],"component---src-templates-main-jsx":["/component---src-templates-main-jsx-8853cf342e1cf1bead5c.js"]};/*]]>*/</script><script src="/jkube/polyfill-e4957c11759bdfc149d9.js" nomodule=""></script><script src="/jkube/component---src-templates-main-jsx-8853cf342e1cf1bead5c.js" async=""></script><script src="/jkube/commons-ee34cd715ab4f7da30e0.js" async=""></script><script src="/jkube/styles-e9d24b1846c7d6eb9685.js" async=""></script><script src="/jkube/app-59faa9989d677dd59195.js" async=""></script><script src="/jkube/framework-5e01c8af6b1735c9eaa3.js" async=""></script><script src="/jkube/webpack-runtime-b52c77882f7d7b54b2b3.js" async=""></script></body></html>
\ No newline at end of file
diff --git a/component---src-pages-quickstarts-index-jsx-8b53e5455e208a3e59b9.js b/component---src-pages-quickstarts-index-jsx-8b53e5455e208a3e59b9.js
new file mode 100644
index 0000000..5543290
--- /dev/null
+++ b/component---src-pages-quickstarts-index-jsx-8b53e5455e208a3e59b9.js
@@ -0,0 +1,2 @@
+(window.webpackJsonp=window.webpackJsonp||[]).push([[4],{NSxh:function(e,t,a){"use strict";var l=a("q1tI"),c=a.n(l),n=a("Wbzz"),r=a("kiXb"),i=a("5748"),s=a.n(i),o=function(e){var t=e.href,a=e.title;return c.a.createElement("a",{href:t,target:"_blank",rel:"nofollow noopener noreferrer"},a)};t.a=function(e){var t=e.lang,a=Object(r.resolveI18nPath)(t);return c.a.createElement("div",{className:"eclipse-jkube-footer"},c.a.createElement("div",{className:"eclipse-jkube-footer__logo-jkube"},c.a.createElement(n.a,{to:a("/")},c.a.createElement("img",{className:"eclipse-jkube-footer__logo-jkube-image",src:s.a,alt:"JKube"})),c.a.createElement("span",{className:"eclipse-jkube-footer__logo-jkube-tagline"},"Cloud-Native Java Applications without a hassle")),c.a.createElement("div",{className:"eclipse-jkube-footer__links"},c.a.createElement("ul",{className:"eclipse-jkube-footer__links-list"},c.a.createElement("li",null,c.a.createElement(n.a,{to:a("/docs#getting-started")},"Get Started")),c.a.createElement("li",null,c.a.createElement(n.a,{to:a("/docs")},"Docs")),c.a.createElement("li",null,c.a.createElement(n.a,{to:a("/quickstarts")},"Quickstarts")),c.a.createElement("li",null,c.a.createElement(n.a,{to:a("/docs#katacoda-courses")},"Katacoda Courses")),c.a.createElement("li",null,c.a.createElement(n.a,{to:a("/demos")},"Demos"))),c.a.createElement("ul",{className:"eclipse-jkube-footer__links-list"},c.a.createElement("li",null,c.a.createElement(n.a,{to:a("/community")},"Community")),c.a.createElement("li",null,c.a.createElement(n.a,{to:a("/community#planning-and-meetings")},"Get Involved")),c.a.createElement("li",null,c.a.createElement(n.a,{to:a("/contributing")},"Contributing"))),c.a.createElement("ul",{className:"eclipse-jkube-footer__links-list"},c.a.createElement("li",null,c.a.createElement(o,{href:"https://www.eclipse.org",title:"Eclipse Foundation"})),c.a.createElement("li",null,c.a.createElement(o,{href:"https://www.eclipse.org/legal/privacy.php",title:"Privacy Policy"})),c.a.createElement("li",null,c.a.createElement(o,{href:"https://www.eclipse.org/legal/termsofuse.php",title:"Terms of Use"})),c.a.createElement("li",null,c.a.createElement(o,{href:"https://www.eclipse.org/legal/copyright.php",title:"Copyright Agent"})),c.a.createElement("li",null,c.a.createElement(o,{href:"https://www.eclipse.org/legal",title:"Legal Resources"})))),c.a.createElement("div",{className:"eclipse-jkube-footer__copyright"},"Copyright © Eclipse Foundation 2020"))}},"qG+M":function(e,t,a){"use strict";a.r(t);var l=a("q1tI"),c=a.n(l),n=a("dmsj"),r=a("Rb52"),i=a("NSxh"),s={ApacheCamel:"cib-apache",ApacheKaraf:"cib-apache",Kubernetes:"cib-kubernetes",OpenLiberty:"cib-java",OpenShift:"cib-redhat",Quarkus:"cib-quarkus",Spring:"cib-spring",Thorntail:"cib-java",Vertx:"cib-eclipseide"},o=function(e){var t=e.title,a=e.description,l=e.technologies,n=e.url;return c.a.createElement("div",{className:"quick-start-card",itemScope:!0,itemType:"http://schema.org/SoftwareSourceCode"},c.a.createElement("meta",{itemProp:"programmingLanguage",content:"Java"}),c.a.createElement("meta",{itemProp:"codeSampleType",content:"full (compile ready) solution"}),c.a.createElement("meta",{itemProp:"keywords",content:l.join(",")}),c.a.createElement("meta",{itemProp:"name",content:t}),c.a.createElement("meta",{itemProp:"codeRepository",content:n}),c.a.createElement("h3",{className:"quick-start-card__title"},c.a.createElement("a",{href:n,itemProp:"url"},t)),c.a.createElement("ul",{className:"quick-start-card__technologies"},l.map((function(e){return c.a.createElement("li",{key:e,className:"quick-start-card__technologies-item"},c.a.createElement("i",{className:"quick-start-card__technologies-item-icon "+s[e]}),e)}))),c.a.createElement("div",{className:"quick-start-card__description",itemProp:"description"},a.split(/[\n\r]/).map((function(e){return e.trim()})).map((function(e,t){return c.a.createElement("p",{key:t},e)}))),c.a.createElement("div",{className:"quick-start-card__links"},c.a.createElement("a",{href:n},c.a.createElement("i",{className:"cib-github"})," GitHub repository")))},m=(a("+5i3"),function(e){var t=e.title,a=e.description,l=e.langKey,s=e.nodes;return c.a.createElement("div",{className:"eclipse-jkube"},c.a.createElement(n.a,{title:t,description:a,lang:l}),c.a.createElement(r.a,{lang:l}),c.a.createElement("div",{className:"eclipse-jkube__main"},c.a.createElement("div",{className:"eclipse-jkube__content"},c.a.createElement("div",{className:"hero"},c.a.createElement("div",{className:"hero-content"},c.a.createElement("h1",null,t),c.a.createElement("p",null,a))),c.a.createElement("ul",{className:"eclipse-jkube__quickstarts",itemScope:!0,itemType:"http://schema.org/SoftwareApplication"},c.a.createElement("meta",{itemProp:"name",content:"Eclipse JKube"}),c.a.createElement("meta",{itemProp:"applicationCategory",content:"Developer Tools"}),c.a.createElement("meta",{itemProp:"operatingSystem",content:"Linux,Windows,OSX,Mac"}),c.a.createElement("meta",{itemProp:"downloadUrl",content:"https://github.com/eclipse/jkube"}),s.map((function(e){return c.a.createElement("li",{key:e.artifactId,className:"eclipse-jkube__quickstarts-item"},c.a.createElement(o,{title:e.name,description:e.description,technologies:e.technologies,url:e.url}))}))))),c.a.createElement(i.a,{lang:l}))});t.default=function(e){var t=e.data.allQuickstart.nodes;return c.a.createElement(m,{title:"Quickstarts",description:"Eclipse JKube Quickstarts and examples",langKey:"en",nodes:t})}}}]);
+//# sourceMappingURL=component---src-pages-quickstarts-index-jsx-8b53e5455e208a3e59b9.js.map
\ No newline at end of file
diff --git a/component---src-pages-quickstarts-index-jsx-8b53e5455e208a3e59b9.js.map b/component---src-pages-quickstarts-index-jsx-8b53e5455e208a3e59b9.js.map
new file mode 100644
index 0000000..5c9f00a
--- /dev/null
+++ b/component---src-pages-quickstarts-index-jsx-8b53e5455e208a3e59b9.js.map
@@ -0,0 +1 @@
+{"version":3,"sources":["webpack:///./src/components/footer.jsx","webpack:///./src/components/quickstart-card.jsx","webpack:///./src/templates/quickstarts.jsx","webpack:///./src/pages/quickstarts/index.jsx"],"names":["ExternalLink","href","title","target","rel","Footer","lang","resolvePath","resolveI18nPath","className","to","src","jkubeLogo","alt","icons","ApacheCamel","ApacheKaraf","Kubernetes","OpenLiberty","OpenShift","Quarkus","Spring","Thorntail","Vertx","QuickStartCard","description","technologies","url","itemScope","itemType","itemProp","content","join","map","tech","key","split","l","trim","line","idx","Quickstarts","langKey","nodes","node","artifactId","name","Index","data","allQuickstart"],"mappings":"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","file":"component---src-pages-quickstarts-index-jsx-8b53e5455e208a3e59b9.js","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {Link} from \"gatsby\";\nimport {resolveI18nPath} from \"../i18n\";\nimport jkubeLogo from \"../assets/jkube-logo-horizontal-white.svg\";\n\nconst ExternalLink = ({href, title}) => (\n <a href={href} target='_blank' rel='nofollow noopener noreferrer'>{title}</a>\n);\n\nconst Footer = ({lang}) => {\n const resolvePath = resolveI18nPath(lang);\n return (\n <div className='eclipse-jkube-footer'>\n <div className='eclipse-jkube-footer__logo-jkube'>\n <Link to={resolvePath('/')}>\n <img className='eclipse-jkube-footer__logo-jkube-image' src={jkubeLogo} alt='JKube' />\n </Link>\n <span className='eclipse-jkube-footer__logo-jkube-tagline'>\n Cloud-Native Java Applications without a hassle\n </span>\n </div>\n <div className='eclipse-jkube-footer__links'>\n <ul className='eclipse-jkube-footer__links-list'>\n <li><Link to={resolvePath('/docs#getting-started')}>Get Started</Link></li>\n <li><Link to={resolvePath('/docs')}>Docs</Link></li>\n <li><Link to={resolvePath('/quickstarts')}>Quickstarts</Link></li>\n <li><Link to={resolvePath('/docs#katacoda-courses')}>Katacoda Courses</Link></li>\n <li><Link to={resolvePath('/demos')}>Demos</Link></li>\n </ul>\n <ul className='eclipse-jkube-footer__links-list'>\n <li><Link to={resolvePath('/community')}>Community</Link></li>\n <li><Link to={resolvePath('/community#planning-and-meetings')}>Get Involved</Link></li>\n <li><Link to={resolvePath('/contributing')}>Contributing</Link></li>\n </ul>\n <ul className='eclipse-jkube-footer__links-list'>\n <li><ExternalLink href='https://www.eclipse.org' title='Eclipse Foundation'/></li>\n <li><ExternalLink href='https://www.eclipse.org/legal/privacy.php' title='Privacy Policy'/></li>\n <li><ExternalLink href='https://www.eclipse.org/legal/termsofuse.php' title='Terms of Use'/></li>\n <li><ExternalLink href='https://www.eclipse.org/legal/copyright.php' title='Copyright Agent'/></li>\n <li><ExternalLink href='https://www.eclipse.org/legal' title='Legal Resources'/></li>\n </ul>\n </div>\n <div className='eclipse-jkube-footer__copyright'>Copyright © Eclipse Foundation 2020</div>\n </div>\n );\n};\n\nFooter.propTypes = {\n lang: PropTypes.string.isRequired,\n};\n\nexport default Footer;\n","import React from 'react';\n\nconst icons = {\n ApacheCamel: 'cib-apache',\n ApacheKaraf: 'cib-apache',\n Kubernetes: 'cib-kubernetes',\n OpenLiberty: 'cib-java',\n OpenShift: 'cib-redhat',\n Quarkus: 'cib-quarkus',\n Spring: 'cib-spring',\n Thorntail: 'cib-java',\n Vertx: 'cib-eclipseide'\n};\n\nconst QuickStartCard = ({title, description, technologies, url}) => (\n <div className='quick-start-card' itemScope itemType='http://schema.org/SoftwareSourceCode'>\n <meta itemProp='programmingLanguage' content='Java'/>\n <meta itemProp='codeSampleType' content='full (compile ready) solution'/>\n <meta itemProp='keywords' content={technologies.join(',')} />\n <meta itemProp='name' content={title} />\n <meta itemProp='codeRepository' content={url} />\n <h3 className='quick-start-card__title'>\n <a href={url} itemProp='url'>{title}</a>\n </h3>\n <ul className='quick-start-card__technologies'>\n {technologies.map(tech => (\n <li key={tech} className='quick-start-card__technologies-item'>\n <i className={`quick-start-card__technologies-item-icon ${icons[tech]}`}/>\n {tech}\n </li>\n ))}\n </ul>\n <div className='quick-start-card__description' itemProp='description'>\n {description.split(/[\\n\\r]/).map(l => l.trim()).map((line, idx) => (\n <p key={idx}>{line}</p>\n ))}\n </div>\n <div className='quick-start-card__links'>\n <a href={url}><i className='cib-github' /> GitHub repository</a>\n </div>\n </div>\n);\n\nexport default QuickStartCard;","import React from 'react'\nimport Seo from '../components/seo';\nimport Header from '../components/header';\nimport Footer from '../components/footer';\nimport QuickStartCard from \"../components/quickstart-card\";\nimport '../styles/main.scss';\n\nconst Quickstarts = ({title, description, langKey, nodes}) => (\n <div className='eclipse-jkube'>\n <Seo title={title} description={description} lang={langKey}/>\n <Header lang={langKey}/>\n <div className='eclipse-jkube__main'>\n <div\n className='eclipse-jkube__content'\n >\n <div className='hero'>\n <div className='hero-content'>\n <h1>{title}</h1>\n <p>{description}</p>\n </div>\n </div>\n <ul\n className='eclipse-jkube__quickstarts'\n itemScope itemType='http://schema.org/SoftwareApplication'\n >\n <meta itemProp='name' content='Eclipse JKube' />\n <meta itemProp='applicationCategory' content='Developer Tools' />\n <meta itemProp='operatingSystem' content='Linux,Windows,OSX,Mac' />\n <meta itemProp='downloadUrl' content='https://github.com/eclipse/jkube' />\n {nodes.map(node => (\n <li key={node.artifactId} className='eclipse-jkube__quickstarts-item'>\n <QuickStartCard\n title={node.name}\n description={node.description}\n technologies={node.technologies}\n url={node.url}\n />\n </li>\n ))}\n </ul>\n </div>\n </div>\n <Footer lang={langKey}/>\n </div>\n);\n\nexport default Quickstarts;\n","import React from 'react'\nimport Quickstarts from '../../templates/quickstarts';\nimport {graphql} from \"gatsby\";\n\nconst Index = ({data: {allQuickstart: {nodes}}}) => (\n <Quickstarts\n title='Quickstarts'\n description='Eclipse JKube Quickstarts and examples'\n langKey='en'\n nodes={nodes}\n />\n);\n\nexport const pageQuery = graphql`\n query {\n allQuickstart {\n nodes {\n id\n artifactId\n name\n description\n technologies\n url\n }\n }\n }\n`;\n\nexport default Index;\n"],"sourceRoot":""}
\ No newline at end of file
diff --git a/component---src-pages-quickstarts-index-jsx-a1e42093b41968828647.js b/component---src-pages-quickstarts-index-jsx-a1e42093b41968828647.js
deleted file mode 100644
index 288651b..0000000
--- a/component---src-pages-quickstarts-index-jsx-a1e42093b41968828647.js
+++ /dev/null
@@ -1,2 +0,0 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[4],{NSxh:function(e,t,a){"use strict";var l=a("q1tI"),n=a.n(l),c=a("Wbzz"),r=a("kiXb"),i=a("5748"),o=a.n(i),s=function(e){var t=e.href,a=e.title;return n.a.createElement("a",{href:t,target:"_blank",rel:"nofollow noopener noreferrer"},a)};t.a=function(e){var t=e.lang,a=Object(r.resolveI18nPath)(t);return n.a.createElement("div",{className:"eclipse-jkube-footer"},n.a.createElement("div",{className:"eclipse-jkube-footer__logo-jkube"},n.a.createElement(c.a,{to:a("/")},n.a.createElement("img",{className:"eclipse-jkube-footer__logo-jkube-image",src:o.a,alt:"JKube"})),n.a.createElement("span",{className:"eclipse-jkube-footer__logo-jkube-tagline"},"Cloud-Native Java Applications without a hassle")),n.a.createElement("div",{className:"eclipse-jkube-footer__links"},n.a.createElement("ul",{className:"eclipse-jkube-footer__links-list"},n.a.createElement("li",null,n.a.createElement(c.a,{to:a("/docs#getting-started")},"Get Started")),n.a.createElement("li",null,n.a.createElement(c.a,{to:a("/docs")},"Docs")),n.a.createElement("li",null,n.a.createElement(c.a,{to:a("/quickstarts")},"Quickstarts")),n.a.createElement("li",null,n.a.createElement(c.a,{to:a("/docs#katacoda-courses")},"Katacoda Courses")),n.a.createElement("li",null,n.a.createElement(c.a,{to:a("/demos")},"Demos"))),n.a.createElement("ul",{className:"eclipse-jkube-footer__links-list"},n.a.createElement("li",null,n.a.createElement(c.a,{to:a("/community")},"Community")),n.a.createElement("li",null,n.a.createElement(c.a,{to:a("/community#planning-and-meetings")},"Get Involved")),n.a.createElement("li",null,n.a.createElement(c.a,{to:a("/contributing")},"Contributing"))),n.a.createElement("ul",{className:"eclipse-jkube-footer__links-list"},n.a.createElement("li",null,n.a.createElement(s,{href:"https://www.eclipse.org",title:"Eclipse Foundation"})),n.a.createElement("li",null,n.a.createElement(s,{href:"https://www.eclipse.org/legal/privacy.php",title:"Privacy Policy"})),n.a.createElement("li",null,n.a.createElement(s,{href:"https://www.eclipse.org/legal/termsofuse.php",title:"Terms of Use"})),n.a.createElement("li",null,n.a.createElement(s,{href:"https://www.eclipse.org/legal/copyright.php",title:"Copyright Agent"})),n.a.createElement("li",null,n.a.createElement(s,{href:"https://www.eclipse.org/legal",title:"Legal Resources"})))),n.a.createElement("div",{className:"eclipse-jkube-footer__copyright"},"Copyright © Eclipse Foundation 2020"))}},"qG+M":function(e,t,a){"use strict";a.r(t),a.d(t,"pageQuery",(function(){return u}));var l=a("q1tI"),n=a.n(l),c=a("dmsj"),r=a("Rb52"),i=a("NSxh"),o={ApacheCamel:"cib-apache",ApacheKaraf:"cib-apache",Kubernetes:"cib-kubernetes",OpenLiberty:"cib-java",OpenShift:"cib-redhat",Quarkus:"cib-quarkus",Spring:"cib-spring",Thorntail:"cib-java",Vertx:"cib-eclipseide"},s=function(e){var t=e.title,a=e.description,l=e.technologies,c=e.url;return n.a.createElement("div",{className:"quick-start-card",itemScope:!0,itemType:"http://schema.org/SoftwareSourceCode"},n.a.createElement("meta",{itemProp:"programmingLanguage",content:"Java"}),n.a.createElement("meta",{itemProp:"codeSampleType",content:"full (compile ready) solution"}),n.a.createElement("meta",{itemProp:"keywords",content:l.join(",")}),n.a.createElement("meta",{itemProp:"name",content:t}),n.a.createElement("meta",{itemProp:"codeRepository",content:c}),n.a.createElement("h3",{className:"quick-start-card__title"},n.a.createElement("a",{href:c,itemProp:"url"},t)),n.a.createElement("ul",{className:"quick-start-card__technologies"},l.map((function(e){return n.a.createElement("li",{key:e,className:"quick-start-card__technologies-item"},n.a.createElement("i",{className:"quick-start-card__technologies-item-icon "+o[e]}),e)}))),n.a.createElement("div",{className:"quick-start-card__description",itemProp:"description"},a.split(/[\n\r]/).map((function(e){return e.trim()})).map((function(e,t){return n.a.createElement("p",{key:t},e)}))),n.a.createElement("div",{className:"quick-start-card__links"},n.a.createElement("a",{href:c},n.a.createElement("i",{className:"cib-github"})," GitHub repository")))},m=(a("+5i3"),function(e){var t=e.title,a=e.description,l=e.langKey,o=e.nodes;return n.a.createElement("div",{className:"eclipse-jkube"},n.a.createElement(c.a,{title:t,description:a,lang:l}),n.a.createElement(r.a,{lang:l}),n.a.createElement("div",{className:"eclipse-jkube__main"},n.a.createElement("div",{className:"eclipse-jkube__content"},n.a.createElement("div",{className:"hero"},n.a.createElement("div",{className:"hero-content"},n.a.createElement("h1",null,t),n.a.createElement("p",null,a))),n.a.createElement("ul",{className:"eclipse-jkube__quickstarts",itemScope:!0,itemType:"http://schema.org/SoftwareApplication"},n.a.createElement("meta",{itemProp:"name",content:"Eclipse JKube"}),n.a.createElement("meta",{itemProp:"applicationCategory",content:"Developer Tools"}),n.a.createElement("meta",{itemProp:"operatingSystem",content:"Linux,Windows,OSX,Mac"}),n.a.createElement("meta",{itemProp:"downloadUrl",content:"https://github.com/eclipse/jkube"}),o.map((function(e){return n.a.createElement("li",{key:e.artifactId,className:"eclipse-jkube__quickstarts-item"},n.a.createElement(s,{title:e.name,description:e.description,technologies:e.technologies,url:e.url}))}))))),n.a.createElement(i.a,{lang:l}))}),u="1750385900";t.default=function(e){var t=e.data.allQuickstart.nodes;return n.a.createElement(m,{title:"Quickstarts",description:"Eclipse JKube Quickstarts and examples",langKey:"en",nodes:t})}}}]);
-//# sourceMappingURL=component---src-pages-quickstarts-index-jsx-a1e42093b41968828647.js.map
\ No newline at end of file
diff --git a/component---src-pages-quickstarts-index-jsx-a1e42093b41968828647.js.map b/component---src-pages-quickstarts-index-jsx-a1e42093b41968828647.js.map
deleted file mode 100644
index 78ee611..0000000
--- a/component---src-pages-quickstarts-index-jsx-a1e42093b41968828647.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":["webpack:///./src/components/footer.jsx","webpack:///./src/components/quickstart-card.jsx","webpack:///./src/templates/quickstarts.jsx","webpack:///./src/pages/quickstarts/index.jsx"],"names":["ExternalLink","href","title","target","rel","Footer","lang","resolvePath","resolveI18nPath","className","to","src","jkubeLogo","alt","icons","ApacheCamel","ApacheKaraf","Kubernetes","OpenLiberty","OpenShift","Quarkus","Spring","Thorntail","Vertx","QuickStartCard","description","technologies","url","itemScope","itemType","itemProp","content","join","map","tech","key","split","l","trim","line","idx","Quickstarts","langKey","nodes","node","artifactId","name","pageQuery","Index","data","allQuickstart"],"mappings":"2FAAA,sEAMMA,EAAe,SAAC,GAAD,IAAEC,EAAF,EAAEA,KAAMC,EAAR,EAAQA,MAAR,OACnB,uBAAGD,KAAMA,EAAME,OAAO,SAASC,IAAI,gCAAgCF,IA6CtDG,IA1CA,SAAC,GAAY,IAAXC,EAAU,EAAVA,KACTC,EAAcC,0BAAgBF,GACpC,OACE,yBAAKG,UAAU,wBACb,yBAAKA,UAAU,oCACb,kBAAC,IAAD,CAAMC,GAAIH,EAAY,MACpB,yBAAKE,UAAU,yCAAyCE,IAAKC,IAAWC,IAAI,WAE9E,0BAAMJ,UAAU,4CAAhB,oDAIF,yBAAKA,UAAU,+BACb,wBAAIA,UAAU,oCACZ,4BAAI,kBAAC,IAAD,CAAMC,GAAIH,EAAY,0BAAtB,gBACJ,4BAAI,kBAAC,IAAD,CAAMG,GAAIH,EAAY,UAAtB,SACJ,4BAAI,kBAAC,IAAD,CAAMG,GAAIH,EAAY,iBAAtB,gBACJ,4BAAI,kBAAC,IAAD,CAAMG,GAAIH,EAAY,2BAAtB,qBACJ,4BAAI,kBAAC,IAAD,CAAMG,GAAIH,EAAY,WAAtB,WAEN,wBAAIE,UAAU,oCACZ,4BAAI,kBAAC,IAAD,CAAMC,GAAIH,EAAY,eAAtB,cACJ,4BAAI,kBAAC,IAAD,CAAMG,GAAIH,EAAY,qCAAtB,iBACJ,4BAAI,kBAAC,IAAD,CAAMG,GAAIH,EAAY,kBAAtB,kBAEN,wBAAIE,UAAU,oCACZ,4BAAI,kBAACT,EAAD,CAAcC,KAAK,0BAA0BC,MAAM,wBACvD,4BAAI,kBAACF,EAAD,CAAcC,KAAK,4CAA4CC,MAAM,oBACzE,4BAAI,kBAACF,EAAD,CAAcC,KAAK,+CAA+CC,MAAM,kBAC5E,4BAAI,kBAACF,EAAD,CAAcC,KAAK,8CAA8CC,MAAM,qBAC3E,4BAAI,kBAACF,EAAD,CAAcC,KAAK,gCAAgCC,MAAM,uBAGjE,yBAAKO,UAAU,mCAAf,0C,kJCzCAK,EAAQ,CACZC,YAAa,aACbC,YAAa,aACbC,WAAY,iBACZC,YAAa,WACbC,UAAW,aACXC,QAAS,cACTC,OAAQ,aACRC,UAAW,WACXC,MAAO,kBAgCMC,EA7BQ,SAAC,GAAD,IAAEtB,EAAF,EAAEA,MAAOuB,EAAT,EAASA,YAAaC,EAAtB,EAAsBA,aAAcC,EAApC,EAAoCA,IAApC,OACrB,yBAAKlB,UAAU,mBAAmBmB,WAAS,EAACC,SAAS,wCACnD,0BAAMC,SAAS,sBAAsBC,QAAQ,SAC7C,0BAAMD,SAAS,iBAAiBC,QAAQ,kCACxC,0BAAMD,SAAS,WAAWC,QAASL,EAAaM,KAAK,OACrD,0BAAMF,SAAS,OAAOC,QAAS7B,IAC/B,0BAAM4B,SAAS,iBAAiBC,QAASJ,IACzC,wBAAIlB,UAAU,2BACZ,uBAAGR,KAAM0B,EAAKG,SAAS,OAAO5B,IAEhC,wBAAIO,UAAU,kCACXiB,EAAaO,KAAI,SAAAC,GAAI,OACpB,wBAAIC,IAAKD,EAAMzB,UAAU,uCACvB,uBAAGA,UAAS,4CAA8CK,EAAMoB,KAC/DA,OAIP,yBAAKzB,UAAU,gCAAgCqB,SAAS,eACrDL,EAAYW,MAAM,UAAUH,KAAI,SAAAI,GAAC,OAAIA,EAAEC,UAAQL,KAAI,SAACM,EAAMC,GAAP,OAClD,uBAAGL,IAAKK,GAAMD,OAGlB,yBAAK9B,UAAU,2BACb,uBAAGR,KAAM0B,GAAK,uBAAGlB,UAAU,eAA3B,yBCQSgC,G,UAvCK,SAAC,GAAD,IAAEvC,EAAF,EAAEA,MAAOuB,EAAT,EAASA,YAAaiB,EAAtB,EAAsBA,QAASC,EAA/B,EAA+BA,MAA/B,OAClB,yBAAKlC,UAAU,iBACb,kBAAC,IAAD,CAAKP,MAAOA,EAAOuB,YAAaA,EAAanB,KAAMoC,IACnD,kBAAC,IAAD,CAAQpC,KAAMoC,IACd,yBAAKjC,UAAU,uBACb,yBACEA,UAAU,0BAEV,yBAAKA,UAAU,QACb,yBAAKA,UAAU,gBACb,4BAAKP,GACL,2BAAIuB,KAGR,wBACEhB,UAAU,6BACVmB,WAAS,EAACC,SAAS,yCAEnB,0BAAMC,SAAS,OAAOC,QAAQ,kBAC9B,0BAAMD,SAAS,sBAAsBC,QAAQ,oBAC7C,0BAAMD,SAAS,kBAAkBC,QAAQ,0BACzC,0BAAMD,SAAS,cAAcC,QAAQ,qCACpCY,EAAMV,KAAI,SAAAW,GAAI,OACb,wBAAIT,IAAKS,EAAKC,WAAYpC,UAAU,mCAClC,kBAAC,EAAD,CACEP,MAAO0C,EAAKE,KACZrB,YAAamB,EAAKnB,YAClBC,aAAckB,EAAKlB,aACnBC,IAAKiB,EAAKjB,aAOtB,kBAAC,IAAD,CAAQrB,KAAMoC,OC7BLK,EAAS,aAePC,UAxBD,SAAC,GAAD,IAAyBL,EAAzB,EAAEM,KAAOC,cAAgBP,MAAzB,OACZ,kBAAC,EAAD,CACEzC,MAAM,cACNuB,YAAY,yCACZiB,QAAQ,KACRC,MAAOA","file":"component---src-pages-quickstarts-index-jsx-a1e42093b41968828647.js","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport {Link} from \"gatsby\";\nimport {resolveI18nPath} from \"../i18n\";\nimport jkubeLogo from \"../assets/jkube-logo-horizontal-white.svg\";\n\nconst ExternalLink = ({href, title}) => (\n <a href={href} target='_blank' rel='nofollow noopener noreferrer'>{title}</a>\n);\n\nconst Footer = ({lang}) => {\n const resolvePath = resolveI18nPath(lang);\n return (\n <div className='eclipse-jkube-footer'>\n <div className='eclipse-jkube-footer__logo-jkube'>\n <Link to={resolvePath('/')}>\n <img className='eclipse-jkube-footer__logo-jkube-image' src={jkubeLogo} alt='JKube' />\n </Link>\n <span className='eclipse-jkube-footer__logo-jkube-tagline'>\n Cloud-Native Java Applications without a hassle\n </span>\n </div>\n <div className='eclipse-jkube-footer__links'>\n <ul className='eclipse-jkube-footer__links-list'>\n <li><Link to={resolvePath('/docs#getting-started')}>Get Started</Link></li>\n <li><Link to={resolvePath('/docs')}>Docs</Link></li>\n <li><Link to={resolvePath('/quickstarts')}>Quickstarts</Link></li>\n <li><Link to={resolvePath('/docs#katacoda-courses')}>Katacoda Courses</Link></li>\n <li><Link to={resolvePath('/demos')}>Demos</Link></li>\n </ul>\n <ul className='eclipse-jkube-footer__links-list'>\n <li><Link to={resolvePath('/community')}>Community</Link></li>\n <li><Link to={resolvePath('/community#planning-and-meetings')}>Get Involved</Link></li>\n <li><Link to={resolvePath('/contributing')}>Contributing</Link></li>\n </ul>\n <ul className='eclipse-jkube-footer__links-list'>\n <li><ExternalLink href='https://www.eclipse.org' title='Eclipse Foundation'/></li>\n <li><ExternalLink href='https://www.eclipse.org/legal/privacy.php' title='Privacy Policy'/></li>\n <li><ExternalLink href='https://www.eclipse.org/legal/termsofuse.php' title='Terms of Use'/></li>\n <li><ExternalLink href='https://www.eclipse.org/legal/copyright.php' title='Copyright Agent'/></li>\n <li><ExternalLink href='https://www.eclipse.org/legal' title='Legal Resources'/></li>\n </ul>\n </div>\n <div className='eclipse-jkube-footer__copyright'>Copyright © Eclipse Foundation 2020</div>\n </div>\n );\n};\n\nFooter.propTypes = {\n lang: PropTypes.string.isRequired,\n};\n\nexport default Footer;\n","import React from 'react';\n\nconst icons = {\n ApacheCamel: 'cib-apache',\n ApacheKaraf: 'cib-apache',\n Kubernetes: 'cib-kubernetes',\n OpenLiberty: 'cib-java',\n OpenShift: 'cib-redhat',\n Quarkus: 'cib-quarkus',\n Spring: 'cib-spring',\n Thorntail: 'cib-java',\n Vertx: 'cib-eclipseide'\n};\n\nconst QuickStartCard = ({title, description, technologies, url}) => (\n <div className='quick-start-card' itemScope itemType='http://schema.org/SoftwareSourceCode'>\n <meta itemProp='programmingLanguage' content='Java'/>\n <meta itemProp='codeSampleType' content='full (compile ready) solution'/>\n <meta itemProp='keywords' content={technologies.join(',')} />\n <meta itemProp='name' content={title} />\n <meta itemProp='codeRepository' content={url} />\n <h3 className='quick-start-card__title'>\n <a href={url} itemProp='url'>{title}</a>\n </h3>\n <ul className='quick-start-card__technologies'>\n {technologies.map(tech => (\n <li key={tech} className='quick-start-card__technologies-item'>\n <i className={`quick-start-card__technologies-item-icon ${icons[tech]}`}/>\n {tech}\n </li>\n ))}\n </ul>\n <div className='quick-start-card__description' itemProp='description'>\n {description.split(/[\\n\\r]/).map(l => l.trim()).map((line, idx) => (\n <p key={idx}>{line}</p>\n ))}\n </div>\n <div className='quick-start-card__links'>\n <a href={url}><i className='cib-github' /> GitHub repository</a>\n </div>\n </div>\n);\n\nexport default QuickStartCard;","import React from 'react'\nimport Seo from '../components/seo';\nimport Header from '../components/header';\nimport Footer from '../components/footer';\nimport QuickStartCard from \"../components/quickstart-card\";\nimport '../styles/main.scss';\n\nconst Quickstarts = ({title, description, langKey, nodes}) => (\n <div className='eclipse-jkube'>\n <Seo title={title} description={description} lang={langKey}/>\n <Header lang={langKey}/>\n <div className='eclipse-jkube__main'>\n <div\n className='eclipse-jkube__content'\n >\n <div className='hero'>\n <div className='hero-content'>\n <h1>{title}</h1>\n <p>{description}</p>\n </div>\n </div>\n <ul\n className='eclipse-jkube__quickstarts'\n itemScope itemType='http://schema.org/SoftwareApplication'\n >\n <meta itemProp='name' content='Eclipse JKube' />\n <meta itemProp='applicationCategory' content='Developer Tools' />\n <meta itemProp='operatingSystem' content='Linux,Windows,OSX,Mac' />\n <meta itemProp='downloadUrl' content='https://github.com/eclipse/jkube' />\n {nodes.map(node => (\n <li key={node.artifactId} className='eclipse-jkube__quickstarts-item'>\n <QuickStartCard\n title={node.name}\n description={node.description}\n technologies={node.technologies}\n url={node.url}\n />\n </li>\n ))}\n </ul>\n </div>\n </div>\n <Footer lang={langKey}/>\n </div>\n);\n\nexport default Quickstarts;\n","import React from 'react'\nimport Quickstarts from '../../templates/quickstarts';\nimport {graphql} from \"gatsby\";\n\nconst Index = ({data: {allQuickstart: {nodes}}}) => (\n <Quickstarts\n title='Quickstarts'\n description='Eclipse JKube Quickstarts and examples'\n langKey='en'\n nodes={nodes}\n />\n);\n\nexport const pageQuery = graphql`\n query {\n allQuickstart {\n nodes {\n id\n artifactId\n name\n description\n technologies\n url\n }\n }\n }\n`;\n\nexport default Index;\n"],"sourceRoot":""}
\ No newline at end of file
diff --git a/component---src-templates-doc-jsx-21a94bb36ef3df298f42.js b/component---src-templates-doc-jsx-21a94bb36ef3df298f42.js
new file mode 100644
index 0000000..ae5ad1b
--- /dev/null
+++ b/component---src-templates-doc-jsx-21a94bb36ef3df298f42.js
@@ -0,0 +1,3 @@
+/*! For license information please see component---src-templates-doc-jsx-21a94bb36ef3df298f42.js.LICENSE.txt */
+(window.webpackJsonp=window.webpackJsonp||[]).push([[5],{"/Des":function(e,t){Prism.languages.markup={comment:/<!--[\s\S]*?-->/,prolog:/<\?[\s\S]+?\?>/,doctype:{pattern:/<!DOCTYPE(?:[^>"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|<!--(?:[^-]|-(?!->))*-->)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^<!|>$|[[\]]/,"doctype-tag":/^DOCTYPE/,name:/[^\s<>'"]+/}},cdata:/<!\[CDATA\[[\s\S]*?]]>/i,tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/&#x?[\da-f]{1,8};/i]},Prism.languages.markup.tag.inside["attr-value"].inside.entity=Prism.languages.markup.entity,Prism.languages.markup.doctype.inside["internal-subset"].inside=Prism.languages.markup,Prism.hooks.add("wrap",(function(e){"entity"===e.type&&(e.attributes.title=e.content.replace(/&/,"&"))})),Object.defineProperty(Prism.languages.markup.tag,"addInlined",{value:function(e,t){var a={};a["language-"+t]={pattern:/(^<!\[CDATA\[)[\s\S]+?(?=\]\]>$)/i,lookbehind:!0,inside:Prism.languages[t]},a.cdata=/^<!\[CDATA\[|\]\]>$/i;var n={"included-cdata":{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,inside:a}};n["language-"+t]={pattern:/[\s\S]+/,inside:Prism.languages[t]};var r={};r[e]={pattern:RegExp("(<__[^>]*>)(?:<!\\[CDATA\\[(?:[^\\]]|\\](?!\\]>))*\\]\\]>|(?!<!\\[CDATA\\[)[^])*?(?=</__>)".replace(/__/g,(function(){return e})),"i"),lookbehind:!0,greedy:!0,inside:n},Prism.languages.insertBefore("markup","cdata",r)}}),Prism.languages.html=Prism.languages.markup,Prism.languages.mathml=Prism.languages.markup,Prism.languages.svg=Prism.languages.markup,Prism.languages.xml=Prism.languages.extend("markup",{}),Prism.languages.ssml=Prism.languages.xml,Prism.languages.atom=Prism.languages.xml,Prism.languages.rss=Prism.languages.xml},"2NnL":function(e,t){var a,n,r,s;a=Prism,n=/\b(?:abstract|assert|boolean|break|byte|case|catch|char|class|const|continue|default|do|double|else|enum|exports|extends|final|finally|float|for|goto|if|implements|import|instanceof|int|interface|long|module|native|new|non-sealed|null|open|opens|package|permits|private|protected|provides|public|record|requires|return|sealed|short|static|strictfp|super|switch|synchronized|this|throw|throws|to|transient|transitive|try|uses|var|void|volatile|while|with|yield)\b/,r="(^|[^\\w.])(?:[a-z]\\w*\\s*\\.\\s*)*(?:[A-Z]\\w*\\s*\\.\\s*)*",s={pattern:RegExp(r+"[A-Z](?:[\\d_A-Z]*[a-z]\\w*)?\\b"),lookbehind:!0,inside:{namespace:{pattern:/^[a-z]\w*(?:\s*\.\s*[a-z]\w*)*(?:\s*\.)?/,inside:{punctuation:/\./}},punctuation:/\./}},a.languages.java=a.languages.extend("clike",{"class-name":[s,{pattern:RegExp(r+"[A-Z]\\w*(?=\\s+\\w+\\s*[;,=())])"),lookbehind:!0,inside:s.inside}],keyword:n,function:[a.languages.clike.function,{pattern:/(\:\:\s*)[a-z_]\w*/,lookbehind:!0}],number:/\b0b[01][01_]*L?\b|\b0x(?:\.[\da-f_p+-]+|[\da-f_]+(?:\.[\da-f_p+-]+)?)\b|(?:\b\d[\d_]*(?:\.[\d_]*)?|\B\.\d[\d_]*)(?:e[+-]?\d[\d_]*)?[dfl]?/i,operator:{pattern:/(^|[^.])(?:<<=?|>>>?=?|->|--|\+\+|&&|\|\||::|[?:~]|[-+*/%&|^!=<>]=?)/m,lookbehind:!0}}),a.languages.insertBefore("java","string",{"triple-quoted-string":{pattern:/"""[ \t]*[\r\n](?:(?:"|"")?(?:\\.|[^"\\]))*"""/,greedy:!0,alias:"string"}}),a.languages.insertBefore("java","class-name",{annotation:{pattern:/(^|[^.])@\w+(?:\s*\.\s*\w+)*/,lookbehind:!0,alias:"punctuation"},generics:{pattern:/<(?:[\w\s,.&?]|<(?:[\w\s,.&?]|<(?:[\w\s,.&?]|<[\w\s,.&?]*>)*>)*>)*>/,inside:{"class-name":s,keyword:n,punctuation:/[<>(),.:]/,operator:/[?&|]/}},namespace:{pattern:RegExp("(\\b(?:exports|import(?:\\s+static)?|module|open|opens|package|provides|requires|to|transitive|uses|with)\\s+)(?!<keyword>)[a-z]\\w*(?:\\.[a-z]\\w*)*\\.?".replace(/<keyword>/g,(function(){return n.source}))),lookbehind:!0,inside:{punctuation:/\./}}})},DjDE:function(e,t,a){"use strict";a.r(t);var n=a("q1tI"),r=a.n(n),s=a("Rb52"),i=a("dmsj"),l=(a("wZee"),a("2NnL"),a("/Des"),a("zSud"),a("E8R+"),a("+5i3"),function(){window.Prism.highlightAll()});t.default=function(e){var t=e.data.asciidocCopy,a=t.document,o=a.title,u=a.subtitle,c=t.html,g=e.pageContext.langKey;return Object(n.useEffect)(l,[]),r.a.createElement("div",{className:"eclipse-jkube"},r.a.createElement(i.a,{title:o,description:u,lang:g}),r.a.createElement(s.a,{lang:g}),r.a.createElement("div",{className:"eclipse-jkube__documentation book toc2 toc-left"},r.a.createElement("div",{className:"eclipse-jkube__documentation-content",dangerouslySetInnerHTML:{__html:c}})))}},"E8R+":function(e,t,a){},wZee:function(e,t,a){(function(t){var a=function(e){var t=/\blang(?:uage)?-([\w-]+)\b/i,a=0,n={manual:e.Prism&&e.Prism.manual,disableWorkerMessageHandler:e.Prism&&e.Prism.disableWorkerMessageHandler,util:{encode:function e(t){return t instanceof r?new r(t.type,e(t.content),t.alias):Array.isArray(t)?t.map(e):t.replace(/&/g,"&").replace(/</g,"<").replace(/\u00a0/g," ")},type:function(e){return Object.prototype.toString.call(e).slice(8,-1)},objId:function(e){return e.__id||Object.defineProperty(e,"__id",{value:++a}),e.__id},clone:function e(t,a){var r,s;switch(a=a||{},n.util.type(t)){case"Object":if(s=n.util.objId(t),a[s])return a[s];for(var i in r={},a[s]=r,t)t.hasOwnProperty(i)&&(r[i]=e(t[i],a));return r;case"Array":return s=n.util.objId(t),a[s]?a[s]:(r=[],a[s]=r,t.forEach((function(t,n){r[n]=e(t,a)})),r);default:return t}},getLanguage:function(e){for(;e&&!t.test(e.className);)e=e.parentElement;return e?(e.className.match(t)||[,"none"])[1].toLowerCase():"none"},currentScript:function(){if("undefined"==typeof document)return null;if("currentScript"in document)return document.currentScript;try{throw new Error}catch(n){var e=(/at [^(\r\n]*\((.*):.+:.+\)$/i.exec(n.stack)||[])[1];if(e){var t=document.getElementsByTagName("script");for(var a in t)if(t[a].src==e)return t[a]}return null}},isActive:function(e,t,a){for(var n="no-"+t;e;){var r=e.classList;if(r.contains(t))return!0;if(r.contains(n))return!1;e=e.parentElement}return!!a}},languages:{extend:function(e,t){var a=n.util.clone(n.languages[e]);for(var r in t)a[r]=t[r];return a},insertBefore:function(e,t,a,r){var s=(r=r||n.languages)[e],i={};for(var l in s)if(s.hasOwnProperty(l)){if(l==t)for(var o in a)a.hasOwnProperty(o)&&(i[o]=a[o]);a.hasOwnProperty(l)||(i[l]=s[l])}var u=r[e];return r[e]=i,n.languages.DFS(n.languages,(function(t,a){a===u&&t!=e&&(this[t]=i)})),i},DFS:function e(t,a,r,s){s=s||{};var i=n.util.objId;for(var l in t)if(t.hasOwnProperty(l)){a.call(t,l,t[l],r||l);var o=t[l],u=n.util.type(o);"Object"!==u||s[i(o)]?"Array"!==u||s[i(o)]||(s[i(o)]=!0,e(o,a,l,s)):(s[i(o)]=!0,e(o,a,null,s))}}},plugins:{},highlightAll:function(e,t){n.highlightAllUnder(document,e,t)},highlightAllUnder:function(e,t,a){var r={callback:a,container:e,selector:'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code'};n.hooks.run("before-highlightall",r),r.elements=Array.prototype.slice.apply(r.container.querySelectorAll(r.selector)),n.hooks.run("before-all-elements-highlight",r);for(var s,i=0;s=r.elements[i++];)n.highlightElement(s,!0===t,r.callback)},highlightElement:function(a,r,s){var i=n.util.getLanguage(a),l=n.languages[i];a.className=a.className.replace(t,"").replace(/\s+/g," ")+" language-"+i;var o=a.parentElement;o&&"pre"===o.nodeName.toLowerCase()&&(o.className=o.className.replace(t,"").replace(/\s+/g," ")+" language-"+i);var u={element:a,language:i,grammar:l,code:a.textContent};function c(e){u.highlightedCode=e,n.hooks.run("before-insert",u),u.element.innerHTML=u.highlightedCode,n.hooks.run("after-highlight",u),n.hooks.run("complete",u),s&&s.call(u.element)}if(n.hooks.run("before-sanity-check",u),!u.code)return n.hooks.run("complete",u),void(s&&s.call(u.element));if(n.hooks.run("before-highlight",u),u.grammar)if(r&&e.Worker){var g=new Worker(n.filename);g.onmessage=function(e){c(e.data)},g.postMessage(JSON.stringify({language:u.language,code:u.code,immediateClose:!0}))}else c(n.highlight(u.code,u.grammar,u.language));else c(n.util.encode(u.code))},highlight:function(e,t,a){var s={code:e,grammar:t,language:a};return n.hooks.run("before-tokenize",s),s.tokens=n.tokenize(s.code,s.grammar),n.hooks.run("after-tokenize",s),r.stringify(n.util.encode(s.tokens),s.language)},tokenize:function(e,t){var a=t.rest;if(a){for(var u in a)t[u]=a[u];delete t.rest}var c=new i;return l(c,c.head,e),function e(t,a,i,u,c,g){for(var d in i)if(i.hasOwnProperty(d)&&i[d]){var p=i[d];p=Array.isArray(p)?p:[p];for(var f=0;f<p.length;++f){if(g&&g.cause==d+","+f)return;var m=p[f],h=m.inside,b=!!m.lookbehind,v=!!m.greedy,y=m.alias;if(v&&!m.pattern.global){var k=m.pattern.toString().match(/[imsuy]*$/)[0];m.pattern=RegExp(m.pattern.source,k+"g")}for(var x=m.pattern||m,w=u.next,A=c;w!==a.tail&&!(g&&A>=g.reach);A+=w.value.length,w=w.next){var F=w.value;if(a.length>t.length)return;if(!(F instanceof r)){var P,_=1;if(v){if(!(P=s(x,A,t,b)))break;var $=P.index,E=P.index+P[0].length,S=A;for(S+=w.value.length;$>=S;)w=w.next,S+=w.value.length;if(S-=w.value.length,A=S,w.value instanceof r)continue;for(var j=w;j!==a.tail&&(S<E||"string"==typeof j.value);j=j.next)_++,S+=j.value.length;_--,F=t.slice(A,S),P.index-=A}else if(!(P=s(x,0,F,b)))continue;$=P.index;var C=P[0],z=F.slice(0,$),T=F.slice($+C.length),D=A+F.length;g&&D>g.reach&&(g.reach=D);var N=w.prev;z&&(N=l(a,N,z),A+=z.length),o(a,N,_);var L=new r(d,h?n.tokenize(C,h):C,y,C);w=l(a,N,L),T&&l(a,w,T),_>1&&e(t,a,i,w.prev,A,{cause:d+","+f,reach:D})}}}}}(e,c,t,c.head,0),function(e){var t=[],a=e.head.next;for(;a!==e.tail;)t.push(a.value),a=a.next;return t}(c)},hooks:{all:{},add:function(e,t){var a=n.hooks.all;a[e]=a[e]||[],a[e].push(t)},run:function(e,t){var a=n.hooks.all[e];if(a&&a.length)for(var r,s=0;r=a[s++];)r(t)}},Token:r};function r(e,t,a,n){this.type=e,this.content=t,this.alias=a,this.length=0|(n||"").length}function s(e,t,a,n){e.lastIndex=t;var r=e.exec(a);if(r&&n&&r[1]){var s=r[1].length;r.index+=s,r[0]=r[0].slice(s)}return r}function i(){var e={value:null,prev:null,next:null},t={value:null,prev:e,next:null};e.next=t,this.head=e,this.tail=t,this.length=0}function l(e,t,a){var n=t.next,r={value:a,prev:t,next:n};return t.next=r,n.prev=r,e.length++,r}function o(e,t,a){for(var n=t.next,r=0;r<a&&n!==e.tail;r++)n=n.next;t.next=n,n.prev=t,e.length-=r}if(e.Prism=n,r.stringify=function e(t,a){if("string"==typeof t)return t;if(Array.isArray(t)){var r="";return t.forEach((function(t){r+=e(t,a)})),r}var s={type:t.type,content:e(t.content,a),tag:"span",classes:["token",t.type],attributes:{},language:a},i=t.alias;i&&(Array.isArray(i)?Array.prototype.push.apply(s.classes,i):s.classes.push(i)),n.hooks.run("wrap",s);var l="";for(var o in s.attributes)l+=" "+o+'="'+(s.attributes[o]||"").replace(/"/g,""")+'"';return"<"+s.tag+' class="'+s.classes.join(" ")+'"'+l+">"+s.content+"</"+s.tag+">"},!e.document)return e.addEventListener?(n.disableWorkerMessageHandler||e.addEventListener("message",(function(t){var a=JSON.parse(t.data),r=a.language,s=a.code,i=a.immediateClose;e.postMessage(n.highlight(s,n.languages[r],r)),i&&e.close()}),!1),n):n;var u=n.util.currentScript();function c(){n.manual||n.highlightAll()}if(u&&(n.filename=u.src,u.hasAttribute("data-manual")&&(n.manual=!0)),!n.manual){var g=document.readyState;"loading"===g||"interactive"===g&&u&&u.defer?document.addEventListener("DOMContentLoaded",c):window.requestAnimationFrame?window.requestAnimationFrame(c):window.setTimeout(c,16)}return n}("undefined"!=typeof window?window:"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?self:{});e.exports&&(e.exports=a),void 0!==t&&(t.Prism=a),a.languages.markup={comment:/<!--[\s\S]*?-->/,prolog:/<\?[\s\S]+?\?>/,doctype:{pattern:/<!DOCTYPE(?:[^>"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:[^<"'\]]|"[^"]*"|'[^']*'|<(?!!--)|<!--(?:[^-]|-(?!->))*-->)*\]\s*)?>/i,greedy:!0,inside:{"internal-subset":{pattern:/(\[)[\s\S]+(?=\]>$)/,lookbehind:!0,greedy:!0,inside:null},string:{pattern:/"[^"]*"|'[^']*'/,greedy:!0},punctuation:/^<!|>$|[[\]]/,"doctype-tag":/^DOCTYPE/,name:/[^\s<>'"]+/}},cdata:/<!\[CDATA\[[\s\S]*?]]>/i,tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:[{pattern:/&[\da-z]{1,8};/i,alias:"named-entity"},/&#x?[\da-f]{1,8};/i]},a.languages.markup.tag.inside["attr-value"].inside.entity=a.languages.markup.entity,a.languages.markup.doctype.inside["internal-subset"].inside=a.languages.markup,a.hooks.add("wrap",(function(e){"entity"===e.type&&(e.attributes.title=e.content.replace(/&/,"&"))})),Object.defineProperty(a.languages.markup.tag,"addInlined",{value:function(e,t){var n={};n["language-"+t]={pattern:/(^<!\[CDATA\[)[\s\S]+?(?=\]\]>$)/i,lookbehind:!0,inside:a.languages[t]},n.cdata=/^<!\[CDATA\[|\]\]>$/i;var r={"included-cdata":{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,inside:n}};r["language-"+t]={pattern:/[\s\S]+/,inside:a.languages[t]};var s={};s[e]={pattern:RegExp(/(<__[^>]*>)(?:<!\[CDATA\[(?:[^\]]|\](?!\]>))*\]\]>|(?!<!\[CDATA\[)[\s\S])*?(?=<\/__>)/.source.replace(/__/g,(function(){return e})),"i"),lookbehind:!0,greedy:!0,inside:r},a.languages.insertBefore("markup","cdata",s)}}),a.languages.html=a.languages.markup,a.languages.mathml=a.languages.markup,a.languages.svg=a.languages.markup,a.languages.xml=a.languages.extend("markup",{}),a.languages.ssml=a.languages.xml,a.languages.atom=a.languages.xml,a.languages.rss=a.languages.xml,function(e){var t=/("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/;e.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:/@[\w-](?:[^;{\s]|\s+(?![\s{]))*(?:;|(?=\s*\{))/,inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\(\s*(?![\s)]))(?:[^()\s]|\s+(?![\s)])|\((?:[^()]|\([^()]*\))*\))+(?=\s*\))/,lookbehind:!0,alias:"selector"},keyword:{pattern:/(^|[^\w-])(?:and|not|only|or)(?![\w-])/,lookbehind:!0}}},url:{pattern:RegExp("\\burl\\((?:"+t.source+"|"+/(?:[^\\\r\n()"']|\\[\s\S])*/.source+")\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/,string:{pattern:RegExp("^"+t.source+"$"),alias:"url"}}},selector:RegExp("[^{}\\s](?:[^{};\"'\\s]|\\s+(?![\\s{])|"+t.source+")*(?=\\s*\\{)"),string:{pattern:t,greedy:!0},property:/(?!\s)[-_a-z\xA0-\uFFFF](?:(?!\s)[-\w\xA0-\uFFFF])*(?=\s*:)/i,important:/!important\b/i,function:/[-a-z0-9]+(?=\()/i,punctuation:/[(){};:,]/},e.languages.css.atrule.inside.rest=e.languages.css;var a=e.languages.markup;a&&(a.tag.addInlined("style","css"),e.languages.insertBefore("inside","attr-value",{"style-attr":{pattern:/(^|["'\s])style\s*=\s*(?:"[^"]*"|'[^']*')/i,lookbehind:!0,inside:{"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/,inside:{style:{pattern:/(["'])[\s\S]+(?=["']$)/,lookbehind:!0,alias:"language-css",inside:e.languages.css},punctuation:[{pattern:/^=/,alias:"attr-equals"},/"|'/]}},"attr-name":/^style/i}}},a.tag))}(a),a.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0,greedy:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/(\b(?:class|interface|extends|implements|trait|instanceof|new)\s+|\bcatch\s+\()[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:if|else|while|do|for|return|in|instanceof|function|new|try|throw|catch|finally|null|break|continue)\b/,boolean:/\b(?:true|false)\b/,function:/\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+(?:\.\d*)?|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/},a.languages.javascript=a.languages.extend("clike",{"class-name":[a.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])(?!\s)[_$A-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\.(?:prototype|constructor))/,lookbehind:!0}],keyword:[{pattern:/((?:^|})\s*)(?:catch|finally)\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|for|from|function|(?:get|set)(?=\s*[\[$\w\xA0-\uFFFF])|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],function:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,number:/\b(?:(?:0[xX](?:[\dA-Fa-f](?:_[\dA-Fa-f])?)+|0[bB](?:[01](?:_[01])?)+|0[oO](?:[0-7](?:_[0-7])?)+)n?|(?:\d(?:_\d)?)+n|NaN|Infinity)\b|(?:\b(?:\d(?:_\d)?)+\.?(?:\d(?:_\d)?)*|\B\.(?:\d(?:_\d)?)+)(?:[Ee][+-]?(?:\d(?:_\d)?)+)?/,operator:/--|\+\+|\*\*=?|=>|&&=?|\|\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?\?=?|\?\.?|[~:]/}),a.languages.javascript["class-name"][0].pattern=/(\b(?:class|interface|extends|implements|instanceof|new)\s+)[\w.\\]+/,a.languages.insertBefore("javascript","keyword",{regex:{pattern:/((?:^|[^$\w\xA0-\uFFFF."'\])\s]|\b(?:return|yield))\s*)\/(?:\[(?:[^\]\\\r\n]|\\.)*]|\\.|[^/\\\[\r\n])+\/[gimyus]{0,6}(?=(?:\s|\/\*(?:[^*]|\*(?!\/))*\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/,lookbehind:!0,greedy:!0,inside:{"regex-source":{pattern:/^(\/)[\s\S]+(?=\/[a-z]*$)/,lookbehind:!0,alias:"language-regex",inside:a.languages.regex},"regex-flags":/[a-z]+$/,"regex-delimiter":/^\/|\/$/}},"function-variable":{pattern:/#?(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*)?\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\))/,lookbehind:!0,inside:a.languages.javascript},{pattern:/(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*(?=\s*=>)/i,inside:a.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*=>)/,lookbehind:!0,inside:a.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:(?!\s)[_$a-zA-Z\xA0-\uFFFF](?:(?!\s)[$\w\xA0-\uFFFF])*\s*)\(\s*|\]\s*\(\s*)(?!\s)(?:[^()\s]|\s+(?![\s)])|\([^()]*\))+(?=\s*\)\s*\{)/,lookbehind:!0,inside:a.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),a.languages.insertBefore("javascript","string",{"template-string":{pattern:/`(?:\\[\s\S]|\${(?:[^{}]|{(?:[^{}]|{[^}]*})*})+}|(?!\${)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\${(?:[^{}]|{(?:[^{}]|{[^}]*})*})+}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\${|}$/,alias:"punctuation"},rest:a.languages.javascript}},string:/[\s\S]+/}}}),a.languages.markup&&a.languages.markup.tag.addInlined("script","javascript"),a.languages.js=a.languages.javascript,function(){if("undefined"!=typeof self&&self.Prism&&self.document){Element.prototype.matches||(Element.prototype.matches=Element.prototype.msMatchesSelector||Element.prototype.webkitMatchesSelector);var e=window.Prism,t={js:"javascript",py:"python",rb:"ruby",ps1:"powershell",psm1:"powershell",sh:"bash",bat:"batch",h:"c",tex:"latex"},a='pre[data-src]:not([data-src-status="loaded"]):not([data-src-status="loading"])',n=/\blang(?:uage)?-([\w-]+)\b/i;e.hooks.add("before-highlightall",(function(e){e.selector+=", "+a})),e.hooks.add("before-sanity-check",(function(n){var r=n.element;if(r.matches(a)){n.code="",r.setAttribute("data-src-status","loading");var i=r.appendChild(document.createElement("CODE"));i.textContent="Loading…";var l=r.getAttribute("data-src"),o=n.language;if("none"===o){var u=(/\.(\w+)$/.exec(l)||[,"none"])[1];o=t[u]||u}s(i,o),s(r,o);var c=e.plugins.autoloader;c&&c.loadLanguages(o);var g=new XMLHttpRequest;g.open("GET",l,!0),g.onreadystatechange=function(){var t,a;4==g.readyState&&(g.status<400&&g.responseText?(r.setAttribute("data-src-status","loaded"),i.textContent=g.responseText,e.highlightElement(i)):(r.setAttribute("data-src-status","failed"),g.status>=400?i.textContent=(t=g.status,a=g.statusText,"✖ Error "+t+" while fetching file: "+a):i.textContent="✖ Error: File does not exist or is empty"))},g.send(null)}})),e.plugins.fileHighlight={highlight:function(t){for(var n,r=(t||document).querySelectorAll(a),s=0;n=r[s++];)e.highlightElement(n)}};var r=!1;e.fileHighlight=function(){r||(console.warn("Prism.fileHighlight is deprecated. Use `Prism.plugins.fileHighlight.highlight` instead."),r=!0),e.plugins.fileHighlight.highlight.apply(this,arguments)}}function s(e,t){var a=e.className;a=a.replace(n," ")+" language-"+t,e.className=a.replace(/\s+/g," ").trim()}}()}).call(this,a("yLpj"))},zSud:function(e,t){!function(e){var t=/[*&][^\s[\]{},]+/,a=/!(?:<[\w\-%#;/?:@&=+$,.!~*'()[\]]+>|(?:[a-zA-Z\d-]*!)?[\w\-%#;/?:@&=+$.~*'()]+)?/,n="(?:"+a.source+"(?:[ \t]+"+t.source+")?|"+t.source+"(?:[ \t]+"+a.source+")?)",r="(?:[^\\s\\x00-\\x08\\x0e-\\x1f!\"#%&'*,\\-:>?@[\\]`{|}\\x7f-\\x84\\x86-\\x9f\\ud800-\\udfff\\ufffe\\uffff]|[?:-]<PLAIN>)(?:[ \t]*(?:(?![#:])<PLAIN>|:<PLAIN>))*".replace(/<PLAIN>/g,(function(){return"[^\\s\\x00-\\x08\\x0e-\\x1f,[\\]{}\\x7f-\\x84\\x86-\\x9f\\ud800-\\udfff\\ufffe\\uffff]"})),s="\"(?:[^\"\\\\\r\n]|\\\\.)*\"|'(?:[^'\\\\\r\n]|\\\\.)*'";function i(e,t){t=(t||"").replace(/m/g,"")+"m";var a="([:\\-,[{]\\s*(?:\\s<<prop>>[ \t]+)?)(?:<<value>>)(?=[ \t]*(?:$|,|]|}|(?:[\r\n]\\s*)?#))".replace(/<<prop>>/g,(function(){return n})).replace(/<<value>>/g,(function(){return e}));return RegExp(a,t)}e.languages.yaml={scalar:{pattern:RegExp("([\\-:]\\s*(?:\\s<<prop>>[ \t]+)?[|>])[ \t]*(?:((?:\r?\n|\r)[ \t]+)\\S[^\r\n]*(?:\\2[^\r\n]+)*)".replace(/<<prop>>/g,(function(){return n}))),lookbehind:!0,alias:"string"},comment:/#.*/,key:{pattern:RegExp("((?:^|[:\\-,[{\r\n?])[ \t]*(?:<<prop>>[ \t]+)?)<<key>>(?=\\s*:\\s)".replace(/<<prop>>/g,(function(){return n})).replace(/<<key>>/g,(function(){return"(?:"+r+"|"+s+")"}))),lookbehind:!0,greedy:!0,alias:"atrule"},directive:{pattern:/(^[ \t]*)%.+/m,lookbehind:!0,alias:"important"},datetime:{pattern:i("\\d{4}-\\d\\d?-\\d\\d?(?:[tT]|[ \t]+)\\d\\d?:\\d{2}:\\d{2}(?:\\.\\d*)?(?:[ \t]*(?:Z|[-+]\\d\\d?(?::\\d{2})?))?|\\d{4}-\\d{2}-\\d{2}|\\d\\d?:\\d{2}(?::\\d{2}(?:\\.\\d*)?)?"),lookbehind:!0,alias:"number"},boolean:{pattern:i("true|false","i"),lookbehind:!0,alias:"important"},null:{pattern:i("null|~","i"),lookbehind:!0,alias:"important"},string:{pattern:i(s),lookbehind:!0,greedy:!0},number:{pattern:i("[+-]?(?:0x[\\da-f]+|0o[0-7]+|(?:\\d+(?:\\.\\d*)?|\\.?\\d+)(?:e[+-]?\\d+)?|\\.inf|\\.nan)","i"),lookbehind:!0},tag:a,important:t,punctuation:/---|[:[\]{}\-,|>?]|\.\.\./},e.languages.yml=e.languages.yaml}(Prism)}}]);
+//# sourceMappingURL=component---src-templates-doc-jsx-21a94bb36ef3df298f42.js.map
\ No newline at end of file
diff --git a/component---src-templates-doc-jsx-21a94bb36ef3df298f42.js.LICENSE.txt b/component---src-templates-doc-jsx-21a94bb36ef3df298f42.js.LICENSE.txt
new file mode 100644
index 0000000..0285de9
--- /dev/null
+++ b/component---src-templates-doc-jsx-21a94bb36ef3df298f42.js.LICENSE.txt
@@ -0,0 +1,8 @@
+/**
+ * Prism: Lightweight, robust, elegant syntax highlighting
+ *
+ * @license MIT <https://opensource.org/licenses/MIT>
+ * @author Lea Verou <https://lea.verou.me>
+ * @namespace
+ * @public
+ */
diff --git a/component---src-templates-doc-jsx-21a94bb36ef3df298f42.js.map b/component---src-templates-doc-jsx-21a94bb36ef3df298f42.js.map
new file mode 100644
index 0000000..797ece6
--- /dev/null
+++ b/component---src-templates-doc-jsx-21a94bb36ef3df298f42.js.map
@@ -0,0 +1 @@
+{"version":3,"sources":["webpack:///./node_modules/prismjs/components/prism-markup.min.js","webpack:///./node_modules/prismjs/components/prism-java.min.js","webpack:///./src/templates/doc.jsx","webpack:///./node_modules/prismjs/prism.js","webpack:///./node_modules/prismjs/components/prism-yaml.min.js"],"names":["Prism","languages","markup","comment","prolog","doctype","pattern","greedy","inside","lookbehind","string","punctuation","name","cdata","tag","namespace","alias","entity","hooks","add","a","type","attributes","title","content","replace","Object","defineProperty","value","e","s","n","t","RegExp","insertBefore","html","mathml","svg","xml","extend","ssml","atom","rss","java","keyword","function","clike","number","operator","annotation","generics","source","componentDidMount","window","highlightAll","Doc","data","asciidocCopy","document","subtitle","__html","langKey","pageContext","useEffect","className","description","lang","dangerouslySetInnerHTML","_self","uniqueId","_","manual","disableWorkerMessageHandler","util","encode","tokens","Token","Array","isArray","map","o","prototype","toString","call","slice","objId","obj","clone","deepClone","visited","id","key","hasOwnProperty","forEach","v","i","getLanguage","element","test","parentElement","match","toLowerCase","currentScript","Error","err","src","exec","stack","scripts","getElementsByTagName","isActive","defaultActivation","no","classList","contains","redef","before","insert","root","grammar","ret","token","newToken","old","DFS","this","callback","property","propertyType","plugins","async","highlightAllUnder","container","env","selector","run","elements","apply","querySelectorAll","highlightElement","language","parent","nodeName","code","textContent","insertHighlightedCode","highlightedCode","innerHTML","Worker","worker","filename","onmessage","evt","postMessage","JSON","stringify","immediateClose","highlight","text","tokenize","rest","tokenList","LinkedList","addAfter","head","matchGrammar","startNode","startPos","rematch","patterns","j","length","cause","patternObj","global","flags","currentNode","next","pos","tail","reach","str","removeCount","matchPattern","from","index","to","p","k","matchStr","after","removeFrom","prev","removeRange","wrapped","list","array","node","push","toArray","all","callbacks","matchedStr","lastIndex","lookbehindLength","newNode","count","classes","aliases","join","addEventListener","message","parse","close","script","highlightAutomaticallyCallback","hasAttribute","readyState","defer","requestAnimationFrame","setTimeout","WorkerGlobalScope","self","module","exports","tagName","includedCdataInside","def","css","addInlined","javascript","regex","js","Element","matches","msMatchesSelector","webkitMatchesSelector","EXTENSIONS","SELECTOR","pre","setAttribute","appendChild","createElement","getAttribute","extension","setLanguageClass","autoloader","loadLanguages","xhr","XMLHttpRequest","open","onreadystatechange","status","responseText","statusText","send","fileHighlight","logged","console","warn","arguments","trim","r","d","yaml","scalar","directive","datetime","boolean","null","important","yml"],"mappings":";8EAAAA,MAAMC,UAAUC,OAAS,CACvBC,QAAS,kBACTC,OAAQ,iBACRC,QAAS,CACPC,QAAS,uHACTC,QAAQ,EACRC,OAAQ,CACN,kBAAmB,CACjBF,QAAS,sBACTG,YAAY,EACZF,QAAQ,EACRC,OAAQ,MAEVE,OAAQ,CACNJ,QAAS,kBACTC,QAAQ,GAEVI,YAAa,eACb,cAAe,WACfC,KAAM,eAGVC,MAAO,0BACPC,IAAK,CACHR,QAAS,uHACTC,QAAQ,EACRC,OAAQ,CACNM,IAAK,CACHR,QAAS,iBACTE,OAAQ,CACNG,YAAa,QACbI,UAAW,iBAGf,aAAc,CACZT,QAAS,qCACTE,OAAQ,CACNG,YAAa,CAAC,CACZL,QAAS,KACTU,MAAO,eACN,SAGPL,YAAa,OACb,YAAa,CACXL,QAAS,YACTE,OAAQ,CACNO,UAAW,mBAKnBE,OAAQ,CAAC,CACPX,QAAS,kBACTU,MAAO,gBACN,uBACFhB,MAAMC,UAAUC,OAAOY,IAAIN,OAAO,cAAcA,OAAOS,OAASjB,MAAMC,UAAUC,OAAOe,OAAQjB,MAAMC,UAAUC,OAAOG,QAAQG,OAAO,mBAAmBA,OAASR,MAAMC,UAAUC,OAAQF,MAAMkB,MAAMC,IAAI,QAAQ,SAAUC,GAC5N,WAAaA,EAAEC,OAASD,EAAEE,WAAWC,MAAQH,EAAEI,QAAQC,QAAQ,QAAS,SACtEC,OAAOC,eAAe3B,MAAMC,UAAUC,OAAOY,IAAK,aAAc,CAClEc,MAAO,SAAeR,EAAGS,GACvB,IAAIC,EAAI,GACRA,EAAE,YAAcD,GAAK,CACnBvB,QAAS,oCACTG,YAAY,EACZD,OAAQR,MAAMC,UAAU4B,IACvBC,EAAEjB,MAAQ,uBACb,IAAIkB,EAAI,CACN,iBAAkB,CAChBzB,QAAS,4BACTE,OAAQsB,IAGZC,EAAE,YAAcF,GAAK,CACnBvB,QAAS,UACTE,OAAQR,MAAMC,UAAU4B,IAE1B,IAAIG,EAAI,GACRA,EAAEZ,GAAK,CACLd,QAAS2B,OAAO,6FAA6FR,QAAQ,OAAO,WAC1H,OAAOL,KACL,KACJX,YAAY,EACZF,QAAQ,EACRC,OAAQuB,GACP/B,MAAMC,UAAUiC,aAAa,SAAU,QAASF,MAEnDhC,MAAMC,UAAUkC,KAAOnC,MAAMC,UAAUC,OAAQF,MAAMC,UAAUmC,OAASpC,MAAMC,UAAUC,OAAQF,MAAMC,UAAUoC,IAAMrC,MAAMC,UAAUC,OAAQF,MAAMC,UAAUqC,IAAMtC,MAAMC,UAAUsC,OAAO,SAAU,IAAKvC,MAAMC,UAAUuC,KAAOxC,MAAMC,UAAUqC,IAAKtC,MAAMC,UAAUwC,KAAOzC,MAAMC,UAAUqC,IAAKtC,MAAMC,UAAUyC,IAAM1C,MAAMC,UAAUqC,K,qBCtF3U,IAAUT,EACLG,EACAD,EACAX,EAHKS,EA+DT7B,MA9DIgC,EAAI,idACJD,EAAI,gEACJX,EAAI,CACNd,QAAS2B,OAAOF,EAAI,oCACpBtB,YAAY,EACZD,OAAQ,CACNO,UAAW,CACTT,QAAS,2CACTE,OAAQ,CACNG,YAAa,OAGjBA,YAAa,OAGjBkB,EAAE5B,UAAU0C,KAAOd,EAAE5B,UAAUsC,OAAO,QAAS,CAC7C,aAAc,CAACnB,EAAG,CAChBd,QAAS2B,OAAOF,EAAI,qCACpBtB,YAAY,EACZD,OAAQY,EAAEZ,SAEZoC,QAASZ,EACTa,SAAU,CAAChB,EAAE5B,UAAU6C,MAAMD,SAAU,CACrCvC,QAAS,qBACTG,YAAY,IAEdsC,OAAQ,8IACRC,SAAU,CACR1C,QAAS,wEACTG,YAAY,KAEZoB,EAAE5B,UAAUiC,aAAa,OAAQ,SAAU,CAC7C,uBAAwB,CACtB5B,QAAS,iDACTC,QAAQ,EACRS,MAAO,YAEPa,EAAE5B,UAAUiC,aAAa,OAAQ,aAAc,CACjDe,WAAY,CACV3C,QAAS,+BACTG,YAAY,EACZO,MAAO,eAETkC,SAAU,CACR5C,QAAS,sEACTE,OAAQ,CACN,aAAcY,EACdwB,QAASZ,EACTrB,YAAa,YACbqC,SAAU,UAGdjC,UAAW,CACTT,QAAS2B,OAAO,4JAA4JR,QAAQ,cAAc,WAChM,OAAOO,EAAEmB,WAEX1C,YAAY,EACZD,OAAQ,CACNG,YAAa,U,kCC3DrB,wDAWMyC,GAXN,4DAW0B,WACxBC,OAAOrD,MAAMsD,iBA2CAC,UAxCH,SAAC,GAWN,IAAD,IAVJC,KACEC,aASE,IARAC,SACEnC,EAOF,EAPEA,MACAoC,EAMF,EANEA,SAEIC,EAIN,EAJAzB,KAGU0B,EACV,EADJC,YAAcD,QAGd,OADAE,oBAAUX,EAAmB,IAE3B,yBAAKY,UAAU,iBACb,kBAAC,IAAD,CAAKzC,MAAOA,EAAO0C,YAAaN,EAAUO,KAAML,IAChD,kBAAC,IAAD,CAAQK,KAAML,IACd,yBAAKG,UAAU,mDACb,yBACEA,UAAU,uCACVG,wBAAyB,CAACP,gB,+CCnCpC,YAIA,IAcI5D,EAAQ,SAAUoE,GAEpB,IAAIF,EAAO,8BACPG,EAAW,EACXC,EAAI,CAsBNC,OAAQH,EAAMpE,OAASoE,EAAMpE,MAAMuE,OACnCC,4BAA6BJ,EAAMpE,OAASoE,EAAMpE,MAAMwE,4BAWxDC,KAAM,CACJC,OAAQ,SAASA,EAAOC,GACtB,OAAIA,aAAkBC,EACb,IAAIA,EAAMD,EAAOtD,KAAMqD,EAAOC,EAAOnD,SAAUmD,EAAO3D,OACpD6D,MAAMC,QAAQH,GAChBA,EAAOI,IAAIL,GAEXC,EAAOlD,QAAQ,KAAM,SAASA,QAAQ,KAAM,QAAQA,QAAQ,UAAW,MAoBlFJ,KAAM,SAAc2D,GAClB,OAAOtD,OAAOuD,UAAUC,SAASC,KAAKH,GAAGI,MAAM,GAAI,IASrDC,MAAO,SAAeC,GAOpB,OANKA,EAAU,MACb5D,OAAOC,eAAe2D,EAAK,OAAQ,CACjC1D,QAASyC,IAINiB,EAAU,MAanBC,MAAO,SAASC,EAAUR,EAAGS,GAE3B,IAAIF,EAAOG,EAEX,OAHAD,EAAUA,GAAW,GAGbnB,EAAEG,KAAKpD,KAAK2D,IAClB,IAAK,SAGH,GAFAU,EAAKpB,EAAEG,KAAKY,MAAML,GAEdS,EAAQC,GACV,OAAOD,EAAQC,GAQjB,IAAK,IAAIC,KALTJ,EAEA,GACAE,EAAQC,GAAMH,EAEEP,EACVA,EAAEY,eAAeD,KACnBJ,EAAMI,GAAOH,EAAUR,EAAEW,GAAMF,IAInC,OAAO,EAKT,IAAK,QAGH,OAFAC,EAAKpB,EAAEG,KAAKY,MAAML,GAEdS,EAAQC,GACHD,EAAQC,IAGjBH,EAAQ,GACRE,EAAQC,GAAMH,EAKdP,EAAEa,SAAQ,SAAUC,EAAGC,GACrBR,EAAMQ,GAAKP,EAAUM,EAAGL,MAEnB,GAKT,QACE,OAAOT,IAYbgB,YAAa,SAAqBC,GAChC,KAAOA,IAAY/B,EAAKgC,KAAKD,EAAQjC,YACnCiC,EAAUA,EAAQE,cAGpB,OAAIF,GACMA,EAAQjC,UAAUoC,MAAMlC,IAAS,CAAC,CAAE,SAAS,GAAGmC,cAGnD,QAUTC,cAAe,WACb,GAAwB,oBAAb5C,SACT,OAAO,KAGT,GAAI,kBAAmBA,SAGnB,OAEEA,SACF,cAMJ,IACE,MAAM,IAAI6C,MACV,MAAOC,GAOP,IAAIC,GAAO,+BAA+BC,KAAKF,EAAIG,QAAU,IAAI,GAEjE,GAAIF,EAAK,CACP,IAAIG,EAAUlD,SAASmD,qBAAqB,UAE5C,IAAK,IAAId,KAAKa,EACZ,GAAIA,EAAQb,GAAGU,KAAOA,EACpB,OAAOG,EAAQb,GAKrB,OAAO,OAuBXe,SAAU,SAAkBb,EAASjC,EAAW+C,GAG9C,IAFA,IAAIC,EAAK,MAAQhD,EAEViC,GAAS,CACd,IAAIgB,EAAYhB,EAAQgB,UAExB,GAAIA,EAAUC,SAASlD,GACrB,OAAO,EAGT,GAAIiD,EAAUC,SAASF,GACrB,OAAO,EAGTf,EAAUA,EAAQE,cAGpB,QAASY,IAWb9G,UAAW,CA6BTsC,OAAQ,SAAgBmD,EAAIyB,GAC1B,IAAIjD,EAAOI,EAAEG,KAAKc,MAAMjB,EAAErE,UAAUyF,IAEpC,IAAK,IAAIC,KAAOwB,EACdjD,EAAKyB,GAAOwB,EAAMxB,GAGpB,OAAOzB,GA8EThC,aAAc,SAAsB1B,EAAQ4G,EAAQC,EAAQC,GAI1D,IAAIC,GAHJD,EAAOA,GAEPhD,EAAErE,WACiBO,GAGfgH,EAAM,GAEV,IAAK,IAAIC,KAASF,EAChB,GAAIA,EAAQ3B,eAAe6B,GAAQ,CACjC,GAAIA,GAASL,EACX,IAAK,IAAIM,KAAYL,EACfA,EAAOzB,eAAe8B,KACxBF,EAAIE,GAAYL,EAAOK,IAMxBL,EAAOzB,eAAe6B,KACzBD,EAAIC,GAASF,EAAQE,IAK3B,IAAIE,EAAML,EAAK9G,GASf,OARA8G,EAAK9G,GAAUgH,EAEflD,EAAErE,UAAU2H,IAAItD,EAAErE,WAAW,SAAU0F,EAAK/D,GACtCA,IAAU+F,GAAOhC,GAAOnF,IAC1BqH,KAAKlC,GAAO6B,MAITA,GAGTI,IAAK,SAASA,EAAI5C,EAAG8C,EAAUzG,EAAMoE,GACnCA,EAAUA,GAAW,GACrB,IAAIJ,EAAQf,EAAEG,KAAKY,MAEnB,IAAK,IAAIU,KAAKf,EACZ,GAAIA,EAAEY,eAAeG,GAAI,CACvB+B,EAAS3C,KAAKH,EAAGe,EAAGf,EAAEe,GAAI1E,GAAQ0E,GAElC,IAAIgC,EAAW/C,EAAEe,GACbiC,EAAe1D,EAAEG,KAAKpD,KAAK0G,GAEV,WAAjBC,GAA8BvC,EAAQJ,EAAM0C,IAGpB,UAAjBC,GAA6BvC,EAAQJ,EAAM0C,MACpDtC,EAAQJ,EAAM0C,KAAa,EAC3BH,EAAIG,EAAUD,EAAU/B,EAAGN,KAJ3BA,EAAQJ,EAAM0C,KAAa,EAC3BH,EAAIG,EAAUD,EAAU,KAAMrC,OASxCwC,QAAS,GAcT3E,aAAc,SAAsB4E,EAAOJ,GACzCxD,EAAE6D,kBAAkBzE,SAAUwE,EAAOJ,IAkBvCK,kBAAmB,SAA2BC,EAAWF,EAAOJ,GAC9D,IAAIO,EAAM,CACRP,SAAUA,EACVM,UAAWA,EACXE,SAAU,oGAGZhE,EAAEpD,MAAMqH,IAAI,sBAAuBF,GAEnCA,EAAIG,SAAW3D,MAAMI,UAAUG,MAAMqD,MAAMJ,EAAID,UAAUM,iBAAiBL,EAAIC,WAE9EhE,EAAEpD,MAAMqH,IAAI,gCAAiCF,GAE7C,IAAK,IAAWpC,EAAPF,EAAI,EAAYE,EAAUoC,EAAIG,SAASzC,MAC9CzB,EAAEqE,iBAAiB1C,GAAmB,IAAViC,EAAgBG,EAAIP,WAgCpDa,iBAAkB,SAA0B1C,EAASiC,EAAOJ,GAE1D,IAAIc,EAAWtE,EAAEG,KAAKuB,YAAYC,GAE9BsB,EAAUjD,EAAErE,UAAU2I,GAE1B3C,EAAQjC,UAAYiC,EAAQjC,UAAUvC,QAAQyC,EAAM,IAAIzC,QAAQ,OAAQ,KAAO,aAAemH,EAE9F,IAAIC,EAAS5C,EAAQE,cAEjB0C,GAA4C,QAAlCA,EAAOC,SAASzC,gBAC5BwC,EAAO7E,UAAY6E,EAAO7E,UAAUvC,QAAQyC,EAAM,IAAIzC,QAAQ,OAAQ,KAAO,aAAemH,GAG9F,IACIP,EAAM,CACRpC,QAASA,EACT2C,SAAUA,EACVrB,QAASA,EACTwB,KALS9C,EAAQ+C,aAQnB,SAASC,EAAsBC,GAC7Bb,EAAIa,gBAAkBA,EAEtB5E,EAAEpD,MAAMqH,IAAI,gBAAiBF,GAE7BA,EAAIpC,QAAQkD,UAAYd,EAAIa,gBAE5B5E,EAAEpD,MAAMqH,IAAI,kBAAmBF,GAE/B/D,EAAEpD,MAAMqH,IAAI,WAAYF,GAExBP,GAAYA,EAAS3C,KAAKkD,EAAIpC,SAKhC,GAFA3B,EAAEpD,MAAMqH,IAAI,sBAAuBF,IAE9BA,EAAIU,KAIP,OAHAzE,EAAEpD,MAAMqH,IAAI,WAAYF,QAExBP,GAAYA,EAAS3C,KAAKkD,EAAIpC,UAMhC,GAFA3B,EAAEpD,MAAMqH,IAAI,mBAAoBF,GAE3BA,EAAId,QAKT,GAAIW,GAAS9D,EAAMgF,OAAQ,CACzB,IAAIC,EAAS,IAAID,OAAO9E,EAAEgF,UAE1BD,EAAOE,UAAY,SAAUC,GAC3BP,EAAsBO,EAAIhG,OAG5B6F,EAAOI,YAAYC,KAAKC,UAAU,CAChCf,SAAUP,EAAIO,SACdG,KAAMV,EAAIU,KACVa,gBAAgB,UAGlBX,EAAsB3E,EAAEuF,UAAUxB,EAAIU,KAAMV,EAAId,QAASc,EAAIO,gBAjB7DK,EAAsB3E,EAAEG,KAAKC,OAAO2D,EAAIU,QAyC5Cc,UAAW,SAAmBC,EAAMvC,EAASqB,GAC3C,IAAIP,EAAM,CACRU,KAAMe,EACNvC,QAASA,EACTqB,SAAUA,GASZ,OANAtE,EAAEpD,MAAMqH,IAAI,kBAAmBF,GAE/BA,EAAI1D,OAASL,EAAEyF,SAAS1B,EAAIU,KAAMV,EAAId,SAEtCjD,EAAEpD,MAAMqH,IAAI,iBAAkBF,GAEvBzD,EAAM+E,UAAUrF,EAAEG,KAAKC,OAAO2D,EAAI1D,QAAS0D,EAAIO,WA2BxDmB,SAAU,SAAkBD,EAAMvC,GAChC,IAAIyC,EAAOzC,EAAQyC,KAEnB,GAAIA,EAAM,CACR,IAAK,IAAIvC,KAASuC,EAChBzC,EAAQE,GAASuC,EAAKvC,UAGjBF,EAAQyC,KAGjB,IAAIC,EAAY,IAAIC,EAGpB,OAFAC,EAASF,EAAWA,EAAUG,KAAMN,GAqNxC,SAASO,EAAaP,EAAMG,EAAW1C,EAAS+C,EAAWC,EAAUC,GACnE,IAAK,IAAI/C,KAASF,EAChB,GAAKA,EAAQ3B,eAAe6B,IAAWF,EAAQE,GAA/C,CAIA,IAAIgD,EAAWlD,EAAQE,GACvBgD,EAAW5F,MAAMC,QAAQ2F,GAAYA,EAAW,CAACA,GAEjD,IAAK,IAAIC,EAAI,EAAGA,EAAID,EAASE,SAAUD,EAAG,CACxC,GAAIF,GAAWA,EAAQI,OAASnD,EAAQ,IAAMiD,EAC5C,OAGF,IAAIG,EAAaJ,EAASC,GACtBlK,EAASqK,EAAWrK,OACpBC,IAAeoK,EAAWpK,WAC1BF,IAAWsK,EAAWtK,OACtBS,EAAQ6J,EAAW7J,MAEvB,GAAIT,IAAWsK,EAAWvK,QAAQwK,OAAQ,CAExC,IAAIC,EAAQF,EAAWvK,QAAQ4E,WAAWkB,MAAM,aAAa,GAC7DyE,EAAWvK,QAAU2B,OAAO4I,EAAWvK,QAAQ6C,OAAQ4H,EAAQ,KAOjE,IAFA,IAAIzK,EAAUuK,EAAWvK,SAAWuK,EAGhCG,EAAcV,EAAUW,KAAMC,EAAMX,EAAUS,IAAgBf,EAAUkB,QACtEX,GAAWU,GAAOV,EAAQY,OADkDF,GAAOF,EAAYpJ,MAAM+I,OAAQK,EAAcA,EAAYC,KAAM,CAKjJ,IAAII,EAAML,EAAYpJ,MAEtB,GAAIqI,EAAUU,OAASb,EAAKa,OAE1B,OAGF,KAAIU,aAAezG,GAAnB,CAIA,IAEIwB,EAFAkF,EAAc,EAIlB,GAAI/K,EAAQ,CAGV,KAFA6F,EAAQmF,EAAajL,EAAS4K,EAAKpB,EAAMrJ,IAGvC,MAGF,IAAI+K,EAAOpF,EAAMqF,MACbC,EAAKtF,EAAMqF,MAAQrF,EAAM,GAAGuE,OAC5BgB,EAAIT,EAIR,IAFAS,GAAKX,EAAYpJ,MAAM+I,OAEhBa,GAAQG,GACbX,EAAcA,EAAYC,KAC1BU,GAAKX,EAAYpJ,MAAM+I,OAOzB,GAHAgB,GAAKX,EAAYpJ,MAAM+I,OACvBO,EAAMS,EAEFX,EAAYpJ,iBAAiBgD,EAC/B,SAIF,IAAK,IAAIgH,EAAIZ,EAAaY,IAAM3B,EAAUkB,OAASQ,EAAID,GAAyB,iBAAZE,EAAEhK,OAAqBgK,EAAIA,EAAEX,KAC/FK,IACAK,GAAKC,EAAEhK,MAAM+I,OAGfW,IAEAD,EAAMvB,EAAK1E,MAAM8F,EAAKS,GACtBvF,EAAMqF,OAASP,OAIf,KAFA9E,EAAQmF,EAAajL,EAAS,EAAG+K,EAAK5K,IAGpC,SAIA+K,EAAOpF,EAAMqF,MAAjB,IACII,EAAWzF,EAAM,GACjBgB,EAASiE,EAAIjG,MAAM,EAAGoG,GACtBM,EAAQT,EAAIjG,MAAMoG,EAAOK,EAASlB,QAClCS,EAAQF,EAAMG,EAAIV,OAElBH,GAAWY,EAAQZ,EAAQY,QAC7BZ,EAAQY,MAAQA,GAGlB,IAAIW,EAAaf,EAAYgB,KAEzB5E,IACF2E,EAAa5B,EAASF,EAAW8B,EAAY3E,GAC7C8D,GAAO9D,EAAOuD,QAGhBsB,EAAYhC,EAAW8B,EAAYT,GACnC,IAAIY,EAAU,IAAItH,EAAM6C,EAAOjH,EAAS8D,EAAEyF,SAAS8B,EAAUrL,GAAUqL,EAAU7K,EAAO6K,GACxFb,EAAcb,EAASF,EAAW8B,EAAYG,GAE1CJ,GACF3B,EAASF,EAAWe,EAAac,GAG/BR,EAAc,GAGhBjB,EAAaP,EAAMG,EAAW1C,EAASyD,EAAYgB,KAAMd,EAAK,CAC5DN,MAAOnD,EAAQ,IAAMiD,EACrBU,MAAOA,QAjVff,CAAaP,EAAMG,EAAW1C,EAAS0C,EAAUG,KAAM,GAgb3D,SAAiB+B,GACf,IAAIC,EAAQ,GACRC,EAAOF,EAAK/B,KAAKa,KAErB,KAAOoB,IAASF,EAAKhB,MACnBiB,EAAME,KAAKD,EAAKzK,OAChByK,EAAOA,EAAKpB,KAGd,OAAOmB,EAxbEG,CAAQtC,IAQjB/I,MAAO,CACLsL,IAAK,GAcLrL,IAAK,SAAaP,EAAMkH,GACtB,IAAI5G,EAAQoD,EAAEpD,MAAMsL,IACpBtL,EAAMN,GAAQM,EAAMN,IAAS,GAC7BM,EAAMN,GAAM0L,KAAKxE,IAYnBS,IAAK,SAAa3H,EAAMyH,GACtB,IAAIoE,EAAYnI,EAAEpD,MAAMsL,IAAI5L,GAE5B,GAAK6L,GAAcA,EAAU9B,OAI7B,IAAK,IAAW7C,EAAP/B,EAAI,EAAa+B,EAAW2E,EAAU1G,MAC7C+B,EAASO,KAIfzD,MAAOA,GAmBT,SAASA,EAAMvD,EAAMG,EAASR,EAAO0L,GAUnC7E,KAAKxG,KAAOA,EAUZwG,KAAKrG,QAAUA,EASfqG,KAAK7G,MAAQA,EAEb6G,KAAK8C,OAAqC,GAA3B+B,GAAc,IAAI/B,OAkFnC,SAASY,EAAajL,EAAS4K,EAAKpB,EAAMrJ,GACxCH,EAAQqM,UAAYzB,EACpB,IAAI9E,EAAQ9F,EAAQoG,KAAKoD,GAEzB,GAAI1D,GAAS3F,GAAc2F,EAAM,GAAI,CAEnC,IAAIwG,EAAmBxG,EAAM,GAAGuE,OAChCvE,EAAMqF,OAASmB,EACfxG,EAAM,GAAKA,EAAM,GAAGhB,MAAMwH,GAG5B,OAAOxG,EAqKT,SAAS8D,IAEP,IAAIE,EAAO,CACTxI,MAAO,KACPoK,KAAM,KACNf,KAAM,MAIJE,EAAO,CACTvJ,MAAO,KACPoK,KAAM5B,EACNa,KAAM,MAERb,EAAKa,KAAOE,EAGZtD,KAAKuC,KAAOA,EAGZvC,KAAKsD,KAAOA,EACZtD,KAAK8C,OAAS,EAYhB,SAASR,EAASgC,EAAME,EAAMzK,GAE5B,IAAIqJ,EAAOoB,EAAKpB,KACZ4B,EAAU,CACZjL,MAAOA,EACPoK,KAAMK,EACNpB,KAAMA,GAKR,OAHAoB,EAAKpB,KAAO4B,EACZ5B,EAAKe,KAAOa,EACZV,EAAKxB,SACEkC,EAWT,SAASZ,EAAYE,EAAME,EAAMS,GAG/B,IAFA,IAAI7B,EAAOoB,EAAKpB,KAEPlF,EAAI,EAAGA,EAAI+G,GAAS7B,IAASkB,EAAKhB,KAAMpF,IAC/CkF,EAAOA,EAAKA,KAGdoB,EAAKpB,KAAOA,EACZA,EAAKe,KAAOK,EACZF,EAAKxB,QAAU5E,EAqBjB,GAvYA3B,EAAMpE,MAAQsE,EAgFdM,EAAM+E,UAAY,SAASA,EAAU3E,EAAG4D,GACtC,GAAgB,iBAAL5D,EACT,OAAOA,EAGT,GAAIH,MAAMC,QAAQE,GAAI,CACpB,IAAIlD,EAAI,GAIR,OAHAkD,EAAEa,SAAQ,SAAUhE,GAClBC,GAAK6H,EAAU9H,EAAG+G,MAEb9G,EAGT,IAAIuG,EAAM,CACRhH,KAAM2D,EAAE3D,KACRG,QAASmI,EAAU3E,EAAExD,QAASoH,GAC9B9H,IAAK,OACLiM,QAAS,CAAC,QAAS/H,EAAE3D,MACrBC,WAAY,GACZsH,SAAUA,GAERoE,EAAUhI,EAAEhE,MAEZgM,IACEnI,MAAMC,QAAQkI,GAChBnI,MAAMI,UAAUqH,KAAK7D,MAAMJ,EAAI0E,QAASC,GAExC3E,EAAI0E,QAAQT,KAAKU,IAIrB1I,EAAEpD,MAAMqH,IAAI,OAAQF,GAEpB,IAAI/G,EAAa,GAEjB,IAAK,IAAIV,KAAQyH,EAAI/G,WACnBA,GAAc,IAAMV,EAAO,MAAQyH,EAAI/G,WAAWV,IAAS,IAAIa,QAAQ,KAAM,UAAY,IAG3F,MAAO,IAAM4G,EAAIvH,IAAM,WAAauH,EAAI0E,QAAQE,KAAK,KAAO,IAAM3L,EAAa,IAAM+G,EAAI7G,QAAU,KAAO6G,EAAIvH,IAAM,MAgRjHsD,EAAMV,SACT,OAAKU,EAAM8I,kBAKN5I,EAAEE,6BAELJ,EAAM8I,iBAAiB,WAAW,SAAU1D,GAC1C,IAAI2D,EAAUzD,KAAK0D,MAAM5D,EAAIhG,MACzBU,EAAOiJ,EAAQvE,SACfG,EAAOoE,EAAQpE,KACfa,EAAiBuD,EAAQvD,eAE7BxF,EAAMqF,YAAYnF,EAAEuF,UAAUd,EAAMzE,EAAErE,UAAUiE,GAAOA,IAEnD0F,GACFxF,EAAMiJ,WAEP,GAGE/I,GAnBEA,EAuBX,IAAIgJ,EAAShJ,EAAEG,KAAK6B,gBAUpB,SAASiH,IACFjJ,EAAEC,QACLD,EAAEhB,eAIN,GAdIgK,IACFhJ,EAAEgF,SAAWgE,EAAO7G,IAEhB6G,EAAOE,aAAa,iBACtBlJ,EAAEC,QAAS,KAUVD,EAAEC,OAAQ,CAOb,IAAIkJ,EAAa/J,SAAS+J,WAEP,YAAfA,GAA2C,gBAAfA,GAAgCH,GAAUA,EAAOI,MAC/EhK,SAASwJ,iBAAiB,mBAAoBK,GAE1ClK,OAAOsK,sBACTtK,OAAOsK,sBAAsBJ,GAE7BlK,OAAOuK,WAAWL,EAAgC,IAKxD,OAAOjJ,EA9oCG,CAdkB,oBAAXjB,OAAyBA,OACb,oBAAtBwK,mBAAqCC,gBAAgBD,kBAAoBC,KAChF,IA6pCmCC,EAAOC,UAC1CD,EAAOC,QAAUhO,QAIG,IAAX8K,IACTA,EAAO9K,MAAQA,GAuDjBA,EAAMC,UAAUC,OAAS,CACvB,QAAW,kBACX,OAAU,iBACV,QAAW,CAETI,QAAS,uHACTC,QAAQ,EACRC,OAAQ,CACN,kBAAmB,CACjBF,QAAS,sBACTG,YAAY,EACZF,QAAQ,EACRC,OAAQ,MAGV,OAAU,CACRF,QAAS,kBACTC,QAAQ,GAEV,YAAe,eACf,cAAe,WACf,KAAQ,eAGZ,MAAS,0BACT,IAAO,CACLD,QAAS,uHACTC,QAAQ,EACRC,OAAQ,CACN,IAAO,CACLF,QAAS,iBACTE,OAAQ,CACN,YAAe,QACf,UAAa,iBAGjB,aAAc,CACZF,QAAS,qCACTE,OAAQ,CACN,YAAe,CAAC,CACdF,QAAS,KACTU,MAAO,eACN,SAGP,YAAe,OACf,YAAa,CACXV,QAAS,YACTE,OAAQ,CACN,UAAa,mBAKrB,OAAU,CAAC,CACTF,QAAS,kBACTU,MAAO,gBACN,uBAELhB,EAAMC,UAAUC,OAAY,IAAEM,OAAO,cAAcA,OAAe,OAAIR,EAAMC,UAAUC,OAAe,OACrGF,EAAMC,UAAUC,OAAgB,QAAEM,OAAO,mBAAmBA,OAASR,EAAMC,UAAUC,OAErFF,EAAMkB,MAAMC,IAAI,QAAQ,SAAUkH,GACf,WAAbA,EAAIhH,OACNgH,EAAI/G,WAAkB,MAAI+G,EAAI7G,QAAQC,QAAQ,QAAS,SAG3DC,OAAOC,eAAe3B,EAAMC,UAAUC,OAAOY,IAAK,aAAc,CAY9Dc,MAAO,SAAoBqM,EAAS/J,GAClC,IAAIgK,EAAsB,GAC1BA,EAAoB,YAAchK,GAAQ,CACxC5D,QAAS,oCACTG,YAAY,EACZD,OAAQR,EAAMC,UAAUiE,IAE1BgK,EAA2B,MAAI,uBAC/B,IAAI1N,EAAS,CACX,iBAAkB,CAChBF,QAAS,4BACTE,OAAQ0N,IAGZ1N,EAAO,YAAc0D,GAAQ,CAC3B5D,QAAS,UACTE,OAAQR,EAAMC,UAAUiE,IAE1B,IAAIiK,EAAM,GACVA,EAAIF,GAAW,CACb3N,QAAS2B,OAAO,wFAAwFkB,OAAO1B,QAAQ,OAAO,WAC5H,OAAOwM,KACL,KACJxN,YAAY,EACZF,QAAQ,EACRC,OAAQA,GAEVR,EAAMC,UAAUiC,aAAa,SAAU,QAASiM,MAGpDnO,EAAMC,UAAUkC,KAAOnC,EAAMC,UAAUC,OACvCF,EAAMC,UAAUmC,OAASpC,EAAMC,UAAUC,OACzCF,EAAMC,UAAUoC,IAAMrC,EAAMC,UAAUC,OACtCF,EAAMC,UAAUqC,IAAMtC,EAAMC,UAAUsC,OAAO,SAAU,IACvDvC,EAAMC,UAAUuC,KAAOxC,EAAMC,UAAUqC,IACvCtC,EAAMC,UAAUwC,KAAOzC,EAAMC,UAAUqC,IACvCtC,EAAMC,UAAUyC,IAAM1C,EAAMC,UAAUqC,IAKtC,SAAWtC,GACT,IAAIU,EAAS,gDACbV,EAAMC,UAAUmO,IAAM,CACpB,QAAW,mBACX,OAAU,CACR9N,QAAS,iDACTE,OAAQ,CACN,KAAQ,WACR,6BAA8B,CAC5BF,QAAS,4FACTG,YAAY,EACZO,MAAO,YAET,QAAW,CACTV,QAAS,yCACTG,YAAY,KAKlB,IAAO,CAELH,QAAS2B,OAAO,eAAiBvB,EAAOyC,OAAS,IAAM,8BAA8BA,OAAS,OAAQ,KACtG5C,QAAQ,EACRC,OAAQ,CACN,SAAY,QACZ,YAAe,UACf,OAAU,CACRF,QAAS2B,OAAO,IAAMvB,EAAOyC,OAAS,KACtCnC,MAAO,SAIb,SAAYiB,OAAO,0CAA4CvB,EAAOyC,OAAS,iBAC/E,OAAU,CACR7C,QAASI,EACTH,QAAQ,GAEV,SAAY,+DACZ,UAAa,gBACb,SAAY,oBACZ,YAAe,aAEjBP,EAAMC,UAAUmO,IAAY,OAAE5N,OAAOwJ,KAAOhK,EAAMC,UAAUmO,IAC5D,IAAIlO,EAASF,EAAMC,UAAUC,OAEzBA,IACFA,EAAOY,IAAIuN,WAAW,QAAS,OAC/BrO,EAAMC,UAAUiC,aAAa,SAAU,aAAc,CACnD,aAAc,CACZ5B,QAAS,6CACTG,YAAY,EACZD,OAAQ,CACN,aAAc,CACZF,QAAS,qCACTE,OAAQ,CACN,MAAS,CACPF,QAAS,yBACTG,YAAY,EACZO,MAAO,eACPR,OAAQR,EAAMC,UAAUmO,KAE1B,YAAe,CAAC,CACd9N,QAAS,KACTU,MAAO,eACN,SAGP,YAAa,aAGhBd,EAAOY,MAvEd,CAyEGd,GAMHA,EAAMC,UAAU6C,MAAQ,CACtB,QAAW,CAAC,CACVxC,QAAS,kCACTG,YAAY,EACZF,QAAQ,GACP,CACDD,QAAS,mBACTG,YAAY,EACZF,QAAQ,IAEV,OAAU,CACRD,QAAS,iDACTC,QAAQ,GAEV,aAAc,CACZD,QAAS,2FACTG,YAAY,EACZD,OAAQ,CACN,YAAe,UAGnB,QAAW,6GACX,QAAW,qBACX,SAAY,YACZ,OAAU,4DACV,SAAY,+CACZ,YAAe,iBAMjBR,EAAMC,UAAUqO,WAAatO,EAAMC,UAAUsC,OAAO,QAAS,CAC3D,aAAc,CAACvC,EAAMC,UAAU6C,MAAM,cAAe,CAClDxC,QAAS,0GACTG,YAAY,IAEd,QAAW,CAAC,CACVH,QAAS,kCACTG,YAAY,GACX,CACDH,QAAS,oZACTG,YAAY,IAGd,SAAY,oGACZ,OAAU,gOACV,SAAY,8FAEdT,EAAMC,UAAUqO,WAAW,cAAc,GAAGhO,QAAU,uEACtDN,EAAMC,UAAUiC,aAAa,aAAc,UAAW,CACpD,MAAS,CACP5B,QAAS,uLACTG,YAAY,EACZF,QAAQ,EACRC,OAAQ,CACN,eAAgB,CACdF,QAAS,4BACTG,YAAY,EACZO,MAAO,iBACPR,OAAQR,EAAMC,UAAUsO,OAE1B,cAAe,UACf,kBAAmB,YAIvB,oBAAqB,CACnBjO,QAAS,gMACTU,MAAO,YAET,UAAa,CAAC,CACZV,QAAS,sIACTG,YAAY,EACZD,OAAQR,EAAMC,UAAUqO,YACvB,CACDhO,QAAS,mEACTE,OAAQR,EAAMC,UAAUqO,YACvB,CACDhO,QAAS,kEACTG,YAAY,EACZD,OAAQR,EAAMC,UAAUqO,YACvB,CACDhO,QAAS,8eACTG,YAAY,EACZD,OAAQR,EAAMC,UAAUqO,aAE1B,SAAY,8BAEdtO,EAAMC,UAAUiC,aAAa,aAAc,SAAU,CACnD,kBAAmB,CACjB5B,QAAS,oEACTC,QAAQ,EACRC,OAAQ,CACN,uBAAwB,CACtBF,QAAS,QACTU,MAAO,UAET,cAAiB,CACfV,QAAS,6DACTG,YAAY,EACZD,OAAQ,CACN,4BAA6B,CAC3BF,QAAS,UACTU,MAAO,eAETgJ,KAAMhK,EAAMC,UAAUqO,aAG1B,OAAU,cAKZtO,EAAMC,UAAUC,QAClBF,EAAMC,UAAUC,OAAOY,IAAIuN,WAAW,SAAU,cAGlDrO,EAAMC,UAAUuO,GAAKxO,EAAMC,UAAUqO,WAKrC,WACE,GAAoB,oBAATR,MAAyBA,KAAK9N,OAAU8N,KAAKpK,SAAxD,CAKK+K,QAAQxJ,UAAUyJ,UACrBD,QAAQxJ,UAAUyJ,QAAUD,QAAQxJ,UAAU0J,mBAAqBF,QAAQxJ,UAAU2J,uBAGvF,IAAI5O,EAAQqD,OAAOrD,MAQf6O,EAAa,CACf,GAAM,aACN,GAAM,SACN,GAAM,OACN,IAAO,aACP,KAAQ,aACR,GAAM,OACN,IAAO,QACP,EAAK,IACL,IAAO,SAMLC,EAAW,iFACX5K,EAAO,8BAeXlE,EAAMkB,MAAMC,IAAI,uBAAuB,SAAUkH,GAC/CA,EAAIC,UAAY,KAAOwG,KAEzB9O,EAAMkB,MAAMC,IAAI,uBAAuB,SAAUkH,GAC/C,IAAI0G,EAEJ1G,EAAIpC,QAEJ,GAAI8I,EAAIL,QAAQI,GAAW,CACzBzG,EAAIU,KAAO,GAEXgG,EAAIC,aA/BU,kBACG,WAiCjB,IAAIjG,EAAOgG,EAAIE,YAAYvL,SAASwL,cAAc,SAClDnG,EAAKC,YArDa,WAsDlB,IAAIvC,EAAMsI,EAAII,aAAa,YACvBvG,EAAWP,EAAIO,SAEnB,GAAiB,SAAbA,EAAqB,CAGvB,IAAIwG,GAAa,WAAW1I,KAAKD,IAAQ,CAAC,CAAE,SAAS,GACrDmC,EAAWiG,EAAWO,IAAcA,EAItCC,EAAiBtG,EAAMH,GACvByG,EAAiBN,EAAKnG,GAEtB,IAAI0G,EAAatP,EAAMiI,QAAQqH,WAE3BA,GACFA,EAAWC,cAAc3G,GAI3B,IAAI4G,EAAM,IAAIC,eACdD,EAAIE,KAAK,MAAOjJ,GAAK,GAErB+I,EAAIG,mBAAqB,WA5EP,IAAyBC,EAAQzC,EA6E3B,GAAlBqC,EAAI/B,aACF+B,EAAII,OAAS,KAAOJ,EAAIK,cAE1Bd,EAAIC,aAhEI,kBAEE,UAgEVjG,EAAKC,YAAcwG,EAAIK,aACvB7P,EAAM2I,iBAAiBI,KAGvBgG,EAAIC,aAtEI,kBAGE,UAqENQ,EAAII,QAAU,IAChB7G,EAAKC,aAzF8B4G,EAyFAJ,EAAII,OAzFIzC,EAyFIqC,EAAIM,WAxFtD,WAAaF,EAAS,yBAA2BzC,GA0F9CpE,EAAKC,YAvFW,8CA6FxBwG,EAAIO,KAAK,UAGb/P,EAAMiI,QAAQ+H,cAAgB,CAQ5BnG,UAAW,SAAmBzB,GAG5B,IAFA,IAEgBnC,EAFZuC,GAAYJ,GAAa1E,UAAUgF,iBAAiBoG,GAE/C/I,EAAI,EAAYE,EAAUuC,EAASzC,MAC1C/F,EAAM2I,iBAAiB1C,KAI7B,IAAIgK,GAAS,EAGbjQ,EAAMgQ,cAAgB,WACfC,IACHC,QAAQC,KAAK,2FACbF,GAAS,GAGXjQ,EAAMiI,QAAQ+H,cAAcnG,UAAUpB,MAAMZ,KAAMuI,YA/FpD,SAASf,EAAiBpJ,EAAS2C,GACjC,IAAI5E,EAAYiC,EAAQjC,UACxBA,EAAYA,EAAUvC,QAAQyC,EAAM,KAAO,aAAe0E,EAC1D3C,EAAQjC,UAAYA,EAAUvC,QAAQ,OAAQ,KAAK4O,QA9CvD,K,0CCliDC,SAAUxO,GACT,IAAIE,EAAI,mBACJuO,EAAI,mFACJtO,EAAI,MAAQsO,EAAEnN,OAAS,YAAcpB,EAAEoB,OAAS,MAAQpB,EAAEoB,OAAS,YAAcmN,EAAEnN,OAAS,MAC5F/B,EAAI,kKAAkKK,QAAQ,YAAY,WAC5L,MAAO,4FAEL8O,EAAI,yDAER,SAASvL,EAAEnD,EAAGE,GACZA,GAAKA,GAAK,IAAIN,QAAQ,KAAM,IAAM,IAClC,IAAI6O,EAAI,2FAA2F7O,QAAQ,aAAa,WACtH,OAAOO,KACNP,QAAQ,cAAc,WACvB,OAAOI,KAET,OAAOI,OAAOqO,EAAGvO,GAGnBF,EAAE5B,UAAUuQ,KAAO,CACjBC,OAAQ,CACNnQ,QAAS2B,OAAO,kGAAkGR,QAAQ,aAAa,WACrI,OAAOO,MAETvB,YAAY,EACZO,MAAO,UAETb,QAAS,MACTwF,IAAK,CACHrF,QAAS2B,OAAO,qEAAqER,QAAQ,aAAa,WACxG,OAAOO,KACNP,QAAQ,YAAY,WACrB,MAAO,MAAQL,EAAI,IAAMmP,EAAI,QAE/B9P,YAAY,EACZF,QAAQ,EACRS,MAAO,UAET0P,UAAW,CACTpQ,QAAS,gBACTG,YAAY,EACZO,MAAO,aAET2P,SAAU,CACRrQ,QAAS0E,EAAE,8KACXvE,YAAY,EACZO,MAAO,UAET4P,QAAS,CACPtQ,QAAS0E,EAAE,aAAc,KACzBvE,YAAY,EACZO,MAAO,aAET6P,KAAM,CACJvQ,QAAS0E,EAAE,SAAU,KACrBvE,YAAY,EACZO,MAAO,aAETN,OAAQ,CACNJ,QAAS0E,EAAEuL,GACX9P,YAAY,EACZF,QAAQ,GAEVwC,OAAQ,CACNzC,QAAS0E,EAAE,2FAA4F,KACvGvE,YAAY,GAEdK,IAAKwP,EACLQ,UAAW/O,EACXpB,YAAa,6BACZkB,EAAE5B,UAAU8Q,IAAMlP,EAAE5B,UAAUuQ,KAtElC,CAuECxQ","file":"component---src-templates-doc-jsx-21a94bb36ef3df298f42.js","sourcesContent":["Prism.languages.markup = {\n comment: /<!--[\\s\\S]*?-->/,\n prolog: /<\\?[\\s\\S]+?\\?>/,\n doctype: {\n pattern: /<!DOCTYPE(?:[^>\"'[\\]]|\"[^\"]*\"|'[^']*')+(?:\\[(?:[^<\"'\\]]|\"[^\"]*\"|'[^']*'|<(?!!--)|<!--(?:[^-]|-(?!->))*-->)*\\]\\s*)?>/i,\n greedy: !0,\n inside: {\n \"internal-subset\": {\n pattern: /(\\[)[\\s\\S]+(?=\\]>$)/,\n lookbehind: !0,\n greedy: !0,\n inside: null\n },\n string: {\n pattern: /\"[^\"]*\"|'[^']*'/,\n greedy: !0\n },\n punctuation: /^<!|>$|[[\\]]/,\n \"doctype-tag\": /^DOCTYPE/,\n name: /[^\\s<>'\"]+/\n }\n },\n cdata: /<!\\[CDATA\\[[\\s\\S]*?]]>/i,\n tag: {\n pattern: /<\\/?(?!\\d)[^\\s>\\/=$<%]+(?:\\s(?:\\s*[^\\s>\\/=]+(?:\\s*=\\s*(?:\"[^\"]*\"|'[^']*'|[^\\s'\">=]+(?=[\\s>]))|(?=[\\s/>])))+)?\\s*\\/?>/,\n greedy: !0,\n inside: {\n tag: {\n pattern: /^<\\/?[^\\s>\\/]+/,\n inside: {\n punctuation: /^<\\/?/,\n namespace: /^[^\\s>\\/:]+:/\n }\n },\n \"attr-value\": {\n pattern: /=\\s*(?:\"[^\"]*\"|'[^']*'|[^\\s'\">=]+)/,\n inside: {\n punctuation: [{\n pattern: /^=/,\n alias: \"attr-equals\"\n }, /\"|'/]\n }\n },\n punctuation: /\\/?>/,\n \"attr-name\": {\n pattern: /[^\\s>\\/]+/,\n inside: {\n namespace: /^[^\\s>\\/:]+:/\n }\n }\n }\n },\n entity: [{\n pattern: /&[\\da-z]{1,8};/i,\n alias: \"named-entity\"\n }, /&#x?[\\da-f]{1,8};/i]\n}, Prism.languages.markup.tag.inside[\"attr-value\"].inside.entity = Prism.languages.markup.entity, Prism.languages.markup.doctype.inside[\"internal-subset\"].inside = Prism.languages.markup, Prism.hooks.add(\"wrap\", function (a) {\n \"entity\" === a.type && (a.attributes.title = a.content.replace(/&/, \"&\"));\n}), Object.defineProperty(Prism.languages.markup.tag, \"addInlined\", {\n value: function value(a, e) {\n var s = {};\n s[\"language-\" + e] = {\n pattern: /(^<!\\[CDATA\\[)[\\s\\S]+?(?=\\]\\]>$)/i,\n lookbehind: !0,\n inside: Prism.languages[e]\n }, s.cdata = /^<!\\[CDATA\\[|\\]\\]>$/i;\n var n = {\n \"included-cdata\": {\n pattern: /<!\\[CDATA\\[[\\s\\S]*?\\]\\]>/i,\n inside: s\n }\n };\n n[\"language-\" + e] = {\n pattern: /[\\s\\S]+/,\n inside: Prism.languages[e]\n };\n var t = {};\n t[a] = {\n pattern: RegExp(\"(<__[^>]*>)(?:<!\\\\[CDATA\\\\[(?:[^\\\\]]|\\\\](?!\\\\]>))*\\\\]\\\\]>|(?!<!\\\\[CDATA\\\\[)[^])*?(?=</__>)\".replace(/__/g, function () {\n return a;\n }), \"i\"),\n lookbehind: !0,\n greedy: !0,\n inside: n\n }, Prism.languages.insertBefore(\"markup\", \"cdata\", t);\n }\n}), Prism.languages.html = Prism.languages.markup, Prism.languages.mathml = Prism.languages.markup, Prism.languages.svg = Prism.languages.markup, Prism.languages.xml = Prism.languages.extend(\"markup\", {}), Prism.languages.ssml = Prism.languages.xml, Prism.languages.atom = Prism.languages.xml, Prism.languages.rss = Prism.languages.xml;","!function (e) {\n var t = /\\b(?:abstract|assert|boolean|break|byte|case|catch|char|class|const|continue|default|do|double|else|enum|exports|extends|final|finally|float|for|goto|if|implements|import|instanceof|int|interface|long|module|native|new|non-sealed|null|open|opens|package|permits|private|protected|provides|public|record|requires|return|sealed|short|static|strictfp|super|switch|synchronized|this|throw|throws|to|transient|transitive|try|uses|var|void|volatile|while|with|yield)\\b/,\n n = \"(^|[^\\\\w.])(?:[a-z]\\\\w*\\\\s*\\\\.\\\\s*)*(?:[A-Z]\\\\w*\\\\s*\\\\.\\\\s*)*\",\n a = {\n pattern: RegExp(n + \"[A-Z](?:[\\\\d_A-Z]*[a-z]\\\\w*)?\\\\b\"),\n lookbehind: !0,\n inside: {\n namespace: {\n pattern: /^[a-z]\\w*(?:\\s*\\.\\s*[a-z]\\w*)*(?:\\s*\\.)?/,\n inside: {\n punctuation: /\\./\n }\n },\n punctuation: /\\./\n }\n };\n e.languages.java = e.languages.extend(\"clike\", {\n \"class-name\": [a, {\n pattern: RegExp(n + \"[A-Z]\\\\w*(?=\\\\s+\\\\w+\\\\s*[;,=())])\"),\n lookbehind: !0,\n inside: a.inside\n }],\n keyword: t,\n function: [e.languages.clike.function, {\n pattern: /(\\:\\:\\s*)[a-z_]\\w*/,\n lookbehind: !0\n }],\n number: /\\b0b[01][01_]*L?\\b|\\b0x(?:\\.[\\da-f_p+-]+|[\\da-f_]+(?:\\.[\\da-f_p+-]+)?)\\b|(?:\\b\\d[\\d_]*(?:\\.[\\d_]*)?|\\B\\.\\d[\\d_]*)(?:e[+-]?\\d[\\d_]*)?[dfl]?/i,\n operator: {\n pattern: /(^|[^.])(?:<<=?|>>>?=?|->|--|\\+\\+|&&|\\|\\||::|[?:~]|[-+*/%&|^!=<>]=?)/m,\n lookbehind: !0\n }\n }), e.languages.insertBefore(\"java\", \"string\", {\n \"triple-quoted-string\": {\n pattern: /\"\"\"[ \\t]*[\\r\\n](?:(?:\"|\"\")?(?:\\\\.|[^\"\\\\]))*\"\"\"/,\n greedy: !0,\n alias: \"string\"\n }\n }), e.languages.insertBefore(\"java\", \"class-name\", {\n annotation: {\n pattern: /(^|[^.])@\\w+(?:\\s*\\.\\s*\\w+)*/,\n lookbehind: !0,\n alias: \"punctuation\"\n },\n generics: {\n pattern: /<(?:[\\w\\s,.&?]|<(?:[\\w\\s,.&?]|<(?:[\\w\\s,.&?]|<[\\w\\s,.&?]*>)*>)*>)*>/,\n inside: {\n \"class-name\": a,\n keyword: t,\n punctuation: /[<>(),.:]/,\n operator: /[?&|]/\n }\n },\n namespace: {\n pattern: RegExp(\"(\\\\b(?:exports|import(?:\\\\s+static)?|module|open|opens|package|provides|requires|to|transitive|uses|with)\\\\s+)(?!<keyword>)[a-z]\\\\w*(?:\\\\.[a-z]\\\\w*)*\\\\.?\".replace(/<keyword>/g, function () {\n return t.source;\n })),\n lookbehind: !0,\n inside: {\n punctuation: /\\./\n }\n }\n });\n}(Prism);","import React, {useEffect} from 'react';\nimport {graphql} from 'gatsby';\nimport Header from '../components/header';\nimport Seo from '../components/seo';\nimport 'prismjs/prism';\nimport 'prismjs/components/prism-java.min'\nimport 'prismjs/components/prism-markup.min'\nimport 'prismjs/components/prism-yaml.min'\nimport 'prismjs/themes/prism-solarizedlight.css'\nimport '../styles/main.scss';\n\nconst componentDidMount = () => {\n window.Prism.highlightAll()\n};\n\nconst Doc = ({\n data: {\n asciidocCopy: {\n document: {\n title,\n subtitle\n },\n html: __html\n }\n },\n pageContext: {langKey}\n}) => {\n useEffect(componentDidMount, []);\n return (\n <div className='eclipse-jkube'>\n <Seo title={title} description={subtitle} lang={langKey}/>\n <Header lang={langKey}/>\n <div className='eclipse-jkube__documentation book toc2 toc-left'>\n <div\n className='eclipse-jkube__documentation-content'\n dangerouslySetInnerHTML={{__html}}\n />\n </div>\n </div>\n );\n};\n\n\nexport const pageQuery = graphql`\n query($id: String!) {\n asciidocCopy(id: { eq: $id }) {\n html\n document {\n title\n subtitle\n }\n }\n }\n`;\n\nexport default Doc;\n","/* **********************************************\n Begin prism-core.js\n********************************************** */\n/// <reference lib=\"WebWorker\"/>\nvar _self = typeof window !== 'undefined' ? window // if in browser\n: typeof WorkerGlobalScope !== 'undefined' && self instanceof WorkerGlobalScope ? self // if in worker\n: {} // if in node js\n;\n/**\n * Prism: Lightweight, robust, elegant syntax highlighting\n *\n * @license MIT <https://opensource.org/licenses/MIT>\n * @author Lea Verou <https://lea.verou.me>\n * @namespace\n * @public\n */\n\n\nvar Prism = function (_self) {\n // Private helper vars\n var lang = /\\blang(?:uage)?-([\\w-]+)\\b/i;\n var uniqueId = 0;\n var _ = {\n /**\n * By default, Prism will attempt to highlight all code elements (by calling {@link Prism.highlightAll}) on the\n * current page after the page finished loading. This might be a problem if e.g. you wanted to asynchronously load\n * additional languages or plugins yourself.\n *\n * By setting this value to `true`, Prism will not automatically highlight all code elements on the page.\n *\n * You obviously have to change this value before the automatic highlighting started. To do this, you can add an\n * empty Prism object into the global scope before loading the Prism script like this:\n *\n * ```js\n * window.Prism = window.Prism || {};\n * Prism.manual = true;\n * // add a new <script> to load Prism's script\n * ```\n *\n * @default false\n * @type {boolean}\n * @memberof Prism\n * @public\n */\n manual: _self.Prism && _self.Prism.manual,\n disableWorkerMessageHandler: _self.Prism && _self.Prism.disableWorkerMessageHandler,\n\n /**\n * A namespace for utility methods.\n *\n * All function in this namespace that are not explicitly marked as _public_ are for __internal use only__ and may\n * change or disappear at any time.\n *\n * @namespace\n * @memberof Prism\n */\n util: {\n encode: function encode(tokens) {\n if (tokens instanceof Token) {\n return new Token(tokens.type, encode(tokens.content), tokens.alias);\n } else if (Array.isArray(tokens)) {\n return tokens.map(encode);\n } else {\n return tokens.replace(/&/g, '&').replace(/</g, '<').replace(/\\u00a0/g, ' ');\n }\n },\n\n /**\n * Returns the name of the type of the given value.\n *\n * @param {any} o\n * @returns {string}\n * @example\n * type(null) === 'Null'\n * type(undefined) === 'Undefined'\n * type(123) === 'Number'\n * type('foo') === 'String'\n * type(true) === 'Boolean'\n * type([1, 2]) === 'Array'\n * type({}) === 'Object'\n * type(String) === 'Function'\n * type(/abc+/) === 'RegExp'\n */\n type: function type(o) {\n return Object.prototype.toString.call(o).slice(8, -1);\n },\n\n /**\n * Returns a unique number for the given object. Later calls will still return the same number.\n *\n * @param {Object} obj\n * @returns {number}\n */\n objId: function objId(obj) {\n if (!obj['__id']) {\n Object.defineProperty(obj, '__id', {\n value: ++uniqueId\n });\n }\n\n return obj['__id'];\n },\n\n /**\n * Creates a deep clone of the given object.\n *\n * The main intended use of this function is to clone language definitions.\n *\n * @param {T} o\n * @param {Record<number, any>} [visited]\n * @returns {T}\n * @template T\n */\n clone: function deepClone(o, visited) {\n visited = visited || {};\n var clone, id;\n\n switch (_.util.type(o)) {\n case 'Object':\n id = _.util.objId(o);\n\n if (visited[id]) {\n return visited[id];\n }\n\n clone =\n /** @type {Record<string, any>} */\n {};\n visited[id] = clone;\n\n for (var key in o) {\n if (o.hasOwnProperty(key)) {\n clone[key] = deepClone(o[key], visited);\n }\n }\n\n return (\n /** @type {any} */\n clone\n );\n\n case 'Array':\n id = _.util.objId(o);\n\n if (visited[id]) {\n return visited[id];\n }\n\n clone = [];\n visited[id] = clone;\n\n /** @type {Array} */\n\n /** @type {any} */\n o.forEach(function (v, i) {\n clone[i] = deepClone(v, visited);\n });\n return (\n /** @type {any} */\n clone\n );\n\n default:\n return o;\n }\n },\n\n /**\n * Returns the Prism language of the given element set by a `language-xxxx` or `lang-xxxx` class.\n *\n * If no language is set for the element or the element is `null` or `undefined`, `none` will be returned.\n *\n * @param {Element} element\n * @returns {string}\n */\n getLanguage: function getLanguage(element) {\n while (element && !lang.test(element.className)) {\n element = element.parentElement;\n }\n\n if (element) {\n return (element.className.match(lang) || [, 'none'])[1].toLowerCase();\n }\n\n return 'none';\n },\n\n /**\n * Returns the script element that is currently executing.\n *\n * This does __not__ work for line script element.\n *\n * @returns {HTMLScriptElement | null}\n */\n currentScript: function currentScript() {\n if (typeof document === 'undefined') {\n return null;\n }\n\n if ('currentScript' in document && 1 < 2\n /* hack to trip TS' flow analysis */\n ) {\n return (\n /** @type {any} */\n document.currentScript\n );\n } // IE11 workaround\n // we'll get the src of the current script by parsing IE11's error stack trace\n // this will not work for inline scripts\n\n\n try {\n throw new Error();\n } catch (err) {\n // Get file src url from stack. Specifically works with the format of stack traces in IE.\n // A stack will look like this:\n //\n // Error\n // at _.util.currentScript (http://localhost/components/prism-core.js:119:5)\n // at Global code (http://localhost/components/prism-core.js:606:1)\n var src = (/at [^(\\r\\n]*\\((.*):.+:.+\\)$/i.exec(err.stack) || [])[1];\n\n if (src) {\n var scripts = document.getElementsByTagName('script');\n\n for (var i in scripts) {\n if (scripts[i].src == src) {\n return scripts[i];\n }\n }\n }\n\n return null;\n }\n },\n\n /**\n * Returns whether a given class is active for `element`.\n *\n * The class can be activated if `element` or one of its ancestors has the given class and it can be deactivated\n * if `element` or one of its ancestors has the negated version of the given class. The _negated version_ of the\n * given class is just the given class with a `no-` prefix.\n *\n * Whether the class is active is determined by the closest ancestor of `element` (where `element` itself is\n * closest ancestor) that has the given class or the negated version of it. If neither `element` nor any of its\n * ancestors have the given class or the negated version of it, then the default activation will be returned.\n *\n * In the paradoxical situation where the closest ancestor contains __both__ the given class and the negated\n * version of it, the class is considered active.\n *\n * @param {Element} element\n * @param {string} className\n * @param {boolean} [defaultActivation=false]\n * @returns {boolean}\n */\n isActive: function isActive(element, className, defaultActivation) {\n var no = 'no-' + className;\n\n while (element) {\n var classList = element.classList;\n\n if (classList.contains(className)) {\n return true;\n }\n\n if (classList.contains(no)) {\n return false;\n }\n\n element = element.parentElement;\n }\n\n return !!defaultActivation;\n }\n },\n\n /**\n * This namespace contains all currently loaded languages and the some helper functions to create and modify languages.\n *\n * @namespace\n * @memberof Prism\n * @public\n */\n languages: {\n /**\n * Creates a deep copy of the language with the given id and appends the given tokens.\n *\n * If a token in `redef` also appears in the copied language, then the existing token in the copied language\n * will be overwritten at its original position.\n *\n * ## Best practices\n *\n * Since the position of overwriting tokens (token in `redef` that overwrite tokens in the copied language)\n * doesn't matter, they can technically be in any order. However, this can be confusing to others that trying to\n * understand the language definition because, normally, the order of tokens matters in Prism grammars.\n *\n * Therefore, it is encouraged to order overwriting tokens according to the positions of the overwritten tokens.\n * Furthermore, all non-overwriting tokens should be placed after the overwriting ones.\n *\n * @param {string} id The id of the language to extend. This has to be a key in `Prism.languages`.\n * @param {Grammar} redef The new tokens to append.\n * @returns {Grammar} The new language created.\n * @public\n * @example\n * Prism.languages['css-with-colors'] = Prism.languages.extend('css', {\n * // Prism.languages.css already has a 'comment' token, so this token will overwrite CSS' 'comment' token\n * // at its original position\n * 'comment': { ... },\n * // CSS doesn't have a 'color' token, so this token will be appended\n * 'color': /\\b(?:red|green|blue)\\b/\n * });\n */\n extend: function extend(id, redef) {\n var lang = _.util.clone(_.languages[id]);\n\n for (var key in redef) {\n lang[key] = redef[key];\n }\n\n return lang;\n },\n\n /**\n * Inserts tokens _before_ another token in a language definition or any other grammar.\n *\n * ## Usage\n *\n * This helper method makes it easy to modify existing languages. For example, the CSS language definition\n * not only defines CSS highlighting for CSS documents, but also needs to define highlighting for CSS embedded\n * in HTML through `<style>` elements. To do this, it needs to modify `Prism.languages.markup` and add the\n * appropriate tokens. However, `Prism.languages.markup` is a regular JavaScript object literal, so if you do\n * this:\n *\n * ```js\n * Prism.languages.markup.style = {\n * // token\n * };\n * ```\n *\n * then the `style` token will be added (and processed) at the end. `insertBefore` allows you to insert tokens\n * before existing tokens. For the CSS example above, you would use it like this:\n *\n * ```js\n * Prism.languages.insertBefore('markup', 'cdata', {\n * 'style': {\n * // token\n * }\n * });\n * ```\n *\n * ## Special cases\n *\n * If the grammars of `inside` and `insert` have tokens with the same name, the tokens in `inside`'s grammar\n * will be ignored.\n *\n * This behavior can be used to insert tokens after `before`:\n *\n * ```js\n * Prism.languages.insertBefore('markup', 'comment', {\n * 'comment': Prism.languages.markup.comment,\n * // tokens after 'comment'\n * });\n * ```\n *\n * ## Limitations\n *\n * The main problem `insertBefore` has to solve is iteration order. Since ES2015, the iteration order for object\n * properties is guaranteed to be the insertion order (except for integer keys) but some browsers behave\n * differently when keys are deleted and re-inserted. So `insertBefore` can't be implemented by temporarily\n * deleting properties which is necessary to insert at arbitrary positions.\n *\n * To solve this problem, `insertBefore` doesn't actually insert the given tokens into the target object.\n * Instead, it will create a new object and replace all references to the target object with the new one. This\n * can be done without temporarily deleting properties, so the iteration order is well-defined.\n *\n * However, only references that can be reached from `Prism.languages` or `insert` will be replaced. I.e. if\n * you hold the target object in a variable, then the value of the variable will not change.\n *\n * ```js\n * var oldMarkup = Prism.languages.markup;\n * var newMarkup = Prism.languages.insertBefore('markup', 'comment', { ... });\n *\n * assert(oldMarkup !== Prism.languages.markup);\n * assert(newMarkup === Prism.languages.markup);\n * ```\n *\n * @param {string} inside The property of `root` (e.g. a language id in `Prism.languages`) that contains the\n * object to be modified.\n * @param {string} before The key to insert before.\n * @param {Grammar} insert An object containing the key-value pairs to be inserted.\n * @param {Object<string, any>} [root] The object containing `inside`, i.e. the object that contains the\n * object to be modified.\n *\n * Defaults to `Prism.languages`.\n * @returns {Grammar} The new grammar object.\n * @public\n */\n insertBefore: function insertBefore(inside, before, insert, root) {\n root = root ||\n /** @type {any} */\n _.languages;\n var grammar = root[inside];\n /** @type {Grammar} */\n\n var ret = {};\n\n for (var token in grammar) {\n if (grammar.hasOwnProperty(token)) {\n if (token == before) {\n for (var newToken in insert) {\n if (insert.hasOwnProperty(newToken)) {\n ret[newToken] = insert[newToken];\n }\n }\n } // Do not insert token which also occur in insert. See #1525\n\n\n if (!insert.hasOwnProperty(token)) {\n ret[token] = grammar[token];\n }\n }\n }\n\n var old = root[inside];\n root[inside] = ret; // Update references in other language definitions\n\n _.languages.DFS(_.languages, function (key, value) {\n if (value === old && key != inside) {\n this[key] = ret;\n }\n });\n\n return ret;\n },\n // Traverse a language definition with Depth First Search\n DFS: function DFS(o, callback, type, visited) {\n visited = visited || {};\n var objId = _.util.objId;\n\n for (var i in o) {\n if (o.hasOwnProperty(i)) {\n callback.call(o, i, o[i], type || i);\n\n var property = o[i],\n propertyType = _.util.type(property);\n\n if (propertyType === 'Object' && !visited[objId(property)]) {\n visited[objId(property)] = true;\n DFS(property, callback, null, visited);\n } else if (propertyType === 'Array' && !visited[objId(property)]) {\n visited[objId(property)] = true;\n DFS(property, callback, i, visited);\n }\n }\n }\n }\n },\n plugins: {},\n\n /**\n * This is the most high-level function in Prism’s API.\n * It fetches all the elements that have a `.language-xxxx` class and then calls {@link Prism.highlightElement} on\n * each one of them.\n *\n * This is equivalent to `Prism.highlightAllUnder(document, async, callback)`.\n *\n * @param {boolean} [async=false] Same as in {@link Prism.highlightAllUnder}.\n * @param {HighlightCallback} [callback] Same as in {@link Prism.highlightAllUnder}.\n * @memberof Prism\n * @public\n */\n highlightAll: function highlightAll(async, callback) {\n _.highlightAllUnder(document, async, callback);\n },\n\n /**\n * Fetches all the descendants of `container` that have a `.language-xxxx` class and then calls\n * {@link Prism.highlightElement} on each one of them.\n *\n * The following hooks will be run:\n * 1. `before-highlightall`\n * 2. `before-all-elements-highlight`\n * 3. All hooks of {@link Prism.highlightElement} for each element.\n *\n * @param {ParentNode} container The root element, whose descendants that have a `.language-xxxx` class will be highlighted.\n * @param {boolean} [async=false] Whether each element is to be highlighted asynchronously using Web Workers.\n * @param {HighlightCallback} [callback] An optional callback to be invoked on each element after its highlighting is done.\n * @memberof Prism\n * @public\n */\n highlightAllUnder: function highlightAllUnder(container, async, callback) {\n var env = {\n callback: callback,\n container: container,\n selector: 'code[class*=\"language-\"], [class*=\"language-\"] code, code[class*=\"lang-\"], [class*=\"lang-\"] code'\n };\n\n _.hooks.run('before-highlightall', env);\n\n env.elements = Array.prototype.slice.apply(env.container.querySelectorAll(env.selector));\n\n _.hooks.run('before-all-elements-highlight', env);\n\n for (var i = 0, element; element = env.elements[i++];) {\n _.highlightElement(element, async === true, env.callback);\n }\n },\n\n /**\n * Highlights the code inside a single element.\n *\n * The following hooks will be run:\n * 1. `before-sanity-check`\n * 2. `before-highlight`\n * 3. All hooks of {@link Prism.highlight}. These hooks will be run by an asynchronous worker if `async` is `true`.\n * 4. `before-insert`\n * 5. `after-highlight`\n * 6. `complete`\n *\n * Some the above hooks will be skipped if the element doesn't contain any text or there is no grammar loaded for\n * the element's language.\n *\n * @param {Element} element The element containing the code.\n * It must have a class of `language-xxxx` to be processed, where `xxxx` is a valid language identifier.\n * @param {boolean} [async=false] Whether the element is to be highlighted asynchronously using Web Workers\n * to improve performance and avoid blocking the UI when highlighting very large chunks of code. This option is\n * [disabled by default](https://prismjs.com/faq.html#why-is-asynchronous-highlighting-disabled-by-default).\n *\n * Note: All language definitions required to highlight the code must be included in the main `prism.js` file for\n * asynchronous highlighting to work. You can build your own bundle on the\n * [Download page](https://prismjs.com/download.html).\n * @param {HighlightCallback} [callback] An optional callback to be invoked after the highlighting is done.\n * Mostly useful when `async` is `true`, since in that case, the highlighting is done asynchronously.\n * @memberof Prism\n * @public\n */\n highlightElement: function highlightElement(element, async, callback) {\n // Find language\n var language = _.util.getLanguage(element);\n\n var grammar = _.languages[language]; // Set language on the element, if not present\n\n element.className = element.className.replace(lang, '').replace(/\\s+/g, ' ') + ' language-' + language; // Set language on the parent, for styling\n\n var parent = element.parentElement;\n\n if (parent && parent.nodeName.toLowerCase() === 'pre') {\n parent.className = parent.className.replace(lang, '').replace(/\\s+/g, ' ') + ' language-' + language;\n }\n\n var code = element.textContent;\n var env = {\n element: element,\n language: language,\n grammar: grammar,\n code: code\n };\n\n function insertHighlightedCode(highlightedCode) {\n env.highlightedCode = highlightedCode;\n\n _.hooks.run('before-insert', env);\n\n env.element.innerHTML = env.highlightedCode;\n\n _.hooks.run('after-highlight', env);\n\n _.hooks.run('complete', env);\n\n callback && callback.call(env.element);\n }\n\n _.hooks.run('before-sanity-check', env);\n\n if (!env.code) {\n _.hooks.run('complete', env);\n\n callback && callback.call(env.element);\n return;\n }\n\n _.hooks.run('before-highlight', env);\n\n if (!env.grammar) {\n insertHighlightedCode(_.util.encode(env.code));\n return;\n }\n\n if (async && _self.Worker) {\n var worker = new Worker(_.filename);\n\n worker.onmessage = function (evt) {\n insertHighlightedCode(evt.data);\n };\n\n worker.postMessage(JSON.stringify({\n language: env.language,\n code: env.code,\n immediateClose: true\n }));\n } else {\n insertHighlightedCode(_.highlight(env.code, env.grammar, env.language));\n }\n },\n\n /**\n * Low-level function, only use if you know what you’re doing. It accepts a string of text as input\n * and the language definitions to use, and returns a string with the HTML produced.\n *\n * The following hooks will be run:\n * 1. `before-tokenize`\n * 2. `after-tokenize`\n * 3. `wrap`: On each {@link Token}.\n *\n * @param {string} text A string with the code to be highlighted.\n * @param {Grammar} grammar An object containing the tokens to use.\n *\n * Usually a language definition like `Prism.languages.markup`.\n * @param {string} language The name of the language definition passed to `grammar`.\n * @returns {string} The highlighted HTML.\n * @memberof Prism\n * @public\n * @example\n * Prism.highlight('var foo = true;', Prism.languages.javascript, 'javascript');\n */\n highlight: function highlight(text, grammar, language) {\n var env = {\n code: text,\n grammar: grammar,\n language: language\n };\n\n _.hooks.run('before-tokenize', env);\n\n env.tokens = _.tokenize(env.code, env.grammar);\n\n _.hooks.run('after-tokenize', env);\n\n return Token.stringify(_.util.encode(env.tokens), env.language);\n },\n\n /**\n * This is the heart of Prism, and the most low-level function you can use. It accepts a string of text as input\n * and the language definitions to use, and returns an array with the tokenized code.\n *\n * When the language definition includes nested tokens, the function is called recursively on each of these tokens.\n *\n * This method could be useful in other contexts as well, as a very crude parser.\n *\n * @param {string} text A string with the code to be highlighted.\n * @param {Grammar} grammar An object containing the tokens to use.\n *\n * Usually a language definition like `Prism.languages.markup`.\n * @returns {TokenStream} An array of strings and tokens, a token stream.\n * @memberof Prism\n * @public\n * @example\n * let code = `var foo = 0;`;\n * let tokens = Prism.tokenize(code, Prism.languages.javascript);\n * tokens.forEach(token => {\n * if (token instanceof Prism.Token && token.type === 'number') {\n * console.log(`Found numeric literal: ${token.content}`);\n * }\n * });\n */\n tokenize: function tokenize(text, grammar) {\n var rest = grammar.rest;\n\n if (rest) {\n for (var token in rest) {\n grammar[token] = rest[token];\n }\n\n delete grammar.rest;\n }\n\n var tokenList = new LinkedList();\n addAfter(tokenList, tokenList.head, text);\n matchGrammar(text, tokenList, grammar, tokenList.head, 0);\n return toArray(tokenList);\n },\n\n /**\n * @namespace\n * @memberof Prism\n * @public\n */\n hooks: {\n all: {},\n\n /**\n * Adds the given callback to the list of callbacks for the given hook.\n *\n * The callback will be invoked when the hook it is registered for is run.\n * Hooks are usually directly run by a highlight function but you can also run hooks yourself.\n *\n * One callback function can be registered to multiple hooks and the same hook multiple times.\n *\n * @param {string} name The name of the hook.\n * @param {HookCallback} callback The callback function which is given environment variables.\n * @public\n */\n add: function add(name, callback) {\n var hooks = _.hooks.all;\n hooks[name] = hooks[name] || [];\n hooks[name].push(callback);\n },\n\n /**\n * Runs a hook invoking all registered callbacks with the given environment variables.\n *\n * Callbacks will be invoked synchronously and in the order in which they were registered.\n *\n * @param {string} name The name of the hook.\n * @param {Object<string, any>} env The environment variables of the hook passed to all callbacks registered.\n * @public\n */\n run: function run(name, env) {\n var callbacks = _.hooks.all[name];\n\n if (!callbacks || !callbacks.length) {\n return;\n }\n\n for (var i = 0, callback; callback = callbacks[i++];) {\n callback(env);\n }\n }\n },\n Token: Token\n };\n _self.Prism = _; // Typescript note:\n // The following can be used to import the Token type in JSDoc:\n //\n // @typedef {InstanceType<import(\"./prism-core\")[\"Token\"]>} Token\n\n /**\n * Creates a new token.\n *\n * @param {string} type See {@link Token#type type}\n * @param {string | TokenStream} content See {@link Token#content content}\n * @param {string|string[]} [alias] The alias(es) of the token.\n * @param {string} [matchedStr=\"\"] A copy of the full string this token was created from.\n * @class\n * @global\n * @public\n */\n\n function Token(type, content, alias, matchedStr) {\n /**\n * The type of the token.\n *\n * This is usually the key of a pattern in a {@link Grammar}.\n *\n * @type {string}\n * @see GrammarToken\n * @public\n */\n this.type = type;\n /**\n * The strings or tokens contained by this token.\n *\n * This will be a token stream if the pattern matched also defined an `inside` grammar.\n *\n * @type {string | TokenStream}\n * @public\n */\n\n this.content = content;\n /**\n * The alias(es) of the token.\n *\n * @type {string|string[]}\n * @see GrammarToken\n * @public\n */\n\n this.alias = alias; // Copy of the full string this token was created from\n\n this.length = (matchedStr || '').length | 0;\n }\n /**\n * A token stream is an array of strings and {@link Token Token} objects.\n *\n * Token streams have to fulfill a few properties that are assumed by most functions (mostly internal ones) that process\n * them.\n *\n * 1. No adjacent strings.\n * 2. No empty strings.\n *\n * The only exception here is the token stream that only contains the empty string and nothing else.\n *\n * @typedef {Array<string | Token>} TokenStream\n * @global\n * @public\n */\n\n /**\n * Converts the given token or token stream to an HTML representation.\n *\n * The following hooks will be run:\n * 1. `wrap`: On each {@link Token}.\n *\n * @param {string | Token | TokenStream} o The token or token stream to be converted.\n * @param {string} language The name of current language.\n * @returns {string} The HTML representation of the token or token stream.\n * @memberof Token\n * @static\n */\n\n\n Token.stringify = function stringify(o, language) {\n if (typeof o == 'string') {\n return o;\n }\n\n if (Array.isArray(o)) {\n var s = '';\n o.forEach(function (e) {\n s += stringify(e, language);\n });\n return s;\n }\n\n var env = {\n type: o.type,\n content: stringify(o.content, language),\n tag: 'span',\n classes: ['token', o.type],\n attributes: {},\n language: language\n };\n var aliases = o.alias;\n\n if (aliases) {\n if (Array.isArray(aliases)) {\n Array.prototype.push.apply(env.classes, aliases);\n } else {\n env.classes.push(aliases);\n }\n }\n\n _.hooks.run('wrap', env);\n\n var attributes = '';\n\n for (var name in env.attributes) {\n attributes += ' ' + name + '=\"' + (env.attributes[name] || '').replace(/\"/g, '"') + '\"';\n }\n\n return '<' + env.tag + ' class=\"' + env.classes.join(' ') + '\"' + attributes + '>' + env.content + '</' + env.tag + '>';\n };\n /**\n * @param {RegExp} pattern\n * @param {number} pos\n * @param {string} text\n * @param {boolean} lookbehind\n * @returns {RegExpExecArray | null}\n */\n\n\n function matchPattern(pattern, pos, text, lookbehind) {\n pattern.lastIndex = pos;\n var match = pattern.exec(text);\n\n if (match && lookbehind && match[1]) {\n // change the match to remove the text matched by the Prism lookbehind group\n var lookbehindLength = match[1].length;\n match.index += lookbehindLength;\n match[0] = match[0].slice(lookbehindLength);\n }\n\n return match;\n }\n /**\n * @param {string} text\n * @param {LinkedList<string | Token>} tokenList\n * @param {any} grammar\n * @param {LinkedListNode<string | Token>} startNode\n * @param {number} startPos\n * @param {RematchOptions} [rematch]\n * @returns {void}\n * @private\n *\n * @typedef RematchOptions\n * @property {string} cause\n * @property {number} reach\n */\n\n\n function matchGrammar(text, tokenList, grammar, startNode, startPos, rematch) {\n for (var token in grammar) {\n if (!grammar.hasOwnProperty(token) || !grammar[token]) {\n continue;\n }\n\n var patterns = grammar[token];\n patterns = Array.isArray(patterns) ? patterns : [patterns];\n\n for (var j = 0; j < patterns.length; ++j) {\n if (rematch && rematch.cause == token + ',' + j) {\n return;\n }\n\n var patternObj = patterns[j],\n inside = patternObj.inside,\n lookbehind = !!patternObj.lookbehind,\n greedy = !!patternObj.greedy,\n alias = patternObj.alias;\n\n if (greedy && !patternObj.pattern.global) {\n // Without the global flag, lastIndex won't work\n var flags = patternObj.pattern.toString().match(/[imsuy]*$/)[0];\n patternObj.pattern = RegExp(patternObj.pattern.source, flags + 'g');\n }\n /** @type {RegExp} */\n\n\n var pattern = patternObj.pattern || patternObj;\n\n for ( // iterate the token list and keep track of the current token/string position\n var currentNode = startNode.next, pos = startPos; currentNode !== tokenList.tail; pos += currentNode.value.length, currentNode = currentNode.next) {\n if (rematch && pos >= rematch.reach) {\n break;\n }\n\n var str = currentNode.value;\n\n if (tokenList.length > text.length) {\n // Something went terribly wrong, ABORT, ABORT!\n return;\n }\n\n if (str instanceof Token) {\n continue;\n }\n\n var removeCount = 1; // this is the to parameter of removeBetween\n\n var match;\n\n if (greedy) {\n match = matchPattern(pattern, pos, text, lookbehind);\n\n if (!match) {\n break;\n }\n\n var from = match.index;\n var to = match.index + match[0].length;\n var p = pos; // find the node that contains the match\n\n p += currentNode.value.length;\n\n while (from >= p) {\n currentNode = currentNode.next;\n p += currentNode.value.length;\n } // adjust pos (and p)\n\n\n p -= currentNode.value.length;\n pos = p; // the current node is a Token, then the match starts inside another Token, which is invalid\n\n if (currentNode.value instanceof Token) {\n continue;\n } // find the last node which is affected by this match\n\n\n for (var k = currentNode; k !== tokenList.tail && (p < to || typeof k.value === 'string'); k = k.next) {\n removeCount++;\n p += k.value.length;\n }\n\n removeCount--; // replace with the new match\n\n str = text.slice(pos, p);\n match.index -= pos;\n } else {\n match = matchPattern(pattern, 0, str, lookbehind);\n\n if (!match) {\n continue;\n }\n }\n\n var from = match.index,\n matchStr = match[0],\n before = str.slice(0, from),\n after = str.slice(from + matchStr.length);\n var reach = pos + str.length;\n\n if (rematch && reach > rematch.reach) {\n rematch.reach = reach;\n }\n\n var removeFrom = currentNode.prev;\n\n if (before) {\n removeFrom = addAfter(tokenList, removeFrom, before);\n pos += before.length;\n }\n\n removeRange(tokenList, removeFrom, removeCount);\n var wrapped = new Token(token, inside ? _.tokenize(matchStr, inside) : matchStr, alias, matchStr);\n currentNode = addAfter(tokenList, removeFrom, wrapped);\n\n if (after) {\n addAfter(tokenList, currentNode, after);\n }\n\n if (removeCount > 1) {\n // at least one Token object was removed, so we have to do some rematching\n // this can only happen if the current pattern is greedy\n matchGrammar(text, tokenList, grammar, currentNode.prev, pos, {\n cause: token + ',' + j,\n reach: reach\n });\n }\n }\n }\n }\n }\n /**\n * @typedef LinkedListNode\n * @property {T} value\n * @property {LinkedListNode<T> | null} prev The previous node.\n * @property {LinkedListNode<T> | null} next The next node.\n * @template T\n * @private\n */\n\n /**\n * @template T\n * @private\n */\n\n\n function LinkedList() {\n /** @type {LinkedListNode<T>} */\n var head = {\n value: null,\n prev: null,\n next: null\n };\n /** @type {LinkedListNode<T>} */\n\n var tail = {\n value: null,\n prev: head,\n next: null\n };\n head.next = tail;\n /** @type {LinkedListNode<T>} */\n\n this.head = head;\n /** @type {LinkedListNode<T>} */\n\n this.tail = tail;\n this.length = 0;\n }\n /**\n * Adds a new node with the given value to the list.\n * @param {LinkedList<T>} list\n * @param {LinkedListNode<T>} node\n * @param {T} value\n * @returns {LinkedListNode<T>} The added node.\n * @template T\n */\n\n\n function addAfter(list, node, value) {\n // assumes that node != list.tail && values.length >= 0\n var next = node.next;\n var newNode = {\n value: value,\n prev: node,\n next: next\n };\n node.next = newNode;\n next.prev = newNode;\n list.length++;\n return newNode;\n }\n /**\n * Removes `count` nodes after the given node. The given node will not be removed.\n * @param {LinkedList<T>} list\n * @param {LinkedListNode<T>} node\n * @param {number} count\n * @template T\n */\n\n\n function removeRange(list, node, count) {\n var next = node.next;\n\n for (var i = 0; i < count && next !== list.tail; i++) {\n next = next.next;\n }\n\n node.next = next;\n next.prev = node;\n list.length -= i;\n }\n /**\n * @param {LinkedList<T>} list\n * @returns {T[]}\n * @template T\n */\n\n\n function toArray(list) {\n var array = [];\n var node = list.head.next;\n\n while (node !== list.tail) {\n array.push(node.value);\n node = node.next;\n }\n\n return array;\n }\n\n if (!_self.document) {\n if (!_self.addEventListener) {\n // in Node.js\n return _;\n }\n\n if (!_.disableWorkerMessageHandler) {\n // In worker\n _self.addEventListener('message', function (evt) {\n var message = JSON.parse(evt.data),\n lang = message.language,\n code = message.code,\n immediateClose = message.immediateClose;\n\n _self.postMessage(_.highlight(code, _.languages[lang], lang));\n\n if (immediateClose) {\n _self.close();\n }\n }, false);\n }\n\n return _;\n } // Get current script and highlight\n\n\n var script = _.util.currentScript();\n\n if (script) {\n _.filename = script.src;\n\n if (script.hasAttribute('data-manual')) {\n _.manual = true;\n }\n }\n\n function highlightAutomaticallyCallback() {\n if (!_.manual) {\n _.highlightAll();\n }\n }\n\n if (!_.manual) {\n // If the document state is \"loading\", then we'll use DOMContentLoaded.\n // If the document state is \"interactive\" and the prism.js script is deferred, then we'll also use the\n // DOMContentLoaded event because there might be some plugins or languages which have also been deferred and they\n // might take longer one animation frame to execute which can create a race condition where only some plugins have\n // been loaded when Prism.highlightAll() is executed, depending on how fast resources are loaded.\n // See https://github.com/PrismJS/prism/issues/2102\n var readyState = document.readyState;\n\n if (readyState === 'loading' || readyState === 'interactive' && script && script.defer) {\n document.addEventListener('DOMContentLoaded', highlightAutomaticallyCallback);\n } else {\n if (window.requestAnimationFrame) {\n window.requestAnimationFrame(highlightAutomaticallyCallback);\n } else {\n window.setTimeout(highlightAutomaticallyCallback, 16);\n }\n }\n }\n\n return _;\n}(_self);\n\nif (typeof module !== 'undefined' && module.exports) {\n module.exports = Prism;\n} // hack for components to work correctly in node.js\n\n\nif (typeof global !== 'undefined') {\n global.Prism = Prism;\n} // some additional documentation/types\n\n/**\n * The expansion of a simple `RegExp` literal to support additional properties.\n *\n * @typedef GrammarToken\n * @property {RegExp} pattern The regular expression of the token.\n * @property {boolean} [lookbehind=false] If `true`, then the first capturing group of `pattern` will (effectively)\n * behave as a lookbehind group meaning that the captured text will not be part of the matched text of the new token.\n * @property {boolean} [greedy=false] Whether the token is greedy.\n * @property {string|string[]} [alias] An optional alias or list of aliases.\n * @property {Grammar} [inside] The nested grammar of this token.\n *\n * The `inside` grammar will be used to tokenize the text value of each token of this kind.\n *\n * This can be used to make nested and even recursive language definitions.\n *\n * Note: This can cause infinite recursion. Be careful when you embed different languages or even the same language into\n * each another.\n * @global\n * @public\n*/\n\n/**\n * @typedef Grammar\n * @type {Object<string, RegExp | GrammarToken | Array<RegExp | GrammarToken>>}\n * @property {Grammar} [rest] An optional grammar object that will be appended to this grammar.\n * @global\n * @public\n */\n\n/**\n * A function which will invoked after an element was successfully highlighted.\n *\n * @callback HighlightCallback\n * @param {Element} element The element successfully highlighted.\n * @returns {void}\n * @global\n * @public\n*/\n\n/**\n * @callback HookCallback\n * @param {Object<string, any>} env The environment variables of the hook.\n * @returns {void}\n * @global\n * @public\n */\n\n/* **********************************************\n Begin prism-markup.js\n********************************************** */\n\n\nPrism.languages.markup = {\n 'comment': /<!--[\\s\\S]*?-->/,\n 'prolog': /<\\?[\\s\\S]+?\\?>/,\n 'doctype': {\n // https://www.w3.org/TR/xml/#NT-doctypedecl\n pattern: /<!DOCTYPE(?:[^>\"'[\\]]|\"[^\"]*\"|'[^']*')+(?:\\[(?:[^<\"'\\]]|\"[^\"]*\"|'[^']*'|<(?!!--)|<!--(?:[^-]|-(?!->))*-->)*\\]\\s*)?>/i,\n greedy: true,\n inside: {\n 'internal-subset': {\n pattern: /(\\[)[\\s\\S]+(?=\\]>$)/,\n lookbehind: true,\n greedy: true,\n inside: null // see below\n\n },\n 'string': {\n pattern: /\"[^\"]*\"|'[^']*'/,\n greedy: true\n },\n 'punctuation': /^<!|>$|[[\\]]/,\n 'doctype-tag': /^DOCTYPE/,\n 'name': /[^\\s<>'\"]+/\n }\n },\n 'cdata': /<!\\[CDATA\\[[\\s\\S]*?]]>/i,\n 'tag': {\n pattern: /<\\/?(?!\\d)[^\\s>\\/=$<%]+(?:\\s(?:\\s*[^\\s>\\/=]+(?:\\s*=\\s*(?:\"[^\"]*\"|'[^']*'|[^\\s'\">=]+(?=[\\s>]))|(?=[\\s/>])))+)?\\s*\\/?>/,\n greedy: true,\n inside: {\n 'tag': {\n pattern: /^<\\/?[^\\s>\\/]+/,\n inside: {\n 'punctuation': /^<\\/?/,\n 'namespace': /^[^\\s>\\/:]+:/\n }\n },\n 'attr-value': {\n pattern: /=\\s*(?:\"[^\"]*\"|'[^']*'|[^\\s'\">=]+)/,\n inside: {\n 'punctuation': [{\n pattern: /^=/,\n alias: 'attr-equals'\n }, /\"|'/]\n }\n },\n 'punctuation': /\\/?>/,\n 'attr-name': {\n pattern: /[^\\s>\\/]+/,\n inside: {\n 'namespace': /^[^\\s>\\/:]+:/\n }\n }\n }\n },\n 'entity': [{\n pattern: /&[\\da-z]{1,8};/i,\n alias: 'named-entity'\n }, /&#x?[\\da-f]{1,8};/i]\n};\nPrism.languages.markup['tag'].inside['attr-value'].inside['entity'] = Prism.languages.markup['entity'];\nPrism.languages.markup['doctype'].inside['internal-subset'].inside = Prism.languages.markup; // Plugin to make entity title show the real entity, idea by Roman Komarov\n\nPrism.hooks.add('wrap', function (env) {\n if (env.type === 'entity') {\n env.attributes['title'] = env.content.replace(/&/, '&');\n }\n});\nObject.defineProperty(Prism.languages.markup.tag, 'addInlined', {\n /**\n * Adds an inlined language to markup.\n *\n * An example of an inlined language is CSS with `<style>` tags.\n *\n * @param {string} tagName The name of the tag that contains the inlined language. This name will be treated as\n * case insensitive.\n * @param {string} lang The language key.\n * @example\n * addInlined('style', 'css');\n */\n value: function addInlined(tagName, lang) {\n var includedCdataInside = {};\n includedCdataInside['language-' + lang] = {\n pattern: /(^<!\\[CDATA\\[)[\\s\\S]+?(?=\\]\\]>$)/i,\n lookbehind: true,\n inside: Prism.languages[lang]\n };\n includedCdataInside['cdata'] = /^<!\\[CDATA\\[|\\]\\]>$/i;\n var inside = {\n 'included-cdata': {\n pattern: /<!\\[CDATA\\[[\\s\\S]*?\\]\\]>/i,\n inside: includedCdataInside\n }\n };\n inside['language-' + lang] = {\n pattern: /[\\s\\S]+/,\n inside: Prism.languages[lang]\n };\n var def = {};\n def[tagName] = {\n pattern: RegExp(/(<__[^>]*>)(?:<!\\[CDATA\\[(?:[^\\]]|\\](?!\\]>))*\\]\\]>|(?!<!\\[CDATA\\[)[\\s\\S])*?(?=<\\/__>)/.source.replace(/__/g, function () {\n return tagName;\n }), 'i'),\n lookbehind: true,\n greedy: true,\n inside: inside\n };\n Prism.languages.insertBefore('markup', 'cdata', def);\n }\n});\nPrism.languages.html = Prism.languages.markup;\nPrism.languages.mathml = Prism.languages.markup;\nPrism.languages.svg = Prism.languages.markup;\nPrism.languages.xml = Prism.languages.extend('markup', {});\nPrism.languages.ssml = Prism.languages.xml;\nPrism.languages.atom = Prism.languages.xml;\nPrism.languages.rss = Prism.languages.xml;\n/* **********************************************\n Begin prism-css.js\n********************************************** */\n\n(function (Prism) {\n var string = /(\"|')(?:\\\\(?:\\r\\n|[\\s\\S])|(?!\\1)[^\\\\\\r\\n])*\\1/;\n Prism.languages.css = {\n 'comment': /\\/\\*[\\s\\S]*?\\*\\//,\n 'atrule': {\n pattern: /@[\\w-](?:[^;{\\s]|\\s+(?![\\s{]))*(?:;|(?=\\s*\\{))/,\n inside: {\n 'rule': /^@[\\w-]+/,\n 'selector-function-argument': {\n pattern: /(\\bselector\\s*\\(\\s*(?![\\s)]))(?:[^()\\s]|\\s+(?![\\s)])|\\((?:[^()]|\\([^()]*\\))*\\))+(?=\\s*\\))/,\n lookbehind: true,\n alias: 'selector'\n },\n 'keyword': {\n pattern: /(^|[^\\w-])(?:and|not|only|or)(?![\\w-])/,\n lookbehind: true\n } // See rest below\n\n }\n },\n 'url': {\n // https://drafts.csswg.org/css-values-3/#urls\n pattern: RegExp('\\\\burl\\\\((?:' + string.source + '|' + /(?:[^\\\\\\r\\n()\"']|\\\\[\\s\\S])*/.source + ')\\\\)', 'i'),\n greedy: true,\n inside: {\n 'function': /^url/i,\n 'punctuation': /^\\(|\\)$/,\n 'string': {\n pattern: RegExp('^' + string.source + '$'),\n alias: 'url'\n }\n }\n },\n 'selector': RegExp('[^{}\\\\s](?:[^{};\"\\'\\\\s]|\\\\s+(?![\\\\s{])|' + string.source + ')*(?=\\\\s*\\\\{)'),\n 'string': {\n pattern: string,\n greedy: true\n },\n 'property': /(?!\\s)[-_a-z\\xA0-\\uFFFF](?:(?!\\s)[-\\w\\xA0-\\uFFFF])*(?=\\s*:)/i,\n 'important': /!important\\b/i,\n 'function': /[-a-z0-9]+(?=\\()/i,\n 'punctuation': /[(){};:,]/\n };\n Prism.languages.css['atrule'].inside.rest = Prism.languages.css;\n var markup = Prism.languages.markup;\n\n if (markup) {\n markup.tag.addInlined('style', 'css');\n Prism.languages.insertBefore('inside', 'attr-value', {\n 'style-attr': {\n pattern: /(^|[\"'\\s])style\\s*=\\s*(?:\"[^\"]*\"|'[^']*')/i,\n lookbehind: true,\n inside: {\n 'attr-value': {\n pattern: /=\\s*(?:\"[^\"]*\"|'[^']*'|[^\\s'\">=]+)/,\n inside: {\n 'style': {\n pattern: /([\"'])[\\s\\S]+(?=[\"']$)/,\n lookbehind: true,\n alias: 'language-css',\n inside: Prism.languages.css\n },\n 'punctuation': [{\n pattern: /^=/,\n alias: 'attr-equals'\n }, /\"|'/]\n }\n },\n 'attr-name': /^style/i\n }\n }\n }, markup.tag);\n }\n})(Prism);\n/* **********************************************\n Begin prism-clike.js\n********************************************** */\n\n\nPrism.languages.clike = {\n 'comment': [{\n pattern: /(^|[^\\\\])\\/\\*[\\s\\S]*?(?:\\*\\/|$)/,\n lookbehind: true,\n greedy: true\n }, {\n pattern: /(^|[^\\\\:])\\/\\/.*/,\n lookbehind: true,\n greedy: true\n }],\n 'string': {\n pattern: /([\"'])(?:\\\\(?:\\r\\n|[\\s\\S])|(?!\\1)[^\\\\\\r\\n])*\\1/,\n greedy: true\n },\n 'class-name': {\n pattern: /(\\b(?:class|interface|extends|implements|trait|instanceof|new)\\s+|\\bcatch\\s+\\()[\\w.\\\\]+/i,\n lookbehind: true,\n inside: {\n 'punctuation': /[.\\\\]/\n }\n },\n 'keyword': /\\b(?:if|else|while|do|for|return|in|instanceof|function|new|try|throw|catch|finally|null|break|continue)\\b/,\n 'boolean': /\\b(?:true|false)\\b/,\n 'function': /\\w+(?=\\()/,\n 'number': /\\b0x[\\da-f]+\\b|(?:\\b\\d+(?:\\.\\d*)?|\\B\\.\\d+)(?:e[+-]?\\d+)?/i,\n 'operator': /[<>]=?|[!=]=?=?|--?|\\+\\+?|&&?|\\|\\|?|[?*/~^%]/,\n 'punctuation': /[{}[\\];(),.:]/\n};\n/* **********************************************\n Begin prism-javascript.js\n********************************************** */\n\nPrism.languages.javascript = Prism.languages.extend('clike', {\n 'class-name': [Prism.languages.clike['class-name'], {\n pattern: /(^|[^$\\w\\xA0-\\uFFFF])(?!\\s)[_$A-Z\\xA0-\\uFFFF](?:(?!\\s)[$\\w\\xA0-\\uFFFF])*(?=\\.(?:prototype|constructor))/,\n lookbehind: true\n }],\n 'keyword': [{\n pattern: /((?:^|})\\s*)(?:catch|finally)\\b/,\n lookbehind: true\n }, {\n pattern: /(^|[^.]|\\.\\.\\.\\s*)\\b(?:as|async(?=\\s*(?:function\\b|\\(|[$\\w\\xA0-\\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|for|from|function|(?:get|set)(?=\\s*[\\[$\\w\\xA0-\\uFFFF])|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\\b/,\n lookbehind: true\n }],\n // Allow for all non-ASCII characters (See http://stackoverflow.com/a/2008444)\n 'function': /#?(?!\\s)[_$a-zA-Z\\xA0-\\uFFFF](?:(?!\\s)[$\\w\\xA0-\\uFFFF])*(?=\\s*(?:\\.\\s*(?:apply|bind|call)\\s*)?\\()/,\n 'number': /\\b(?:(?:0[xX](?:[\\dA-Fa-f](?:_[\\dA-Fa-f])?)+|0[bB](?:[01](?:_[01])?)+|0[oO](?:[0-7](?:_[0-7])?)+)n?|(?:\\d(?:_\\d)?)+n|NaN|Infinity)\\b|(?:\\b(?:\\d(?:_\\d)?)+\\.?(?:\\d(?:_\\d)?)*|\\B\\.(?:\\d(?:_\\d)?)+)(?:[Ee][+-]?(?:\\d(?:_\\d)?)+)?/,\n 'operator': /--|\\+\\+|\\*\\*=?|=>|&&=?|\\|\\|=?|[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\\.{3}|\\?\\?=?|\\?\\.?|[~:]/\n});\nPrism.languages.javascript['class-name'][0].pattern = /(\\b(?:class|interface|extends|implements|instanceof|new)\\s+)[\\w.\\\\]+/;\nPrism.languages.insertBefore('javascript', 'keyword', {\n 'regex': {\n pattern: /((?:^|[^$\\w\\xA0-\\uFFFF.\"'\\])\\s]|\\b(?:return|yield))\\s*)\\/(?:\\[(?:[^\\]\\\\\\r\\n]|\\\\.)*]|\\\\.|[^/\\\\\\[\\r\\n])+\\/[gimyus]{0,6}(?=(?:\\s|\\/\\*(?:[^*]|\\*(?!\\/))*\\*\\/)*(?:$|[\\r\\n,.;:})\\]]|\\/\\/))/,\n lookbehind: true,\n greedy: true,\n inside: {\n 'regex-source': {\n pattern: /^(\\/)[\\s\\S]+(?=\\/[a-z]*$)/,\n lookbehind: true,\n alias: 'language-regex',\n inside: Prism.languages.regex\n },\n 'regex-flags': /[a-z]+$/,\n 'regex-delimiter': /^\\/|\\/$/\n }\n },\n // This must be declared before keyword because we use \"function\" inside the look-forward\n 'function-variable': {\n pattern: /#?(?!\\s)[_$a-zA-Z\\xA0-\\uFFFF](?:(?!\\s)[$\\w\\xA0-\\uFFFF])*(?=\\s*[=:]\\s*(?:async\\s*)?(?:\\bfunction\\b|(?:\\((?:[^()]|\\([^()]*\\))*\\)|(?!\\s)[_$a-zA-Z\\xA0-\\uFFFF](?:(?!\\s)[$\\w\\xA0-\\uFFFF])*)\\s*=>))/,\n alias: 'function'\n },\n 'parameter': [{\n pattern: /(function(?:\\s+(?!\\s)[_$a-zA-Z\\xA0-\\uFFFF](?:(?!\\s)[$\\w\\xA0-\\uFFFF])*)?\\s*\\(\\s*)(?!\\s)(?:[^()\\s]|\\s+(?![\\s)])|\\([^()]*\\))+(?=\\s*\\))/,\n lookbehind: true,\n inside: Prism.languages.javascript\n }, {\n pattern: /(?!\\s)[_$a-zA-Z\\xA0-\\uFFFF](?:(?!\\s)[$\\w\\xA0-\\uFFFF])*(?=\\s*=>)/i,\n inside: Prism.languages.javascript\n }, {\n pattern: /(\\(\\s*)(?!\\s)(?:[^()\\s]|\\s+(?![\\s)])|\\([^()]*\\))+(?=\\s*\\)\\s*=>)/,\n lookbehind: true,\n inside: Prism.languages.javascript\n }, {\n pattern: /((?:\\b|\\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\\w\\xA0-\\uFFFF]))(?:(?!\\s)[_$a-zA-Z\\xA0-\\uFFFF](?:(?!\\s)[$\\w\\xA0-\\uFFFF])*\\s*)\\(\\s*|\\]\\s*\\(\\s*)(?!\\s)(?:[^()\\s]|\\s+(?![\\s)])|\\([^()]*\\))+(?=\\s*\\)\\s*\\{)/,\n lookbehind: true,\n inside: Prism.languages.javascript\n }],\n 'constant': /\\b[A-Z](?:[A-Z_]|\\dx?)*\\b/\n});\nPrism.languages.insertBefore('javascript', 'string', {\n 'template-string': {\n pattern: /`(?:\\\\[\\s\\S]|\\${(?:[^{}]|{(?:[^{}]|{[^}]*})*})+}|(?!\\${)[^\\\\`])*`/,\n greedy: true,\n inside: {\n 'template-punctuation': {\n pattern: /^`|`$/,\n alias: 'string'\n },\n 'interpolation': {\n pattern: /((?:^|[^\\\\])(?:\\\\{2})*)\\${(?:[^{}]|{(?:[^{}]|{[^}]*})*})+}/,\n lookbehind: true,\n inside: {\n 'interpolation-punctuation': {\n pattern: /^\\${|}$/,\n alias: 'punctuation'\n },\n rest: Prism.languages.javascript\n }\n },\n 'string': /[\\s\\S]+/\n }\n }\n});\n\nif (Prism.languages.markup) {\n Prism.languages.markup.tag.addInlined('script', 'javascript');\n}\n\nPrism.languages.js = Prism.languages.javascript;\n/* **********************************************\n Begin prism-file-highlight.js\n********************************************** */\n\n(function () {\n if (typeof self === 'undefined' || !self.Prism || !self.document) {\n return;\n } // https://developer.mozilla.org/en-US/docs/Web/API/Element/matches#Polyfill\n\n\n if (!Element.prototype.matches) {\n Element.prototype.matches = Element.prototype.msMatchesSelector || Element.prototype.webkitMatchesSelector;\n }\n\n var Prism = window.Prism;\n var LOADING_MESSAGE = 'Loading…';\n\n var FAILURE_MESSAGE = function FAILURE_MESSAGE(status, message) {\n return '✖ Error ' + status + ' while fetching file: ' + message;\n };\n\n var FAILURE_EMPTY_MESSAGE = '✖ Error: File does not exist or is empty';\n var EXTENSIONS = {\n 'js': 'javascript',\n 'py': 'python',\n 'rb': 'ruby',\n 'ps1': 'powershell',\n 'psm1': 'powershell',\n 'sh': 'bash',\n 'bat': 'batch',\n 'h': 'c',\n 'tex': 'latex'\n };\n var STATUS_ATTR = 'data-src-status';\n var STATUS_LOADING = 'loading';\n var STATUS_LOADED = 'loaded';\n var STATUS_FAILED = 'failed';\n var SELECTOR = 'pre[data-src]:not([' + STATUS_ATTR + '=\"' + STATUS_LOADED + '\"])' + ':not([' + STATUS_ATTR + '=\"' + STATUS_LOADING + '\"])';\n var lang = /\\blang(?:uage)?-([\\w-]+)\\b/i;\n /**\n * Sets the Prism `language-xxxx` or `lang-xxxx` class to the given language.\n *\n * @param {HTMLElement} element\n * @param {string} language\n * @returns {void}\n */\n\n function setLanguageClass(element, language) {\n var className = element.className;\n className = className.replace(lang, ' ') + ' language-' + language;\n element.className = className.replace(/\\s+/g, ' ').trim();\n }\n\n Prism.hooks.add('before-highlightall', function (env) {\n env.selector += ', ' + SELECTOR;\n });\n Prism.hooks.add('before-sanity-check', function (env) {\n var pre =\n /** @type {HTMLPreElement} */\n env.element;\n\n if (pre.matches(SELECTOR)) {\n env.code = ''; // fast-path the whole thing and go to complete\n\n pre.setAttribute(STATUS_ATTR, STATUS_LOADING); // mark as loading\n // add code element with loading message\n\n var code = pre.appendChild(document.createElement('CODE'));\n code.textContent = LOADING_MESSAGE;\n var src = pre.getAttribute('data-src');\n var language = env.language;\n\n if (language === 'none') {\n // the language might be 'none' because there is no language set;\n // in this case, we want to use the extension as the language\n var extension = (/\\.(\\w+)$/.exec(src) || [, 'none'])[1];\n language = EXTENSIONS[extension] || extension;\n } // set language classes\n\n\n setLanguageClass(code, language);\n setLanguageClass(pre, language); // preload the language\n\n var autoloader = Prism.plugins.autoloader;\n\n if (autoloader) {\n autoloader.loadLanguages(language);\n } // load file\n\n\n var xhr = new XMLHttpRequest();\n xhr.open('GET', src, true);\n\n xhr.onreadystatechange = function () {\n if (xhr.readyState == 4) {\n if (xhr.status < 400 && xhr.responseText) {\n // mark as loaded\n pre.setAttribute(STATUS_ATTR, STATUS_LOADED); // highlight code\n\n code.textContent = xhr.responseText;\n Prism.highlightElement(code);\n } else {\n // mark as failed\n pre.setAttribute(STATUS_ATTR, STATUS_FAILED);\n\n if (xhr.status >= 400) {\n code.textContent = FAILURE_MESSAGE(xhr.status, xhr.statusText);\n } else {\n code.textContent = FAILURE_EMPTY_MESSAGE;\n }\n }\n }\n };\n\n xhr.send(null);\n }\n });\n Prism.plugins.fileHighlight = {\n /**\n * Executes the File Highlight plugin for all matching `pre` elements under the given container.\n *\n * Note: Elements which are already loaded or currently loading will not be touched by this method.\n *\n * @param {ParentNode} [container=document]\n */\n highlight: function highlight(container) {\n var elements = (container || document).querySelectorAll(SELECTOR);\n\n for (var i = 0, element; element = elements[i++];) {\n Prism.highlightElement(element);\n }\n }\n };\n var logged = false;\n /** @deprecated Use `Prism.plugins.fileHighlight.highlight` instead. */\n\n Prism.fileHighlight = function () {\n if (!logged) {\n console.warn('Prism.fileHighlight is deprecated. Use `Prism.plugins.fileHighlight.highlight` instead.');\n logged = true;\n }\n\n Prism.plugins.fileHighlight.highlight.apply(this, arguments);\n };\n})();","!function (e) {\n var n = /[*&][^\\s[\\]{},]+/,\n r = /!(?:<[\\w\\-%#;/?:@&=+$,.!~*'()[\\]]+>|(?:[a-zA-Z\\d-]*!)?[\\w\\-%#;/?:@&=+$.~*'()]+)?/,\n t = \"(?:\" + r.source + \"(?:[ \\t]+\" + n.source + \")?|\" + n.source + \"(?:[ \\t]+\" + r.source + \")?)\",\n a = \"(?:[^\\\\s\\\\x00-\\\\x08\\\\x0e-\\\\x1f!\\\"#%&'*,\\\\-:>?@[\\\\]`{|}\\\\x7f-\\\\x84\\\\x86-\\\\x9f\\\\ud800-\\\\udfff\\\\ufffe\\\\uffff]|[?:-]<PLAIN>)(?:[ \\t]*(?:(?![#:])<PLAIN>|:<PLAIN>))*\".replace(/<PLAIN>/g, function () {\n return \"[^\\\\s\\\\x00-\\\\x08\\\\x0e-\\\\x1f,[\\\\]{}\\\\x7f-\\\\x84\\\\x86-\\\\x9f\\\\ud800-\\\\udfff\\\\ufffe\\\\uffff]\";\n }),\n d = \"\\\"(?:[^\\\"\\\\\\\\\\r\\n]|\\\\\\\\.)*\\\"|'(?:[^'\\\\\\\\\\r\\n]|\\\\\\\\.)*'\";\n\n function o(e, n) {\n n = (n || \"\").replace(/m/g, \"\") + \"m\";\n var r = \"([:\\\\-,[{]\\\\s*(?:\\\\s<<prop>>[ \\t]+)?)(?:<<value>>)(?=[ \\t]*(?:$|,|]|}|(?:[\\r\\n]\\\\s*)?#))\".replace(/<<prop>>/g, function () {\n return t;\n }).replace(/<<value>>/g, function () {\n return e;\n });\n return RegExp(r, n);\n }\n\n e.languages.yaml = {\n scalar: {\n pattern: RegExp(\"([\\\\-:]\\\\s*(?:\\\\s<<prop>>[ \\t]+)?[|>])[ \\t]*(?:((?:\\r?\\n|\\r)[ \\t]+)\\\\S[^\\r\\n]*(?:\\\\2[^\\r\\n]+)*)\".replace(/<<prop>>/g, function () {\n return t;\n })),\n lookbehind: !0,\n alias: \"string\"\n },\n comment: /#.*/,\n key: {\n pattern: RegExp(\"((?:^|[:\\\\-,[{\\r\\n?])[ \\t]*(?:<<prop>>[ \\t]+)?)<<key>>(?=\\\\s*:\\\\s)\".replace(/<<prop>>/g, function () {\n return t;\n }).replace(/<<key>>/g, function () {\n return \"(?:\" + a + \"|\" + d + \")\";\n })),\n lookbehind: !0,\n greedy: !0,\n alias: \"atrule\"\n },\n directive: {\n pattern: /(^[ \\t]*)%.+/m,\n lookbehind: !0,\n alias: \"important\"\n },\n datetime: {\n pattern: o(\"\\\\d{4}-\\\\d\\\\d?-\\\\d\\\\d?(?:[tT]|[ \\t]+)\\\\d\\\\d?:\\\\d{2}:\\\\d{2}(?:\\\\.\\\\d*)?(?:[ \\t]*(?:Z|[-+]\\\\d\\\\d?(?::\\\\d{2})?))?|\\\\d{4}-\\\\d{2}-\\\\d{2}|\\\\d\\\\d?:\\\\d{2}(?::\\\\d{2}(?:\\\\.\\\\d*)?)?\"),\n lookbehind: !0,\n alias: \"number\"\n },\n boolean: {\n pattern: o(\"true|false\", \"i\"),\n lookbehind: !0,\n alias: \"important\"\n },\n null: {\n pattern: o(\"null|~\", \"i\"),\n lookbehind: !0,\n alias: \"important\"\n },\n string: {\n pattern: o(d),\n lookbehind: !0,\n greedy: !0\n },\n number: {\n pattern: o(\"[+-]?(?:0x[\\\\da-f]+|0o[0-7]+|(?:\\\\d+(?:\\\\.\\\\d*)?|\\\\.?\\\\d+)(?:e[+-]?\\\\d+)?|\\\\.inf|\\\\.nan)\", \"i\"),\n lookbehind: !0\n },\n tag: r,\n important: n,\n punctuation: /---|[:[\\]{}\\-,|>?]|\\.\\.\\./\n }, e.languages.yml = e.languages.yaml;\n}(Prism);"],"sourceRoot":""}
\ No newline at end of file
diff --git a/component---src-templates-doc-jsx-5366dbd1b50f3447a412.js b/component---src-templates-doc-jsx-5366dbd1b50f3447a412.js
deleted file mode 100644
index b99f07b..0000000
--- a/component---src-templates-doc-jsx-5366dbd1b50f3447a412.js
+++ /dev/null
@@ -1,2 +0,0 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[5],{"/Des":function(e,t){Prism.languages.markup={comment:/<!--[\s\S]*?-->/,prolog:/<\?[\s\S]+?\?>/,doctype:{pattern:/<!DOCTYPE(?:[^>"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:(?!<!--)[^"'\]]|"[^"]*"|'[^']*'|<!--[\s\S]*?-->)*\]\s*)?>/i,greedy:!0},cdata:/<!\[CDATA\[[\s\S]*?]]>/i,tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/i,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/i,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/i,inside:{punctuation:[/^=/,{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:/&#?[\da-z]{1,8};/i},Prism.languages.markup.tag.inside["attr-value"].inside.entity=Prism.languages.markup.entity,Prism.hooks.add("wrap",(function(e){"entity"===e.type&&(e.attributes.title=e.content.replace(/&/,"&"))})),Object.defineProperty(Prism.languages.markup.tag,"addInlined",{value:function(e,t){var a={};a["language-"+t]={pattern:/(^<!\[CDATA\[)[\s\S]+?(?=\]\]>$)/i,lookbehind:!0,inside:Prism.languages[t]},a.cdata=/^<!\[CDATA\[|\]\]>$/i;var n={"included-cdata":{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,inside:a}};n["language-"+t]={pattern:/[\s\S]+/,inside:Prism.languages[t]};var r={};r[e]={pattern:RegExp("(<__[\\s\\S]*?>)(?:<!\\[CDATA\\[[\\s\\S]*?\\]\\]>\\s*|[\\s\\S])*?(?=<\\/__>)".replace(/__/g,(function(){return e})),"i"),lookbehind:!0,greedy:!0,inside:n},Prism.languages.insertBefore("markup","cdata",r)}}),Prism.languages.xml=Prism.languages.extend("markup",{}),Prism.languages.html=Prism.languages.markup,Prism.languages.mathml=Prism.languages.markup,Prism.languages.svg=Prism.languages.markup},"2NnL":function(e,t){var a,n,r;a=Prism,n=/\b(?:abstract|assert|boolean|break|byte|case|catch|char|class|const|continue|default|do|double|else|enum|exports|extends|final|finally|float|for|goto|if|implements|import|instanceof|int|interface|long|module|native|new|null|open|opens|package|private|protected|provides|public|record|requires|return|short|static|strictfp|super|switch|synchronized|this|throw|throws|to|transient|transitive|try|uses|var|void|volatile|while|with|yield)\b/,r=/\b[A-Z](?:\w*[a-z]\w*)?\b/,a.languages.java=a.languages.extend("clike",{"class-name":[r,/\b[A-Z]\w*(?=\s+\w+\s*[;,=())])/],keyword:n,function:[a.languages.clike.function,{pattern:/(\:\:)[a-z_]\w*/,lookbehind:!0}],number:/\b0b[01][01_]*L?\b|\b0x[\da-f_]*\.?[\da-f_p+-]+\b|(?:\b\d[\d_]*\.?[\d_]*|\B\.\d[\d_]*)(?:e[+-]?\d[\d_]*)?[dfl]?/i,operator:{pattern:/(^|[^.])(?:<<=?|>>>?=?|->|--|\+\+|&&|\|\||::|[?:~]|[-+*/%&|^!=<>]=?)/m,lookbehind:!0}}),a.languages.insertBefore("java","string",{"triple-quoted-string":{pattern:/"""[ \t]*[\r\n](?:(?:"|"")?(?:\\.|[^"\\]))*"""/,greedy:!0,alias:"string"}}),a.languages.insertBefore("java","class-name",{annotation:{alias:"punctuation",pattern:/(^|[^.])@\w+/,lookbehind:!0},namespace:{pattern:/(\b(?:exports|import(?:\s+static)?|module|open|opens|package|provides|requires|to|transitive|uses|with)\s+)[a-z]\w*(?:\.[a-z]\w*)+/,lookbehind:!0,inside:{punctuation:/\./}},generics:{pattern:/<(?:[\w\s,.&?]|<(?:[\w\s,.&?]|<(?:[\w\s,.&?]|<[\w\s,.&?]*>)*>)*>)*>/,inside:{"class-name":r,keyword:n,punctuation:/[<>(),.:]/,operator:/[?&|]/}}})},DjDE:function(e,t,a){"use strict";a.r(t),a.d(t,"pageQuery",(function(){return o}));var n=a("q1tI"),r=a.n(n),s=a("Rb52"),i=a("dmsj"),l=(a("wZee"),a("2NnL"),a("/Des"),a("zSud"),a("E8R+"),a("+5i3"),function(){window.Prism.highlightAll()}),o="2561949074";t.default=function(e){var t=e.data.asciidocCopy,a=t.document,o=a.title,u=a.subtitle,c=t.html,d=e.pageContext.langKey;return Object(n.useEffect)(l,[]),r.a.createElement("div",{className:"eclipse-jkube"},r.a.createElement(i.a,{title:o,description:u,lang:d}),r.a.createElement(s.a,{lang:d}),r.a.createElement("div",{className:"eclipse-jkube__documentation book toc2 toc-left"},r.a.createElement("div",{className:"eclipse-jkube__documentation-content",dangerouslySetInnerHTML:{__html:c}})))}},"E8R+":function(e,t,a){},wZee:function(e,t,a){(function(t){var a=function(e){var t=/\blang(?:uage)?-([\w-]+)\b/i,a=0,n={manual:e.Prism&&e.Prism.manual,disableWorkerMessageHandler:e.Prism&&e.Prism.disableWorkerMessageHandler,util:{encode:function e(t){return t instanceof r?new r(t.type,e(t.content),t.alias):Array.isArray(t)?t.map(e):t.replace(/&/g,"&").replace(/</g,"<").replace(/\u00a0/g," ")},type:function(e){return Object.prototype.toString.call(e).slice(8,-1)},objId:function(e){return e.__id||Object.defineProperty(e,"__id",{value:++a}),e.__id},clone:function e(t,a){var r,s,i=n.util.type(t);switch(a=a||{},i){case"Object":if(s=n.util.objId(t),a[s])return a[s];for(var l in r={},a[s]=r,t)t.hasOwnProperty(l)&&(r[l]=e(t[l],a));return r;case"Array":return s=n.util.objId(t),a[s]?a[s]:(r=[],a[s]=r,t.forEach((function(t,n){r[n]=e(t,a)})),r);default:return t}},getLanguage:function(e){for(;e&&!t.test(e.className);)e=e.parentElement;return e?(e.className.match(t)||[,"none"])[1].toLowerCase():"none"},currentScript:function(){if("undefined"==typeof document)return null;if("currentScript"in document)return document.currentScript;try{throw new Error}catch(n){var e=(/at [^(\r\n]*\((.*):.+:.+\)$/i.exec(n.stack)||[])[1];if(e){var t=document.getElementsByTagName("script");for(var a in t)if(t[a].src==e)return t[a]}return null}}},languages:{extend:function(e,t){var a=n.util.clone(n.languages[e]);for(var r in t)a[r]=t[r];return a},insertBefore:function(e,t,a,r){var s=(r=r||n.languages)[e],i={};for(var l in s)if(s.hasOwnProperty(l)){if(l==t)for(var o in a)a.hasOwnProperty(o)&&(i[o]=a[o]);a.hasOwnProperty(l)||(i[l]=s[l])}var u=r[e];return r[e]=i,n.languages.DFS(n.languages,(function(t,a){a===u&&t!=e&&(this[t]=i)})),i},DFS:function e(t,a,r,s){s=s||{};var i=n.util.objId;for(var l in t)if(t.hasOwnProperty(l)){a.call(t,l,t[l],r||l);var o=t[l],u=n.util.type(o);"Object"!==u||s[i(o)]?"Array"!==u||s[i(o)]||(s[i(o)]=!0,e(o,a,l,s)):(s[i(o)]=!0,e(o,a,null,s))}}},plugins:{},highlightAll:function(e,t){n.highlightAllUnder(document,e,t)},highlightAllUnder:function(e,t,a){var r={callback:a,container:e,selector:'code[class*="language-"], [class*="language-"] code, code[class*="lang-"], [class*="lang-"] code'};n.hooks.run("before-highlightall",r),r.elements=Array.prototype.slice.apply(r.container.querySelectorAll(r.selector)),n.hooks.run("before-all-elements-highlight",r);for(var s,i=0;s=r.elements[i++];)n.highlightElement(s,!0===t,r.callback)},highlightElement:function(a,r,s){var i=n.util.getLanguage(a),l=n.languages[i];a.className=a.className.replace(t,"").replace(/\s+/g," ")+" language-"+i;var o=a.parentNode;o&&"pre"===o.nodeName.toLowerCase()&&(o.className=o.className.replace(t,"").replace(/\s+/g," ")+" language-"+i);var u={element:a,language:i,grammar:l,code:a.textContent};function c(e){u.highlightedCode=e,n.hooks.run("before-insert",u),u.element.innerHTML=u.highlightedCode,n.hooks.run("after-highlight",u),n.hooks.run("complete",u),s&&s.call(u.element)}if(n.hooks.run("before-sanity-check",u),!u.code)return n.hooks.run("complete",u),void(s&&s.call(u.element));if(n.hooks.run("before-highlight",u),u.grammar)if(r&&e.Worker){var d=new Worker(n.filename);d.onmessage=function(e){c(e.data)},d.postMessage(JSON.stringify({language:u.language,code:u.code,immediateClose:!0}))}else c(n.highlight(u.code,u.grammar,u.language));else c(n.util.encode(u.code))},highlight:function(e,t,a){var s={code:e,grammar:t,language:a};return n.hooks.run("before-tokenize",s),s.tokens=n.tokenize(s.code,s.grammar),n.hooks.run("after-tokenize",s),r.stringify(n.util.encode(s.tokens),s.language)},tokenize:function(e,t){var a=t.rest;if(a){for(var o in a)t[o]=a[o];delete t.rest}var u=new s;return i(u,u.head,e),function e(t,a,s,o,u,c,d){for(var g in s)if(s.hasOwnProperty(g)&&s[g]){var p=s[g];p=Array.isArray(p)?p:[p];for(var f=0;f<p.length;++f){if(d&&d==g+","+f)return;var m=p[f],h=m.inside,v=!!m.lookbehind,b=!!m.greedy,y=0,k=m.alias;if(b&&!m.pattern.global){var w=m.pattern.toString().match(/[imsuy]*$/)[0];m.pattern=RegExp(m.pattern.source,w+"g")}m=m.pattern||m;for(var x=o.next,F=u;x!==a.tail;F+=x.value.length,x=x.next){var A=x.value;if(a.length>t.length)return;if(!(A instanceof r)){var S=1;if(b&&x!=a.tail.prev){if(m.lastIndex=F,!(j=m.exec(t)))break;var _=j.index+(v&&j[1]?j[1].length:0),$=j.index+j[0].length,P=F;for(P+=x.value.length;_>=P;)x=x.next,P+=x.value.length;if(P-=x.value.length,F=P,x.value instanceof r)continue;for(var E=x;E!==a.tail&&(P<$||"string"==typeof E.value&&!E.prev.value.greedy);E=E.next)S++,P+=E.value.length;S--,A=t.slice(F,P),j.index-=F}else{m.lastIndex=0;var j=m.exec(A)}if(j){v&&(y=j[1]?j[1].length:0);_=j.index+y,j=j[0].slice(y),$=_+j.length;var C=A.slice(0,_),z=A.slice($),N=x.prev;C&&(N=i(a,N,C),F+=C.length),l(a,N,S);var T=new r(g,h?n.tokenize(j,h):j,k,j,b);if(x=i(a,N,T),z&&i(a,x,z),S>1&&e(t,a,s,x.prev,F,!0,g+","+f),c)break}else if(c)break}}}}}(e,u,t,u.head,0),function(e){var t=[],a=e.head.next;for(;a!==e.tail;)t.push(a.value),a=a.next;return t}(u)},hooks:{all:{},add:function(e,t){var a=n.hooks.all;a[e]=a[e]||[],a[e].push(t)},run:function(e,t){var a=n.hooks.all[e];if(a&&a.length)for(var r,s=0;r=a[s++];)r(t)}},Token:r};function r(e,t,a,n,r){this.type=e,this.content=t,this.alias=a,this.length=0|(n||"").length,this.greedy=!!r}function s(){var e={value:null,prev:null,next:null},t={value:null,prev:e,next:null};e.next=t,this.head=e,this.tail=t,this.length=0}function i(e,t,a){var n=t.next,r={value:a,prev:t,next:n};return t.next=r,n.prev=r,e.length++,r}function l(e,t,a){for(var n=t.next,r=0;r<a&&n!==e.tail;r++)n=n.next;t.next=n,n.prev=t,e.length-=r}if(e.Prism=n,r.stringify=function e(t,a){if("string"==typeof t)return t;if(Array.isArray(t)){var r="";return t.forEach((function(t){r+=e(t,a)})),r}var s={type:t.type,content:e(t.content,a),tag:"span",classes:["token",t.type],attributes:{},language:a},i=t.alias;i&&(Array.isArray(i)?Array.prototype.push.apply(s.classes,i):s.classes.push(i)),n.hooks.run("wrap",s);var l="";for(var o in s.attributes)l+=" "+o+'="'+(s.attributes[o]||"").replace(/"/g,""")+'"';return"<"+s.tag+' class="'+s.classes.join(" ")+'"'+l+">"+s.content+"</"+s.tag+">"},!e.document)return e.addEventListener?(n.disableWorkerMessageHandler||e.addEventListener("message",(function(t){var a=JSON.parse(t.data),r=a.language,s=a.code,i=a.immediateClose;e.postMessage(n.highlight(s,n.languages[r],r)),i&&e.close()}),!1),n):n;var o=n.util.currentScript();function u(){n.manual||n.highlightAll()}if(o&&(n.filename=o.src,o.hasAttribute("data-manual")&&(n.manual=!0)),!n.manual){var c=document.readyState;"loading"===c||"interactive"===c&&o&&o.defer?document.addEventListener("DOMContentLoaded",u):window.requestAnimationFrame?window.requestAnimationFrame(u):window.setTimeout(u,16)}return n}("undefined"!=typeof window?window:"undefined"!=typeof WorkerGlobalScope&&self instanceof WorkerGlobalScope?self:{});e.exports&&(e.exports=a),void 0!==t&&(t.Prism=a),a.languages.markup={comment:/<!--[\s\S]*?-->/,prolog:/<\?[\s\S]+?\?>/,doctype:{pattern:/<!DOCTYPE(?:[^>"'[\]]|"[^"]*"|'[^']*')+(?:\[(?:(?!<!--)[^"'\]]|"[^"]*"|'[^']*'|<!--[\s\S]*?-->)*\]\s*)?>/i,greedy:!0},cdata:/<!\[CDATA\[[\s\S]*?]]>/i,tag:{pattern:/<\/?(?!\d)[^\s>\/=$<%]+(?:\s(?:\s*[^\s>\/=]+(?:\s*=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+(?=[\s>]))|(?=[\s/>])))+)?\s*\/?>/i,greedy:!0,inside:{tag:{pattern:/^<\/?[^\s>\/]+/i,inside:{punctuation:/^<\/?/,namespace:/^[^\s>\/:]+:/}},"attr-value":{pattern:/=\s*(?:"[^"]*"|'[^']*'|[^\s'">=]+)/i,inside:{punctuation:[/^=/,{pattern:/^(\s*)["']|["']$/,lookbehind:!0}]}},punctuation:/\/?>/,"attr-name":{pattern:/[^\s>\/]+/,inside:{namespace:/^[^\s>\/:]+:/}}}},entity:/&#?[\da-z]{1,8};/i},a.languages.markup.tag.inside["attr-value"].inside.entity=a.languages.markup.entity,a.hooks.add("wrap",(function(e){"entity"===e.type&&(e.attributes.title=e.content.replace(/&/,"&"))})),Object.defineProperty(a.languages.markup.tag,"addInlined",{value:function(e,t){var n={};n["language-"+t]={pattern:/(^<!\[CDATA\[)[\s\S]+?(?=\]\]>$)/i,lookbehind:!0,inside:a.languages[t]},n.cdata=/^<!\[CDATA\[|\]\]>$/i;var r={"included-cdata":{pattern:/<!\[CDATA\[[\s\S]*?\]\]>/i,inside:n}};r["language-"+t]={pattern:/[\s\S]+/,inside:a.languages[t]};var s={};s[e]={pattern:RegExp(/(<__[\s\S]*?>)(?:<!\[CDATA\[[\s\S]*?\]\]>\s*|[\s\S])*?(?=<\/__>)/.source.replace(/__/g,(function(){return e})),"i"),lookbehind:!0,greedy:!0,inside:r},a.languages.insertBefore("markup","cdata",s)}}),a.languages.xml=a.languages.extend("markup",{}),a.languages.html=a.languages.markup,a.languages.mathml=a.languages.markup,a.languages.svg=a.languages.markup,function(e){var t=/("|')(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/;e.languages.css={comment:/\/\*[\s\S]*?\*\//,atrule:{pattern:/@[\w-]+[\s\S]*?(?:;|(?=\s*\{))/,inside:{rule:/^@[\w-]+/,"selector-function-argument":{pattern:/(\bselector\s*\((?!\s*\))\s*)(?:[^()]|\((?:[^()]|\([^()]*\))*\))+?(?=\s*\))/,lookbehind:!0,alias:"selector"}}},url:{pattern:RegExp("url\\((?:"+t.source+"|[^\n\r()]*)\\)","i"),greedy:!0,inside:{function:/^url/i,punctuation:/^\(|\)$/}},selector:RegExp("[^{}\\s](?:[^{};\"']|"+t.source+")*?(?=\\s*\\{)"),string:{pattern:t,greedy:!0},property:/[-_a-z\xA0-\uFFFF][-\w\xA0-\uFFFF]*(?=\s*:)/i,important:/!important\b/i,function:/[-a-z0-9]+(?=\()/i,punctuation:/[(){};:,]/},e.languages.css.atrule.inside.rest=e.languages.css;var a=e.languages.markup;a&&(a.tag.addInlined("style","css"),e.languages.insertBefore("inside","attr-value",{"style-attr":{pattern:/\s*style=("|')(?:\\[\s\S]|(?!\1)[^\\])*\1/i,inside:{"attr-name":{pattern:/^\s*style/i,inside:a.tag.inside},punctuation:/^\s*=\s*['"]|['"]\s*$/,"attr-value":{pattern:/.+/i,inside:e.languages.css}},alias:"language-css"}},a.tag))}(a),a.languages.clike={comment:[{pattern:/(^|[^\\])\/\*[\s\S]*?(?:\*\/|$)/,lookbehind:!0},{pattern:/(^|[^\\:])\/\/.*/,lookbehind:!0,greedy:!0}],string:{pattern:/(["'])(?:\\(?:\r\n|[\s\S])|(?!\1)[^\\\r\n])*\1/,greedy:!0},"class-name":{pattern:/(\b(?:class|interface|extends|implements|trait|instanceof|new)\s+|\bcatch\s+\()[\w.\\]+/i,lookbehind:!0,inside:{punctuation:/[.\\]/}},keyword:/\b(?:if|else|while|do|for|return|in|instanceof|function|new|try|throw|catch|finally|null|break|continue)\b/,boolean:/\b(?:true|false)\b/,function:/\w+(?=\()/,number:/\b0x[\da-f]+\b|(?:\b\d+\.?\d*|\B\.\d+)(?:e[+-]?\d+)?/i,operator:/[<>]=?|[!=]=?=?|--?|\+\+?|&&?|\|\|?|[?*/~^%]/,punctuation:/[{}[\];(),.:]/},a.languages.javascript=a.languages.extend("clike",{"class-name":[a.languages.clike["class-name"],{pattern:/(^|[^$\w\xA0-\uFFFF])[_$A-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\.(?:prototype|constructor))/,lookbehind:!0}],keyword:[{pattern:/((?:^|})\s*)(?:catch|finally)\b/,lookbehind:!0},{pattern:/(^|[^.]|\.\.\.\s*)\b(?:as|async(?=\s*(?:function\b|\(|[$\w\xA0-\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\b/,lookbehind:!0}],number:/\b(?:(?:0[xX](?:[\dA-Fa-f](?:_[\dA-Fa-f])?)+|0[bB](?:[01](?:_[01])?)+|0[oO](?:[0-7](?:_[0-7])?)+)n?|(?:\d(?:_\d)?)+n|NaN|Infinity)\b|(?:\b(?:\d(?:_\d)?)+\.?(?:\d(?:_\d)?)*|\B\.(?:\d(?:_\d)?)+)(?:[Ee][+-]?(?:\d(?:_\d)?)+)?/,function:/#?[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*(?:\.\s*(?:apply|bind|call)\s*)?\()/,operator:/--|\+\+|\*\*=?|=>|&&|\|\||[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\.{3}|\?[.?]?|[~:]/}),a.languages.javascript["class-name"][0].pattern=/(\b(?:class|interface|extends|implements|instanceof|new)\s+)[\w.\\]+/,a.languages.insertBefore("javascript","keyword",{regex:{pattern:/((?:^|[^$\w\xA0-\uFFFF."'\])\s])\s*)\/(?:\[(?:[^\]\\\r\n]|\\.)*]|\\.|[^/\\\[\r\n])+\/[gimyus]{0,6}(?=(?:\s|\/\*[\s\S]*?\*\/)*(?:$|[\r\n,.;:})\]]|\/\/))/,lookbehind:!0,greedy:!0},"function-variable":{pattern:/#?[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*[=:]\s*(?:async\s*)?(?:\bfunction\b|(?:\((?:[^()]|\([^()]*\))*\)|[_$a-zA-Z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)\s*=>))/,alias:"function"},parameter:[{pattern:/(function(?:\s+[_$A-Za-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*)?\s*\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\))/,lookbehind:!0,inside:a.languages.javascript},{pattern:/[_$a-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*(?=\s*=>)/i,inside:a.languages.javascript},{pattern:/(\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\)\s*=>)/,lookbehind:!0,inside:a.languages.javascript},{pattern:/((?:\b|\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\w\xA0-\uFFFF]))(?:[_$A-Za-z\xA0-\uFFFF][$\w\xA0-\uFFFF]*\s*)\(\s*)(?!\s)(?:[^()]|\([^()]*\))+?(?=\s*\)\s*\{)/,lookbehind:!0,inside:a.languages.javascript}],constant:/\b[A-Z](?:[A-Z_]|\dx?)*\b/}),a.languages.insertBefore("javascript","string",{"template-string":{pattern:/`(?:\\[\s\S]|\${(?:[^{}]|{(?:[^{}]|{[^}]*})*})+}|(?!\${)[^\\`])*`/,greedy:!0,inside:{"template-punctuation":{pattern:/^`|`$/,alias:"string"},interpolation:{pattern:/((?:^|[^\\])(?:\\{2})*)\${(?:[^{}]|{(?:[^{}]|{[^}]*})*})+}/,lookbehind:!0,inside:{"interpolation-punctuation":{pattern:/^\${|}$/,alias:"punctuation"},rest:a.languages.javascript}},string:/[\s\S]+/}}}),a.languages.markup&&a.languages.markup.tag.addInlined("script","javascript"),a.languages.js=a.languages.javascript,"undefined"!=typeof self&&self.Prism&&self.document&&document.querySelector&&(self.Prism.fileHighlight=function(e){e=e||document;var t={js:"javascript",py:"python",rb:"ruby",ps1:"powershell",psm1:"powershell",sh:"bash",bat:"batch",h:"c",tex:"latex"};Array.prototype.slice.call(e.querySelectorAll("pre[data-src]")).forEach((function(e){if(!e.hasAttribute("data-src-loaded")){for(var n,r=e.getAttribute("data-src"),s=e,i=/\blang(?:uage)?-([\w-]+)\b/i;s&&!i.test(s.className);)s=s.parentNode;if(s&&(n=(e.className.match(i)||[,""])[1]),!n){var l=(r.match(/\.(\w+)$/)||[,""])[1];n=t[l]||l}var o=document.createElement("code");o.className="language-"+n,e.textContent="",o.textContent="Loading…",e.appendChild(o);var u=new XMLHttpRequest;u.open("GET",r,!0),u.onreadystatechange=function(){4==u.readyState&&(u.status<400&&u.responseText?(o.textContent=u.responseText,a.highlightElement(o),e.setAttribute("data-src-loaded","")):u.status>=400?o.textContent="✖ Error "+u.status+" while fetching file: "+u.statusText:o.textContent="✖ Error: File does not exist or is empty")},u.send(null)}}))},document.addEventListener("DOMContentLoaded",(function(){self.Prism.fileHighlight()})))}).call(this,a("yLpj"))},zSud:function(e,t){!function(e){var t=/[*&][^\s[\]{},]+/,a=/!(?:<[\w\-%#;/?:@&=+$,.!~*'()[\]]+>|(?:[a-zA-Z\d-]*!)?[\w\-%#;/?:@&=+$.~*'()]+)?/,n="(?:"+a.source+"(?:[ \t]+"+t.source+")?|"+t.source+"(?:[ \t]+"+a.source+")?)";function r(e,t){t=(t||"").replace(/m/g,"")+"m";var a="([:\\-,[{]\\s*(?:\\s<<prop>>[ \t]+)?)(?:<<value>>)(?=[ \t]*(?:$|,|]|}|\\s*#))".replace(/<<prop>>/g,(function(){return n})).replace(/<<value>>/g,(function(){return e}));return RegExp(a,t)}e.languages.yaml={scalar:{pattern:RegExp("([\\-:]\\s*(?:\\s<<prop>>[ \t]+)?[|>])[ \t]*(?:((?:\r?\n|\r)[ \t]+)[^\r\n]+(?:\\2[^\r\n]+)*)".replace(/<<prop>>/g,(function(){return n}))),lookbehind:!0,alias:"string"},comment:/#.*/,key:{pattern:RegExp("((?:^|[:\\-,[{\r\n?])[ \t]*(?:<<prop>>[ \t]+)?)[^\r\n{[\\]},#\\s]+?(?=\\s*:\\s)".replace(/<<prop>>/g,(function(){return n}))),lookbehind:!0,alias:"atrule"},directive:{pattern:/(^[ \t]*)%.+/m,lookbehind:!0,alias:"important"},datetime:{pattern:r("\\d{4}-\\d\\d?-\\d\\d?(?:[tT]|[ \t]+)\\d\\d?:\\d{2}:\\d{2}(?:\\.\\d*)?[ \t]*(?:Z|[-+]\\d\\d?(?::\\d{2})?)?|\\d{4}-\\d{2}-\\d{2}|\\d\\d?:\\d{2}(?::\\d{2}(?:\\.\\d*)?)?"),lookbehind:!0,alias:"number"},boolean:{pattern:r("true|false","i"),lookbehind:!0,alias:"important"},null:{pattern:r("null|~","i"),lookbehind:!0,alias:"important"},string:{pattern:r("(\"|')(?:(?!\\2)[^\\\\\r\n]|\\\\.)*\\2"),lookbehind:!0,greedy:!0},number:{pattern:r("[+-]?(?:0x[\\da-f]+|0o[0-7]+|(?:\\d+\\.?\\d*|\\.?\\d+)(?:e[+-]?\\d+)?|\\.inf|\\.nan)","i"),lookbehind:!0},tag:a,important:t,punctuation:/---|[:[\]{}\-,|>?]|\.\.\./},e.languages.yml=e.languages.yaml}(Prism)}}]);
-//# sourceMappingURL=component---src-templates-doc-jsx-5366dbd1b50f3447a412.js.map
\ No newline at end of file
diff --git a/component---src-templates-doc-jsx-5366dbd1b50f3447a412.js.map b/component---src-templates-doc-jsx-5366dbd1b50f3447a412.js.map
deleted file mode 100644
index 36ffa4e..0000000
--- a/component---src-templates-doc-jsx-5366dbd1b50f3447a412.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":["webpack:///./node_modules/prismjs/components/prism-markup.min.js","webpack:///./node_modules/prismjs/components/prism-java.min.js","webpack:///./src/templates/doc.jsx","webpack:///./node_modules/prismjs/prism.js","webpack:///./node_modules/prismjs/components/prism-yaml.min.js"],"names":["Prism","languages","markup","comment","prolog","doctype","pattern","greedy","cdata","tag","inside","punctuation","namespace","lookbehind","entity","hooks","add","a","type","attributes","title","content","replace","Object","defineProperty","value","e","s","n","t","RegExp","insertBefore","xml","extend","html","mathml","svg","java","keyword","function","clike","number","operator","alias","annotation","generics","componentDidMount","window","highlightAll","pageQuery","Doc","data","asciidocCopy","document","subtitle","__html","langKey","pageContext","useEffect","className","description","lang","dangerouslySetInnerHTML","_self","uniqueId","_","manual","disableWorkerMessageHandler","util","encode","tokens","Token","Array","isArray","map","o","prototype","toString","call","slice","objId","obj","clone","deepClone","visited","id","key","hasOwnProperty","forEach","v","i","getLanguage","element","test","parentElement","match","toLowerCase","currentScript","Error","err","src","exec","stack","scripts","getElementsByTagName","redef","before","insert","root","grammar","ret","token","newToken","old","DFS","this","callback","property","propertyType","plugins","async","highlightAllUnder","container","env","selector","run","elements","apply","querySelectorAll","highlightElement","language","parent","parentNode","nodeName","code","textContent","insertHighlightedCode","highlightedCode","innerHTML","Worker","worker","filename","onmessage","evt","postMessage","JSON","stringify","immediateClose","highlight","text","tokenize","rest","tokenList","LinkedList","addAfter","head","matchGrammar","startNode","startPos","oneshot","target","patterns","j","length","lookbehindLength","global","flags","source","currentNode","next","pos","tail","str","removeCount","prev","lastIndex","from","index","to","p","k","after","removeFrom","removeRange","wrapped","list","array","node","push","toArray","all","name","callbacks","matchedStr","newNode","count","classes","aliases","join","addEventListener","message","parse","close","script","highlightAutomaticallyCallback","hasAttribute","readyState","defer","requestAnimationFrame","setTimeout","WorkerGlobalScope","self","module","exports","tagName","includedCdataInside","def","string","css","addInlined","javascript","js","querySelector","fileHighlight","Extensions","pre","getAttribute","extension","createElement","appendChild","xhr","XMLHttpRequest","open","onreadystatechange","status","responseText","setAttribute","statusText","send","r","yaml","scalar","directive","datetime","boolean","null","important","yml"],"mappings":"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","file":"component---src-templates-doc-jsx-5366dbd1b50f3447a412.js","sourcesContent":["Prism.languages.markup = {\n comment: /<!--[\\s\\S]*?-->/,\n prolog: /<\\?[\\s\\S]+?\\?>/,\n doctype: {\n pattern: /<!DOCTYPE(?:[^>\"'[\\]]|\"[^\"]*\"|'[^']*')+(?:\\[(?:(?!<!--)[^\"'\\]]|\"[^\"]*\"|'[^']*'|<!--[\\s\\S]*?-->)*\\]\\s*)?>/i,\n greedy: !0\n },\n cdata: /<!\\[CDATA\\[[\\s\\S]*?]]>/i,\n tag: {\n pattern: /<\\/?(?!\\d)[^\\s>\\/=$<%]+(?:\\s(?:\\s*[^\\s>\\/=]+(?:\\s*=\\s*(?:\"[^\"]*\"|'[^']*'|[^\\s'\">=]+(?=[\\s>]))|(?=[\\s/>])))+)?\\s*\\/?>/i,\n greedy: !0,\n inside: {\n tag: {\n pattern: /^<\\/?[^\\s>\\/]+/i,\n inside: {\n punctuation: /^<\\/?/,\n namespace: /^[^\\s>\\/:]+:/\n }\n },\n \"attr-value\": {\n pattern: /=\\s*(?:\"[^\"]*\"|'[^']*'|[^\\s'\">=]+)/i,\n inside: {\n punctuation: [/^=/, {\n pattern: /^(\\s*)[\"']|[\"']$/,\n lookbehind: !0\n }]\n }\n },\n punctuation: /\\/?>/,\n \"attr-name\": {\n pattern: /[^\\s>\\/]+/,\n inside: {\n namespace: /^[^\\s>\\/:]+:/\n }\n }\n }\n },\n entity: /&#?[\\da-z]{1,8};/i\n}, Prism.languages.markup.tag.inside[\"attr-value\"].inside.entity = Prism.languages.markup.entity, Prism.hooks.add(\"wrap\", function (a) {\n \"entity\" === a.type && (a.attributes.title = a.content.replace(/&/, \"&\"));\n}), Object.defineProperty(Prism.languages.markup.tag, \"addInlined\", {\n value: function value(a, e) {\n var s = {};\n s[\"language-\" + e] = {\n pattern: /(^<!\\[CDATA\\[)[\\s\\S]+?(?=\\]\\]>$)/i,\n lookbehind: !0,\n inside: Prism.languages[e]\n }, s.cdata = /^<!\\[CDATA\\[|\\]\\]>$/i;\n var n = {\n \"included-cdata\": {\n pattern: /<!\\[CDATA\\[[\\s\\S]*?\\]\\]>/i,\n inside: s\n }\n };\n n[\"language-\" + e] = {\n pattern: /[\\s\\S]+/,\n inside: Prism.languages[e]\n };\n var t = {};\n t[a] = {\n pattern: RegExp(\"(<__[\\\\s\\\\S]*?>)(?:<!\\\\[CDATA\\\\[[\\\\s\\\\S]*?\\\\]\\\\]>\\\\s*|[\\\\s\\\\S])*?(?=<\\\\/__>)\".replace(/__/g, function () {\n return a;\n }), \"i\"),\n lookbehind: !0,\n greedy: !0,\n inside: n\n }, Prism.languages.insertBefore(\"markup\", \"cdata\", t);\n }\n}), Prism.languages.xml = Prism.languages.extend(\"markup\", {}), Prism.languages.html = Prism.languages.markup, Prism.languages.mathml = Prism.languages.markup, Prism.languages.svg = Prism.languages.markup;","!function (e) {\n var t = /\\b(?:abstract|assert|boolean|break|byte|case|catch|char|class|const|continue|default|do|double|else|enum|exports|extends|final|finally|float|for|goto|if|implements|import|instanceof|int|interface|long|module|native|new|null|open|opens|package|private|protected|provides|public|record|requires|return|short|static|strictfp|super|switch|synchronized|this|throw|throws|to|transient|transitive|try|uses|var|void|volatile|while|with|yield)\\b/,\n a = /\\b[A-Z](?:\\w*[a-z]\\w*)?\\b/;\n e.languages.java = e.languages.extend(\"clike\", {\n \"class-name\": [a, /\\b[A-Z]\\w*(?=\\s+\\w+\\s*[;,=())])/],\n keyword: t,\n function: [e.languages.clike.function, {\n pattern: /(\\:\\:)[a-z_]\\w*/,\n lookbehind: !0\n }],\n number: /\\b0b[01][01_]*L?\\b|\\b0x[\\da-f_]*\\.?[\\da-f_p+-]+\\b|(?:\\b\\d[\\d_]*\\.?[\\d_]*|\\B\\.\\d[\\d_]*)(?:e[+-]?\\d[\\d_]*)?[dfl]?/i,\n operator: {\n pattern: /(^|[^.])(?:<<=?|>>>?=?|->|--|\\+\\+|&&|\\|\\||::|[?:~]|[-+*/%&|^!=<>]=?)/m,\n lookbehind: !0\n }\n }), e.languages.insertBefore(\"java\", \"string\", {\n \"triple-quoted-string\": {\n pattern: /\"\"\"[ \\t]*[\\r\\n](?:(?:\"|\"\")?(?:\\\\.|[^\"\\\\]))*\"\"\"/,\n greedy: !0,\n alias: \"string\"\n }\n }), e.languages.insertBefore(\"java\", \"class-name\", {\n annotation: {\n alias: \"punctuation\",\n pattern: /(^|[^.])@\\w+/,\n lookbehind: !0\n },\n namespace: {\n pattern: /(\\b(?:exports|import(?:\\s+static)?|module|open|opens|package|provides|requires|to|transitive|uses|with)\\s+)[a-z]\\w*(?:\\.[a-z]\\w*)+/,\n lookbehind: !0,\n inside: {\n punctuation: /\\./\n }\n },\n generics: {\n pattern: /<(?:[\\w\\s,.&?]|<(?:[\\w\\s,.&?]|<(?:[\\w\\s,.&?]|<[\\w\\s,.&?]*>)*>)*>)*>/,\n inside: {\n \"class-name\": a,\n keyword: t,\n punctuation: /[<>(),.:]/,\n operator: /[?&|]/\n }\n }\n });\n}(Prism);","import React, {useEffect} from 'react';\nimport {graphql} from 'gatsby';\nimport Header from '../components/header';\nimport Seo from '../components/seo';\nimport 'prismjs/prism';\nimport 'prismjs/components/prism-java.min'\nimport 'prismjs/components/prism-markup.min'\nimport 'prismjs/components/prism-yaml.min'\nimport 'prismjs/themes/prism-solarizedlight.css'\nimport '../styles/main.scss';\n\nconst componentDidMount = () => {\n window.Prism.highlightAll()\n};\n\nconst Doc = ({\n data: {\n asciidocCopy: {\n document: {\n title,\n subtitle\n },\n html: __html\n }\n },\n pageContext: {langKey}\n}) => {\n useEffect(componentDidMount, []);\n return (\n <div className='eclipse-jkube'>\n <Seo title={title} description={subtitle} lang={langKey}/>\n <Header lang={langKey}/>\n <div className='eclipse-jkube__documentation book toc2 toc-left'>\n <div\n className='eclipse-jkube__documentation-content'\n dangerouslySetInnerHTML={{__html}}\n />\n </div>\n </div>\n );\n};\n\n\nexport const pageQuery = graphql`\n query($id: String!) {\n asciidocCopy(id: { eq: $id }) {\n html\n document {\n title\n subtitle\n }\n }\n }\n`;\n\nexport default Doc;\n","/* **********************************************\n Begin prism-core.js\n********************************************** */\nvar _self = typeof window !== 'undefined' ? window // if in browser\n: typeof WorkerGlobalScope !== 'undefined' && self instanceof WorkerGlobalScope ? self // if in worker\n: {} // if in node js\n;\n/**\n * Prism: Lightweight, robust, elegant syntax highlighting\n * MIT license http://www.opensource.org/licenses/mit-license.php/\n * @author Lea Verou http://lea.verou.me\n */\n\n\nvar Prism = function (_self) {\n // Private helper vars\n var lang = /\\blang(?:uage)?-([\\w-]+)\\b/i;\n var uniqueId = 0;\n var _ = {\n manual: _self.Prism && _self.Prism.manual,\n disableWorkerMessageHandler: _self.Prism && _self.Prism.disableWorkerMessageHandler,\n util: {\n encode: function encode(tokens) {\n if (tokens instanceof Token) {\n return new Token(tokens.type, encode(tokens.content), tokens.alias);\n } else if (Array.isArray(tokens)) {\n return tokens.map(encode);\n } else {\n return tokens.replace(/&/g, '&').replace(/</g, '<').replace(/\\u00a0/g, ' ');\n }\n },\n type: function type(o) {\n return Object.prototype.toString.call(o).slice(8, -1);\n },\n objId: function objId(obj) {\n if (!obj['__id']) {\n Object.defineProperty(obj, '__id', {\n value: ++uniqueId\n });\n }\n\n return obj['__id'];\n },\n // Deep clone a language definition (e.g. to extend it)\n clone: function deepClone(o, visited) {\n var clone,\n id,\n type = _.util.type(o);\n\n visited = visited || {};\n\n switch (type) {\n case 'Object':\n id = _.util.objId(o);\n\n if (visited[id]) {\n return visited[id];\n }\n\n clone = {};\n visited[id] = clone;\n\n for (var key in o) {\n if (o.hasOwnProperty(key)) {\n clone[key] = deepClone(o[key], visited);\n }\n }\n\n return clone;\n\n case 'Array':\n id = _.util.objId(o);\n\n if (visited[id]) {\n return visited[id];\n }\n\n clone = [];\n visited[id] = clone;\n o.forEach(function (v, i) {\n clone[i] = deepClone(v, visited);\n });\n return clone;\n\n default:\n return o;\n }\n },\n\n /**\n * Returns the Prism language of the given element set by a `language-xxxx` or `lang-xxxx` class.\n *\n * If no language is set for the element or the element is `null` or `undefined`, `none` will be returned.\n *\n * @param {Element} element\n * @returns {string}\n */\n getLanguage: function getLanguage(element) {\n while (element && !lang.test(element.className)) {\n element = element.parentElement;\n }\n\n if (element) {\n return (element.className.match(lang) || [, 'none'])[1].toLowerCase();\n }\n\n return 'none';\n },\n\n /**\n * Returns the script element that is currently executing.\n *\n * This does __not__ work for line script element.\n *\n * @returns {HTMLScriptElement | null}\n */\n currentScript: function currentScript() {\n if (typeof document === 'undefined') {\n return null;\n }\n\n if ('currentScript' in document) {\n return document.currentScript;\n } // IE11 workaround\n // we'll get the src of the current script by parsing IE11's error stack trace\n // this will not work for inline scripts\n\n\n try {\n throw new Error();\n } catch (err) {\n // Get file src url from stack. Specifically works with the format of stack traces in IE.\n // A stack will look like this:\n //\n // Error\n // at _.util.currentScript (http://localhost/components/prism-core.js:119:5)\n // at Global code (http://localhost/components/prism-core.js:606:1)\n var src = (/at [^(\\r\\n]*\\((.*):.+:.+\\)$/i.exec(err.stack) || [])[1];\n\n if (src) {\n var scripts = document.getElementsByTagName('script');\n\n for (var i in scripts) {\n if (scripts[i].src == src) {\n return scripts[i];\n }\n }\n }\n\n return null;\n }\n }\n },\n languages: {\n extend: function extend(id, redef) {\n var lang = _.util.clone(_.languages[id]);\n\n for (var key in redef) {\n lang[key] = redef[key];\n }\n\n return lang;\n },\n\n /**\n * Insert a token before another token in a language literal\n * As this needs to recreate the object (we cannot actually insert before keys in object literals),\n * we cannot just provide an object, we need an object and a key.\n * @param inside The key (or language id) of the parent\n * @param before The key to insert before.\n * @param insert Object with the key/value pairs to insert\n * @param root The object that contains `inside`. If equal to Prism.languages, it can be omitted.\n */\n insertBefore: function insertBefore(inside, before, insert, root) {\n root = root || _.languages;\n var grammar = root[inside];\n var ret = {};\n\n for (var token in grammar) {\n if (grammar.hasOwnProperty(token)) {\n if (token == before) {\n for (var newToken in insert) {\n if (insert.hasOwnProperty(newToken)) {\n ret[newToken] = insert[newToken];\n }\n }\n } // Do not insert token which also occur in insert. See #1525\n\n\n if (!insert.hasOwnProperty(token)) {\n ret[token] = grammar[token];\n }\n }\n }\n\n var old = root[inside];\n root[inside] = ret; // Update references in other language definitions\n\n _.languages.DFS(_.languages, function (key, value) {\n if (value === old && key != inside) {\n this[key] = ret;\n }\n });\n\n return ret;\n },\n // Traverse a language definition with Depth First Search\n DFS: function DFS(o, callback, type, visited) {\n visited = visited || {};\n var objId = _.util.objId;\n\n for (var i in o) {\n if (o.hasOwnProperty(i)) {\n callback.call(o, i, o[i], type || i);\n\n var property = o[i],\n propertyType = _.util.type(property);\n\n if (propertyType === 'Object' && !visited[objId(property)]) {\n visited[objId(property)] = true;\n DFS(property, callback, null, visited);\n } else if (propertyType === 'Array' && !visited[objId(property)]) {\n visited[objId(property)] = true;\n DFS(property, callback, i, visited);\n }\n }\n }\n }\n },\n plugins: {},\n highlightAll: function highlightAll(async, callback) {\n _.highlightAllUnder(document, async, callback);\n },\n highlightAllUnder: function highlightAllUnder(container, async, callback) {\n var env = {\n callback: callback,\n container: container,\n selector: 'code[class*=\"language-\"], [class*=\"language-\"] code, code[class*=\"lang-\"], [class*=\"lang-\"] code'\n };\n\n _.hooks.run('before-highlightall', env);\n\n env.elements = Array.prototype.slice.apply(env.container.querySelectorAll(env.selector));\n\n _.hooks.run('before-all-elements-highlight', env);\n\n for (var i = 0, element; element = env.elements[i++];) {\n _.highlightElement(element, async === true, env.callback);\n }\n },\n highlightElement: function highlightElement(element, async, callback) {\n // Find language\n var language = _.util.getLanguage(element);\n\n var grammar = _.languages[language]; // Set language on the element, if not present\n\n element.className = element.className.replace(lang, '').replace(/\\s+/g, ' ') + ' language-' + language; // Set language on the parent, for styling\n\n var parent = element.parentNode;\n\n if (parent && parent.nodeName.toLowerCase() === 'pre') {\n parent.className = parent.className.replace(lang, '').replace(/\\s+/g, ' ') + ' language-' + language;\n }\n\n var code = element.textContent;\n var env = {\n element: element,\n language: language,\n grammar: grammar,\n code: code\n };\n\n function insertHighlightedCode(highlightedCode) {\n env.highlightedCode = highlightedCode;\n\n _.hooks.run('before-insert', env);\n\n env.element.innerHTML = env.highlightedCode;\n\n _.hooks.run('after-highlight', env);\n\n _.hooks.run('complete', env);\n\n callback && callback.call(env.element);\n }\n\n _.hooks.run('before-sanity-check', env);\n\n if (!env.code) {\n _.hooks.run('complete', env);\n\n callback && callback.call(env.element);\n return;\n }\n\n _.hooks.run('before-highlight', env);\n\n if (!env.grammar) {\n insertHighlightedCode(_.util.encode(env.code));\n return;\n }\n\n if (async && _self.Worker) {\n var worker = new Worker(_.filename);\n\n worker.onmessage = function (evt) {\n insertHighlightedCode(evt.data);\n };\n\n worker.postMessage(JSON.stringify({\n language: env.language,\n code: env.code,\n immediateClose: true\n }));\n } else {\n insertHighlightedCode(_.highlight(env.code, env.grammar, env.language));\n }\n },\n highlight: function highlight(text, grammar, language) {\n var env = {\n code: text,\n grammar: grammar,\n language: language\n };\n\n _.hooks.run('before-tokenize', env);\n\n env.tokens = _.tokenize(env.code, env.grammar);\n\n _.hooks.run('after-tokenize', env);\n\n return Token.stringify(_.util.encode(env.tokens), env.language);\n },\n tokenize: function tokenize(text, grammar) {\n var rest = grammar.rest;\n\n if (rest) {\n for (var token in rest) {\n grammar[token] = rest[token];\n }\n\n delete grammar.rest;\n }\n\n var tokenList = new LinkedList();\n addAfter(tokenList, tokenList.head, text);\n matchGrammar(text, tokenList, grammar, tokenList.head, 0);\n return toArray(tokenList);\n },\n hooks: {\n all: {},\n add: function add(name, callback) {\n var hooks = _.hooks.all;\n hooks[name] = hooks[name] || [];\n hooks[name].push(callback);\n },\n run: function run(name, env) {\n var callbacks = _.hooks.all[name];\n\n if (!callbacks || !callbacks.length) {\n return;\n }\n\n for (var i = 0, callback; callback = callbacks[i++];) {\n callback(env);\n }\n }\n },\n Token: Token\n };\n _self.Prism = _;\n\n function Token(type, content, alias, matchedStr, greedy) {\n this.type = type;\n this.content = content;\n this.alias = alias; // Copy of the full string this token was created from\n\n this.length = (matchedStr || '').length | 0;\n this.greedy = !!greedy;\n }\n\n Token.stringify = function stringify(o, language) {\n if (typeof o == 'string') {\n return o;\n }\n\n if (Array.isArray(o)) {\n var s = '';\n o.forEach(function (e) {\n s += stringify(e, language);\n });\n return s;\n }\n\n var env = {\n type: o.type,\n content: stringify(o.content, language),\n tag: 'span',\n classes: ['token', o.type],\n attributes: {},\n language: language\n };\n var aliases = o.alias;\n\n if (aliases) {\n if (Array.isArray(aliases)) {\n Array.prototype.push.apply(env.classes, aliases);\n } else {\n env.classes.push(aliases);\n }\n }\n\n _.hooks.run('wrap', env);\n\n var attributes = '';\n\n for (var name in env.attributes) {\n attributes += ' ' + name + '=\"' + (env.attributes[name] || '').replace(/\"/g, '"') + '\"';\n }\n\n return '<' + env.tag + ' class=\"' + env.classes.join(' ') + '\"' + attributes + '>' + env.content + '</' + env.tag + '>';\n };\n /**\n * @param {string} text\n * @param {LinkedList<string | Token>} tokenList\n * @param {any} grammar\n * @param {LinkedListNode<string | Token>} startNode\n * @param {number} startPos\n * @param {boolean} [oneshot=false]\n * @param {string} [target]\n */\n\n\n function matchGrammar(text, tokenList, grammar, startNode, startPos, oneshot, target) {\n for (var token in grammar) {\n if (!grammar.hasOwnProperty(token) || !grammar[token]) {\n continue;\n }\n\n var patterns = grammar[token];\n patterns = Array.isArray(patterns) ? patterns : [patterns];\n\n for (var j = 0; j < patterns.length; ++j) {\n if (target && target == token + ',' + j) {\n return;\n }\n\n var pattern = patterns[j],\n inside = pattern.inside,\n lookbehind = !!pattern.lookbehind,\n greedy = !!pattern.greedy,\n lookbehindLength = 0,\n alias = pattern.alias;\n\n if (greedy && !pattern.pattern.global) {\n // Without the global flag, lastIndex won't work\n var flags = pattern.pattern.toString().match(/[imsuy]*$/)[0];\n pattern.pattern = RegExp(pattern.pattern.source, flags + 'g');\n }\n\n pattern = pattern.pattern || pattern;\n\n for ( // iterate the token list and keep track of the current token/string position\n var currentNode = startNode.next, pos = startPos; currentNode !== tokenList.tail; pos += currentNode.value.length, currentNode = currentNode.next) {\n var str = currentNode.value;\n\n if (tokenList.length > text.length) {\n // Something went terribly wrong, ABORT, ABORT!\n return;\n }\n\n if (str instanceof Token) {\n continue;\n }\n\n var removeCount = 1; // this is the to parameter of removeBetween\n\n if (greedy && currentNode != tokenList.tail.prev) {\n pattern.lastIndex = pos;\n var match = pattern.exec(text);\n\n if (!match) {\n break;\n }\n\n var from = match.index + (lookbehind && match[1] ? match[1].length : 0);\n var to = match.index + match[0].length;\n var p = pos; // find the node that contains the match\n\n p += currentNode.value.length;\n\n while (from >= p) {\n currentNode = currentNode.next;\n p += currentNode.value.length;\n } // adjust pos (and p)\n\n\n p -= currentNode.value.length;\n pos = p; // the current node is a Token, then the match starts inside another Token, which is invalid\n\n if (currentNode.value instanceof Token) {\n continue;\n } // find the last node which is affected by this match\n\n\n for (var k = currentNode; k !== tokenList.tail && (p < to || typeof k.value === 'string' && !k.prev.value.greedy); k = k.next) {\n removeCount++;\n p += k.value.length;\n }\n\n removeCount--; // replace with the new match\n\n str = text.slice(pos, p);\n match.index -= pos;\n } else {\n pattern.lastIndex = 0;\n var match = pattern.exec(str);\n }\n\n if (!match) {\n if (oneshot) {\n break;\n }\n\n continue;\n }\n\n if (lookbehind) {\n lookbehindLength = match[1] ? match[1].length : 0;\n }\n\n var from = match.index + lookbehindLength,\n match = match[0].slice(lookbehindLength),\n to = from + match.length,\n before = str.slice(0, from),\n after = str.slice(to);\n var removeFrom = currentNode.prev;\n\n if (before) {\n removeFrom = addAfter(tokenList, removeFrom, before);\n pos += before.length;\n }\n\n removeRange(tokenList, removeFrom, removeCount);\n var wrapped = new Token(token, inside ? _.tokenize(match, inside) : match, alias, match, greedy);\n currentNode = addAfter(tokenList, removeFrom, wrapped);\n\n if (after) {\n addAfter(tokenList, currentNode, after);\n }\n\n if (removeCount > 1) matchGrammar(text, tokenList, grammar, currentNode.prev, pos, true, token + ',' + j);\n if (oneshot) break;\n }\n }\n }\n }\n /**\n * @typedef LinkedListNode\n * @property {T} value\n * @property {LinkedListNode<T> | null} prev The previous node.\n * @property {LinkedListNode<T> | null} next The next node.\n * @template T\n */\n\n /**\n * @template T\n */\n\n\n function LinkedList() {\n /** @type {LinkedListNode<T>} */\n var head = {\n value: null,\n prev: null,\n next: null\n };\n /** @type {LinkedListNode<T>} */\n\n var tail = {\n value: null,\n prev: head,\n next: null\n };\n head.next = tail;\n /** @type {LinkedListNode<T>} */\n\n this.head = head;\n /** @type {LinkedListNode<T>} */\n\n this.tail = tail;\n this.length = 0;\n }\n /**\n * Adds a new node with the given value to the list.\n * @param {LinkedList<T>} list\n * @param {LinkedListNode<T>} node\n * @param {T} value\n * @returns {LinkedListNode<T>} The added node.\n * @template T\n */\n\n\n function addAfter(list, node, value) {\n // assumes that node != list.tail && values.length >= 0\n var next = node.next;\n var newNode = {\n value: value,\n prev: node,\n next: next\n };\n node.next = newNode;\n next.prev = newNode;\n list.length++;\n return newNode;\n }\n /**\n * Removes `count` nodes after the given node. The given node will not be removed.\n * @param {LinkedList<T>} list\n * @param {LinkedListNode<T>} node\n * @param {number} count\n * @template T\n */\n\n\n function removeRange(list, node, count) {\n var next = node.next;\n\n for (var i = 0; i < count && next !== list.tail; i++) {\n next = next.next;\n }\n\n node.next = next;\n next.prev = node;\n list.length -= i;\n }\n /**\n * @param {LinkedList<T>} list\n * @returns {T[]}\n * @template T\n */\n\n\n function toArray(list) {\n var array = [];\n var node = list.head.next;\n\n while (node !== list.tail) {\n array.push(node.value);\n node = node.next;\n }\n\n return array;\n }\n\n if (!_self.document) {\n if (!_self.addEventListener) {\n // in Node.js\n return _;\n }\n\n if (!_.disableWorkerMessageHandler) {\n // In worker\n _self.addEventListener('message', function (evt) {\n var message = JSON.parse(evt.data),\n lang = message.language,\n code = message.code,\n immediateClose = message.immediateClose;\n\n _self.postMessage(_.highlight(code, _.languages[lang], lang));\n\n if (immediateClose) {\n _self.close();\n }\n }, false);\n }\n\n return _;\n } //Get current script and highlight\n\n\n var script = _.util.currentScript();\n\n if (script) {\n _.filename = script.src;\n\n if (script.hasAttribute('data-manual')) {\n _.manual = true;\n }\n }\n\n function highlightAutomaticallyCallback() {\n if (!_.manual) {\n _.highlightAll();\n }\n }\n\n if (!_.manual) {\n // If the document state is \"loading\", then we'll use DOMContentLoaded.\n // If the document state is \"interactive\" and the prism.js script is deferred, then we'll also use the\n // DOMContentLoaded event because there might be some plugins or languages which have also been deferred and they\n // might take longer one animation frame to execute which can create a race condition where only some plugins have\n // been loaded when Prism.highlightAll() is executed, depending on how fast resources are loaded.\n // See https://github.com/PrismJS/prism/issues/2102\n var readyState = document.readyState;\n\n if (readyState === 'loading' || readyState === 'interactive' && script && script.defer) {\n document.addEventListener('DOMContentLoaded', highlightAutomaticallyCallback);\n } else {\n if (window.requestAnimationFrame) {\n window.requestAnimationFrame(highlightAutomaticallyCallback);\n } else {\n window.setTimeout(highlightAutomaticallyCallback, 16);\n }\n }\n }\n\n return _;\n}(_self);\n\nif (typeof module !== 'undefined' && module.exports) {\n module.exports = Prism;\n} // hack for components to work correctly in node.js\n\n\nif (typeof global !== 'undefined') {\n global.Prism = Prism;\n}\n/* **********************************************\n Begin prism-markup.js\n********************************************** */\n\n\nPrism.languages.markup = {\n 'comment': /<!--[\\s\\S]*?-->/,\n 'prolog': /<\\?[\\s\\S]+?\\?>/,\n 'doctype': {\n pattern: /<!DOCTYPE(?:[^>\"'[\\]]|\"[^\"]*\"|'[^']*')+(?:\\[(?:(?!<!--)[^\"'\\]]|\"[^\"]*\"|'[^']*'|<!--[\\s\\S]*?-->)*\\]\\s*)?>/i,\n greedy: true\n },\n 'cdata': /<!\\[CDATA\\[[\\s\\S]*?]]>/i,\n 'tag': {\n pattern: /<\\/?(?!\\d)[^\\s>\\/=$<%]+(?:\\s(?:\\s*[^\\s>\\/=]+(?:\\s*=\\s*(?:\"[^\"]*\"|'[^']*'|[^\\s'\">=]+(?=[\\s>]))|(?=[\\s/>])))+)?\\s*\\/?>/i,\n greedy: true,\n inside: {\n 'tag': {\n pattern: /^<\\/?[^\\s>\\/]+/i,\n inside: {\n 'punctuation': /^<\\/?/,\n 'namespace': /^[^\\s>\\/:]+:/\n }\n },\n 'attr-value': {\n pattern: /=\\s*(?:\"[^\"]*\"|'[^']*'|[^\\s'\">=]+)/i,\n inside: {\n 'punctuation': [/^=/, {\n pattern: /^(\\s*)[\"']|[\"']$/,\n lookbehind: true\n }]\n }\n },\n 'punctuation': /\\/?>/,\n 'attr-name': {\n pattern: /[^\\s>\\/]+/,\n inside: {\n 'namespace': /^[^\\s>\\/:]+:/\n }\n }\n }\n },\n 'entity': /&#?[\\da-z]{1,8};/i\n};\nPrism.languages.markup['tag'].inside['attr-value'].inside['entity'] = Prism.languages.markup['entity']; // Plugin to make entity title show the real entity, idea by Roman Komarov\n\nPrism.hooks.add('wrap', function (env) {\n if (env.type === 'entity') {\n env.attributes['title'] = env.content.replace(/&/, '&');\n }\n});\nObject.defineProperty(Prism.languages.markup.tag, 'addInlined', {\n /**\n * Adds an inlined language to markup.\n *\n * An example of an inlined language is CSS with `<style>` tags.\n *\n * @param {string} tagName The name of the tag that contains the inlined language. This name will be treated as\n * case insensitive.\n * @param {string} lang The language key.\n * @example\n * addInlined('style', 'css');\n */\n value: function addInlined(tagName, lang) {\n var includedCdataInside = {};\n includedCdataInside['language-' + lang] = {\n pattern: /(^<!\\[CDATA\\[)[\\s\\S]+?(?=\\]\\]>$)/i,\n lookbehind: true,\n inside: Prism.languages[lang]\n };\n includedCdataInside['cdata'] = /^<!\\[CDATA\\[|\\]\\]>$/i;\n var inside = {\n 'included-cdata': {\n pattern: /<!\\[CDATA\\[[\\s\\S]*?\\]\\]>/i,\n inside: includedCdataInside\n }\n };\n inside['language-' + lang] = {\n pattern: /[\\s\\S]+/,\n inside: Prism.languages[lang]\n };\n var def = {};\n def[tagName] = {\n pattern: RegExp(/(<__[\\s\\S]*?>)(?:<!\\[CDATA\\[[\\s\\S]*?\\]\\]>\\s*|[\\s\\S])*?(?=<\\/__>)/.source.replace(/__/g, function () {\n return tagName;\n }), 'i'),\n lookbehind: true,\n greedy: true,\n inside: inside\n };\n Prism.languages.insertBefore('markup', 'cdata', def);\n }\n});\nPrism.languages.xml = Prism.languages.extend('markup', {});\nPrism.languages.html = Prism.languages.markup;\nPrism.languages.mathml = Prism.languages.markup;\nPrism.languages.svg = Prism.languages.markup;\n/* **********************************************\n Begin prism-css.js\n********************************************** */\n\n(function (Prism) {\n var string = /(\"|')(?:\\\\(?:\\r\\n|[\\s\\S])|(?!\\1)[^\\\\\\r\\n])*\\1/;\n Prism.languages.css = {\n 'comment': /\\/\\*[\\s\\S]*?\\*\\//,\n 'atrule': {\n pattern: /@[\\w-]+[\\s\\S]*?(?:;|(?=\\s*\\{))/,\n inside: {\n 'rule': /^@[\\w-]+/,\n 'selector-function-argument': {\n pattern: /(\\bselector\\s*\\((?!\\s*\\))\\s*)(?:[^()]|\\((?:[^()]|\\([^()]*\\))*\\))+?(?=\\s*\\))/,\n lookbehind: true,\n alias: 'selector'\n } // See rest below\n\n }\n },\n 'url': {\n pattern: RegExp('url\\\\((?:' + string.source + '|[^\\n\\r()]*)\\\\)', 'i'),\n greedy: true,\n inside: {\n 'function': /^url/i,\n 'punctuation': /^\\(|\\)$/\n }\n },\n 'selector': RegExp('[^{}\\\\s](?:[^{};\"\\']|' + string.source + ')*?(?=\\\\s*\\\\{)'),\n 'string': {\n pattern: string,\n greedy: true\n },\n 'property': /[-_a-z\\xA0-\\uFFFF][-\\w\\xA0-\\uFFFF]*(?=\\s*:)/i,\n 'important': /!important\\b/i,\n 'function': /[-a-z0-9]+(?=\\()/i,\n 'punctuation': /[(){};:,]/\n };\n Prism.languages.css['atrule'].inside.rest = Prism.languages.css;\n var markup = Prism.languages.markup;\n\n if (markup) {\n markup.tag.addInlined('style', 'css');\n Prism.languages.insertBefore('inside', 'attr-value', {\n 'style-attr': {\n pattern: /\\s*style=(\"|')(?:\\\\[\\s\\S]|(?!\\1)[^\\\\])*\\1/i,\n inside: {\n 'attr-name': {\n pattern: /^\\s*style/i,\n inside: markup.tag.inside\n },\n 'punctuation': /^\\s*=\\s*['\"]|['\"]\\s*$/,\n 'attr-value': {\n pattern: /.+/i,\n inside: Prism.languages.css\n }\n },\n alias: 'language-css'\n }\n }, markup.tag);\n }\n})(Prism);\n/* **********************************************\n Begin prism-clike.js\n********************************************** */\n\n\nPrism.languages.clike = {\n 'comment': [{\n pattern: /(^|[^\\\\])\\/\\*[\\s\\S]*?(?:\\*\\/|$)/,\n lookbehind: true\n }, {\n pattern: /(^|[^\\\\:])\\/\\/.*/,\n lookbehind: true,\n greedy: true\n }],\n 'string': {\n pattern: /([\"'])(?:\\\\(?:\\r\\n|[\\s\\S])|(?!\\1)[^\\\\\\r\\n])*\\1/,\n greedy: true\n },\n 'class-name': {\n pattern: /(\\b(?:class|interface|extends|implements|trait|instanceof|new)\\s+|\\bcatch\\s+\\()[\\w.\\\\]+/i,\n lookbehind: true,\n inside: {\n 'punctuation': /[.\\\\]/\n }\n },\n 'keyword': /\\b(?:if|else|while|do|for|return|in|instanceof|function|new|try|throw|catch|finally|null|break|continue)\\b/,\n 'boolean': /\\b(?:true|false)\\b/,\n 'function': /\\w+(?=\\()/,\n 'number': /\\b0x[\\da-f]+\\b|(?:\\b\\d+\\.?\\d*|\\B\\.\\d+)(?:e[+-]?\\d+)?/i,\n 'operator': /[<>]=?|[!=]=?=?|--?|\\+\\+?|&&?|\\|\\|?|[?*/~^%]/,\n 'punctuation': /[{}[\\];(),.:]/\n};\n/* **********************************************\n Begin prism-javascript.js\n********************************************** */\n\nPrism.languages.javascript = Prism.languages.extend('clike', {\n 'class-name': [Prism.languages.clike['class-name'], {\n pattern: /(^|[^$\\w\\xA0-\\uFFFF])[_$A-Z\\xA0-\\uFFFF][$\\w\\xA0-\\uFFFF]*(?=\\.(?:prototype|constructor))/,\n lookbehind: true\n }],\n 'keyword': [{\n pattern: /((?:^|})\\s*)(?:catch|finally)\\b/,\n lookbehind: true\n }, {\n pattern: /(^|[^.]|\\.\\.\\.\\s*)\\b(?:as|async(?=\\s*(?:function\\b|\\(|[$\\w\\xA0-\\uFFFF]|$))|await|break|case|class|const|continue|debugger|default|delete|do|else|enum|export|extends|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)\\b/,\n lookbehind: true\n }],\n 'number': /\\b(?:(?:0[xX](?:[\\dA-Fa-f](?:_[\\dA-Fa-f])?)+|0[bB](?:[01](?:_[01])?)+|0[oO](?:[0-7](?:_[0-7])?)+)n?|(?:\\d(?:_\\d)?)+n|NaN|Infinity)\\b|(?:\\b(?:\\d(?:_\\d)?)+\\.?(?:\\d(?:_\\d)?)*|\\B\\.(?:\\d(?:_\\d)?)+)(?:[Ee][+-]?(?:\\d(?:_\\d)?)+)?/,\n // Allow for all non-ASCII characters (See http://stackoverflow.com/a/2008444)\n 'function': /#?[_$a-zA-Z\\xA0-\\uFFFF][$\\w\\xA0-\\uFFFF]*(?=\\s*(?:\\.\\s*(?:apply|bind|call)\\s*)?\\()/,\n 'operator': /--|\\+\\+|\\*\\*=?|=>|&&|\\|\\||[!=]==|<<=?|>>>?=?|[-+*/%&|^!=<>]=?|\\.{3}|\\?[.?]?|[~:]/\n});\nPrism.languages.javascript['class-name'][0].pattern = /(\\b(?:class|interface|extends|implements|instanceof|new)\\s+)[\\w.\\\\]+/;\nPrism.languages.insertBefore('javascript', 'keyword', {\n 'regex': {\n pattern: /((?:^|[^$\\w\\xA0-\\uFFFF.\"'\\])\\s])\\s*)\\/(?:\\[(?:[^\\]\\\\\\r\\n]|\\\\.)*]|\\\\.|[^/\\\\\\[\\r\\n])+\\/[gimyus]{0,6}(?=(?:\\s|\\/\\*[\\s\\S]*?\\*\\/)*(?:$|[\\r\\n,.;:})\\]]|\\/\\/))/,\n lookbehind: true,\n greedy: true\n },\n // This must be declared before keyword because we use \"function\" inside the look-forward\n 'function-variable': {\n pattern: /#?[_$a-zA-Z\\xA0-\\uFFFF][$\\w\\xA0-\\uFFFF]*(?=\\s*[=:]\\s*(?:async\\s*)?(?:\\bfunction\\b|(?:\\((?:[^()]|\\([^()]*\\))*\\)|[_$a-zA-Z\\xA0-\\uFFFF][$\\w\\xA0-\\uFFFF]*)\\s*=>))/,\n alias: 'function'\n },\n 'parameter': [{\n pattern: /(function(?:\\s+[_$A-Za-z\\xA0-\\uFFFF][$\\w\\xA0-\\uFFFF]*)?\\s*\\(\\s*)(?!\\s)(?:[^()]|\\([^()]*\\))+?(?=\\s*\\))/,\n lookbehind: true,\n inside: Prism.languages.javascript\n }, {\n pattern: /[_$a-z\\xA0-\\uFFFF][$\\w\\xA0-\\uFFFF]*(?=\\s*=>)/i,\n inside: Prism.languages.javascript\n }, {\n pattern: /(\\(\\s*)(?!\\s)(?:[^()]|\\([^()]*\\))+?(?=\\s*\\)\\s*=>)/,\n lookbehind: true,\n inside: Prism.languages.javascript\n }, {\n pattern: /((?:\\b|\\s|^)(?!(?:as|async|await|break|case|catch|class|const|continue|debugger|default|delete|do|else|enum|export|extends|finally|for|from|function|get|if|implements|import|in|instanceof|interface|let|new|null|of|package|private|protected|public|return|set|static|super|switch|this|throw|try|typeof|undefined|var|void|while|with|yield)(?![$\\w\\xA0-\\uFFFF]))(?:[_$A-Za-z\\xA0-\\uFFFF][$\\w\\xA0-\\uFFFF]*\\s*)\\(\\s*)(?!\\s)(?:[^()]|\\([^()]*\\))+?(?=\\s*\\)\\s*\\{)/,\n lookbehind: true,\n inside: Prism.languages.javascript\n }],\n 'constant': /\\b[A-Z](?:[A-Z_]|\\dx?)*\\b/\n});\nPrism.languages.insertBefore('javascript', 'string', {\n 'template-string': {\n pattern: /`(?:\\\\[\\s\\S]|\\${(?:[^{}]|{(?:[^{}]|{[^}]*})*})+}|(?!\\${)[^\\\\`])*`/,\n greedy: true,\n inside: {\n 'template-punctuation': {\n pattern: /^`|`$/,\n alias: 'string'\n },\n 'interpolation': {\n pattern: /((?:^|[^\\\\])(?:\\\\{2})*)\\${(?:[^{}]|{(?:[^{}]|{[^}]*})*})+}/,\n lookbehind: true,\n inside: {\n 'interpolation-punctuation': {\n pattern: /^\\${|}$/,\n alias: 'punctuation'\n },\n rest: Prism.languages.javascript\n }\n },\n 'string': /[\\s\\S]+/\n }\n }\n});\n\nif (Prism.languages.markup) {\n Prism.languages.markup.tag.addInlined('script', 'javascript');\n}\n\nPrism.languages.js = Prism.languages.javascript;\n/* **********************************************\n Begin prism-file-highlight.js\n********************************************** */\n\n(function () {\n if (typeof self === 'undefined' || !self.Prism || !self.document || !document.querySelector) {\n return;\n }\n /**\n * @param {Element} [container=document]\n */\n\n\n self.Prism.fileHighlight = function (container) {\n container = container || document;\n var Extensions = {\n 'js': 'javascript',\n 'py': 'python',\n 'rb': 'ruby',\n 'ps1': 'powershell',\n 'psm1': 'powershell',\n 'sh': 'bash',\n 'bat': 'batch',\n 'h': 'c',\n 'tex': 'latex'\n };\n Array.prototype.slice.call(container.querySelectorAll('pre[data-src]')).forEach(function (pre) {\n // ignore if already loaded\n if (pre.hasAttribute('data-src-loaded')) {\n return;\n } // load current\n\n\n var src = pre.getAttribute('data-src');\n var language,\n parent = pre;\n var lang = /\\blang(?:uage)?-([\\w-]+)\\b/i;\n\n while (parent && !lang.test(parent.className)) {\n parent = parent.parentNode;\n }\n\n if (parent) {\n language = (pre.className.match(lang) || [, ''])[1];\n }\n\n if (!language) {\n var extension = (src.match(/\\.(\\w+)$/) || [, ''])[1];\n language = Extensions[extension] || extension;\n }\n\n var code = document.createElement('code');\n code.className = 'language-' + language;\n pre.textContent = '';\n code.textContent = 'Loading…';\n pre.appendChild(code);\n var xhr = new XMLHttpRequest();\n xhr.open('GET', src, true);\n\n xhr.onreadystatechange = function () {\n if (xhr.readyState == 4) {\n if (xhr.status < 400 && xhr.responseText) {\n code.textContent = xhr.responseText;\n Prism.highlightElement(code); // mark as loaded\n\n pre.setAttribute('data-src-loaded', '');\n } else if (xhr.status >= 400) {\n code.textContent = '✖ Error ' + xhr.status + ' while fetching file: ' + xhr.statusText;\n } else {\n code.textContent = '✖ Error: File does not exist or is empty';\n }\n }\n };\n\n xhr.send(null);\n });\n };\n\n document.addEventListener('DOMContentLoaded', function () {\n // execute inside handler, for dropping Event as argument\n self.Prism.fileHighlight();\n });\n})();","!function (n) {\n var t = /[*&][^\\s[\\]{},]+/,\n e = /!(?:<[\\w\\-%#;/?:@&=+$,.!~*'()[\\]]+>|(?:[a-zA-Z\\d-]*!)?[\\w\\-%#;/?:@&=+$.~*'()]+)?/,\n r = \"(?:\" + e.source + \"(?:[ \\t]+\" + t.source + \")?|\" + t.source + \"(?:[ \\t]+\" + e.source + \")?)\";\n\n function a(n, t) {\n t = (t || \"\").replace(/m/g, \"\") + \"m\";\n var e = \"([:\\\\-,[{]\\\\s*(?:\\\\s<<prop>>[ \\t]+)?)(?:<<value>>)(?=[ \\t]*(?:$|,|]|}|\\\\s*#))\".replace(/<<prop>>/g, function () {\n return r;\n }).replace(/<<value>>/g, function () {\n return n;\n });\n return RegExp(e, t);\n }\n\n n.languages.yaml = {\n scalar: {\n pattern: RegExp(\"([\\\\-:]\\\\s*(?:\\\\s<<prop>>[ \\t]+)?[|>])[ \\t]*(?:((?:\\r?\\n|\\r)[ \\t]+)[^\\r\\n]+(?:\\\\2[^\\r\\n]+)*)\".replace(/<<prop>>/g, function () {\n return r;\n })),\n lookbehind: !0,\n alias: \"string\"\n },\n comment: /#.*/,\n key: {\n pattern: RegExp(\"((?:^|[:\\\\-,[{\\r\\n?])[ \\t]*(?:<<prop>>[ \\t]+)?)[^\\r\\n{[\\\\]},#\\\\s]+?(?=\\\\s*:\\\\s)\".replace(/<<prop>>/g, function () {\n return r;\n })),\n lookbehind: !0,\n alias: \"atrule\"\n },\n directive: {\n pattern: /(^[ \\t]*)%.+/m,\n lookbehind: !0,\n alias: \"important\"\n },\n datetime: {\n pattern: a(\"\\\\d{4}-\\\\d\\\\d?-\\\\d\\\\d?(?:[tT]|[ \\t]+)\\\\d\\\\d?:\\\\d{2}:\\\\d{2}(?:\\\\.\\\\d*)?[ \\t]*(?:Z|[-+]\\\\d\\\\d?(?::\\\\d{2})?)?|\\\\d{4}-\\\\d{2}-\\\\d{2}|\\\\d\\\\d?:\\\\d{2}(?::\\\\d{2}(?:\\\\.\\\\d*)?)?\"),\n lookbehind: !0,\n alias: \"number\"\n },\n boolean: {\n pattern: a(\"true|false\", \"i\"),\n lookbehind: !0,\n alias: \"important\"\n },\n null: {\n pattern: a(\"null|~\", \"i\"),\n lookbehind: !0,\n alias: \"important\"\n },\n string: {\n pattern: a(\"(\\\"|')(?:(?!\\\\2)[^\\\\\\\\\\r\\n]|\\\\\\\\.)*\\\\2\"),\n lookbehind: !0,\n greedy: !0\n },\n number: {\n pattern: a(\"[+-]?(?:0x[\\\\da-f]+|0o[0-7]+|(?:\\\\d+\\\\.?\\\\d*|\\\\.?\\\\d+)(?:e[+-]?\\\\d+)?|\\\\.inf|\\\\.nan)\", \"i\"),\n lookbehind: !0\n },\n tag: e,\n important: t,\n punctuation: /---|[:[\\]{}\\-,|>?]|\\.\\.\\./\n }, n.languages.yml = n.languages.yaml;\n}(Prism);"],"sourceRoot":""}
\ No newline at end of file
diff --git a/component---src-templates-main-jsx-456568a5c9ae2c9095ee.js b/component---src-templates-main-jsx-456568a5c9ae2c9095ee.js
deleted file mode 100644
index 50b4599..0000000
--- a/component---src-templates-main-jsx-456568a5c9ae2c9095ee.js
+++ /dev/null
@@ -1,2 +0,0 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[6],{"2ggT":function(e,t,a){"use strict";a.r(t),a.d(t,"pageQuery",(function(){return s}));var l=a("q1tI"),n=a.n(l),r=a("NSxh"),c=a("Rb52"),i=a("dmsj"),s=(a("+5i3"),"3901760982");t.default=function(e){var t=e.data.markdownRemark,a=t.frontmatter,l=a.title,s=a.description,o=t.html,m=e.pageContext.langKey;return n.a.createElement("div",{className:"eclipse-jkube"},n.a.createElement(i.a,{title:l,description:s,lang:m}),n.a.createElement(c.a,{lang:m}),n.a.createElement("div",{className:"eclipse-jkube__main"},n.a.createElement("div",{className:"eclipse-jkube__content",dangerouslySetInnerHTML:{__html:o}})),n.a.createElement(r.a,{lang:m}))}},NSxh:function(e,t,a){"use strict";var l=a("q1tI"),n=a.n(l),r=a("Wbzz"),c=a("kiXb"),i=a("5748"),s=a.n(i),o=function(e){var t=e.href,a=e.title;return n.a.createElement("a",{href:t,target:"_blank",rel:"nofollow noopener noreferrer"},a)};t.a=function(e){var t=e.lang,a=Object(c.resolveI18nPath)(t);return n.a.createElement("div",{className:"eclipse-jkube-footer"},n.a.createElement("div",{className:"eclipse-jkube-footer__logo-jkube"},n.a.createElement(r.a,{to:a("/")},n.a.createElement("img",{className:"eclipse-jkube-footer__logo-jkube-image",src:s.a,alt:"JKube"})),n.a.createElement("span",{className:"eclipse-jkube-footer__logo-jkube-tagline"},"Cloud-Native Java Applications without a hassle")),n.a.createElement("div",{className:"eclipse-jkube-footer__links"},n.a.createElement("ul",{className:"eclipse-jkube-footer__links-list"},n.a.createElement("li",null,n.a.createElement(r.a,{to:a("/docs#getting-started")},"Get Started")),n.a.createElement("li",null,n.a.createElement(r.a,{to:a("/docs")},"Docs")),n.a.createElement("li",null,n.a.createElement(r.a,{to:a("/quickstarts")},"Quickstarts")),n.a.createElement("li",null,n.a.createElement(r.a,{to:a("/docs#katacoda-courses")},"Katacoda Courses")),n.a.createElement("li",null,n.a.createElement(r.a,{to:a("/demos")},"Demos"))),n.a.createElement("ul",{className:"eclipse-jkube-footer__links-list"},n.a.createElement("li",null,n.a.createElement(r.a,{to:a("/community")},"Community")),n.a.createElement("li",null,n.a.createElement(r.a,{to:a("/community#planning-and-meetings")},"Get Involved")),n.a.createElement("li",null,n.a.createElement(r.a,{to:a("/contributing")},"Contributing"))),n.a.createElement("ul",{className:"eclipse-jkube-footer__links-list"},n.a.createElement("li",null,n.a.createElement(o,{href:"https://www.eclipse.org",title:"Eclipse Foundation"})),n.a.createElement("li",null,n.a.createElement(o,{href:"https://www.eclipse.org/legal/privacy.php",title:"Privacy Policy"})),n.a.createElement("li",null,n.a.createElement(o,{href:"https://www.eclipse.org/legal/termsofuse.php",title:"Terms of Use"})),n.a.createElement("li",null,n.a.createElement(o,{href:"https://www.eclipse.org/legal/copyright.php",title:"Copyright Agent"})),n.a.createElement("li",null,n.a.createElement(o,{href:"https://www.eclipse.org/legal",title:"Legal Resources"})))),n.a.createElement("div",{className:"eclipse-jkube-footer__copyright"},"Copyright © Eclipse Foundation 2020"))}}}]);
-//# sourceMappingURL=component---src-templates-main-jsx-456568a5c9ae2c9095ee.js.map
\ No newline at end of file
diff --git a/component---src-templates-main-jsx-456568a5c9ae2c9095ee.js.map b/component---src-templates-main-jsx-456568a5c9ae2c9095ee.js.map
deleted file mode 100644
index 828809c..0000000
--- a/component---src-templates-main-jsx-456568a5c9ae2c9095ee.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":["webpack:///./src/templates/main.jsx","webpack:///./src/components/footer.jsx"],"names":["pageQuery","Main","data","markdownRemark","frontmatter","title","description","__html","html","langKey","pageContext","className","lang","dangerouslySetInnerHTML","ExternalLink","href","target","rel","Footer","resolvePath","resolveI18nPath","to","src","jkubeLogo","alt"],"mappings":"6FAAA,8GA+BaA,GA/Bb,UA+BsB,cAcPC,UAtCF,SAAC,GAQP,IAAD,IAPJC,KACEC,eAME,IALAC,YAAcC,EAKd,EALcA,MAAOC,EAKrB,EALqBA,YACfC,EAIN,EAJAC,KAGUC,EACV,EADJC,YAAcD,QAEd,OACE,yBAAKE,UAAU,iBACb,kBAAC,IAAD,CAAKN,MAAOA,EAAOC,YAAaA,EAAaM,KAAMH,IACnD,kBAAC,IAAD,CAAQG,KAAMH,IACd,yBAAKE,UAAU,uBACb,yBACEA,UAAU,yBACVE,wBAAyB,CAACN,aAG9B,kBAAC,IAAD,CAAQK,KAAMH,O,kCC1BpB,sEAMMK,EAAe,SAAC,GAAD,IAAEC,EAAF,EAAEA,KAAMV,EAAR,EAAQA,MAAR,OACnB,uBAAGU,KAAMA,EAAMC,OAAO,SAASC,IAAI,gCAAgCZ,IA6CtDa,IA1CA,SAAC,GAAY,IAAXN,EAAU,EAAVA,KACTO,EAAcC,0BAAgBR,GACpC,OACE,yBAAKD,UAAU,wBACb,yBAAKA,UAAU,oCACb,kBAAC,IAAD,CAAMU,GAAIF,EAAY,MACpB,yBAAKR,UAAU,yCAAyCW,IAAKC,IAAWC,IAAI,WAE9E,0BAAMb,UAAU,4CAAhB,oDAIF,yBAAKA,UAAU,+BACb,wBAAIA,UAAU,oCACZ,4BAAI,kBAAC,IAAD,CAAMU,GAAIF,EAAY,0BAAtB,gBACJ,4BAAI,kBAAC,IAAD,CAAME,GAAIF,EAAY,UAAtB,SACJ,4BAAI,kBAAC,IAAD,CAAME,GAAIF,EAAY,iBAAtB,gBACJ,4BAAI,kBAAC,IAAD,CAAME,GAAIF,EAAY,2BAAtB,qBACJ,4BAAI,kBAAC,IAAD,CAAME,GAAIF,EAAY,WAAtB,WAEN,wBAAIR,UAAU,oCACZ,4BAAI,kBAAC,IAAD,CAAMU,GAAIF,EAAY,eAAtB,cACJ,4BAAI,kBAAC,IAAD,CAAME,GAAIF,EAAY,qCAAtB,iBACJ,4BAAI,kBAAC,IAAD,CAAME,GAAIF,EAAY,kBAAtB,kBAEN,wBAAIR,UAAU,oCACZ,4BAAI,kBAACG,EAAD,CAAcC,KAAK,0BAA0BV,MAAM,wBACvD,4BAAI,kBAACS,EAAD,CAAcC,KAAK,4CAA4CV,MAAM,oBACzE,4BAAI,kBAACS,EAAD,CAAcC,KAAK,+CAA+CV,MAAM,kBAC5E,4BAAI,kBAACS,EAAD,CAAcC,KAAK,8CAA8CV,MAAM,qBAC3E,4BAAI,kBAACS,EAAD,CAAcC,KAAK,gCAAgCV,MAAM,uBAGjE,yBAAKM,UAAU,mCAAf","file":"component---src-templates-main-jsx-456568a5c9ae2c9095ee.js","sourcesContent":["import React from 'react';\nimport {graphql} from 'gatsby';\nimport Footer from '../components/footer'\nimport Header from '../components/header';\nimport Seo from '../components/seo';\nimport '../styles/main.scss';\n\nconst Main = ({\n data: {\n markdownRemark: {\n frontmatter: {title, description},\n html: __html\n }\n },\n pageContext: {langKey}\n}) => {\n return (\n <div className='eclipse-jkube'>\n <Seo title={title} description={description} lang={langKey}/>\n <Header lang={langKey}/>\n <div className='eclipse-jkube__main'>\n <div\n className='eclipse-jkube__content'\n dangerouslySetInnerHTML={{__html}}\n />\n </div>\n <Footer lang={langKey}/>\n </div>\n );\n};\n\nexport const pageQuery = graphql`\n query($slug: String!) {\n markdownRemark(fields: { slug: { eq: $slug } }) {\n html\n frontmatter {\n date(formatString: \"MMMM DD, YYYY\")\n path\n title\n description\n }\n }\n }\n`;\n\nexport default Main;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport {Link} from \"gatsby\";\nimport {resolveI18nPath} from \"../i18n\";\nimport jkubeLogo from \"../assets/jkube-logo-horizontal-white.svg\";\n\nconst ExternalLink = ({href, title}) => (\n <a href={href} target='_blank' rel='nofollow noopener noreferrer'>{title}</a>\n);\n\nconst Footer = ({lang}) => {\n const resolvePath = resolveI18nPath(lang);\n return (\n <div className='eclipse-jkube-footer'>\n <div className='eclipse-jkube-footer__logo-jkube'>\n <Link to={resolvePath('/')}>\n <img className='eclipse-jkube-footer__logo-jkube-image' src={jkubeLogo} alt='JKube' />\n </Link>\n <span className='eclipse-jkube-footer__logo-jkube-tagline'>\n Cloud-Native Java Applications without a hassle\n </span>\n </div>\n <div className='eclipse-jkube-footer__links'>\n <ul className='eclipse-jkube-footer__links-list'>\n <li><Link to={resolvePath('/docs#getting-started')}>Get Started</Link></li>\n <li><Link to={resolvePath('/docs')}>Docs</Link></li>\n <li><Link to={resolvePath('/quickstarts')}>Quickstarts</Link></li>\n <li><Link to={resolvePath('/docs#katacoda-courses')}>Katacoda Courses</Link></li>\n <li><Link to={resolvePath('/demos')}>Demos</Link></li>\n </ul>\n <ul className='eclipse-jkube-footer__links-list'>\n <li><Link to={resolvePath('/community')}>Community</Link></li>\n <li><Link to={resolvePath('/community#planning-and-meetings')}>Get Involved</Link></li>\n <li><Link to={resolvePath('/contributing')}>Contributing</Link></li>\n </ul>\n <ul className='eclipse-jkube-footer__links-list'>\n <li><ExternalLink href='https://www.eclipse.org' title='Eclipse Foundation'/></li>\n <li><ExternalLink href='https://www.eclipse.org/legal/privacy.php' title='Privacy Policy'/></li>\n <li><ExternalLink href='https://www.eclipse.org/legal/termsofuse.php' title='Terms of Use'/></li>\n <li><ExternalLink href='https://www.eclipse.org/legal/copyright.php' title='Copyright Agent'/></li>\n <li><ExternalLink href='https://www.eclipse.org/legal' title='Legal Resources'/></li>\n </ul>\n </div>\n <div className='eclipse-jkube-footer__copyright'>Copyright © Eclipse Foundation 2020</div>\n </div>\n );\n};\n\nFooter.propTypes = {\n lang: PropTypes.string.isRequired,\n};\n\nexport default Footer;\n"],"sourceRoot":""}
\ No newline at end of file
diff --git a/component---src-templates-main-jsx-8853cf342e1cf1bead5c.js b/component---src-templates-main-jsx-8853cf342e1cf1bead5c.js
new file mode 100644
index 0000000..734ce81
--- /dev/null
+++ b/component---src-templates-main-jsx-8853cf342e1cf1bead5c.js
@@ -0,0 +1,2 @@
+(window.webpackJsonp=window.webpackJsonp||[]).push([[6],{"2ggT":function(e,t,a){"use strict";a.r(t);var l=a("q1tI"),n=a.n(l),r=a("NSxh"),c=a("Rb52"),i=a("dmsj");a("+5i3");t.default=function(e){var t=e.data.markdownRemark,a=t.frontmatter,l=a.title,s=a.description,o=t.html,m=e.pageContext.langKey;return n.a.createElement("div",{className:"eclipse-jkube"},n.a.createElement(i.a,{title:l,description:s,lang:m}),n.a.createElement(c.a,{lang:m}),n.a.createElement("div",{className:"eclipse-jkube__main"},n.a.createElement("div",{className:"eclipse-jkube__content",dangerouslySetInnerHTML:{__html:o}})),n.a.createElement(r.a,{lang:m}))}},NSxh:function(e,t,a){"use strict";var l=a("q1tI"),n=a.n(l),r=a("Wbzz"),c=a("kiXb"),i=a("5748"),s=a.n(i),o=function(e){var t=e.href,a=e.title;return n.a.createElement("a",{href:t,target:"_blank",rel:"nofollow noopener noreferrer"},a)};t.a=function(e){var t=e.lang,a=Object(c.resolveI18nPath)(t);return n.a.createElement("div",{className:"eclipse-jkube-footer"},n.a.createElement("div",{className:"eclipse-jkube-footer__logo-jkube"},n.a.createElement(r.a,{to:a("/")},n.a.createElement("img",{className:"eclipse-jkube-footer__logo-jkube-image",src:s.a,alt:"JKube"})),n.a.createElement("span",{className:"eclipse-jkube-footer__logo-jkube-tagline"},"Cloud-Native Java Applications without a hassle")),n.a.createElement("div",{className:"eclipse-jkube-footer__links"},n.a.createElement("ul",{className:"eclipse-jkube-footer__links-list"},n.a.createElement("li",null,n.a.createElement(r.a,{to:a("/docs#getting-started")},"Get Started")),n.a.createElement("li",null,n.a.createElement(r.a,{to:a("/docs")},"Docs")),n.a.createElement("li",null,n.a.createElement(r.a,{to:a("/quickstarts")},"Quickstarts")),n.a.createElement("li",null,n.a.createElement(r.a,{to:a("/docs#katacoda-courses")},"Katacoda Courses")),n.a.createElement("li",null,n.a.createElement(r.a,{to:a("/demos")},"Demos"))),n.a.createElement("ul",{className:"eclipse-jkube-footer__links-list"},n.a.createElement("li",null,n.a.createElement(r.a,{to:a("/community")},"Community")),n.a.createElement("li",null,n.a.createElement(r.a,{to:a("/community#planning-and-meetings")},"Get Involved")),n.a.createElement("li",null,n.a.createElement(r.a,{to:a("/contributing")},"Contributing"))),n.a.createElement("ul",{className:"eclipse-jkube-footer__links-list"},n.a.createElement("li",null,n.a.createElement(o,{href:"https://www.eclipse.org",title:"Eclipse Foundation"})),n.a.createElement("li",null,n.a.createElement(o,{href:"https://www.eclipse.org/legal/privacy.php",title:"Privacy Policy"})),n.a.createElement("li",null,n.a.createElement(o,{href:"https://www.eclipse.org/legal/termsofuse.php",title:"Terms of Use"})),n.a.createElement("li",null,n.a.createElement(o,{href:"https://www.eclipse.org/legal/copyright.php",title:"Copyright Agent"})),n.a.createElement("li",null,n.a.createElement(o,{href:"https://www.eclipse.org/legal",title:"Legal Resources"})))),n.a.createElement("div",{className:"eclipse-jkube-footer__copyright"},"Copyright © Eclipse Foundation 2020"))}}}]);
+//# sourceMappingURL=component---src-templates-main-jsx-8853cf342e1cf1bead5c.js.map
\ No newline at end of file
diff --git a/component---src-templates-main-jsx-8853cf342e1cf1bead5c.js.map b/component---src-templates-main-jsx-8853cf342e1cf1bead5c.js.map
new file mode 100644
index 0000000..13f1285
--- /dev/null
+++ b/component---src-templates-main-jsx-8853cf342e1cf1bead5c.js.map
@@ -0,0 +1 @@
+{"version":3,"sources":["webpack:///./src/templates/main.jsx","webpack:///./src/components/footer.jsx"],"names":["Main","data","markdownRemark","frontmatter","title","description","__html","html","langKey","pageContext","className","lang","dangerouslySetInnerHTML","ExternalLink","href","target","rel","Footer","resolvePath","resolveI18nPath","to","src","jkubeLogo","alt"],"mappings":"6FAAA,8EA6CeA,UAtCF,SAAC,GAQP,IAAD,IAPJC,KACEC,eAME,IALAC,YAAcC,EAKd,EALcA,MAAOC,EAKrB,EALqBA,YACfC,EAIN,EAJAC,KAGUC,EACV,EADJC,YAAcD,QAEd,OACE,yBAAKE,UAAU,iBACb,kBAAC,IAAD,CAAKN,MAAOA,EAAOC,YAAaA,EAAaM,KAAMH,IACnD,kBAAC,IAAD,CAAQG,KAAMH,IACd,yBAAKE,UAAU,uBACb,yBACEA,UAAU,yBACVE,wBAAyB,CAACN,aAG9B,kBAAC,IAAD,CAAQK,KAAMH,O,kCC1BpB,sEAMMK,EAAe,SAAC,GAAD,IAAEC,EAAF,EAAEA,KAAMV,EAAR,EAAQA,MAAR,OACnB,uBAAGU,KAAMA,EAAMC,OAAO,SAASC,IAAI,gCAAgCZ,IA6CtDa,IA1CA,SAAC,GAAY,IAAXN,EAAU,EAAVA,KACTO,EAAcC,0BAAgBR,GACpC,OACE,yBAAKD,UAAU,wBACb,yBAAKA,UAAU,oCACb,kBAAC,IAAD,CAAMU,GAAIF,EAAY,MACpB,yBAAKR,UAAU,yCAAyCW,IAAKC,IAAWC,IAAI,WAE9E,0BAAMb,UAAU,4CAAhB,oDAIF,yBAAKA,UAAU,+BACb,wBAAIA,UAAU,oCACZ,4BAAI,kBAAC,IAAD,CAAMU,GAAIF,EAAY,0BAAtB,gBACJ,4BAAI,kBAAC,IAAD,CAAME,GAAIF,EAAY,UAAtB,SACJ,4BAAI,kBAAC,IAAD,CAAME,GAAIF,EAAY,iBAAtB,gBACJ,4BAAI,kBAAC,IAAD,CAAME,GAAIF,EAAY,2BAAtB,qBACJ,4BAAI,kBAAC,IAAD,CAAME,GAAIF,EAAY,WAAtB,WAEN,wBAAIR,UAAU,oCACZ,4BAAI,kBAAC,IAAD,CAAMU,GAAIF,EAAY,eAAtB,cACJ,4BAAI,kBAAC,IAAD,CAAME,GAAIF,EAAY,qCAAtB,iBACJ,4BAAI,kBAAC,IAAD,CAAME,GAAIF,EAAY,kBAAtB,kBAEN,wBAAIR,UAAU,oCACZ,4BAAI,kBAACG,EAAD,CAAcC,KAAK,0BAA0BV,MAAM,wBACvD,4BAAI,kBAACS,EAAD,CAAcC,KAAK,4CAA4CV,MAAM,oBACzE,4BAAI,kBAACS,EAAD,CAAcC,KAAK,+CAA+CV,MAAM,kBAC5E,4BAAI,kBAACS,EAAD,CAAcC,KAAK,8CAA8CV,MAAM,qBAC3E,4BAAI,kBAACS,EAAD,CAAcC,KAAK,gCAAgCV,MAAM,uBAGjE,yBAAKM,UAAU,mCAAf","file":"component---src-templates-main-jsx-8853cf342e1cf1bead5c.js","sourcesContent":["import React from 'react';\nimport {graphql} from 'gatsby';\nimport Footer from '../components/footer'\nimport Header from '../components/header';\nimport Seo from '../components/seo';\nimport '../styles/main.scss';\n\nconst Main = ({\n data: {\n markdownRemark: {\n frontmatter: {title, description},\n html: __html\n }\n },\n pageContext: {langKey}\n}) => {\n return (\n <div className='eclipse-jkube'>\n <Seo title={title} description={description} lang={langKey}/>\n <Header lang={langKey}/>\n <div className='eclipse-jkube__main'>\n <div\n className='eclipse-jkube__content'\n dangerouslySetInnerHTML={{__html}}\n />\n </div>\n <Footer lang={langKey}/>\n </div>\n );\n};\n\nexport const pageQuery = graphql`\n query($slug: String!) {\n markdownRemark(fields: { slug: { eq: $slug } }) {\n html\n frontmatter {\n date(formatString: \"MMMM DD, YYYY\")\n path\n title\n description\n }\n }\n }\n`;\n\nexport default Main;\n","import React from 'react';\nimport PropTypes from 'prop-types';\nimport {Link} from \"gatsby\";\nimport {resolveI18nPath} from \"../i18n\";\nimport jkubeLogo from \"../assets/jkube-logo-horizontal-white.svg\";\n\nconst ExternalLink = ({href, title}) => (\n <a href={href} target='_blank' rel='nofollow noopener noreferrer'>{title}</a>\n);\n\nconst Footer = ({lang}) => {\n const resolvePath = resolveI18nPath(lang);\n return (\n <div className='eclipse-jkube-footer'>\n <div className='eclipse-jkube-footer__logo-jkube'>\n <Link to={resolvePath('/')}>\n <img className='eclipse-jkube-footer__logo-jkube-image' src={jkubeLogo} alt='JKube' />\n </Link>\n <span className='eclipse-jkube-footer__logo-jkube-tagline'>\n Cloud-Native Java Applications without a hassle\n </span>\n </div>\n <div className='eclipse-jkube-footer__links'>\n <ul className='eclipse-jkube-footer__links-list'>\n <li><Link to={resolvePath('/docs#getting-started')}>Get Started</Link></li>\n <li><Link to={resolvePath('/docs')}>Docs</Link></li>\n <li><Link to={resolvePath('/quickstarts')}>Quickstarts</Link></li>\n <li><Link to={resolvePath('/docs#katacoda-courses')}>Katacoda Courses</Link></li>\n <li><Link to={resolvePath('/demos')}>Demos</Link></li>\n </ul>\n <ul className='eclipse-jkube-footer__links-list'>\n <li><Link to={resolvePath('/community')}>Community</Link></li>\n <li><Link to={resolvePath('/community#planning-and-meetings')}>Get Involved</Link></li>\n <li><Link to={resolvePath('/contributing')}>Contributing</Link></li>\n </ul>\n <ul className='eclipse-jkube-footer__links-list'>\n <li><ExternalLink href='https://www.eclipse.org' title='Eclipse Foundation'/></li>\n <li><ExternalLink href='https://www.eclipse.org/legal/privacy.php' title='Privacy Policy'/></li>\n <li><ExternalLink href='https://www.eclipse.org/legal/termsofuse.php' title='Terms of Use'/></li>\n <li><ExternalLink href='https://www.eclipse.org/legal/copyright.php' title='Copyright Agent'/></li>\n <li><ExternalLink href='https://www.eclipse.org/legal' title='Legal Resources'/></li>\n </ul>\n </div>\n <div className='eclipse-jkube-footer__copyright'>Copyright © Eclipse Foundation 2020</div>\n </div>\n );\n};\n\nFooter.propTypes = {\n lang: PropTypes.string.isRequired,\n};\n\nexport default Footer;\n"],"sourceRoot":""}
\ No newline at end of file
diff --git a/contributing/index.html b/contributing/index.html
index 326d5eb..cbc84d1 100644
--- a/contributing/index.html
+++ b/contributing/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><style data-href="/jkube/styles.5c9b852c43e28f117cb7.css">@import url(https://fonts.googleapis.com/css?family=Libre+Franklin:100,300,400,600,700,|Roboto:300,400,500,700|Jura);@import url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css);@import url(https://unpkg.com/@coreui/icons/css/brand.min.css);code[class*=language-],pre[class*=language-]{color:#657b83;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-ms-hyphens:none;hyphens:none}code[class*=language-]::selection,code[class*=language-] ::selection,pre[class*=language-]::selection,pre[class*=language-] ::selection{background:#073642}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;border-radius:.3em}:not(pre)>code[class*=language-],pre[class*=language-]{background-color:#fdf6e3}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#93a1a1}.token.punctuation{color:#586e75}.token.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#268bd2}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string,.token.url{color:#2aa198}.token.entity{color:#657b83;background:#eee8d5}.token.atrule,.token.attr-value,.token.keyword{color:#859900}.token.class-name,.token.function{color:#b58900}.token.important,.token.regex,.token.variable{color:#cb4b16}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body,html{font-family:Libre Franklin,Roboto,sans-serif}body{margin:0;padding:0;outline:0;background:#f1f2f2;font-size:16px;color:#222}h1{font-size:3rem}h1,h2{margin-top:0;font-family:Roboto,sans-serif;font-weight:300}h2{font-size:2rem}h3{font-size:1.5rem;font-weight:300}a{color:#525c86}a:focus,a:hover{color:#222}.eclipse-jkube-footer{padding:16px;border-top:10px solid #222;background-color:#292c2f;font-size:19.2px;font-family:Roboto,sans-serif;font-weight:300;line-height:1.5}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube{display:flex;flex-direction:column;max-width:1170px;margin:0 auto 16px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-image{width:160px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-tagline{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links{max-width:1170px;margin:0 auto 16px;display:flex;flex-wrap:wrap}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list{padding:0;margin:0 48px 16px 0;list-style:none}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a{transition:color .1s linear;color:#f1f2f2}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a,.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a:hover{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a:hover{color:#525c86}.eclipse-jkube-footer .eclipse-jkube-footer__links a{text-decoration:none}.eclipse-jkube-footer .eclipse-jkube-footer__copyright{max-width:1170px;margin:0 auto 16px;font-family:Roboto,sans-serif;color:#939598}.eclipse-jkube__header{display:block;position:relative;height:175px;background-color:#292c2f}@media (min-width:700px){.eclipse-jkube__header{height:105px}}.eclipse-jkube__header .eclipse-jkube__header-trade-mark{font-size:.5em;font-size:.3em;line-height:2.5;vertical-align:top}.eclipse-jkube__header .eclipse-jkube__header-container{position:relative;margin:0 auto;padding:0 16px;height:100%;max-width:1170px}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-container{display:flex;flex-wrap:nowrap;height:105px}}.eclipse-jkube__header .eclipse-jkube__header-logo{display:flex;justify-content:center;align-items:center;font-size:32px;font-weight:400;color:#f1f2f2}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo{font-size:50px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:65px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:90px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image img{max-height:100%;max-width:100%}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:50px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:65px}}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube-image{height:100%}.eclipse-jkube__header .eclipse-jkube__header-logo:hover{color:#f1f2f2}.eclipse-jkube__header .eclipse-jkube__header-content{flex:1 0;min-width:1px;display:flex;justify-content:center;align-items:center}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-content{justify-content:flex-end}}.eclipse-jkube__header .eclipse-jkube__header-content ul{display:flex;flex-wrap:wrap;align-items:center;justify-content:center}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-content ul{justify-content:flex-start}}.eclipse-jkube__header .eclipse-jkube__header-content ul li{margin:4px 0;padding-right:16px;list-style:none;color:#f1f2f2;font-size:20px}.eclipse-jkube__header .eclipse-jkube__header-content .eclipse-jkube__header-stars{display:block;width:85px;height:20px;line-height:20px}.eclipse-jkube__header a{color:#f1f2f2;text-decoration:none}.eclipse-jkube__header a:hover{color:#dd8623;transition:color .3s}.quick-start-card{border:1px solid #d6d6d6;padding:16px}.quick-start-card .quick-start-card__title{margin:0;padding:0}.quick-start-card .quick-start-card__title a{text-decoration:none}.quick-start-card .quick-start-card__title a:active,.quick-start-card .quick-start-card__title a:hover{text-decoration:underline}.quick-start-card .quick-start-card__technologies{margin:16px 0 0;padding:0}.quick-start-card .quick-start-card__technologies-item{display:inline-flex;align-items:center;padding:.25rem .3rem;border-radius:.2rem;font-size:.8rem;margin:0 0 .5rem;background:#dd8623;color:#222}.quick-start-card .quick-start-card__technologies-item:not(:last-child){margin-right:.5rem}.quick-start-card .quick-start-card__technologies-item-icon{display:inline-block;height:.8rem;margin-right:.2rem}.quick-start-card .quick-start-card__description p{margin-top:0}.quick-start-card .quick-start-card__links a{display:inline-block;text-decoration:none;padding:.3rem .5rem;border-radius:.2rem;border:1px solid #d6d6d6;background:#d6d6d6;color:#222}.quick-start-card .quick-start-card__links a:active,.quick-start-card .quick-start-card__links a:hover{background-color:#f1f2f2}.eclipse-jkube{display:flex;flex-direction:column;min-height:100vh}.eclipse-jkube__main{flex:1 1}@media (min-width:1170px){.eclipse-jkube__main{overflow-x:hidden}}.eclipse-jkube__main .eclipse-jkube__content{margin:0 16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content{max-width:1154px;margin:0 auto}}.eclipse-jkube__main .eclipse-jkube__content img{max-width:100%}.eclipse-jkube__main .eclipse-jkube__content :not(pre)>code[class*=language-],.eclipse-jkube__main .eclipse-jkube__content pre[class*=language-]{background-color:transparent}.eclipse-jkube__main .eclipse-jkube__content .hero{margin:0 -16px 16px;display:block;background-color:#272727;background-image:url(/jkube/static/cubes-8e1e59c337437947105e6668f1f3790a.jpg);background-size:cover;color:#f1f2f2}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px;background-color:rgba(39,39,39,.7)}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px calc((100% - 1170px)/2)}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content .getting-involved{color:#f1f2f2;margin:0 -16px;padding:0 16px;display:flex;justify-content:flex-end}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content h1{font-size:2.5rem;font-family:Libre Franklin,Roboto,sans-serif;font-weight:400}.eclipse-jkube__main .eclipse-jkube__content .section-dark{background-color:#404040;color:#f1f2f2;margin:0 -16px;padding:16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;padding:16px calc((100% - 1170px)/2)}}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark>*{padding:0 calc((100% - 1170px)/2)}}.eclipse-jkube__main .eclipse-jkube__content .highlight{display:flex;align-items:center}.eclipse-jkube__main .eclipse-jkube__content .highlight>p{margin:16px 32px;display:none}@media (min-width:501px){.eclipse-jkube__main .eclipse-jkube__content .highlight>p{display:block}}.eclipse-jkube__main .eclipse-jkube__content .highlight>p img{max-width:100px}.eclipse-jkube__main .eclipse-jkube__content .highlight-description{flex:1 1;min-width:1px}.eclipse-jkube__main .eclipse-jkube__content .highlight ul{flex:1 1;min-width:1px;margin:0;padding:0}.eclipse-jkube__main .eclipse-jkube__content .highlight li{list-style:none;margin:16px 0}.eclipse-jkube__main .eclipse-jkube__content .calendar{position:relative;overflow:hidden;padding-bottom:75%;margin-bottom:16px}@media (min-width:666.66667px){.eclipse-jkube__main .eclipse-jkube__content .calendar{padding-bottom:0;height:500px}}.eclipse-jkube__main .eclipse-jkube__content .calendar iframe{position:absolute;top:0;height:100%;max-height:500px;width:100%}.eclipse-jkube__documentation{margin:0}@media screen and (min-width:768px){.eclipse-jkube__documentation{position:absolute;top:105px;bottom:0;width:100%;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content{position:relative;padding:16px;overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content article,.eclipse-jkube__documentation .eclipse-jkube__documentation-content aside,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figcaption,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure,.eclipse-jkube__documentation .eclipse-jkube__documentation-content footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content header,.eclipse-jkube__documentation .eclipse-jkube__documentation-content hgroup,.eclipse-jkube__documentation .eclipse-jkube__documentation-content main,.eclipse-jkube__documentation .eclipse-jkube__documentation-content nav,.eclipse-jkube__documentation .eclipse-jkube__documentation-content section{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio,.eclipse-jkube__documentation .eclipse-jkube__documentation-content video{display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio:not([controls]){display:none;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus{outline:thin dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{outline:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2em;margin:.67em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]{border-bottom:1px dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dfn{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{box-sizing:content-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content mark{background:#ff0;color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content samp{font-family:monospace;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{white-space:pre-wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content q{quotes:"\201C" "\201D" "\2018" "\2019"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub{bottom:-.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg:not(:root){overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure{margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content legend{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select,.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{font-family:inherit;font-size:100%;margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input{line-height:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[type=button],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=reset],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=submit]{-webkit-appearance:button;cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button[disabled],.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[disabled]{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=checkbox],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=radio]{box-sizing:border-box;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button::-moz-focus-inner,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input::-moz-focus-inner{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{overflow:auto;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{border-collapse:collapse;border-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content *,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :before{box-sizing:border-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body{background:#fff;color:rgba(0,0,0,.8);padding:0;margin:0;font-family:"Noto Serif","DejaVu Serif",serif;font-weight:400;font-style:normal;line-height:1;position:relative;cursor:auto;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{max-width:100%;height:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{height:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{-ms-interpolation-mode:bicubic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .left{float:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .right{float:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-left{text-align:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-right{text-align:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-center{text-align:center!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-justify{text-align:justify!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{display:inline-block;vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{height:auto;min-height:50px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .center{margin-left:auto;margin-right:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stretch{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .subheader,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{line-height:1.45;color:#7a2518;font-weight:400;margin-top:0;margin-bottom:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content div,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content form,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6,.eclipse-jkube__documentation .eclipse-jkube__documentation-content li,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin:0;padding:0;direction:ltr}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:#2156a5;text-decoration:underline;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{color:#1d4b8f}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{font-family:inherit;font-weight:400;font-size:1em;line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p aside{font-size:.875em;line-height:1.35;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-family:Open Sans,DejaVu Sans,sans-serif;font-weight:300;font-style:normal;color:#ba3925;text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:.5em;line-height:1.0125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 small{font-size:60%;color:#e99b8f;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5{font-size:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{border:solid #dddddf;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em,.eclipse-jkube__documentation .eclipse-jkube__documentation-content i{font-style:italic;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b,.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong{font-weight:700;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:60%;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;font-weight:400;color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{font-size:1em;line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ul{margin-left:1.25em;margin-bottom:0;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square li ul{list-style:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square{list-style-type:square}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle{list-style-type:circle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc{list-style-type:disc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ul{margin-left:1.25em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dt{margin-bottom:.3125em;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content acronym{text-transform:uppercase;font-size:90%;color:rgba(0,0,0,.8);border-bottom:1px dotted #ddd;cursor:help}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote{margin:0 0 1.25em;padding:.5625em 1.25em 0 1.1875em;border-left:1px solid #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite{display:block;font-size:.9375em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite:before{content:"\2014 "}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a:visited{color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote p{line-height:1.6;color:rgba(0,0,0,.85)}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:2.3125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4{font-size:1.4375em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{background:#fff;margin-bottom:1.25em;border:1px solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead{background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th{padding:.5em .625em .625em;font-size:inherit;color:rgba(0,0,0,.8);text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr th{padding:.5625em .625em;font-size:inherit;color:rgba(0,0,0,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.even{background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tbody tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td{display:table-cell;line-height:1.6}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2;word-spacing:-.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre):not([class^=L])>code{font-size:.9375em;font-style:normal!important;letter-spacing:0;padding:.1em .5ex;word-spacing:-.15em;background:#f7f7f8;border-radius:4px;line-height:1.45;text-rendering:optimizeSpeed;word-wrap:break-word}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nobreak{word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nowrap{white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{color:rgba(0,0,0,.9);font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;line-height:1.45;text-rendering:optimizeSpeed}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre pre{color:inherit;font-size:inherit;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre>code{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap pre{white-space:pre;word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em em{font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq{color:rgba(51,51,51,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;display:inline-block;color:rgba(0,0,0,.8);font-size:.65em;line-height:1.45;background:#f7f7f7;border:1px solid #ccc;border-radius:3px;box-shadow:0 1px 0 rgba(0,0,0,.2),inset 0 0 0 .1em #fff;margin:0 .15em;padding:.2em .5em;vertical-align:middle;position:relative;top:-.1em;white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:first-child{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:last-child{margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b:not(.caret){font-weight:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{word-spacing:-.02em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b.caret{font-size:1.25em;line-height:.8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq i.caret{font-weight:700;text-align:center;width:.45em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{position:relative;top:-1px;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{content:"[";padding:0 3px 0 2px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after{content:"]";padding:0 2px 0 3px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p a>code:hover{color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{width:100%;margin:0 auto;max-width:62.5em;*zoom:1;position:relative;padding-left:.9375em;padding-right:.9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-top:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before{content:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{color:rgba(0,0,0,.85);margin-top:2.25rem;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child+#toc{margin-top:8px;border-top:1px solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:only-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #dddddf;padding-bottom:8px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details{border-bottom:1px solid #dddddf;line-height:1.45;padding-top:.25em;padding-bottom:.25em;padding-left:.25em;color:rgba(0,0,0,.6);display:flex;flex-flow:row wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span:first-child{margin-left:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span.email a{color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span:before{content:"\A0\2013\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span.author:before{content:"\A0\22C5\A0";color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span#revremark:before{content:"\A0|\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber{text-transform:capitalize}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber:after{content:"\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content>h1:first-child:not([class]){color:rgba(0,0,0,.85);border-bottom:1px solid #dddddf;padding-bottom:8px;margin-top:0;padding-top:1rem;margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #e7e7e9;padding-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc>ul{margin-left:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0>li>a{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0 ul.sectlevel1{margin:.5em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul{font-family:Open Sans,DejaVu Sans,sans-serif;list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc li{line-height:1.3334;margin-top:.3334em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{color:#7a2518;font-size:1.2em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:15em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{margin-top:0!important;background:#f8f8f7;position:fixed;width:15em;left:0;top:0;border-right:1px solid #e7e7e9;border-top-width:0!important;border-bottom-width:0!important;z-index:1000;padding:1.25em 1em;height:100%;overflow:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{margin-top:0;margin-bottom:.8rem;font-size:1.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.9em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{margin-left:0;padding-left:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:.5em;margin-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:15em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right #toc.toc2{border-right-width:0;border-left:1px solid #e7e7e9;left:auto;right:0}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:20em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{width:20em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.95em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{padding-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:20em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc{border:1px solid #e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{max-width:100%;background:rgba(0,0,0,.8);padding:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:hsla(0,0%,100%,.8);line-height:1.44}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:.625em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:1.25em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1:last-child{padding-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border-top:1px solid #e7e7e9}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:before{content:"\A7";font-size:.85em;display:block;padding-top:.1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:hover{visibility:visible}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link{color:#ba3925;text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link:hover{color:#a53221}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content details>summary:first-of-type{cursor:pointer;display:list-item;outline:none;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{text-rendering:optimizeLegibility;text-align:left;font-family:"Noto Serif","DejaVu Serif",serif;font-size:1rem;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock.fit-content>caption.title{white-space:nowrap;width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #preamble>.sectionbody>[class=paragraph]:first-of-type p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph.lead>p{font-size:1.21875em;line-height:1.6;color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock #preamble>.sectionbody>[class=paragraph]:first-of-type p{font-size:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon{text-align:center;width:80px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon .title{font-weight:700;font-family:Open Sans,DejaVu Sans,sans-serif;text-transform:uppercase}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content{padding-left:1.125em;padding-right:1.25em;border-left:1px solid #dddddf;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{border:1px solid #e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#fff;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{border:1px solid #dbdbd6;margin-bottom:1.25em;padding:1.25em;background:#f3f3f2;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title{color:#7a2518;margin-top:0;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{border-radius:4px;word-wrap:break-word;overflow-x:auto;padding:1em;font-size:.8125em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:.90625em}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:1em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre:not(.highlight),.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class=highlight],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class^="highlight "],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock.output pre{color:#f7f7f8;background:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content{position:relative}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:none;content:attr(data-lang);position:absolute;font-size:.75em;top:.425rem;right:.5rem;line-height:1;text-transform:uppercase;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock:hover code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:before{content:attr(data-prompt);padding-right:.5em;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:not([data-prompt]):before{content:"$"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs{padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs>code{padding:1em;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.prettyprint{border-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .prettyprint{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint .linenums{line-height:1.45;margin-left:2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li{background:none;list-style-type:inherit;padding-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li code[data-lang]:before{opacity:1}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li:not(:first-child) code[data-lang]:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable{border-collapse:separate;border:0;margin-bottom:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td[class]{color:inherit;vertical-align:top;padding:0;line-height:inherit;white-space:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.code{padding-left:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.linenos{border-right:1px solid;opacity:.35;padding-right:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno{border-right:1px solid;opacity:.35;display:inline-block;margin-right:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno:before{content:"";margin-right:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock{margin:0 1em 1.25em 1.5em;display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock:not(.excerpt)>.title{margin-left:-1.5em;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock p{color:rgba(0,0,0,.85);font-size:1.15rem;line-height:1.75;word-spacing:.1em;letter-spacing:0;font-style:italic;text-align:justify}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote{margin:0;padding:0;border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote:before{content:"\201C";float:left;font-size:2.75em;font-weight:700;line-height:.6em;margin-left:-.6em;color:#7a2518;text-shadow:0 1px 2px rgba(0,0,0,.1)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote>.paragraph:last-child p{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution{margin-top:.75em;margin-right:.5ex;text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock{margin:0 1em 1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre{font-family:Open Sans,DejaVu Sans,sans;font-size:1.15rem;color:rgba(0,0,0,.85);font-weight:300;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{margin-top:1.25rem;margin-left:.5ex}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{font-size:.9375em;line-height:1.45;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution br,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution cite,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution cite{display:block;letter-spacing:-.025em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{line-height:1.6;word-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract{margin:0 1em 1.25em;display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract>.title{margin:0 0 .375em;font-size:1.15em;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt>blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{padding:0 0 .25em 1em;border-left:.25em solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{color:inherit;font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock .attribution{color:inherit;text-align:left;margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock{max-width:100%;border-collapse:separate}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child{margin-bottom:-1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child.sidebarblock{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{border:0 solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead>tr>.tableblock{border-width:0 1px 1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tfoot>tr>.tableblock{border-width:1px 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock{border-width:0 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead>tr>.tableblock{border-width:0 0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tfoot>tr>.tableblock{border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>*>tr>.tableblock:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock:last-child{border-right-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead:last-child>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead:last-child>tr>.tableblock{border-bottom-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-all{border-width:1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-sides{border-width:0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-ends,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-topbot{border-width:1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-all tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-even tr:nth-of-type(2n),.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-hover tr:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-odd tr:nth-of-type(odd){background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-left{text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-right,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-right{text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-center,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-center{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-top,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-top{vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-bottom,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-bottom{vertical-align:bottom}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-middle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-middle{vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead th{font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th{display:table-cell;line-height:1.6;background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th p{color:rgba(0,0,0,.8);font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock>code:only-child{background:none;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol{margin-left:1.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-left:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul dd{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-check-square-o:first-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-square-o:first-child{width:1.25em;font-size:.8em;position:relative;bottom:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>input[type=checkbox]:first-child{margin-right:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline{display:flex;flex-flow:row wrap;list-style:none;margin:0 0 .625em -1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline>li{margin-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .unstyled dl dt{font-weight:400;font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.arabic{list-style-type:decimal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.decimal{list-style-type:decimal-leading-zero}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.loweralpha{list-style-type:lower-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperalpha{list-style-type:upper-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowerroman{list-style-type:lower-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperroman{list-style-type:upper-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowergreek{list-style-type:lower-greek}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table{border:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table>tbody>tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table>tbody>tr{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist2{vertical-align:top;padding:0 .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1{font-weight:700;padding-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock+.colist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock+.colist{margin-top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child{padding:.4em .75em 0;line-height:1;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):last-child{padding:.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .thumb{line-height:0;display:inline-block;border:4px solid #fff;box-shadow:0 0 0 1px #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.left{margin:.25em .625em 1.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.right{margin:.25em 0 1.25em .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb{border-width:6px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb>.title{padding:0 .125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-top:.25em;margin-bottom:.25em;display:inline-block;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left{margin-right:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image{text-decoration:none;display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image object{pointer-events:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref{font-size:.875em;position:static;vertical-align:super}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 .75em;border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote{padding:0 .375em 0 .225em;line-height:1.3334;font-size:.875em;margin-left:1.2em;margin-bottom:.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote a:first-of-type{font-weight:700;text-decoration:none;margin-left:-1.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote:last-of-type{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table{border:0;background:#fff;width:100%;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table td.line-data{width:99%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.unbreakable{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .big{font-size:larger}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .small{font-size:smaller}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .underline{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .overline{text-decoration:overline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .line-through{text-decoration:line-through}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua{color:#00bfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua-background{background:#00fafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black-background{background:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue{color:#0000bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue-background{background:#0000fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia{color:#bf00bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia-background{background:#fa00fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray{color:#606060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray-background{background:#7d7d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green{color:#006000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green-background{background:#007d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime{color:#00bf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime-background{background:#00fa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon{color:#600000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon-background{background:#7d0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy{color:#000060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy-background{background:#00007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive{color:#606000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive-background{background:#7d7d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple{color:#600060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple-background{background:#7d007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red{color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red-background{background:#fa0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver{color:#909090}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver-background{background:#bcbcbc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal{color:#006060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal-background{background:#007d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white{color:#bfbfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white-background{background:#fafafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow{color:#bfbf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow-background{background:#fafa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.icon>.fa{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a span.icon>.fa{cursor:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;text-shadow:1px 1px 2px rgba(0,0,0,.5);cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-note:before{content:"\F05A";color:#19407c}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-tip:before{content:"\F0EB";text-shadow:1px 1px 2px rgba(155,155,0,.8);color:#111}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-warning:before{content:"\F071";color:#bf6900}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-caution:before{content:"\F06D";color:#bf3400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-important:before{content:"\F06A";color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]{display:inline-block;color:#fff!important;background:rgba(0,0,0,.8);border-radius:100px;text-align:center;font-size:.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:Open Sans,DejaVu Sans,sans-serif;font-style:normal;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value] *{color:#fff!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]+b{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]:after{content:attr(data-value)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre .conum[data-value]{position:relative;top:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.conum *{color:inherit!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum:not([data-value]):empty{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{letter-spacing:-.01em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content strong{letter-spacing:-.005em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{background:#fffef7;border-color:#e0e0dc;box-shadow:0 1px 4px #e0e0dc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:none!important}@page{.eclipse-jkube__documentation .eclipse-jkube__documentation-content{margin:1.25cm .75cm}}@media print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content *{box-shadow:none!important;text-shadow:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:inherit!important;text-decoration:underline!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.bare,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="#"],.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="mailto:"]{text-decoration:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="http:"]:not(.bare):after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="https:"]:not(.bare):after{content:"(" attr(href) ")";display:inline-block;font-size:.875em;padding-left:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]:after{content:" (" attr(title) ")"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tr{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content thead{display:table-header-group}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{max-width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1em;orphans:3;widows:3}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{page-break-after:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{background:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #dddddf!important;padding-bottom:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details{border:0!important;display:block;padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details span:first-child{margin-left:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br+span:before{content:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #preamble,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book .sect1>h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book h1.sect0{page-break-before:always}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{padding:0 .9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-on-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:block!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-for-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .show-for-print{display:inherit!important}}@media amzn-kf8,print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{margin-top:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:rgba(0,0,0,.6);font-size:.9em}}@media amzn-kf8{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{padding:0}}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content{padding-left:21em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .toc{position:fixed;width:20em;left:0;top:105px;bottom:0;z-index:1000;padding:0 16px;border-right:1px solid #efefed;border-top-width:0!important;border-bottom-width:0!important;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content i.fa{font-style:normal}.eclipse-jkube__quickstarts{padding:0}.eclipse-jkube__quickstarts-item{list-style:none}.eclipse-jkube__quickstarts-item:not(:last-child){margin-bottom:16px}</style><meta name="generator" content="Gatsby 2.24.12"/><title data-react-helmet="true">Contributing to Eclipse JKube</title><meta data-react-helmet="true" charSet="UTF-8"/><meta data-react-helmet="true" name="description" content="Eclipse JKube contributing main guidelines"/><style type="text/css">
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><style data-href="/jkube/styles.5c9b852c43e28f117cb7.css" id="gatsby-global-css">@import url(https://fonts.googleapis.com/css?family=Libre+Franklin:100,300,400,600,700,|Roboto:300,400,500,700|Jura);@import url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css);@import url(https://unpkg.com/@coreui/icons/css/brand.min.css);code[class*=language-],pre[class*=language-]{color:#657b83;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-ms-hyphens:none;hyphens:none}code[class*=language-]::selection,code[class*=language-] ::selection,pre[class*=language-]::selection,pre[class*=language-] ::selection{background:#073642}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;border-radius:.3em}:not(pre)>code[class*=language-],pre[class*=language-]{background-color:#fdf6e3}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#93a1a1}.token.punctuation{color:#586e75}.token.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#268bd2}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string,.token.url{color:#2aa198}.token.entity{color:#657b83;background:#eee8d5}.token.atrule,.token.attr-value,.token.keyword{color:#859900}.token.class-name,.token.function{color:#b58900}.token.important,.token.regex,.token.variable{color:#cb4b16}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body,html{font-family:Libre Franklin,Roboto,sans-serif}body{margin:0;padding:0;outline:0;background:#f1f2f2;font-size:16px;color:#222}h1{font-size:3rem}h1,h2{margin-top:0;font-family:Roboto,sans-serif;font-weight:300}h2{font-size:2rem}h3{font-size:1.5rem;font-weight:300}a{color:#525c86}a:focus,a:hover{color:#222}.eclipse-jkube-footer{padding:16px;border-top:10px solid #222;background-color:#292c2f;font-size:19.2px;font-family:Roboto,sans-serif;font-weight:300;line-height:1.5}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube{display:flex;flex-direction:column;max-width:1170px;margin:0 auto 16px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-image{width:160px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-tagline{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links{max-width:1170px;margin:0 auto 16px;display:flex;flex-wrap:wrap}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list{padding:0;margin:0 48px 16px 0;list-style:none}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a{transition:color .1s linear;color:#f1f2f2}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a,.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a:hover{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a:hover{color:#525c86}.eclipse-jkube-footer .eclipse-jkube-footer__links a{text-decoration:none}.eclipse-jkube-footer .eclipse-jkube-footer__copyright{max-width:1170px;margin:0 auto 16px;font-family:Roboto,sans-serif;color:#939598}.eclipse-jkube__header{display:block;position:relative;height:175px;background-color:#292c2f}@media (min-width:700px){.eclipse-jkube__header{height:105px}}.eclipse-jkube__header .eclipse-jkube__header-trade-mark{font-size:.5em;font-size:.3em;line-height:2.5;vertical-align:top}.eclipse-jkube__header .eclipse-jkube__header-container{position:relative;margin:0 auto;padding:0 16px;height:100%;max-width:1170px}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-container{display:flex;flex-wrap:nowrap;height:105px}}.eclipse-jkube__header .eclipse-jkube__header-logo{display:flex;justify-content:center;align-items:center;font-size:32px;font-weight:400;color:#f1f2f2}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo{font-size:50px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:65px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:90px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image img{max-height:100%;max-width:100%}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:50px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:65px}}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube-image{height:100%}.eclipse-jkube__header .eclipse-jkube__header-logo:hover{color:#f1f2f2}.eclipse-jkube__header .eclipse-jkube__header-content{flex:1 0;min-width:1px;display:flex;justify-content:center;align-items:center}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-content{justify-content:flex-end}}.eclipse-jkube__header .eclipse-jkube__header-content ul{display:flex;flex-wrap:wrap;align-items:center;justify-content:center}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-content ul{justify-content:flex-start}}.eclipse-jkube__header .eclipse-jkube__header-content ul li{margin:4px 0;padding-right:16px;list-style:none;color:#f1f2f2;font-size:20px}.eclipse-jkube__header .eclipse-jkube__header-content .eclipse-jkube__header-stars{display:block;width:85px;height:20px;line-height:20px}.eclipse-jkube__header a{color:#f1f2f2;text-decoration:none}.eclipse-jkube__header a:hover{color:#dd8623;transition:color .3s}.quick-start-card{border:1px solid #d6d6d6;padding:16px}.quick-start-card .quick-start-card__title{margin:0;padding:0}.quick-start-card .quick-start-card__title a{text-decoration:none}.quick-start-card .quick-start-card__title a:active,.quick-start-card .quick-start-card__title a:hover{text-decoration:underline}.quick-start-card .quick-start-card__technologies{margin:16px 0 0;padding:0}.quick-start-card .quick-start-card__technologies-item{display:inline-flex;align-items:center;padding:.25rem .3rem;border-radius:.2rem;font-size:.8rem;margin:0 0 .5rem;background:#dd8623;color:#222}.quick-start-card .quick-start-card__technologies-item:not(:last-child){margin-right:.5rem}.quick-start-card .quick-start-card__technologies-item-icon{display:inline-block;height:.8rem;margin-right:.2rem}.quick-start-card .quick-start-card__description p{margin-top:0}.quick-start-card .quick-start-card__links a{display:inline-block;text-decoration:none;padding:.3rem .5rem;border-radius:.2rem;border:1px solid #d6d6d6;background:#d6d6d6;color:#222}.quick-start-card .quick-start-card__links a:active,.quick-start-card .quick-start-card__links a:hover{background-color:#f1f2f2}.eclipse-jkube{display:flex;flex-direction:column;min-height:100vh}.eclipse-jkube__main{flex:1 1}@media (min-width:1170px){.eclipse-jkube__main{overflow-x:hidden}}.eclipse-jkube__main .eclipse-jkube__content{margin:0 16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content{max-width:1154px;margin:0 auto}}.eclipse-jkube__main .eclipse-jkube__content img{max-width:100%}.eclipse-jkube__main .eclipse-jkube__content :not(pre)>code[class*=language-],.eclipse-jkube__main .eclipse-jkube__content pre[class*=language-]{background-color:transparent}.eclipse-jkube__main .eclipse-jkube__content .hero{margin:0 -16px 16px;display:block;background-color:#272727;background-image:url(/jkube/static/cubes-8e1e59c337437947105e6668f1f3790a.jpg);background-size:cover;color:#f1f2f2}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px;background-color:rgba(39,39,39,.7)}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px calc(50% - 585px)}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content .getting-involved{color:#f1f2f2;margin:0 -16px;padding:0 16px;display:flex;justify-content:flex-end}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content h1{font-size:2.5rem;font-family:Libre Franklin,Roboto,sans-serif;font-weight:400}.eclipse-jkube__main .eclipse-jkube__content .section-dark{background-color:#404040;color:#f1f2f2;margin:0 -16px;padding:16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;padding:16px calc(50% - 585px)}}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark>*{padding:0 calc(50% - 585px)}}.eclipse-jkube__main .eclipse-jkube__content .highlight{display:flex;align-items:center}.eclipse-jkube__main .eclipse-jkube__content .highlight>p{margin:16px 32px;display:none}@media (min-width:501px){.eclipse-jkube__main .eclipse-jkube__content .highlight>p{display:block}}.eclipse-jkube__main .eclipse-jkube__content .highlight>p img{max-width:100px}.eclipse-jkube__main .eclipse-jkube__content .highlight-description{flex:1 1;min-width:1px}.eclipse-jkube__main .eclipse-jkube__content .highlight ul{flex:1 1;min-width:1px;margin:0;padding:0}.eclipse-jkube__main .eclipse-jkube__content .highlight li{list-style:none;margin:16px 0}.eclipse-jkube__main .eclipse-jkube__content .calendar{position:relative;overflow:hidden;padding-bottom:75%;margin-bottom:16px}@media (min-width:666.66667px){.eclipse-jkube__main .eclipse-jkube__content .calendar{padding-bottom:0;height:500px}}.eclipse-jkube__main .eclipse-jkube__content .calendar iframe{position:absolute;top:0;height:100%;max-height:500px;width:100%}.eclipse-jkube__documentation{margin:0}@media screen and (min-width:768px){.eclipse-jkube__documentation{position:absolute;top:105px;bottom:0;width:100%;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content{position:relative;padding:16px;overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content article,.eclipse-jkube__documentation .eclipse-jkube__documentation-content aside,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figcaption,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure,.eclipse-jkube__documentation .eclipse-jkube__documentation-content footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content header,.eclipse-jkube__documentation .eclipse-jkube__documentation-content hgroup,.eclipse-jkube__documentation .eclipse-jkube__documentation-content main,.eclipse-jkube__documentation .eclipse-jkube__documentation-content nav,.eclipse-jkube__documentation .eclipse-jkube__documentation-content section{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio,.eclipse-jkube__documentation .eclipse-jkube__documentation-content video{display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio:not([controls]){display:none;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus{outline:thin dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{outline:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2em;margin:.67em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]{border-bottom:1px dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dfn{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{box-sizing:content-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content mark{background:#ff0;color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content samp{font-family:monospace;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{white-space:pre-wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content q{quotes:"\201C" "\201D" "\2018" "\2019"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub{bottom:-.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg:not(:root){overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure{margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content legend{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select,.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{font-family:inherit;font-size:100%;margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input{line-height:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[type=button],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=reset],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=submit]{-webkit-appearance:button;cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button[disabled],.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[disabled]{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=checkbox],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=radio]{box-sizing:border-box;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button::-moz-focus-inner,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input::-moz-focus-inner{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{overflow:auto;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{border-collapse:collapse;border-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content *,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :before{box-sizing:border-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body{background:#fff;color:rgba(0,0,0,.8);padding:0;margin:0;font-family:"Noto Serif","DejaVu Serif",serif;font-weight:400;font-style:normal;line-height:1;position:relative;cursor:auto;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{max-width:100%;height:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{height:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{-ms-interpolation-mode:bicubic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .left{float:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .right{float:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-left{text-align:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-right{text-align:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-center{text-align:center!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-justify{text-align:justify!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{display:inline-block;vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{height:auto;min-height:50px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .center{margin-left:auto;margin-right:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stretch{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .subheader,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{line-height:1.45;color:#7a2518;font-weight:400;margin-top:0;margin-bottom:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content div,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content form,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6,.eclipse-jkube__documentation .eclipse-jkube__documentation-content li,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin:0;padding:0;direction:ltr}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:#2156a5;text-decoration:underline;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{color:#1d4b8f}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{font-family:inherit;font-weight:400;font-size:1em;line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p aside{font-size:.875em;line-height:1.35;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-family:Open Sans,DejaVu Sans,sans-serif;font-weight:300;font-style:normal;color:#ba3925;text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:.5em;line-height:1.0125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 small{font-size:60%;color:#e99b8f;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5{font-size:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{border:solid #dddddf;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em,.eclipse-jkube__documentation .eclipse-jkube__documentation-content i{font-style:italic;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b,.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong{font-weight:700;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:60%;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;font-weight:400;color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{font-size:1em;line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ul{margin-left:1.25em;margin-bottom:0;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square li ul{list-style:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square{list-style-type:square}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle{list-style-type:circle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc{list-style-type:disc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ul{margin-left:1.25em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dt{margin-bottom:.3125em;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content acronym{text-transform:uppercase;font-size:90%;color:rgba(0,0,0,.8);border-bottom:1px dotted #ddd;cursor:help}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote{margin:0 0 1.25em;padding:.5625em 1.25em 0 1.1875em;border-left:1px solid #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite{display:block;font-size:.9375em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite:before{content:"\2014 "}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a:visited{color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote p{line-height:1.6;color:rgba(0,0,0,.85)}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:2.3125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4{font-size:1.4375em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{background:#fff;margin-bottom:1.25em;border:1px solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead{background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th{padding:.5em .625em .625em;font-size:inherit;color:rgba(0,0,0,.8);text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr th{padding:.5625em .625em;font-size:inherit;color:rgba(0,0,0,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.even{background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tbody tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td{display:table-cell;line-height:1.6}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2;word-spacing:-.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre):not([class^=L])>code{font-size:.9375em;font-style:normal!important;letter-spacing:0;padding:.1em .5ex;word-spacing:-.15em;background:#f7f7f8;border-radius:4px;line-height:1.45;text-rendering:optimizeSpeed;word-wrap:break-word}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nobreak{word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nowrap{white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{color:rgba(0,0,0,.9);font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;line-height:1.45;text-rendering:optimizeSpeed}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre pre{color:inherit;font-size:inherit;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre>code{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap pre{white-space:pre;word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em em{font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq{color:rgba(51,51,51,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;display:inline-block;color:rgba(0,0,0,.8);font-size:.65em;line-height:1.45;background:#f7f7f7;border:1px solid #ccc;border-radius:3px;box-shadow:0 1px 0 rgba(0,0,0,.2),inset 0 0 0 .1em #fff;margin:0 .15em;padding:.2em .5em;vertical-align:middle;position:relative;top:-.1em;white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:first-child{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:last-child{margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b:not(.caret){font-weight:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{word-spacing:-.02em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b.caret{font-size:1.25em;line-height:.8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq i.caret{font-weight:700;text-align:center;width:.45em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{position:relative;top:-1px;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{content:"[";padding:0 3px 0 2px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after{content:"]";padding:0 2px 0 3px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p a>code:hover{color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{width:100%;margin:0 auto;max-width:62.5em;*zoom:1;position:relative;padding-left:.9375em;padding-right:.9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-top:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before{content:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{color:rgba(0,0,0,.85);margin-top:2.25rem;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child+#toc{margin-top:8px;border-top:1px solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:only-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #dddddf;padding-bottom:8px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details{border-bottom:1px solid #dddddf;line-height:1.45;padding-top:.25em;padding-bottom:.25em;padding-left:.25em;color:rgba(0,0,0,.6);display:flex;flex-flow:row wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span:first-child{margin-left:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span.email a{color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span:before{content:"\A0\2013\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span.author:before{content:"\A0\22C5\A0";color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span#revremark:before{content:"\A0|\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber{text-transform:capitalize}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber:after{content:"\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content>h1:first-child:not([class]){color:rgba(0,0,0,.85);border-bottom:1px solid #dddddf;padding-bottom:8px;margin-top:0;padding-top:1rem;margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #e7e7e9;padding-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc>ul{margin-left:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0>li>a{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0 ul.sectlevel1{margin:.5em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul{font-family:Open Sans,DejaVu Sans,sans-serif;list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc li{line-height:1.3334;margin-top:.3334em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{color:#7a2518;font-size:1.2em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:15em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{margin-top:0!important;background:#f8f8f7;position:fixed;width:15em;left:0;top:0;border-right:1px solid #e7e7e9;border-top-width:0!important;border-bottom-width:0!important;z-index:1000;padding:1.25em 1em;height:100%;overflow:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{margin-top:0;margin-bottom:.8rem;font-size:1.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.9em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{margin-left:0;padding-left:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:.5em;margin-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:15em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right #toc.toc2{border-right-width:0;border-left:1px solid #e7e7e9;left:auto;right:0}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:20em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{width:20em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.95em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{padding-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:20em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc{border:1px solid #e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{max-width:100%;background:rgba(0,0,0,.8);padding:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:hsla(0,0%,100%,.8);line-height:1.44}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:.625em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:1.25em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1:last-child{padding-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border-top:1px solid #e7e7e9}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:before{content:"\A7";font-size:.85em;display:block;padding-top:.1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:hover{visibility:visible}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link{color:#ba3925;text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link:hover{color:#a53221}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content details>summary:first-of-type{cursor:pointer;display:list-item;outline:none;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{text-rendering:optimizeLegibility;text-align:left;font-family:"Noto Serif","DejaVu Serif",serif;font-size:1rem;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock.fit-content>caption.title{white-space:nowrap;width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #preamble>.sectionbody>[class=paragraph]:first-of-type p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph.lead>p{font-size:1.21875em;line-height:1.6;color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock #preamble>.sectionbody>[class=paragraph]:first-of-type p{font-size:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon{text-align:center;width:80px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon .title{font-weight:700;font-family:Open Sans,DejaVu Sans,sans-serif;text-transform:uppercase}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content{padding-left:1.125em;padding-right:1.25em;border-left:1px solid #dddddf;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{border:1px solid #e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#fff;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{border:1px solid #dbdbd6;margin-bottom:1.25em;padding:1.25em;background:#f3f3f2;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title{color:#7a2518;margin-top:0;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{border-radius:4px;word-wrap:break-word;overflow-x:auto;padding:1em;font-size:.8125em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:.90625em}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:1em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre:not(.highlight),.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class=highlight],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class^="highlight "],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock.output pre{color:#f7f7f8;background:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content{position:relative}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:none;content:attr(data-lang);position:absolute;font-size:.75em;top:.425rem;right:.5rem;line-height:1;text-transform:uppercase;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock:hover code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:before{content:attr(data-prompt);padding-right:.5em;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:not([data-prompt]):before{content:"$"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs{padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs>code{padding:1em;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.prettyprint{border-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .prettyprint{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint .linenums{line-height:1.45;margin-left:2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li{background:none;list-style-type:inherit;padding-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li code[data-lang]:before{opacity:1}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li:not(:first-child) code[data-lang]:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable{border-collapse:separate;border:0;margin-bottom:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td[class]{color:inherit;vertical-align:top;padding:0;line-height:inherit;white-space:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.code{padding-left:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.linenos{border-right:1px solid;opacity:.35;padding-right:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno{border-right:1px solid;opacity:.35;display:inline-block;margin-right:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno:before{content:"";margin-right:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock{margin:0 1em 1.25em 1.5em;display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock:not(.excerpt)>.title{margin-left:-1.5em;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock p{color:rgba(0,0,0,.85);font-size:1.15rem;line-height:1.75;word-spacing:.1em;letter-spacing:0;font-style:italic;text-align:justify}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote{margin:0;padding:0;border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote:before{content:"\201C";float:left;font-size:2.75em;font-weight:700;line-height:.6em;margin-left:-.6em;color:#7a2518;text-shadow:0 1px 2px rgba(0,0,0,.1)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote>.paragraph:last-child p{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution{margin-top:.75em;margin-right:.5ex;text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock{margin:0 1em 1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre{font-family:Open Sans,DejaVu Sans,sans;font-size:1.15rem;color:rgba(0,0,0,.85);font-weight:300;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{margin-top:1.25rem;margin-left:.5ex}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{font-size:.9375em;line-height:1.45;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution br,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution cite,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution cite{display:block;letter-spacing:-.025em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{line-height:1.6;word-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract{margin:0 1em 1.25em;display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract>.title{margin:0 0 .375em;font-size:1.15em;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt>blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{padding:0 0 .25em 1em;border-left:.25em solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{color:inherit;font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock .attribution{color:inherit;text-align:left;margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock{max-width:100%;border-collapse:separate}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child{margin-bottom:-1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child.sidebarblock{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{border:0 solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead>tr>.tableblock{border-width:0 1px 1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tfoot>tr>.tableblock{border-width:1px 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock{border-width:0 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead>tr>.tableblock{border-width:0 0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tfoot>tr>.tableblock{border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>*>tr>.tableblock:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock:last-child{border-right-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead:last-child>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead:last-child>tr>.tableblock{border-bottom-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-all{border-width:1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-sides{border-width:0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-ends,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-topbot{border-width:1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-all tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-even tr:nth-of-type(2n),.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-hover tr:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-odd tr:nth-of-type(odd){background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-left{text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-right,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-right{text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-center,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-center{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-top,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-top{vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-bottom,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-bottom{vertical-align:bottom}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-middle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-middle{vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead th{font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th{display:table-cell;line-height:1.6;background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th p{color:rgba(0,0,0,.8);font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock>code:only-child{background:none;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol{margin-left:1.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-left:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul dd{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-check-square-o:first-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-square-o:first-child{width:1.25em;font-size:.8em;position:relative;bottom:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>input[type=checkbox]:first-child{margin-right:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline{display:flex;flex-flow:row wrap;list-style:none;margin:0 0 .625em -1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline>li{margin-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .unstyled dl dt{font-weight:400;font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.arabic{list-style-type:decimal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.decimal{list-style-type:decimal-leading-zero}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.loweralpha{list-style-type:lower-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperalpha{list-style-type:upper-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowerroman{list-style-type:lower-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperroman{list-style-type:upper-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowergreek{list-style-type:lower-greek}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table{border:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table>tbody>tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table>tbody>tr{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist2{vertical-align:top;padding:0 .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1{font-weight:700;padding-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock+.colist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock+.colist{margin-top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child{padding:.4em .75em 0;line-height:1;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):last-child{padding:.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .thumb{line-height:0;display:inline-block;border:4px solid #fff;box-shadow:0 0 0 1px #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.left{margin:.25em .625em 1.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.right{margin:.25em 0 1.25em .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb{border-width:6px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb>.title{padding:0 .125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-top:.25em;margin-bottom:.25em;display:inline-block;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left{margin-right:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image{text-decoration:none;display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image object{pointer-events:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref{font-size:.875em;position:static;vertical-align:super}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 .75em;border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote{padding:0 .375em 0 .225em;line-height:1.3334;font-size:.875em;margin-left:1.2em;margin-bottom:.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote a:first-of-type{font-weight:700;text-decoration:none;margin-left:-1.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote:last-of-type{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table{border:0;background:#fff;width:100%;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table td.line-data{width:99%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.unbreakable{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .big{font-size:larger}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .small{font-size:smaller}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .underline{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .overline{text-decoration:overline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .line-through{text-decoration:line-through}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua{color:#00bfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua-background{background:#00fafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black-background{background:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue{color:#0000bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue-background{background:#0000fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia{color:#bf00bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia-background{background:#fa00fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray{color:#606060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray-background{background:#7d7d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green{color:#006000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green-background{background:#007d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime{color:#00bf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime-background{background:#00fa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon{color:#600000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon-background{background:#7d0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy{color:#000060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy-background{background:#00007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive{color:#606000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive-background{background:#7d7d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple{color:#600060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple-background{background:#7d007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red{color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red-background{background:#fa0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver{color:#909090}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver-background{background:#bcbcbc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal{color:#006060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal-background{background:#007d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white{color:#bfbfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white-background{background:#fafafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow{color:#bfbf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow-background{background:#fafa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.icon>.fa{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a span.icon>.fa{cursor:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;text-shadow:1px 1px 2px rgba(0,0,0,.5);cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-note:before{content:"\F05A";color:#19407c}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-tip:before{content:"\F0EB";text-shadow:1px 1px 2px rgba(155,155,0,.8);color:#111}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-warning:before{content:"\F071";color:#bf6900}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-caution:before{content:"\F06D";color:#bf3400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-important:before{content:"\F06A";color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]{display:inline-block;color:#fff!important;background:rgba(0,0,0,.8);border-radius:100px;text-align:center;font-size:.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:Open Sans,DejaVu Sans,sans-serif;font-style:normal;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value] *{color:#fff!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]+b{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]:after{content:attr(data-value)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre .conum[data-value]{position:relative;top:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.conum *{color:inherit!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum:not([data-value]):empty{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{letter-spacing:-.01em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content strong{letter-spacing:-.005em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{background:#fffef7;border-color:#e0e0dc;box-shadow:0 1px 4px #e0e0dc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:none!important}@page{.eclipse-jkube__documentation .eclipse-jkube__documentation-content{margin:1.25cm .75cm}}@media print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content *{box-shadow:none!important;text-shadow:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:inherit!important;text-decoration:underline!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.bare,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="#"],.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="mailto:"]{text-decoration:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="http:"]:not(.bare):after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="https:"]:not(.bare):after{content:"(" attr(href) ")";display:inline-block;font-size:.875em;padding-left:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]:after{content:" (" attr(title) ")"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tr{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content thead{display:table-header-group}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{max-width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1em;orphans:3;widows:3}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{page-break-after:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{background:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #dddddf!important;padding-bottom:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details{border:0!important;display:block;padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details span:first-child{margin-left:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br+span:before{content:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #preamble,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book .sect1>h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book h1.sect0{page-break-before:always}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{padding:0 .9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-on-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:block!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-for-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .show-for-print{display:inherit!important}}@media amzn-kf8,print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{margin-top:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:rgba(0,0,0,.6);font-size:.9em}}@media amzn-kf8{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{padding:0}}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content{padding-left:21em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .toc{position:fixed;width:20em;left:0;top:105px;bottom:0;z-index:1000;padding:0 16px;border-right:1px solid #efefed;border-top-width:0!important;border-bottom-width:0!important;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content i.fa{font-style:normal}.eclipse-jkube__quickstarts{padding:0}.eclipse-jkube__quickstarts-item{list-style:none}.eclipse-jkube__quickstarts-item:not(:last-child){margin-bottom:16px}</style><meta name="generator" content="Gatsby 2.30.1"/><title data-react-helmet="true">Contributing to Eclipse JKube</title><meta data-react-helmet="true" charSet="UTF-8"/><meta data-react-helmet="true" name="description" content="Eclipse JKube contributing main guidelines"/><style type="text/css">
.anchor.before {
position: absolute;
top: 0;
@@ -48,7 +48,7 @@
}
}
})
- </script><link as="script" rel="preload" href="/jkube/webpack-runtime-5e7a06a902090b1f37ba.js"/><link as="script" rel="preload" href="/jkube/framework-fd2b85530eec85104a39.js"/><link as="script" rel="preload" href="/jkube/app-d7398b08e923fe8a3caa.js"/><link as="script" rel="preload" href="/jkube/styles-c2fe8482057191dca484.js"/><link as="script" rel="preload" href="/jkube/commons-8b827618f0536ebfeda2.js"/><link as="script" rel="preload" href="/jkube/component---src-templates-main-jsx-456568a5c9ae2c9095ee.js"/><link as="fetch" rel="preload" href="/jkube/page-data/contributing/page-data.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/jkube/page-data/app-data.json" crossorigin="anonymous"/></head><body><div id="___gatsby"><div style="outline:none" tabindex="-1" id="gatsby-focus-wrapper"><div class="eclipse-jkube"><header class="eclipse-jkube__header"><div class="eclipse-jkube__header-container"><a class="eclipse-jkube__header-logo" href="/jkube/"><div class="eclipse-jkube__header-logo-eclipse-image"><img src="/jkube/static/EF_WHT-OR_png-d0fd43ad31261ee9693a060be920e71e.png" alt="Eclipse Foundation"/></div><div class="eclipse-jkube__header-logo-jkube"><img class="eclipse-jkube__header-logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/><span class="eclipse-jkube__header-trade-mark">™</span></div></a><div class="eclipse-jkube__header-content"><ul><li><a href="/jkube/docs">Docs</a></li><li><a href="/jkube/demos">Demos</a></li><li><a href="/jkube/community">Community</a></li><li><a href="/jkube/contributing">Contributing</a></li><li><a class="eclipse-jkube__header-stars" href="https://github.com/eclipse/jkube" title="eclipse/jkube" target="_blank" rel="nofollow noopener noreferrer"><img src="https://img.shields.io/github/stars/eclipse/jkube?style=social" alt="eclipse/jkube stargazers"/></a></li></ul></div></div></header><div class="eclipse-jkube__main"><div class="eclipse-jkube__content"><div class="hero">
+ </script><link as="script" rel="preload" href="/jkube/webpack-runtime-b52c77882f7d7b54b2b3.js"/><link as="script" rel="preload" href="/jkube/framework-5e01c8af6b1735c9eaa3.js"/><link as="script" rel="preload" href="/jkube/app-59faa9989d677dd59195.js"/><link as="script" rel="preload" href="/jkube/styles-e9d24b1846c7d6eb9685.js"/><link as="script" rel="preload" href="/jkube/commons-ee34cd715ab4f7da30e0.js"/><link as="script" rel="preload" href="/jkube/component---src-templates-main-jsx-8853cf342e1cf1bead5c.js"/><link as="fetch" rel="preload" href="/jkube/page-data/contributing/page-data.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/jkube/page-data/app-data.json" crossorigin="anonymous"/></head><body><div id="___gatsby"><div style="outline:none" tabindex="-1" id="gatsby-focus-wrapper"><div class="eclipse-jkube"><header class="eclipse-jkube__header"><div class="eclipse-jkube__header-container"><a class="eclipse-jkube__header-logo" href="/jkube/"><div class="eclipse-jkube__header-logo-eclipse-image"><img src="/jkube/static/EF_WHT-OR_png-d0fd43ad31261ee9693a060be920e71e.png" alt="Eclipse Foundation"/></div><div class="eclipse-jkube__header-logo-jkube"><img class="eclipse-jkube__header-logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/><span class="eclipse-jkube__header-trade-mark">™</span></div></a><div class="eclipse-jkube__header-content"><ul><li><a href="/jkube/docs">Docs</a></li><li><a href="/jkube/demos">Demos</a></li><li><a href="/jkube/community">Community</a></li><li><a href="/jkube/contributing">Contributing</a></li><li><a class="eclipse-jkube__header-stars" href="https://github.com/eclipse/jkube" title="eclipse/jkube" target="_blank" rel="nofollow noopener noreferrer"><img src="https://img.shields.io/github/stars/eclipse/jkube?style=social" alt="eclipse/jkube stargazers"/></a></li></ul></div></div></header><div class="eclipse-jkube__main"><div class="eclipse-jkube__content"><div class="hero">
<div class="hero-content">
<h1 id="contributing-guide" style="position:relative;"><a href="#contributing-guide" aria-label="contributing guide permalink" class="anchor before"><svg aria-hidden="true" focusable="false" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Contributing guide</h1>
<p>Thanks for being interested in contributing to Eclipse JKube!</p>
@@ -101,4 +101,4 @@
<p>Select Use the Eclipse Code Formatter, then change the Eclipse Java Formatter Config File to point to the
<code class="language-text">eclipse-format.xml</code> file in the <code class="language-text">ide-config</code> directory.</p>
<p>Make sure the Optimize Imports box is ticked, and select the <code class="language-text">eclipse.importorder</code> file as the import order config file.</p>
-<p><img src="/jkube/40db5a95d875815a4fddb66504f92f51/intellij-eclipse-code-formatter-settings.png" alt="IntelliJ Eclipse Code Formatter Settings" title="Eclipse Code Formatter Plugin"></p></div></div><div class="eclipse-jkube-footer"><div class="eclipse-jkube-footer__logo-jkube"><a href="/jkube/"><img class="eclipse-jkube-footer__logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/></a><span class="eclipse-jkube-footer__logo-jkube-tagline">Cloud-Native Java Applications without a hassle</span></div><div class="eclipse-jkube-footer__links"><ul class="eclipse-jkube-footer__links-list"><li><a href="/jkube/docs#getting-started">Get Started</a></li><li><a href="/jkube/docs">Docs</a></li><li><a href="/jkube/quickstarts">Quickstarts</a></li><li><a href="/jkube/docs#katacoda-courses">Katacoda Courses</a></li><li><a href="/jkube/demos">Demos</a></li></ul><ul class="eclipse-jkube-footer__links-list"><li><a href="/jkube/community">Community</a></li><li><a href="/jkube/community#planning-and-meetings">Get Involved</a></li><li><a href="/jkube/contributing">Contributing</a></li></ul><ul class="eclipse-jkube-footer__links-list"><li><a href="https://www.eclipse.org" target="_blank" rel="nofollow noopener noreferrer">Eclipse Foundation</a></li><li><a href="https://www.eclipse.org/legal/privacy.php" target="_blank" rel="nofollow noopener noreferrer">Privacy Policy</a></li><li><a href="https://www.eclipse.org/legal/termsofuse.php" target="_blank" rel="nofollow noopener noreferrer">Terms of Use</a></li><li><a href="https://www.eclipse.org/legal/copyright.php" target="_blank" rel="nofollow noopener noreferrer">Copyright Agent</a></li><li><a href="https://www.eclipse.org/legal" target="_blank" rel="nofollow noopener noreferrer">Legal Resources</a></li></ul></div><div class="eclipse-jkube-footer__copyright">Copyright © Eclipse Foundation 2020</div></div></div></div><div id="gatsby-announcer" style="position:absolute;top:0;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0" aria-live="assertive" aria-atomic="true"></div></div><script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/contributing/";/*]]>*/</script><script id="gatsby-chunk-mapping">/*<![CDATA[*/window.___chunkMapping={"polyfill":["/polyfill-88d9aed314b16f9b2adc.js"],"app":["/app-d7398b08e923fe8a3caa.js"],"component---src-pages-quickstarts-index-jsx":["/component---src-pages-quickstarts-index-jsx-a1e42093b41968828647.js"],"component---src-templates-doc-jsx":["/component---src-templates-doc-jsx-5366dbd1b50f3447a412.js"],"component---src-templates-main-jsx":["/component---src-templates-main-jsx-456568a5c9ae2c9095ee.js"]};/*]]>*/</script><script src="/jkube/polyfill-88d9aed314b16f9b2adc.js" nomodule=""></script><script src="/jkube/component---src-templates-main-jsx-456568a5c9ae2c9095ee.js" async=""></script><script src="/jkube/commons-8b827618f0536ebfeda2.js" async=""></script><script src="/jkube/styles-c2fe8482057191dca484.js" async=""></script><script src="/jkube/app-d7398b08e923fe8a3caa.js" async=""></script><script src="/jkube/framework-fd2b85530eec85104a39.js" async=""></script><script src="/jkube/webpack-runtime-5e7a06a902090b1f37ba.js" async=""></script></body></html>
\ No newline at end of file
+<p><img src="/jkube/40db5a95d875815a4fddb66504f92f51/intellij-eclipse-code-formatter-settings.png" alt="IntelliJ Eclipse Code Formatter Settings" title="Eclipse Code Formatter Plugin"></p></div></div><div class="eclipse-jkube-footer"><div class="eclipse-jkube-footer__logo-jkube"><a href="/jkube/"><img class="eclipse-jkube-footer__logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/></a><span class="eclipse-jkube-footer__logo-jkube-tagline">Cloud-Native Java Applications without a hassle</span></div><div class="eclipse-jkube-footer__links"><ul class="eclipse-jkube-footer__links-list"><li><a href="/jkube/docs#getting-started">Get Started</a></li><li><a href="/jkube/docs">Docs</a></li><li><a href="/jkube/quickstarts">Quickstarts</a></li><li><a href="/jkube/docs#katacoda-courses">Katacoda Courses</a></li><li><a href="/jkube/demos">Demos</a></li></ul><ul class="eclipse-jkube-footer__links-list"><li><a href="/jkube/community">Community</a></li><li><a href="/jkube/community#planning-and-meetings">Get Involved</a></li><li><a href="/jkube/contributing">Contributing</a></li></ul><ul class="eclipse-jkube-footer__links-list"><li><a href="https://www.eclipse.org" target="_blank" rel="nofollow noopener noreferrer">Eclipse Foundation</a></li><li><a href="https://www.eclipse.org/legal/privacy.php" target="_blank" rel="nofollow noopener noreferrer">Privacy Policy</a></li><li><a href="https://www.eclipse.org/legal/termsofuse.php" target="_blank" rel="nofollow noopener noreferrer">Terms of Use</a></li><li><a href="https://www.eclipse.org/legal/copyright.php" target="_blank" rel="nofollow noopener noreferrer">Copyright Agent</a></li><li><a href="https://www.eclipse.org/legal" target="_blank" rel="nofollow noopener noreferrer">Legal Resources</a></li></ul></div><div class="eclipse-jkube-footer__copyright">Copyright © Eclipse Foundation 2020</div></div></div></div><div id="gatsby-announcer" style="position:absolute;top:0;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0" aria-live="assertive" aria-atomic="true"></div></div><script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/contributing/";/*]]>*/</script><script id="gatsby-chunk-mapping">/*<![CDATA[*/window.___chunkMapping={"polyfill":["/polyfill-e4957c11759bdfc149d9.js"],"app":["/app-59faa9989d677dd59195.js"],"component---src-pages-quickstarts-index-jsx":["/component---src-pages-quickstarts-index-jsx-8b53e5455e208a3e59b9.js"],"component---src-templates-doc-jsx":["/component---src-templates-doc-jsx-21a94bb36ef3df298f42.js"],"component---src-templates-main-jsx":["/component---src-templates-main-jsx-8853cf342e1cf1bead5c.js"]};/*]]>*/</script><script src="/jkube/polyfill-e4957c11759bdfc149d9.js" nomodule=""></script><script src="/jkube/component---src-templates-main-jsx-8853cf342e1cf1bead5c.js" async=""></script><script src="/jkube/commons-ee34cd715ab4f7da30e0.js" async=""></script><script src="/jkube/styles-e9d24b1846c7d6eb9685.js" async=""></script><script src="/jkube/app-59faa9989d677dd59195.js" async=""></script><script src="/jkube/framework-5e01c8af6b1735c9eaa3.js" async=""></script><script src="/jkube/webpack-runtime-b52c77882f7d7b54b2b3.js" async=""></script></body></html>
\ No newline at end of file
diff --git a/demos/index.html b/demos/index.html
index 9d8604e..0ad70ed 100644
--- a/demos/index.html
+++ b/demos/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><style data-href="/jkube/styles.5c9b852c43e28f117cb7.css">@import url(https://fonts.googleapis.com/css?family=Libre+Franklin:100,300,400,600,700,|Roboto:300,400,500,700|Jura);@import url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css);@import url(https://unpkg.com/@coreui/icons/css/brand.min.css);code[class*=language-],pre[class*=language-]{color:#657b83;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-ms-hyphens:none;hyphens:none}code[class*=language-]::selection,code[class*=language-] ::selection,pre[class*=language-]::selection,pre[class*=language-] ::selection{background:#073642}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;border-radius:.3em}:not(pre)>code[class*=language-],pre[class*=language-]{background-color:#fdf6e3}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#93a1a1}.token.punctuation{color:#586e75}.token.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#268bd2}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string,.token.url{color:#2aa198}.token.entity{color:#657b83;background:#eee8d5}.token.atrule,.token.attr-value,.token.keyword{color:#859900}.token.class-name,.token.function{color:#b58900}.token.important,.token.regex,.token.variable{color:#cb4b16}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body,html{font-family:Libre Franklin,Roboto,sans-serif}body{margin:0;padding:0;outline:0;background:#f1f2f2;font-size:16px;color:#222}h1{font-size:3rem}h1,h2{margin-top:0;font-family:Roboto,sans-serif;font-weight:300}h2{font-size:2rem}h3{font-size:1.5rem;font-weight:300}a{color:#525c86}a:focus,a:hover{color:#222}.eclipse-jkube-footer{padding:16px;border-top:10px solid #222;background-color:#292c2f;font-size:19.2px;font-family:Roboto,sans-serif;font-weight:300;line-height:1.5}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube{display:flex;flex-direction:column;max-width:1170px;margin:0 auto 16px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-image{width:160px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-tagline{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links{max-width:1170px;margin:0 auto 16px;display:flex;flex-wrap:wrap}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list{padding:0;margin:0 48px 16px 0;list-style:none}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a{transition:color .1s linear;color:#f1f2f2}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a,.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a:hover{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a:hover{color:#525c86}.eclipse-jkube-footer .eclipse-jkube-footer__links a{text-decoration:none}.eclipse-jkube-footer .eclipse-jkube-footer__copyright{max-width:1170px;margin:0 auto 16px;font-family:Roboto,sans-serif;color:#939598}.eclipse-jkube__header{display:block;position:relative;height:175px;background-color:#292c2f}@media (min-width:700px){.eclipse-jkube__header{height:105px}}.eclipse-jkube__header .eclipse-jkube__header-trade-mark{font-size:.5em;font-size:.3em;line-height:2.5;vertical-align:top}.eclipse-jkube__header .eclipse-jkube__header-container{position:relative;margin:0 auto;padding:0 16px;height:100%;max-width:1170px}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-container{display:flex;flex-wrap:nowrap;height:105px}}.eclipse-jkube__header .eclipse-jkube__header-logo{display:flex;justify-content:center;align-items:center;font-size:32px;font-weight:400;color:#f1f2f2}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo{font-size:50px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:65px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:90px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image img{max-height:100%;max-width:100%}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:50px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:65px}}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube-image{height:100%}.eclipse-jkube__header .eclipse-jkube__header-logo:hover{color:#f1f2f2}.eclipse-jkube__header .eclipse-jkube__header-content{flex:1 0;min-width:1px;display:flex;justify-content:center;align-items:center}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-content{justify-content:flex-end}}.eclipse-jkube__header .eclipse-jkube__header-content ul{display:flex;flex-wrap:wrap;align-items:center;justify-content:center}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-content ul{justify-content:flex-start}}.eclipse-jkube__header .eclipse-jkube__header-content ul li{margin:4px 0;padding-right:16px;list-style:none;color:#f1f2f2;font-size:20px}.eclipse-jkube__header .eclipse-jkube__header-content .eclipse-jkube__header-stars{display:block;width:85px;height:20px;line-height:20px}.eclipse-jkube__header a{color:#f1f2f2;text-decoration:none}.eclipse-jkube__header a:hover{color:#dd8623;transition:color .3s}.quick-start-card{border:1px solid #d6d6d6;padding:16px}.quick-start-card .quick-start-card__title{margin:0;padding:0}.quick-start-card .quick-start-card__title a{text-decoration:none}.quick-start-card .quick-start-card__title a:active,.quick-start-card .quick-start-card__title a:hover{text-decoration:underline}.quick-start-card .quick-start-card__technologies{margin:16px 0 0;padding:0}.quick-start-card .quick-start-card__technologies-item{display:inline-flex;align-items:center;padding:.25rem .3rem;border-radius:.2rem;font-size:.8rem;margin:0 0 .5rem;background:#dd8623;color:#222}.quick-start-card .quick-start-card__technologies-item:not(:last-child){margin-right:.5rem}.quick-start-card .quick-start-card__technologies-item-icon{display:inline-block;height:.8rem;margin-right:.2rem}.quick-start-card .quick-start-card__description p{margin-top:0}.quick-start-card .quick-start-card__links a{display:inline-block;text-decoration:none;padding:.3rem .5rem;border-radius:.2rem;border:1px solid #d6d6d6;background:#d6d6d6;color:#222}.quick-start-card .quick-start-card__links a:active,.quick-start-card .quick-start-card__links a:hover{background-color:#f1f2f2}.eclipse-jkube{display:flex;flex-direction:column;min-height:100vh}.eclipse-jkube__main{flex:1 1}@media (min-width:1170px){.eclipse-jkube__main{overflow-x:hidden}}.eclipse-jkube__main .eclipse-jkube__content{margin:0 16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content{max-width:1154px;margin:0 auto}}.eclipse-jkube__main .eclipse-jkube__content img{max-width:100%}.eclipse-jkube__main .eclipse-jkube__content :not(pre)>code[class*=language-],.eclipse-jkube__main .eclipse-jkube__content pre[class*=language-]{background-color:transparent}.eclipse-jkube__main .eclipse-jkube__content .hero{margin:0 -16px 16px;display:block;background-color:#272727;background-image:url(/jkube/static/cubes-8e1e59c337437947105e6668f1f3790a.jpg);background-size:cover;color:#f1f2f2}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px;background-color:rgba(39,39,39,.7)}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px calc((100% - 1170px)/2)}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content .getting-involved{color:#f1f2f2;margin:0 -16px;padding:0 16px;display:flex;justify-content:flex-end}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content h1{font-size:2.5rem;font-family:Libre Franklin,Roboto,sans-serif;font-weight:400}.eclipse-jkube__main .eclipse-jkube__content .section-dark{background-color:#404040;color:#f1f2f2;margin:0 -16px;padding:16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;padding:16px calc((100% - 1170px)/2)}}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark>*{padding:0 calc((100% - 1170px)/2)}}.eclipse-jkube__main .eclipse-jkube__content .highlight{display:flex;align-items:center}.eclipse-jkube__main .eclipse-jkube__content .highlight>p{margin:16px 32px;display:none}@media (min-width:501px){.eclipse-jkube__main .eclipse-jkube__content .highlight>p{display:block}}.eclipse-jkube__main .eclipse-jkube__content .highlight>p img{max-width:100px}.eclipse-jkube__main .eclipse-jkube__content .highlight-description{flex:1 1;min-width:1px}.eclipse-jkube__main .eclipse-jkube__content .highlight ul{flex:1 1;min-width:1px;margin:0;padding:0}.eclipse-jkube__main .eclipse-jkube__content .highlight li{list-style:none;margin:16px 0}.eclipse-jkube__main .eclipse-jkube__content .calendar{position:relative;overflow:hidden;padding-bottom:75%;margin-bottom:16px}@media (min-width:666.66667px){.eclipse-jkube__main .eclipse-jkube__content .calendar{padding-bottom:0;height:500px}}.eclipse-jkube__main .eclipse-jkube__content .calendar iframe{position:absolute;top:0;height:100%;max-height:500px;width:100%}.eclipse-jkube__documentation{margin:0}@media screen and (min-width:768px){.eclipse-jkube__documentation{position:absolute;top:105px;bottom:0;width:100%;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content{position:relative;padding:16px;overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content article,.eclipse-jkube__documentation .eclipse-jkube__documentation-content aside,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figcaption,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure,.eclipse-jkube__documentation .eclipse-jkube__documentation-content footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content header,.eclipse-jkube__documentation .eclipse-jkube__documentation-content hgroup,.eclipse-jkube__documentation .eclipse-jkube__documentation-content main,.eclipse-jkube__documentation .eclipse-jkube__documentation-content nav,.eclipse-jkube__documentation .eclipse-jkube__documentation-content section{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio,.eclipse-jkube__documentation .eclipse-jkube__documentation-content video{display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio:not([controls]){display:none;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus{outline:thin dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{outline:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2em;margin:.67em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]{border-bottom:1px dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dfn{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{box-sizing:content-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content mark{background:#ff0;color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content samp{font-family:monospace;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{white-space:pre-wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content q{quotes:"\201C" "\201D" "\2018" "\2019"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub{bottom:-.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg:not(:root){overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure{margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content legend{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select,.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{font-family:inherit;font-size:100%;margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input{line-height:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[type=button],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=reset],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=submit]{-webkit-appearance:button;cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button[disabled],.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[disabled]{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=checkbox],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=radio]{box-sizing:border-box;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button::-moz-focus-inner,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input::-moz-focus-inner{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{overflow:auto;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{border-collapse:collapse;border-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content *,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :before{box-sizing:border-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body{background:#fff;color:rgba(0,0,0,.8);padding:0;margin:0;font-family:"Noto Serif","DejaVu Serif",serif;font-weight:400;font-style:normal;line-height:1;position:relative;cursor:auto;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{max-width:100%;height:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{height:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{-ms-interpolation-mode:bicubic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .left{float:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .right{float:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-left{text-align:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-right{text-align:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-center{text-align:center!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-justify{text-align:justify!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{display:inline-block;vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{height:auto;min-height:50px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .center{margin-left:auto;margin-right:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stretch{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .subheader,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{line-height:1.45;color:#7a2518;font-weight:400;margin-top:0;margin-bottom:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content div,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content form,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6,.eclipse-jkube__documentation .eclipse-jkube__documentation-content li,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin:0;padding:0;direction:ltr}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:#2156a5;text-decoration:underline;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{color:#1d4b8f}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{font-family:inherit;font-weight:400;font-size:1em;line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p aside{font-size:.875em;line-height:1.35;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-family:Open Sans,DejaVu Sans,sans-serif;font-weight:300;font-style:normal;color:#ba3925;text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:.5em;line-height:1.0125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 small{font-size:60%;color:#e99b8f;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5{font-size:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{border:solid #dddddf;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em,.eclipse-jkube__documentation .eclipse-jkube__documentation-content i{font-style:italic;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b,.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong{font-weight:700;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:60%;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;font-weight:400;color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{font-size:1em;line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ul{margin-left:1.25em;margin-bottom:0;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square li ul{list-style:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square{list-style-type:square}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle{list-style-type:circle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc{list-style-type:disc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ul{margin-left:1.25em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dt{margin-bottom:.3125em;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content acronym{text-transform:uppercase;font-size:90%;color:rgba(0,0,0,.8);border-bottom:1px dotted #ddd;cursor:help}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote{margin:0 0 1.25em;padding:.5625em 1.25em 0 1.1875em;border-left:1px solid #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite{display:block;font-size:.9375em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite:before{content:"\2014 "}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a:visited{color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote p{line-height:1.6;color:rgba(0,0,0,.85)}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:2.3125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4{font-size:1.4375em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{background:#fff;margin-bottom:1.25em;border:1px solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead{background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th{padding:.5em .625em .625em;font-size:inherit;color:rgba(0,0,0,.8);text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr th{padding:.5625em .625em;font-size:inherit;color:rgba(0,0,0,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.even{background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tbody tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td{display:table-cell;line-height:1.6}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2;word-spacing:-.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre):not([class^=L])>code{font-size:.9375em;font-style:normal!important;letter-spacing:0;padding:.1em .5ex;word-spacing:-.15em;background:#f7f7f8;border-radius:4px;line-height:1.45;text-rendering:optimizeSpeed;word-wrap:break-word}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nobreak{word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nowrap{white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{color:rgba(0,0,0,.9);font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;line-height:1.45;text-rendering:optimizeSpeed}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre pre{color:inherit;font-size:inherit;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre>code{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap pre{white-space:pre;word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em em{font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq{color:rgba(51,51,51,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;display:inline-block;color:rgba(0,0,0,.8);font-size:.65em;line-height:1.45;background:#f7f7f7;border:1px solid #ccc;border-radius:3px;box-shadow:0 1px 0 rgba(0,0,0,.2),inset 0 0 0 .1em #fff;margin:0 .15em;padding:.2em .5em;vertical-align:middle;position:relative;top:-.1em;white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:first-child{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:last-child{margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b:not(.caret){font-weight:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{word-spacing:-.02em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b.caret{font-size:1.25em;line-height:.8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq i.caret{font-weight:700;text-align:center;width:.45em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{position:relative;top:-1px;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{content:"[";padding:0 3px 0 2px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after{content:"]";padding:0 2px 0 3px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p a>code:hover{color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{width:100%;margin:0 auto;max-width:62.5em;*zoom:1;position:relative;padding-left:.9375em;padding-right:.9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-top:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before{content:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{color:rgba(0,0,0,.85);margin-top:2.25rem;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child+#toc{margin-top:8px;border-top:1px solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:only-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #dddddf;padding-bottom:8px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details{border-bottom:1px solid #dddddf;line-height:1.45;padding-top:.25em;padding-bottom:.25em;padding-left:.25em;color:rgba(0,0,0,.6);display:flex;flex-flow:row wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span:first-child{margin-left:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span.email a{color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span:before{content:"\A0\2013\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span.author:before{content:"\A0\22C5\A0";color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span#revremark:before{content:"\A0|\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber{text-transform:capitalize}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber:after{content:"\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content>h1:first-child:not([class]){color:rgba(0,0,0,.85);border-bottom:1px solid #dddddf;padding-bottom:8px;margin-top:0;padding-top:1rem;margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #e7e7e9;padding-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc>ul{margin-left:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0>li>a{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0 ul.sectlevel1{margin:.5em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul{font-family:Open Sans,DejaVu Sans,sans-serif;list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc li{line-height:1.3334;margin-top:.3334em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{color:#7a2518;font-size:1.2em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:15em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{margin-top:0!important;background:#f8f8f7;position:fixed;width:15em;left:0;top:0;border-right:1px solid #e7e7e9;border-top-width:0!important;border-bottom-width:0!important;z-index:1000;padding:1.25em 1em;height:100%;overflow:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{margin-top:0;margin-bottom:.8rem;font-size:1.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.9em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{margin-left:0;padding-left:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:.5em;margin-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:15em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right #toc.toc2{border-right-width:0;border-left:1px solid #e7e7e9;left:auto;right:0}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:20em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{width:20em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.95em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{padding-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:20em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc{border:1px solid #e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{max-width:100%;background:rgba(0,0,0,.8);padding:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:hsla(0,0%,100%,.8);line-height:1.44}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:.625em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:1.25em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1:last-child{padding-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border-top:1px solid #e7e7e9}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:before{content:"\A7";font-size:.85em;display:block;padding-top:.1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:hover{visibility:visible}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link{color:#ba3925;text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link:hover{color:#a53221}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content details>summary:first-of-type{cursor:pointer;display:list-item;outline:none;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{text-rendering:optimizeLegibility;text-align:left;font-family:"Noto Serif","DejaVu Serif",serif;font-size:1rem;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock.fit-content>caption.title{white-space:nowrap;width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #preamble>.sectionbody>[class=paragraph]:first-of-type p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph.lead>p{font-size:1.21875em;line-height:1.6;color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock #preamble>.sectionbody>[class=paragraph]:first-of-type p{font-size:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon{text-align:center;width:80px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon .title{font-weight:700;font-family:Open Sans,DejaVu Sans,sans-serif;text-transform:uppercase}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content{padding-left:1.125em;padding-right:1.25em;border-left:1px solid #dddddf;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{border:1px solid #e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#fff;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{border:1px solid #dbdbd6;margin-bottom:1.25em;padding:1.25em;background:#f3f3f2;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title{color:#7a2518;margin-top:0;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{border-radius:4px;word-wrap:break-word;overflow-x:auto;padding:1em;font-size:.8125em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:.90625em}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:1em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre:not(.highlight),.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class=highlight],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class^="highlight "],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock.output pre{color:#f7f7f8;background:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content{position:relative}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:none;content:attr(data-lang);position:absolute;font-size:.75em;top:.425rem;right:.5rem;line-height:1;text-transform:uppercase;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock:hover code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:before{content:attr(data-prompt);padding-right:.5em;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:not([data-prompt]):before{content:"$"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs{padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs>code{padding:1em;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.prettyprint{border-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .prettyprint{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint .linenums{line-height:1.45;margin-left:2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li{background:none;list-style-type:inherit;padding-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li code[data-lang]:before{opacity:1}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li:not(:first-child) code[data-lang]:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable{border-collapse:separate;border:0;margin-bottom:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td[class]{color:inherit;vertical-align:top;padding:0;line-height:inherit;white-space:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.code{padding-left:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.linenos{border-right:1px solid;opacity:.35;padding-right:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno{border-right:1px solid;opacity:.35;display:inline-block;margin-right:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno:before{content:"";margin-right:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock{margin:0 1em 1.25em 1.5em;display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock:not(.excerpt)>.title{margin-left:-1.5em;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock p{color:rgba(0,0,0,.85);font-size:1.15rem;line-height:1.75;word-spacing:.1em;letter-spacing:0;font-style:italic;text-align:justify}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote{margin:0;padding:0;border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote:before{content:"\201C";float:left;font-size:2.75em;font-weight:700;line-height:.6em;margin-left:-.6em;color:#7a2518;text-shadow:0 1px 2px rgba(0,0,0,.1)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote>.paragraph:last-child p{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution{margin-top:.75em;margin-right:.5ex;text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock{margin:0 1em 1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre{font-family:Open Sans,DejaVu Sans,sans;font-size:1.15rem;color:rgba(0,0,0,.85);font-weight:300;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{margin-top:1.25rem;margin-left:.5ex}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{font-size:.9375em;line-height:1.45;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution br,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution cite,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution cite{display:block;letter-spacing:-.025em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{line-height:1.6;word-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract{margin:0 1em 1.25em;display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract>.title{margin:0 0 .375em;font-size:1.15em;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt>blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{padding:0 0 .25em 1em;border-left:.25em solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{color:inherit;font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock .attribution{color:inherit;text-align:left;margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock{max-width:100%;border-collapse:separate}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child{margin-bottom:-1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child.sidebarblock{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{border:0 solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead>tr>.tableblock{border-width:0 1px 1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tfoot>tr>.tableblock{border-width:1px 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock{border-width:0 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead>tr>.tableblock{border-width:0 0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tfoot>tr>.tableblock{border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>*>tr>.tableblock:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock:last-child{border-right-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead:last-child>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead:last-child>tr>.tableblock{border-bottom-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-all{border-width:1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-sides{border-width:0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-ends,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-topbot{border-width:1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-all tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-even tr:nth-of-type(2n),.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-hover tr:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-odd tr:nth-of-type(odd){background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-left{text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-right,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-right{text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-center,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-center{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-top,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-top{vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-bottom,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-bottom{vertical-align:bottom}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-middle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-middle{vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead th{font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th{display:table-cell;line-height:1.6;background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th p{color:rgba(0,0,0,.8);font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock>code:only-child{background:none;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol{margin-left:1.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-left:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul dd{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-check-square-o:first-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-square-o:first-child{width:1.25em;font-size:.8em;position:relative;bottom:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>input[type=checkbox]:first-child{margin-right:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline{display:flex;flex-flow:row wrap;list-style:none;margin:0 0 .625em -1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline>li{margin-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .unstyled dl dt{font-weight:400;font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.arabic{list-style-type:decimal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.decimal{list-style-type:decimal-leading-zero}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.loweralpha{list-style-type:lower-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperalpha{list-style-type:upper-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowerroman{list-style-type:lower-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperroman{list-style-type:upper-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowergreek{list-style-type:lower-greek}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table{border:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table>tbody>tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table>tbody>tr{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist2{vertical-align:top;padding:0 .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1{font-weight:700;padding-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock+.colist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock+.colist{margin-top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child{padding:.4em .75em 0;line-height:1;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):last-child{padding:.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .thumb{line-height:0;display:inline-block;border:4px solid #fff;box-shadow:0 0 0 1px #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.left{margin:.25em .625em 1.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.right{margin:.25em 0 1.25em .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb{border-width:6px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb>.title{padding:0 .125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-top:.25em;margin-bottom:.25em;display:inline-block;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left{margin-right:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image{text-decoration:none;display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image object{pointer-events:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref{font-size:.875em;position:static;vertical-align:super}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 .75em;border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote{padding:0 .375em 0 .225em;line-height:1.3334;font-size:.875em;margin-left:1.2em;margin-bottom:.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote a:first-of-type{font-weight:700;text-decoration:none;margin-left:-1.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote:last-of-type{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table{border:0;background:#fff;width:100%;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table td.line-data{width:99%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.unbreakable{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .big{font-size:larger}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .small{font-size:smaller}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .underline{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .overline{text-decoration:overline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .line-through{text-decoration:line-through}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua{color:#00bfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua-background{background:#00fafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black-background{background:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue{color:#0000bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue-background{background:#0000fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia{color:#bf00bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia-background{background:#fa00fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray{color:#606060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray-background{background:#7d7d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green{color:#006000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green-background{background:#007d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime{color:#00bf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime-background{background:#00fa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon{color:#600000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon-background{background:#7d0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy{color:#000060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy-background{background:#00007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive{color:#606000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive-background{background:#7d7d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple{color:#600060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple-background{background:#7d007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red{color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red-background{background:#fa0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver{color:#909090}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver-background{background:#bcbcbc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal{color:#006060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal-background{background:#007d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white{color:#bfbfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white-background{background:#fafafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow{color:#bfbf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow-background{background:#fafa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.icon>.fa{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a span.icon>.fa{cursor:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;text-shadow:1px 1px 2px rgba(0,0,0,.5);cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-note:before{content:"\F05A";color:#19407c}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-tip:before{content:"\F0EB";text-shadow:1px 1px 2px rgba(155,155,0,.8);color:#111}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-warning:before{content:"\F071";color:#bf6900}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-caution:before{content:"\F06D";color:#bf3400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-important:before{content:"\F06A";color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]{display:inline-block;color:#fff!important;background:rgba(0,0,0,.8);border-radius:100px;text-align:center;font-size:.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:Open Sans,DejaVu Sans,sans-serif;font-style:normal;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value] *{color:#fff!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]+b{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]:after{content:attr(data-value)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre .conum[data-value]{position:relative;top:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.conum *{color:inherit!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum:not([data-value]):empty{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{letter-spacing:-.01em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content strong{letter-spacing:-.005em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{background:#fffef7;border-color:#e0e0dc;box-shadow:0 1px 4px #e0e0dc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:none!important}@page{.eclipse-jkube__documentation .eclipse-jkube__documentation-content{margin:1.25cm .75cm}}@media print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content *{box-shadow:none!important;text-shadow:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:inherit!important;text-decoration:underline!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.bare,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="#"],.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="mailto:"]{text-decoration:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="http:"]:not(.bare):after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="https:"]:not(.bare):after{content:"(" attr(href) ")";display:inline-block;font-size:.875em;padding-left:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]:after{content:" (" attr(title) ")"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tr{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content thead{display:table-header-group}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{max-width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1em;orphans:3;widows:3}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{page-break-after:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{background:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #dddddf!important;padding-bottom:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details{border:0!important;display:block;padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details span:first-child{margin-left:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br+span:before{content:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #preamble,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book .sect1>h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book h1.sect0{page-break-before:always}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{padding:0 .9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-on-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:block!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-for-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .show-for-print{display:inherit!important}}@media amzn-kf8,print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{margin-top:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:rgba(0,0,0,.6);font-size:.9em}}@media amzn-kf8{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{padding:0}}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content{padding-left:21em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .toc{position:fixed;width:20em;left:0;top:105px;bottom:0;z-index:1000;padding:0 16px;border-right:1px solid #efefed;border-top-width:0!important;border-bottom-width:0!important;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content i.fa{font-style:normal}.eclipse-jkube__quickstarts{padding:0}.eclipse-jkube__quickstarts-item{list-style:none}.eclipse-jkube__quickstarts-item:not(:last-child){margin-bottom:16px}</style><meta name="generator" content="Gatsby 2.24.12"/><title data-react-helmet="true">Eclipse JKube Demonstrations</title><meta data-react-helmet="true" charSet="UTF-8"/><meta data-react-helmet="true" name="description" content="Eclipse JKube Demonstrations and quick start for Kubernetes and OpenShift"/><style type="text/css">
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><style data-href="/jkube/styles.5c9b852c43e28f117cb7.css" id="gatsby-global-css">@import url(https://fonts.googleapis.com/css?family=Libre+Franklin:100,300,400,600,700,|Roboto:300,400,500,700|Jura);@import url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css);@import url(https://unpkg.com/@coreui/icons/css/brand.min.css);code[class*=language-],pre[class*=language-]{color:#657b83;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-ms-hyphens:none;hyphens:none}code[class*=language-]::selection,code[class*=language-] ::selection,pre[class*=language-]::selection,pre[class*=language-] ::selection{background:#073642}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;border-radius:.3em}:not(pre)>code[class*=language-],pre[class*=language-]{background-color:#fdf6e3}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#93a1a1}.token.punctuation{color:#586e75}.token.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#268bd2}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string,.token.url{color:#2aa198}.token.entity{color:#657b83;background:#eee8d5}.token.atrule,.token.attr-value,.token.keyword{color:#859900}.token.class-name,.token.function{color:#b58900}.token.important,.token.regex,.token.variable{color:#cb4b16}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body,html{font-family:Libre Franklin,Roboto,sans-serif}body{margin:0;padding:0;outline:0;background:#f1f2f2;font-size:16px;color:#222}h1{font-size:3rem}h1,h2{margin-top:0;font-family:Roboto,sans-serif;font-weight:300}h2{font-size:2rem}h3{font-size:1.5rem;font-weight:300}a{color:#525c86}a:focus,a:hover{color:#222}.eclipse-jkube-footer{padding:16px;border-top:10px solid #222;background-color:#292c2f;font-size:19.2px;font-family:Roboto,sans-serif;font-weight:300;line-height:1.5}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube{display:flex;flex-direction:column;max-width:1170px;margin:0 auto 16px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-image{width:160px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-tagline{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links{max-width:1170px;margin:0 auto 16px;display:flex;flex-wrap:wrap}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list{padding:0;margin:0 48px 16px 0;list-style:none}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a{transition:color .1s linear;color:#f1f2f2}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a,.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a:hover{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a:hover{color:#525c86}.eclipse-jkube-footer .eclipse-jkube-footer__links a{text-decoration:none}.eclipse-jkube-footer .eclipse-jkube-footer__copyright{max-width:1170px;margin:0 auto 16px;font-family:Roboto,sans-serif;color:#939598}.eclipse-jkube__header{display:block;position:relative;height:175px;background-color:#292c2f}@media (min-width:700px){.eclipse-jkube__header{height:105px}}.eclipse-jkube__header .eclipse-jkube__header-trade-mark{font-size:.5em;font-size:.3em;line-height:2.5;vertical-align:top}.eclipse-jkube__header .eclipse-jkube__header-container{position:relative;margin:0 auto;padding:0 16px;height:100%;max-width:1170px}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-container{display:flex;flex-wrap:nowrap;height:105px}}.eclipse-jkube__header .eclipse-jkube__header-logo{display:flex;justify-content:center;align-items:center;font-size:32px;font-weight:400;color:#f1f2f2}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo{font-size:50px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:65px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:90px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image img{max-height:100%;max-width:100%}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:50px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:65px}}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube-image{height:100%}.eclipse-jkube__header .eclipse-jkube__header-logo:hover{color:#f1f2f2}.eclipse-jkube__header .eclipse-jkube__header-content{flex:1 0;min-width:1px;display:flex;justify-content:center;align-items:center}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-content{justify-content:flex-end}}.eclipse-jkube__header .eclipse-jkube__header-content ul{display:flex;flex-wrap:wrap;align-items:center;justify-content:center}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-content ul{justify-content:flex-start}}.eclipse-jkube__header .eclipse-jkube__header-content ul li{margin:4px 0;padding-right:16px;list-style:none;color:#f1f2f2;font-size:20px}.eclipse-jkube__header .eclipse-jkube__header-content .eclipse-jkube__header-stars{display:block;width:85px;height:20px;line-height:20px}.eclipse-jkube__header a{color:#f1f2f2;text-decoration:none}.eclipse-jkube__header a:hover{color:#dd8623;transition:color .3s}.quick-start-card{border:1px solid #d6d6d6;padding:16px}.quick-start-card .quick-start-card__title{margin:0;padding:0}.quick-start-card .quick-start-card__title a{text-decoration:none}.quick-start-card .quick-start-card__title a:active,.quick-start-card .quick-start-card__title a:hover{text-decoration:underline}.quick-start-card .quick-start-card__technologies{margin:16px 0 0;padding:0}.quick-start-card .quick-start-card__technologies-item{display:inline-flex;align-items:center;padding:.25rem .3rem;border-radius:.2rem;font-size:.8rem;margin:0 0 .5rem;background:#dd8623;color:#222}.quick-start-card .quick-start-card__technologies-item:not(:last-child){margin-right:.5rem}.quick-start-card .quick-start-card__technologies-item-icon{display:inline-block;height:.8rem;margin-right:.2rem}.quick-start-card .quick-start-card__description p{margin-top:0}.quick-start-card .quick-start-card__links a{display:inline-block;text-decoration:none;padding:.3rem .5rem;border-radius:.2rem;border:1px solid #d6d6d6;background:#d6d6d6;color:#222}.quick-start-card .quick-start-card__links a:active,.quick-start-card .quick-start-card__links a:hover{background-color:#f1f2f2}.eclipse-jkube{display:flex;flex-direction:column;min-height:100vh}.eclipse-jkube__main{flex:1 1}@media (min-width:1170px){.eclipse-jkube__main{overflow-x:hidden}}.eclipse-jkube__main .eclipse-jkube__content{margin:0 16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content{max-width:1154px;margin:0 auto}}.eclipse-jkube__main .eclipse-jkube__content img{max-width:100%}.eclipse-jkube__main .eclipse-jkube__content :not(pre)>code[class*=language-],.eclipse-jkube__main .eclipse-jkube__content pre[class*=language-]{background-color:transparent}.eclipse-jkube__main .eclipse-jkube__content .hero{margin:0 -16px 16px;display:block;background-color:#272727;background-image:url(/jkube/static/cubes-8e1e59c337437947105e6668f1f3790a.jpg);background-size:cover;color:#f1f2f2}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px;background-color:rgba(39,39,39,.7)}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px calc(50% - 585px)}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content .getting-involved{color:#f1f2f2;margin:0 -16px;padding:0 16px;display:flex;justify-content:flex-end}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content h1{font-size:2.5rem;font-family:Libre Franklin,Roboto,sans-serif;font-weight:400}.eclipse-jkube__main .eclipse-jkube__content .section-dark{background-color:#404040;color:#f1f2f2;margin:0 -16px;padding:16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;padding:16px calc(50% - 585px)}}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark>*{padding:0 calc(50% - 585px)}}.eclipse-jkube__main .eclipse-jkube__content .highlight{display:flex;align-items:center}.eclipse-jkube__main .eclipse-jkube__content .highlight>p{margin:16px 32px;display:none}@media (min-width:501px){.eclipse-jkube__main .eclipse-jkube__content .highlight>p{display:block}}.eclipse-jkube__main .eclipse-jkube__content .highlight>p img{max-width:100px}.eclipse-jkube__main .eclipse-jkube__content .highlight-description{flex:1 1;min-width:1px}.eclipse-jkube__main .eclipse-jkube__content .highlight ul{flex:1 1;min-width:1px;margin:0;padding:0}.eclipse-jkube__main .eclipse-jkube__content .highlight li{list-style:none;margin:16px 0}.eclipse-jkube__main .eclipse-jkube__content .calendar{position:relative;overflow:hidden;padding-bottom:75%;margin-bottom:16px}@media (min-width:666.66667px){.eclipse-jkube__main .eclipse-jkube__content .calendar{padding-bottom:0;height:500px}}.eclipse-jkube__main .eclipse-jkube__content .calendar iframe{position:absolute;top:0;height:100%;max-height:500px;width:100%}.eclipse-jkube__documentation{margin:0}@media screen and (min-width:768px){.eclipse-jkube__documentation{position:absolute;top:105px;bottom:0;width:100%;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content{position:relative;padding:16px;overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content article,.eclipse-jkube__documentation .eclipse-jkube__documentation-content aside,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figcaption,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure,.eclipse-jkube__documentation .eclipse-jkube__documentation-content footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content header,.eclipse-jkube__documentation .eclipse-jkube__documentation-content hgroup,.eclipse-jkube__documentation .eclipse-jkube__documentation-content main,.eclipse-jkube__documentation .eclipse-jkube__documentation-content nav,.eclipse-jkube__documentation .eclipse-jkube__documentation-content section{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio,.eclipse-jkube__documentation .eclipse-jkube__documentation-content video{display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio:not([controls]){display:none;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus{outline:thin dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{outline:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2em;margin:.67em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]{border-bottom:1px dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dfn{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{box-sizing:content-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content mark{background:#ff0;color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content samp{font-family:monospace;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{white-space:pre-wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content q{quotes:"\201C" "\201D" "\2018" "\2019"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub{bottom:-.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg:not(:root){overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure{margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content legend{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select,.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{font-family:inherit;font-size:100%;margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input{line-height:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[type=button],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=reset],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=submit]{-webkit-appearance:button;cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button[disabled],.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[disabled]{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=checkbox],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=radio]{box-sizing:border-box;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button::-moz-focus-inner,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input::-moz-focus-inner{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{overflow:auto;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{border-collapse:collapse;border-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content *,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :before{box-sizing:border-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body{background:#fff;color:rgba(0,0,0,.8);padding:0;margin:0;font-family:"Noto Serif","DejaVu Serif",serif;font-weight:400;font-style:normal;line-height:1;position:relative;cursor:auto;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{max-width:100%;height:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{height:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{-ms-interpolation-mode:bicubic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .left{float:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .right{float:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-left{text-align:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-right{text-align:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-center{text-align:center!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-justify{text-align:justify!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{display:inline-block;vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{height:auto;min-height:50px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .center{margin-left:auto;margin-right:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stretch{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .subheader,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{line-height:1.45;color:#7a2518;font-weight:400;margin-top:0;margin-bottom:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content div,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content form,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6,.eclipse-jkube__documentation .eclipse-jkube__documentation-content li,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin:0;padding:0;direction:ltr}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:#2156a5;text-decoration:underline;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{color:#1d4b8f}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{font-family:inherit;font-weight:400;font-size:1em;line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p aside{font-size:.875em;line-height:1.35;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-family:Open Sans,DejaVu Sans,sans-serif;font-weight:300;font-style:normal;color:#ba3925;text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:.5em;line-height:1.0125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 small{font-size:60%;color:#e99b8f;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5{font-size:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{border:solid #dddddf;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em,.eclipse-jkube__documentation .eclipse-jkube__documentation-content i{font-style:italic;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b,.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong{font-weight:700;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:60%;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;font-weight:400;color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{font-size:1em;line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ul{margin-left:1.25em;margin-bottom:0;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square li ul{list-style:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square{list-style-type:square}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle{list-style-type:circle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc{list-style-type:disc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ul{margin-left:1.25em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dt{margin-bottom:.3125em;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content acronym{text-transform:uppercase;font-size:90%;color:rgba(0,0,0,.8);border-bottom:1px dotted #ddd;cursor:help}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote{margin:0 0 1.25em;padding:.5625em 1.25em 0 1.1875em;border-left:1px solid #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite{display:block;font-size:.9375em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite:before{content:"\2014 "}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a:visited{color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote p{line-height:1.6;color:rgba(0,0,0,.85)}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:2.3125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4{font-size:1.4375em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{background:#fff;margin-bottom:1.25em;border:1px solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead{background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th{padding:.5em .625em .625em;font-size:inherit;color:rgba(0,0,0,.8);text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr th{padding:.5625em .625em;font-size:inherit;color:rgba(0,0,0,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.even{background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tbody tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td{display:table-cell;line-height:1.6}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2;word-spacing:-.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre):not([class^=L])>code{font-size:.9375em;font-style:normal!important;letter-spacing:0;padding:.1em .5ex;word-spacing:-.15em;background:#f7f7f8;border-radius:4px;line-height:1.45;text-rendering:optimizeSpeed;word-wrap:break-word}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nobreak{word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nowrap{white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{color:rgba(0,0,0,.9);font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;line-height:1.45;text-rendering:optimizeSpeed}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre pre{color:inherit;font-size:inherit;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre>code{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap pre{white-space:pre;word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em em{font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq{color:rgba(51,51,51,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;display:inline-block;color:rgba(0,0,0,.8);font-size:.65em;line-height:1.45;background:#f7f7f7;border:1px solid #ccc;border-radius:3px;box-shadow:0 1px 0 rgba(0,0,0,.2),inset 0 0 0 .1em #fff;margin:0 .15em;padding:.2em .5em;vertical-align:middle;position:relative;top:-.1em;white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:first-child{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:last-child{margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b:not(.caret){font-weight:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{word-spacing:-.02em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b.caret{font-size:1.25em;line-height:.8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq i.caret{font-weight:700;text-align:center;width:.45em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{position:relative;top:-1px;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{content:"[";padding:0 3px 0 2px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after{content:"]";padding:0 2px 0 3px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p a>code:hover{color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{width:100%;margin:0 auto;max-width:62.5em;*zoom:1;position:relative;padding-left:.9375em;padding-right:.9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-top:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before{content:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{color:rgba(0,0,0,.85);margin-top:2.25rem;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child+#toc{margin-top:8px;border-top:1px solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:only-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #dddddf;padding-bottom:8px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details{border-bottom:1px solid #dddddf;line-height:1.45;padding-top:.25em;padding-bottom:.25em;padding-left:.25em;color:rgba(0,0,0,.6);display:flex;flex-flow:row wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span:first-child{margin-left:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span.email a{color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span:before{content:"\A0\2013\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span.author:before{content:"\A0\22C5\A0";color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span#revremark:before{content:"\A0|\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber{text-transform:capitalize}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber:after{content:"\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content>h1:first-child:not([class]){color:rgba(0,0,0,.85);border-bottom:1px solid #dddddf;padding-bottom:8px;margin-top:0;padding-top:1rem;margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #e7e7e9;padding-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc>ul{margin-left:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0>li>a{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0 ul.sectlevel1{margin:.5em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul{font-family:Open Sans,DejaVu Sans,sans-serif;list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc li{line-height:1.3334;margin-top:.3334em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{color:#7a2518;font-size:1.2em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:15em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{margin-top:0!important;background:#f8f8f7;position:fixed;width:15em;left:0;top:0;border-right:1px solid #e7e7e9;border-top-width:0!important;border-bottom-width:0!important;z-index:1000;padding:1.25em 1em;height:100%;overflow:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{margin-top:0;margin-bottom:.8rem;font-size:1.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.9em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{margin-left:0;padding-left:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:.5em;margin-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:15em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right #toc.toc2{border-right-width:0;border-left:1px solid #e7e7e9;left:auto;right:0}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:20em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{width:20em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.95em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{padding-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:20em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc{border:1px solid #e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{max-width:100%;background:rgba(0,0,0,.8);padding:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:hsla(0,0%,100%,.8);line-height:1.44}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:.625em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:1.25em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1:last-child{padding-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border-top:1px solid #e7e7e9}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:before{content:"\A7";font-size:.85em;display:block;padding-top:.1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:hover{visibility:visible}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link{color:#ba3925;text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link:hover{color:#a53221}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content details>summary:first-of-type{cursor:pointer;display:list-item;outline:none;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{text-rendering:optimizeLegibility;text-align:left;font-family:"Noto Serif","DejaVu Serif",serif;font-size:1rem;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock.fit-content>caption.title{white-space:nowrap;width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #preamble>.sectionbody>[class=paragraph]:first-of-type p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph.lead>p{font-size:1.21875em;line-height:1.6;color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock #preamble>.sectionbody>[class=paragraph]:first-of-type p{font-size:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon{text-align:center;width:80px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon .title{font-weight:700;font-family:Open Sans,DejaVu Sans,sans-serif;text-transform:uppercase}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content{padding-left:1.125em;padding-right:1.25em;border-left:1px solid #dddddf;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{border:1px solid #e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#fff;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{border:1px solid #dbdbd6;margin-bottom:1.25em;padding:1.25em;background:#f3f3f2;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title{color:#7a2518;margin-top:0;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{border-radius:4px;word-wrap:break-word;overflow-x:auto;padding:1em;font-size:.8125em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:.90625em}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:1em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre:not(.highlight),.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class=highlight],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class^="highlight "],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock.output pre{color:#f7f7f8;background:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content{position:relative}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:none;content:attr(data-lang);position:absolute;font-size:.75em;top:.425rem;right:.5rem;line-height:1;text-transform:uppercase;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock:hover code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:before{content:attr(data-prompt);padding-right:.5em;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:not([data-prompt]):before{content:"$"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs{padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs>code{padding:1em;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.prettyprint{border-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .prettyprint{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint .linenums{line-height:1.45;margin-left:2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li{background:none;list-style-type:inherit;padding-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li code[data-lang]:before{opacity:1}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li:not(:first-child) code[data-lang]:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable{border-collapse:separate;border:0;margin-bottom:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td[class]{color:inherit;vertical-align:top;padding:0;line-height:inherit;white-space:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.code{padding-left:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.linenos{border-right:1px solid;opacity:.35;padding-right:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno{border-right:1px solid;opacity:.35;display:inline-block;margin-right:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno:before{content:"";margin-right:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock{margin:0 1em 1.25em 1.5em;display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock:not(.excerpt)>.title{margin-left:-1.5em;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock p{color:rgba(0,0,0,.85);font-size:1.15rem;line-height:1.75;word-spacing:.1em;letter-spacing:0;font-style:italic;text-align:justify}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote{margin:0;padding:0;border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote:before{content:"\201C";float:left;font-size:2.75em;font-weight:700;line-height:.6em;margin-left:-.6em;color:#7a2518;text-shadow:0 1px 2px rgba(0,0,0,.1)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote>.paragraph:last-child p{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution{margin-top:.75em;margin-right:.5ex;text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock{margin:0 1em 1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre{font-family:Open Sans,DejaVu Sans,sans;font-size:1.15rem;color:rgba(0,0,0,.85);font-weight:300;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{margin-top:1.25rem;margin-left:.5ex}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{font-size:.9375em;line-height:1.45;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution br,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution cite,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution cite{display:block;letter-spacing:-.025em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{line-height:1.6;word-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract{margin:0 1em 1.25em;display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract>.title{margin:0 0 .375em;font-size:1.15em;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt>blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{padding:0 0 .25em 1em;border-left:.25em solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{color:inherit;font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock .attribution{color:inherit;text-align:left;margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock{max-width:100%;border-collapse:separate}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child{margin-bottom:-1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child.sidebarblock{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{border:0 solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead>tr>.tableblock{border-width:0 1px 1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tfoot>tr>.tableblock{border-width:1px 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock{border-width:0 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead>tr>.tableblock{border-width:0 0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tfoot>tr>.tableblock{border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>*>tr>.tableblock:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock:last-child{border-right-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead:last-child>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead:last-child>tr>.tableblock{border-bottom-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-all{border-width:1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-sides{border-width:0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-ends,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-topbot{border-width:1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-all tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-even tr:nth-of-type(2n),.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-hover tr:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-odd tr:nth-of-type(odd){background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-left{text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-right,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-right{text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-center,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-center{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-top,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-top{vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-bottom,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-bottom{vertical-align:bottom}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-middle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-middle{vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead th{font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th{display:table-cell;line-height:1.6;background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th p{color:rgba(0,0,0,.8);font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock>code:only-child{background:none;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol{margin-left:1.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-left:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul dd{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-check-square-o:first-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-square-o:first-child{width:1.25em;font-size:.8em;position:relative;bottom:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>input[type=checkbox]:first-child{margin-right:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline{display:flex;flex-flow:row wrap;list-style:none;margin:0 0 .625em -1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline>li{margin-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .unstyled dl dt{font-weight:400;font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.arabic{list-style-type:decimal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.decimal{list-style-type:decimal-leading-zero}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.loweralpha{list-style-type:lower-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperalpha{list-style-type:upper-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowerroman{list-style-type:lower-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperroman{list-style-type:upper-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowergreek{list-style-type:lower-greek}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table{border:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table>tbody>tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table>tbody>tr{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist2{vertical-align:top;padding:0 .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1{font-weight:700;padding-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock+.colist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock+.colist{margin-top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child{padding:.4em .75em 0;line-height:1;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):last-child{padding:.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .thumb{line-height:0;display:inline-block;border:4px solid #fff;box-shadow:0 0 0 1px #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.left{margin:.25em .625em 1.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.right{margin:.25em 0 1.25em .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb{border-width:6px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb>.title{padding:0 .125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-top:.25em;margin-bottom:.25em;display:inline-block;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left{margin-right:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image{text-decoration:none;display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image object{pointer-events:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref{font-size:.875em;position:static;vertical-align:super}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 .75em;border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote{padding:0 .375em 0 .225em;line-height:1.3334;font-size:.875em;margin-left:1.2em;margin-bottom:.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote a:first-of-type{font-weight:700;text-decoration:none;margin-left:-1.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote:last-of-type{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table{border:0;background:#fff;width:100%;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table td.line-data{width:99%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.unbreakable{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .big{font-size:larger}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .small{font-size:smaller}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .underline{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .overline{text-decoration:overline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .line-through{text-decoration:line-through}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua{color:#00bfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua-background{background:#00fafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black-background{background:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue{color:#0000bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue-background{background:#0000fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia{color:#bf00bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia-background{background:#fa00fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray{color:#606060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray-background{background:#7d7d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green{color:#006000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green-background{background:#007d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime{color:#00bf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime-background{background:#00fa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon{color:#600000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon-background{background:#7d0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy{color:#000060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy-background{background:#00007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive{color:#606000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive-background{background:#7d7d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple{color:#600060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple-background{background:#7d007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red{color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red-background{background:#fa0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver{color:#909090}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver-background{background:#bcbcbc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal{color:#006060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal-background{background:#007d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white{color:#bfbfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white-background{background:#fafafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow{color:#bfbf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow-background{background:#fafa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.icon>.fa{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a span.icon>.fa{cursor:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;text-shadow:1px 1px 2px rgba(0,0,0,.5);cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-note:before{content:"\F05A";color:#19407c}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-tip:before{content:"\F0EB";text-shadow:1px 1px 2px rgba(155,155,0,.8);color:#111}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-warning:before{content:"\F071";color:#bf6900}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-caution:before{content:"\F06D";color:#bf3400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-important:before{content:"\F06A";color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]{display:inline-block;color:#fff!important;background:rgba(0,0,0,.8);border-radius:100px;text-align:center;font-size:.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:Open Sans,DejaVu Sans,sans-serif;font-style:normal;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value] *{color:#fff!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]+b{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]:after{content:attr(data-value)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre .conum[data-value]{position:relative;top:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.conum *{color:inherit!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum:not([data-value]):empty{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{letter-spacing:-.01em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content strong{letter-spacing:-.005em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{background:#fffef7;border-color:#e0e0dc;box-shadow:0 1px 4px #e0e0dc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:none!important}@page{.eclipse-jkube__documentation .eclipse-jkube__documentation-content{margin:1.25cm .75cm}}@media print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content *{box-shadow:none!important;text-shadow:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:inherit!important;text-decoration:underline!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.bare,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="#"],.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="mailto:"]{text-decoration:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="http:"]:not(.bare):after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="https:"]:not(.bare):after{content:"(" attr(href) ")";display:inline-block;font-size:.875em;padding-left:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]:after{content:" (" attr(title) ")"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tr{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content thead{display:table-header-group}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{max-width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1em;orphans:3;widows:3}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{page-break-after:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{background:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #dddddf!important;padding-bottom:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details{border:0!important;display:block;padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details span:first-child{margin-left:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br+span:before{content:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #preamble,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book .sect1>h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book h1.sect0{page-break-before:always}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{padding:0 .9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-on-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:block!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-for-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .show-for-print{display:inherit!important}}@media amzn-kf8,print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{margin-top:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:rgba(0,0,0,.6);font-size:.9em}}@media amzn-kf8{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{padding:0}}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content{padding-left:21em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .toc{position:fixed;width:20em;left:0;top:105px;bottom:0;z-index:1000;padding:0 16px;border-right:1px solid #efefed;border-top-width:0!important;border-bottom-width:0!important;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content i.fa{font-style:normal}.eclipse-jkube__quickstarts{padding:0}.eclipse-jkube__quickstarts-item{list-style:none}.eclipse-jkube__quickstarts-item:not(:last-child){margin-bottom:16px}</style><meta name="generator" content="Gatsby 2.30.1"/><title data-react-helmet="true">Eclipse JKube Demonstrations</title><meta data-react-helmet="true" charSet="UTF-8"/><meta data-react-helmet="true" name="description" content="Eclipse JKube Demonstrations and quick start for Kubernetes and OpenShift"/><style type="text/css">
.anchor.before {
position: absolute;
top: 0;
@@ -48,7 +48,7 @@
}
}
})
- </script><link as="script" rel="preload" href="/jkube/webpack-runtime-5e7a06a902090b1f37ba.js"/><link as="script" rel="preload" href="/jkube/framework-fd2b85530eec85104a39.js"/><link as="script" rel="preload" href="/jkube/app-d7398b08e923fe8a3caa.js"/><link as="script" rel="preload" href="/jkube/styles-c2fe8482057191dca484.js"/><link as="script" rel="preload" href="/jkube/commons-8b827618f0536ebfeda2.js"/><link as="script" rel="preload" href="/jkube/component---src-templates-main-jsx-456568a5c9ae2c9095ee.js"/><link as="fetch" rel="preload" href="/jkube/page-data/demos/page-data.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/jkube/page-data/app-data.json" crossorigin="anonymous"/></head><body><div id="___gatsby"><div style="outline:none" tabindex="-1" id="gatsby-focus-wrapper"><div class="eclipse-jkube"><header class="eclipse-jkube__header"><div class="eclipse-jkube__header-container"><a class="eclipse-jkube__header-logo" href="/jkube/"><div class="eclipse-jkube__header-logo-eclipse-image"><img src="/jkube/static/EF_WHT-OR_png-d0fd43ad31261ee9693a060be920e71e.png" alt="Eclipse Foundation"/></div><div class="eclipse-jkube__header-logo-jkube"><img class="eclipse-jkube__header-logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/><span class="eclipse-jkube__header-trade-mark">™</span></div></a><div class="eclipse-jkube__header-content"><ul><li><a href="/jkube/docs">Docs</a></li><li><a href="/jkube/demos">Demos</a></li><li><a href="/jkube/community">Community</a></li><li><a href="/jkube/contributing">Contributing</a></li><li><a class="eclipse-jkube__header-stars" href="https://github.com/eclipse/jkube" title="eclipse/jkube" target="_blank" rel="nofollow noopener noreferrer"><img src="https://img.shields.io/github/stars/eclipse/jkube?style=social" alt="eclipse/jkube stargazers"/></a></li></ul></div></div></header><div class="eclipse-jkube__main"><div class="eclipse-jkube__content"><div class="hero">
+ </script><link as="script" rel="preload" href="/jkube/webpack-runtime-b52c77882f7d7b54b2b3.js"/><link as="script" rel="preload" href="/jkube/framework-5e01c8af6b1735c9eaa3.js"/><link as="script" rel="preload" href="/jkube/app-59faa9989d677dd59195.js"/><link as="script" rel="preload" href="/jkube/styles-e9d24b1846c7d6eb9685.js"/><link as="script" rel="preload" href="/jkube/commons-ee34cd715ab4f7da30e0.js"/><link as="script" rel="preload" href="/jkube/component---src-templates-main-jsx-8853cf342e1cf1bead5c.js"/><link as="fetch" rel="preload" href="/jkube/page-data/demos/page-data.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/jkube/page-data/app-data.json" crossorigin="anonymous"/></head><body><div id="___gatsby"><div style="outline:none" tabindex="-1" id="gatsby-focus-wrapper"><div class="eclipse-jkube"><header class="eclipse-jkube__header"><div class="eclipse-jkube__header-container"><a class="eclipse-jkube__header-logo" href="/jkube/"><div class="eclipse-jkube__header-logo-eclipse-image"><img src="/jkube/static/EF_WHT-OR_png-d0fd43ad31261ee9693a060be920e71e.png" alt="Eclipse Foundation"/></div><div class="eclipse-jkube__header-logo-jkube"><img class="eclipse-jkube__header-logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/><span class="eclipse-jkube__header-trade-mark">™</span></div></a><div class="eclipse-jkube__header-content"><ul><li><a href="/jkube/docs">Docs</a></li><li><a href="/jkube/demos">Demos</a></li><li><a href="/jkube/community">Community</a></li><li><a href="/jkube/contributing">Contributing</a></li><li><a class="eclipse-jkube__header-stars" href="https://github.com/eclipse/jkube" title="eclipse/jkube" target="_blank" rel="nofollow noopener noreferrer"><img src="https://img.shields.io/github/stars/eclipse/jkube?style=social" alt="eclipse/jkube stargazers"/></a></li></ul></div></div></header><div class="eclipse-jkube__main"><div class="eclipse-jkube__content"><div class="hero">
<div class="hero-content">
<h1 id="demos" style="position:relative;"><a href="#demos" aria-label="demos permalink" class="anchor before"><svg aria-hidden="true" focusable="false" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Demos</h1>
</div>
@@ -56,4 +56,4 @@
<h3 id="kubernetes-maven-plugin" style="position:relative;"><a href="#kubernetes-maven-plugin" aria-label="kubernetes maven plugin permalink" class="anchor before"><svg aria-hidden="true" focusable="false" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a><a href="/jkube/docs/kubernetes-maven-plugin">Kubernetes Maven Plugin</a></h3>
<p><a href="https://asciinema.org/a/335724" target="_blank" rel="nofollow noopener noreferrer"><img src="https://asciinema.org/a/335724.svg" alt="Kubernetes Maven Plugin"></a></p>
<h3 id="openshift-maven-plugin" style="position:relative;"><a href="#openshift-maven-plugin" aria-label="openshift maven plugin permalink" class="anchor before"><svg aria-hidden="true" focusable="false" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a><a href="/jkube/docs/openshift-maven-plugin">OpenShift Maven Plugin</a></h3>
-<p><a href="https://asciinema.org/a/335743" target="_blank" rel="nofollow noopener noreferrer"><img src="https://asciinema.org/a/335743.svg" alt="OpenShift Maven Plugin"></a></p></div></div><div class="eclipse-jkube-footer"><div class="eclipse-jkube-footer__logo-jkube"><a href="/jkube/"><img class="eclipse-jkube-footer__logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/></a><span class="eclipse-jkube-footer__logo-jkube-tagline">Cloud-Native Java Applications without a hassle</span></div><div class="eclipse-jkube-footer__links"><ul class="eclipse-jkube-footer__links-list"><li><a href="/jkube/docs#getting-started">Get Started</a></li><li><a href="/jkube/docs">Docs</a></li><li><a href="/jkube/quickstarts">Quickstarts</a></li><li><a href="/jkube/docs#katacoda-courses">Katacoda Courses</a></li><li><a href="/jkube/demos">Demos</a></li></ul><ul class="eclipse-jkube-footer__links-list"><li><a href="/jkube/community">Community</a></li><li><a href="/jkube/community#planning-and-meetings">Get Involved</a></li><li><a href="/jkube/contributing">Contributing</a></li></ul><ul class="eclipse-jkube-footer__links-list"><li><a href="https://www.eclipse.org" target="_blank" rel="nofollow noopener noreferrer">Eclipse Foundation</a></li><li><a href="https://www.eclipse.org/legal/privacy.php" target="_blank" rel="nofollow noopener noreferrer">Privacy Policy</a></li><li><a href="https://www.eclipse.org/legal/termsofuse.php" target="_blank" rel="nofollow noopener noreferrer">Terms of Use</a></li><li><a href="https://www.eclipse.org/legal/copyright.php" target="_blank" rel="nofollow noopener noreferrer">Copyright Agent</a></li><li><a href="https://www.eclipse.org/legal" target="_blank" rel="nofollow noopener noreferrer">Legal Resources</a></li></ul></div><div class="eclipse-jkube-footer__copyright">Copyright © Eclipse Foundation 2020</div></div></div></div><div id="gatsby-announcer" style="position:absolute;top:0;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0" aria-live="assertive" aria-atomic="true"></div></div><script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/demos/";/*]]>*/</script><script id="gatsby-chunk-mapping">/*<![CDATA[*/window.___chunkMapping={"polyfill":["/polyfill-88d9aed314b16f9b2adc.js"],"app":["/app-d7398b08e923fe8a3caa.js"],"component---src-pages-quickstarts-index-jsx":["/component---src-pages-quickstarts-index-jsx-a1e42093b41968828647.js"],"component---src-templates-doc-jsx":["/component---src-templates-doc-jsx-5366dbd1b50f3447a412.js"],"component---src-templates-main-jsx":["/component---src-templates-main-jsx-456568a5c9ae2c9095ee.js"]};/*]]>*/</script><script src="/jkube/polyfill-88d9aed314b16f9b2adc.js" nomodule=""></script><script src="/jkube/component---src-templates-main-jsx-456568a5c9ae2c9095ee.js" async=""></script><script src="/jkube/commons-8b827618f0536ebfeda2.js" async=""></script><script src="/jkube/styles-c2fe8482057191dca484.js" async=""></script><script src="/jkube/app-d7398b08e923fe8a3caa.js" async=""></script><script src="/jkube/framework-fd2b85530eec85104a39.js" async=""></script><script src="/jkube/webpack-runtime-5e7a06a902090b1f37ba.js" async=""></script></body></html>
\ No newline at end of file
+<p><a href="https://asciinema.org/a/335743" target="_blank" rel="nofollow noopener noreferrer"><img src="https://asciinema.org/a/335743.svg" alt="OpenShift Maven Plugin"></a></p></div></div><div class="eclipse-jkube-footer"><div class="eclipse-jkube-footer__logo-jkube"><a href="/jkube/"><img class="eclipse-jkube-footer__logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/></a><span class="eclipse-jkube-footer__logo-jkube-tagline">Cloud-Native Java Applications without a hassle</span></div><div class="eclipse-jkube-footer__links"><ul class="eclipse-jkube-footer__links-list"><li><a href="/jkube/docs#getting-started">Get Started</a></li><li><a href="/jkube/docs">Docs</a></li><li><a href="/jkube/quickstarts">Quickstarts</a></li><li><a href="/jkube/docs#katacoda-courses">Katacoda Courses</a></li><li><a href="/jkube/demos">Demos</a></li></ul><ul class="eclipse-jkube-footer__links-list"><li><a href="/jkube/community">Community</a></li><li><a href="/jkube/community#planning-and-meetings">Get Involved</a></li><li><a href="/jkube/contributing">Contributing</a></li></ul><ul class="eclipse-jkube-footer__links-list"><li><a href="https://www.eclipse.org" target="_blank" rel="nofollow noopener noreferrer">Eclipse Foundation</a></li><li><a href="https://www.eclipse.org/legal/privacy.php" target="_blank" rel="nofollow noopener noreferrer">Privacy Policy</a></li><li><a href="https://www.eclipse.org/legal/termsofuse.php" target="_blank" rel="nofollow noopener noreferrer">Terms of Use</a></li><li><a href="https://www.eclipse.org/legal/copyright.php" target="_blank" rel="nofollow noopener noreferrer">Copyright Agent</a></li><li><a href="https://www.eclipse.org/legal" target="_blank" rel="nofollow noopener noreferrer">Legal Resources</a></li></ul></div><div class="eclipse-jkube-footer__copyright">Copyright © Eclipse Foundation 2020</div></div></div></div><div id="gatsby-announcer" style="position:absolute;top:0;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0" aria-live="assertive" aria-atomic="true"></div></div><script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/demos/";/*]]>*/</script><script id="gatsby-chunk-mapping">/*<![CDATA[*/window.___chunkMapping={"polyfill":["/polyfill-e4957c11759bdfc149d9.js"],"app":["/app-59faa9989d677dd59195.js"],"component---src-pages-quickstarts-index-jsx":["/component---src-pages-quickstarts-index-jsx-8b53e5455e208a3e59b9.js"],"component---src-templates-doc-jsx":["/component---src-templates-doc-jsx-21a94bb36ef3df298f42.js"],"component---src-templates-main-jsx":["/component---src-templates-main-jsx-8853cf342e1cf1bead5c.js"]};/*]]>*/</script><script src="/jkube/polyfill-e4957c11759bdfc149d9.js" nomodule=""></script><script src="/jkube/component---src-templates-main-jsx-8853cf342e1cf1bead5c.js" async=""></script><script src="/jkube/commons-ee34cd715ab4f7da30e0.js" async=""></script><script src="/jkube/styles-e9d24b1846c7d6eb9685.js" async=""></script><script src="/jkube/app-59faa9989d677dd59195.js" async=""></script><script src="/jkube/framework-5e01c8af6b1735c9eaa3.js" async=""></script><script src="/jkube/webpack-runtime-b52c77882f7d7b54b2b3.js" async=""></script></body></html>
\ No newline at end of file
diff --git a/docs/index.html b/docs/index.html
index 9e98bf4..8749426 100644
--- a/docs/index.html
+++ b/docs/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><style data-href="/jkube/styles.5c9b852c43e28f117cb7.css">@import url(https://fonts.googleapis.com/css?family=Libre+Franklin:100,300,400,600,700,|Roboto:300,400,500,700|Jura);@import url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css);@import url(https://unpkg.com/@coreui/icons/css/brand.min.css);code[class*=language-],pre[class*=language-]{color:#657b83;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-ms-hyphens:none;hyphens:none}code[class*=language-]::selection,code[class*=language-] ::selection,pre[class*=language-]::selection,pre[class*=language-] ::selection{background:#073642}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;border-radius:.3em}:not(pre)>code[class*=language-],pre[class*=language-]{background-color:#fdf6e3}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#93a1a1}.token.punctuation{color:#586e75}.token.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#268bd2}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string,.token.url{color:#2aa198}.token.entity{color:#657b83;background:#eee8d5}.token.atrule,.token.attr-value,.token.keyword{color:#859900}.token.class-name,.token.function{color:#b58900}.token.important,.token.regex,.token.variable{color:#cb4b16}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body,html{font-family:Libre Franklin,Roboto,sans-serif}body{margin:0;padding:0;outline:0;background:#f1f2f2;font-size:16px;color:#222}h1{font-size:3rem}h1,h2{margin-top:0;font-family:Roboto,sans-serif;font-weight:300}h2{font-size:2rem}h3{font-size:1.5rem;font-weight:300}a{color:#525c86}a:focus,a:hover{color:#222}.eclipse-jkube-footer{padding:16px;border-top:10px solid #222;background-color:#292c2f;font-size:19.2px;font-family:Roboto,sans-serif;font-weight:300;line-height:1.5}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube{display:flex;flex-direction:column;max-width:1170px;margin:0 auto 16px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-image{width:160px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-tagline{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links{max-width:1170px;margin:0 auto 16px;display:flex;flex-wrap:wrap}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list{padding:0;margin:0 48px 16px 0;list-style:none}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a{transition:color .1s linear;color:#f1f2f2}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a,.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a:hover{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a:hover{color:#525c86}.eclipse-jkube-footer .eclipse-jkube-footer__links a{text-decoration:none}.eclipse-jkube-footer .eclipse-jkube-footer__copyright{max-width:1170px;margin:0 auto 16px;font-family:Roboto,sans-serif;color:#939598}.eclipse-jkube__header{display:block;position:relative;height:175px;background-color:#292c2f}@media (min-width:700px){.eclipse-jkube__header{height:105px}}.eclipse-jkube__header .eclipse-jkube__header-trade-mark{font-size:.5em;font-size:.3em;line-height:2.5;vertical-align:top}.eclipse-jkube__header .eclipse-jkube__header-container{position:relative;margin:0 auto;padding:0 16px;height:100%;max-width:1170px}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-container{display:flex;flex-wrap:nowrap;height:105px}}.eclipse-jkube__header .eclipse-jkube__header-logo{display:flex;justify-content:center;align-items:center;font-size:32px;font-weight:400;color:#f1f2f2}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo{font-size:50px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:65px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:90px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image img{max-height:100%;max-width:100%}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:50px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:65px}}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube-image{height:100%}.eclipse-jkube__header .eclipse-jkube__header-logo:hover{color:#f1f2f2}.eclipse-jkube__header .eclipse-jkube__header-content{flex:1 0;min-width:1px;display:flex;justify-content:center;align-items:center}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-content{justify-content:flex-end}}.eclipse-jkube__header .eclipse-jkube__header-content ul{display:flex;flex-wrap:wrap;align-items:center;justify-content:center}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-content ul{justify-content:flex-start}}.eclipse-jkube__header .eclipse-jkube__header-content ul li{margin:4px 0;padding-right:16px;list-style:none;color:#f1f2f2;font-size:20px}.eclipse-jkube__header .eclipse-jkube__header-content .eclipse-jkube__header-stars{display:block;width:85px;height:20px;line-height:20px}.eclipse-jkube__header a{color:#f1f2f2;text-decoration:none}.eclipse-jkube__header a:hover{color:#dd8623;transition:color .3s}.quick-start-card{border:1px solid #d6d6d6;padding:16px}.quick-start-card .quick-start-card__title{margin:0;padding:0}.quick-start-card .quick-start-card__title a{text-decoration:none}.quick-start-card .quick-start-card__title a:active,.quick-start-card .quick-start-card__title a:hover{text-decoration:underline}.quick-start-card .quick-start-card__technologies{margin:16px 0 0;padding:0}.quick-start-card .quick-start-card__technologies-item{display:inline-flex;align-items:center;padding:.25rem .3rem;border-radius:.2rem;font-size:.8rem;margin:0 0 .5rem;background:#dd8623;color:#222}.quick-start-card .quick-start-card__technologies-item:not(:last-child){margin-right:.5rem}.quick-start-card .quick-start-card__technologies-item-icon{display:inline-block;height:.8rem;margin-right:.2rem}.quick-start-card .quick-start-card__description p{margin-top:0}.quick-start-card .quick-start-card__links a{display:inline-block;text-decoration:none;padding:.3rem .5rem;border-radius:.2rem;border:1px solid #d6d6d6;background:#d6d6d6;color:#222}.quick-start-card .quick-start-card__links a:active,.quick-start-card .quick-start-card__links a:hover{background-color:#f1f2f2}.eclipse-jkube{display:flex;flex-direction:column;min-height:100vh}.eclipse-jkube__main{flex:1 1}@media (min-width:1170px){.eclipse-jkube__main{overflow-x:hidden}}.eclipse-jkube__main .eclipse-jkube__content{margin:0 16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content{max-width:1154px;margin:0 auto}}.eclipse-jkube__main .eclipse-jkube__content img{max-width:100%}.eclipse-jkube__main .eclipse-jkube__content :not(pre)>code[class*=language-],.eclipse-jkube__main .eclipse-jkube__content pre[class*=language-]{background-color:transparent}.eclipse-jkube__main .eclipse-jkube__content .hero{margin:0 -16px 16px;display:block;background-color:#272727;background-image:url(/jkube/static/cubes-8e1e59c337437947105e6668f1f3790a.jpg);background-size:cover;color:#f1f2f2}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px;background-color:rgba(39,39,39,.7)}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px calc((100% - 1170px)/2)}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content .getting-involved{color:#f1f2f2;margin:0 -16px;padding:0 16px;display:flex;justify-content:flex-end}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content h1{font-size:2.5rem;font-family:Libre Franklin,Roboto,sans-serif;font-weight:400}.eclipse-jkube__main .eclipse-jkube__content .section-dark{background-color:#404040;color:#f1f2f2;margin:0 -16px;padding:16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;padding:16px calc((100% - 1170px)/2)}}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark>*{padding:0 calc((100% - 1170px)/2)}}.eclipse-jkube__main .eclipse-jkube__content .highlight{display:flex;align-items:center}.eclipse-jkube__main .eclipse-jkube__content .highlight>p{margin:16px 32px;display:none}@media (min-width:501px){.eclipse-jkube__main .eclipse-jkube__content .highlight>p{display:block}}.eclipse-jkube__main .eclipse-jkube__content .highlight>p img{max-width:100px}.eclipse-jkube__main .eclipse-jkube__content .highlight-description{flex:1 1;min-width:1px}.eclipse-jkube__main .eclipse-jkube__content .highlight ul{flex:1 1;min-width:1px;margin:0;padding:0}.eclipse-jkube__main .eclipse-jkube__content .highlight li{list-style:none;margin:16px 0}.eclipse-jkube__main .eclipse-jkube__content .calendar{position:relative;overflow:hidden;padding-bottom:75%;margin-bottom:16px}@media (min-width:666.66667px){.eclipse-jkube__main .eclipse-jkube__content .calendar{padding-bottom:0;height:500px}}.eclipse-jkube__main .eclipse-jkube__content .calendar iframe{position:absolute;top:0;height:100%;max-height:500px;width:100%}.eclipse-jkube__documentation{margin:0}@media screen and (min-width:768px){.eclipse-jkube__documentation{position:absolute;top:105px;bottom:0;width:100%;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content{position:relative;padding:16px;overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content article,.eclipse-jkube__documentation .eclipse-jkube__documentation-content aside,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figcaption,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure,.eclipse-jkube__documentation .eclipse-jkube__documentation-content footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content header,.eclipse-jkube__documentation .eclipse-jkube__documentation-content hgroup,.eclipse-jkube__documentation .eclipse-jkube__documentation-content main,.eclipse-jkube__documentation .eclipse-jkube__documentation-content nav,.eclipse-jkube__documentation .eclipse-jkube__documentation-content section{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio,.eclipse-jkube__documentation .eclipse-jkube__documentation-content video{display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio:not([controls]){display:none;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus{outline:thin dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{outline:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2em;margin:.67em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]{border-bottom:1px dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dfn{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{box-sizing:content-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content mark{background:#ff0;color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content samp{font-family:monospace;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{white-space:pre-wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content q{quotes:"\201C" "\201D" "\2018" "\2019"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub{bottom:-.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg:not(:root){overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure{margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content legend{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select,.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{font-family:inherit;font-size:100%;margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input{line-height:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[type=button],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=reset],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=submit]{-webkit-appearance:button;cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button[disabled],.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[disabled]{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=checkbox],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=radio]{box-sizing:border-box;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button::-moz-focus-inner,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input::-moz-focus-inner{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{overflow:auto;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{border-collapse:collapse;border-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content *,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :before{box-sizing:border-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body{background:#fff;color:rgba(0,0,0,.8);padding:0;margin:0;font-family:"Noto Serif","DejaVu Serif",serif;font-weight:400;font-style:normal;line-height:1;position:relative;cursor:auto;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{max-width:100%;height:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{height:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{-ms-interpolation-mode:bicubic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .left{float:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .right{float:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-left{text-align:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-right{text-align:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-center{text-align:center!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-justify{text-align:justify!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{display:inline-block;vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{height:auto;min-height:50px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .center{margin-left:auto;margin-right:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stretch{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .subheader,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{line-height:1.45;color:#7a2518;font-weight:400;margin-top:0;margin-bottom:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content div,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content form,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6,.eclipse-jkube__documentation .eclipse-jkube__documentation-content li,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin:0;padding:0;direction:ltr}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:#2156a5;text-decoration:underline;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{color:#1d4b8f}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{font-family:inherit;font-weight:400;font-size:1em;line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p aside{font-size:.875em;line-height:1.35;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-family:Open Sans,DejaVu Sans,sans-serif;font-weight:300;font-style:normal;color:#ba3925;text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:.5em;line-height:1.0125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 small{font-size:60%;color:#e99b8f;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5{font-size:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{border:solid #dddddf;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em,.eclipse-jkube__documentation .eclipse-jkube__documentation-content i{font-style:italic;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b,.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong{font-weight:700;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:60%;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;font-weight:400;color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{font-size:1em;line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ul{margin-left:1.25em;margin-bottom:0;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square li ul{list-style:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square{list-style-type:square}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle{list-style-type:circle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc{list-style-type:disc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ul{margin-left:1.25em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dt{margin-bottom:.3125em;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content acronym{text-transform:uppercase;font-size:90%;color:rgba(0,0,0,.8);border-bottom:1px dotted #ddd;cursor:help}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote{margin:0 0 1.25em;padding:.5625em 1.25em 0 1.1875em;border-left:1px solid #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite{display:block;font-size:.9375em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite:before{content:"\2014 "}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a:visited{color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote p{line-height:1.6;color:rgba(0,0,0,.85)}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:2.3125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4{font-size:1.4375em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{background:#fff;margin-bottom:1.25em;border:1px solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead{background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th{padding:.5em .625em .625em;font-size:inherit;color:rgba(0,0,0,.8);text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr th{padding:.5625em .625em;font-size:inherit;color:rgba(0,0,0,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.even{background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tbody tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td{display:table-cell;line-height:1.6}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2;word-spacing:-.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre):not([class^=L])>code{font-size:.9375em;font-style:normal!important;letter-spacing:0;padding:.1em .5ex;word-spacing:-.15em;background:#f7f7f8;border-radius:4px;line-height:1.45;text-rendering:optimizeSpeed;word-wrap:break-word}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nobreak{word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nowrap{white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{color:rgba(0,0,0,.9);font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;line-height:1.45;text-rendering:optimizeSpeed}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre pre{color:inherit;font-size:inherit;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre>code{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap pre{white-space:pre;word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em em{font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq{color:rgba(51,51,51,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;display:inline-block;color:rgba(0,0,0,.8);font-size:.65em;line-height:1.45;background:#f7f7f7;border:1px solid #ccc;border-radius:3px;box-shadow:0 1px 0 rgba(0,0,0,.2),inset 0 0 0 .1em #fff;margin:0 .15em;padding:.2em .5em;vertical-align:middle;position:relative;top:-.1em;white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:first-child{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:last-child{margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b:not(.caret){font-weight:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{word-spacing:-.02em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b.caret{font-size:1.25em;line-height:.8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq i.caret{font-weight:700;text-align:center;width:.45em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{position:relative;top:-1px;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{content:"[";padding:0 3px 0 2px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after{content:"]";padding:0 2px 0 3px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p a>code:hover{color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{width:100%;margin:0 auto;max-width:62.5em;*zoom:1;position:relative;padding-left:.9375em;padding-right:.9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-top:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before{content:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{color:rgba(0,0,0,.85);margin-top:2.25rem;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child+#toc{margin-top:8px;border-top:1px solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:only-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #dddddf;padding-bottom:8px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details{border-bottom:1px solid #dddddf;line-height:1.45;padding-top:.25em;padding-bottom:.25em;padding-left:.25em;color:rgba(0,0,0,.6);display:flex;flex-flow:row wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span:first-child{margin-left:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span.email a{color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span:before{content:"\A0\2013\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span.author:before{content:"\A0\22C5\A0";color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span#revremark:before{content:"\A0|\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber{text-transform:capitalize}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber:after{content:"\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content>h1:first-child:not([class]){color:rgba(0,0,0,.85);border-bottom:1px solid #dddddf;padding-bottom:8px;margin-top:0;padding-top:1rem;margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #e7e7e9;padding-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc>ul{margin-left:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0>li>a{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0 ul.sectlevel1{margin:.5em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul{font-family:Open Sans,DejaVu Sans,sans-serif;list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc li{line-height:1.3334;margin-top:.3334em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{color:#7a2518;font-size:1.2em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:15em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{margin-top:0!important;background:#f8f8f7;position:fixed;width:15em;left:0;top:0;border-right:1px solid #e7e7e9;border-top-width:0!important;border-bottom-width:0!important;z-index:1000;padding:1.25em 1em;height:100%;overflow:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{margin-top:0;margin-bottom:.8rem;font-size:1.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.9em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{margin-left:0;padding-left:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:.5em;margin-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:15em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right #toc.toc2{border-right-width:0;border-left:1px solid #e7e7e9;left:auto;right:0}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:20em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{width:20em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.95em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{padding-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:20em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc{border:1px solid #e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{max-width:100%;background:rgba(0,0,0,.8);padding:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:hsla(0,0%,100%,.8);line-height:1.44}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:.625em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:1.25em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1:last-child{padding-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border-top:1px solid #e7e7e9}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:before{content:"\A7";font-size:.85em;display:block;padding-top:.1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:hover{visibility:visible}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link{color:#ba3925;text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link:hover{color:#a53221}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content details>summary:first-of-type{cursor:pointer;display:list-item;outline:none;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{text-rendering:optimizeLegibility;text-align:left;font-family:"Noto Serif","DejaVu Serif",serif;font-size:1rem;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock.fit-content>caption.title{white-space:nowrap;width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #preamble>.sectionbody>[class=paragraph]:first-of-type p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph.lead>p{font-size:1.21875em;line-height:1.6;color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock #preamble>.sectionbody>[class=paragraph]:first-of-type p{font-size:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon{text-align:center;width:80px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon .title{font-weight:700;font-family:Open Sans,DejaVu Sans,sans-serif;text-transform:uppercase}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content{padding-left:1.125em;padding-right:1.25em;border-left:1px solid #dddddf;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{border:1px solid #e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#fff;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{border:1px solid #dbdbd6;margin-bottom:1.25em;padding:1.25em;background:#f3f3f2;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title{color:#7a2518;margin-top:0;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{border-radius:4px;word-wrap:break-word;overflow-x:auto;padding:1em;font-size:.8125em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:.90625em}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:1em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre:not(.highlight),.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class=highlight],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class^="highlight "],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock.output pre{color:#f7f7f8;background:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content{position:relative}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:none;content:attr(data-lang);position:absolute;font-size:.75em;top:.425rem;right:.5rem;line-height:1;text-transform:uppercase;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock:hover code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:before{content:attr(data-prompt);padding-right:.5em;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:not([data-prompt]):before{content:"$"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs{padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs>code{padding:1em;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.prettyprint{border-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .prettyprint{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint .linenums{line-height:1.45;margin-left:2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li{background:none;list-style-type:inherit;padding-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li code[data-lang]:before{opacity:1}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li:not(:first-child) code[data-lang]:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable{border-collapse:separate;border:0;margin-bottom:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td[class]{color:inherit;vertical-align:top;padding:0;line-height:inherit;white-space:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.code{padding-left:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.linenos{border-right:1px solid;opacity:.35;padding-right:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno{border-right:1px solid;opacity:.35;display:inline-block;margin-right:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno:before{content:"";margin-right:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock{margin:0 1em 1.25em 1.5em;display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock:not(.excerpt)>.title{margin-left:-1.5em;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock p{color:rgba(0,0,0,.85);font-size:1.15rem;line-height:1.75;word-spacing:.1em;letter-spacing:0;font-style:italic;text-align:justify}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote{margin:0;padding:0;border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote:before{content:"\201C";float:left;font-size:2.75em;font-weight:700;line-height:.6em;margin-left:-.6em;color:#7a2518;text-shadow:0 1px 2px rgba(0,0,0,.1)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote>.paragraph:last-child p{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution{margin-top:.75em;margin-right:.5ex;text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock{margin:0 1em 1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre{font-family:Open Sans,DejaVu Sans,sans;font-size:1.15rem;color:rgba(0,0,0,.85);font-weight:300;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{margin-top:1.25rem;margin-left:.5ex}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{font-size:.9375em;line-height:1.45;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution br,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution cite,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution cite{display:block;letter-spacing:-.025em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{line-height:1.6;word-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract{margin:0 1em 1.25em;display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract>.title{margin:0 0 .375em;font-size:1.15em;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt>blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{padding:0 0 .25em 1em;border-left:.25em solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{color:inherit;font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock .attribution{color:inherit;text-align:left;margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock{max-width:100%;border-collapse:separate}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child{margin-bottom:-1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child.sidebarblock{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{border:0 solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead>tr>.tableblock{border-width:0 1px 1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tfoot>tr>.tableblock{border-width:1px 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock{border-width:0 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead>tr>.tableblock{border-width:0 0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tfoot>tr>.tableblock{border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>*>tr>.tableblock:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock:last-child{border-right-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead:last-child>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead:last-child>tr>.tableblock{border-bottom-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-all{border-width:1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-sides{border-width:0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-ends,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-topbot{border-width:1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-all tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-even tr:nth-of-type(2n),.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-hover tr:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-odd tr:nth-of-type(odd){background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-left{text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-right,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-right{text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-center,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-center{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-top,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-top{vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-bottom,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-bottom{vertical-align:bottom}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-middle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-middle{vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead th{font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th{display:table-cell;line-height:1.6;background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th p{color:rgba(0,0,0,.8);font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock>code:only-child{background:none;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol{margin-left:1.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-left:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul dd{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-check-square-o:first-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-square-o:first-child{width:1.25em;font-size:.8em;position:relative;bottom:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>input[type=checkbox]:first-child{margin-right:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline{display:flex;flex-flow:row wrap;list-style:none;margin:0 0 .625em -1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline>li{margin-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .unstyled dl dt{font-weight:400;font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.arabic{list-style-type:decimal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.decimal{list-style-type:decimal-leading-zero}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.loweralpha{list-style-type:lower-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperalpha{list-style-type:upper-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowerroman{list-style-type:lower-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperroman{list-style-type:upper-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowergreek{list-style-type:lower-greek}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table{border:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table>tbody>tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table>tbody>tr{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist2{vertical-align:top;padding:0 .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1{font-weight:700;padding-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock+.colist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock+.colist{margin-top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child{padding:.4em .75em 0;line-height:1;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):last-child{padding:.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .thumb{line-height:0;display:inline-block;border:4px solid #fff;box-shadow:0 0 0 1px #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.left{margin:.25em .625em 1.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.right{margin:.25em 0 1.25em .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb{border-width:6px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb>.title{padding:0 .125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-top:.25em;margin-bottom:.25em;display:inline-block;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left{margin-right:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image{text-decoration:none;display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image object{pointer-events:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref{font-size:.875em;position:static;vertical-align:super}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 .75em;border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote{padding:0 .375em 0 .225em;line-height:1.3334;font-size:.875em;margin-left:1.2em;margin-bottom:.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote a:first-of-type{font-weight:700;text-decoration:none;margin-left:-1.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote:last-of-type{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table{border:0;background:#fff;width:100%;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table td.line-data{width:99%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.unbreakable{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .big{font-size:larger}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .small{font-size:smaller}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .underline{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .overline{text-decoration:overline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .line-through{text-decoration:line-through}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua{color:#00bfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua-background{background:#00fafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black-background{background:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue{color:#0000bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue-background{background:#0000fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia{color:#bf00bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia-background{background:#fa00fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray{color:#606060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray-background{background:#7d7d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green{color:#006000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green-background{background:#007d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime{color:#00bf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime-background{background:#00fa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon{color:#600000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon-background{background:#7d0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy{color:#000060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy-background{background:#00007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive{color:#606000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive-background{background:#7d7d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple{color:#600060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple-background{background:#7d007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red{color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red-background{background:#fa0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver{color:#909090}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver-background{background:#bcbcbc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal{color:#006060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal-background{background:#007d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white{color:#bfbfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white-background{background:#fafafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow{color:#bfbf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow-background{background:#fafa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.icon>.fa{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a span.icon>.fa{cursor:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;text-shadow:1px 1px 2px rgba(0,0,0,.5);cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-note:before{content:"\F05A";color:#19407c}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-tip:before{content:"\F0EB";text-shadow:1px 1px 2px rgba(155,155,0,.8);color:#111}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-warning:before{content:"\F071";color:#bf6900}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-caution:before{content:"\F06D";color:#bf3400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-important:before{content:"\F06A";color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]{display:inline-block;color:#fff!important;background:rgba(0,0,0,.8);border-radius:100px;text-align:center;font-size:.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:Open Sans,DejaVu Sans,sans-serif;font-style:normal;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value] *{color:#fff!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]+b{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]:after{content:attr(data-value)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre .conum[data-value]{position:relative;top:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.conum *{color:inherit!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum:not([data-value]):empty{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{letter-spacing:-.01em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content strong{letter-spacing:-.005em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{background:#fffef7;border-color:#e0e0dc;box-shadow:0 1px 4px #e0e0dc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:none!important}@page{.eclipse-jkube__documentation .eclipse-jkube__documentation-content{margin:1.25cm .75cm}}@media print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content *{box-shadow:none!important;text-shadow:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:inherit!important;text-decoration:underline!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.bare,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="#"],.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="mailto:"]{text-decoration:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="http:"]:not(.bare):after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="https:"]:not(.bare):after{content:"(" attr(href) ")";display:inline-block;font-size:.875em;padding-left:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]:after{content:" (" attr(title) ")"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tr{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content thead{display:table-header-group}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{max-width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1em;orphans:3;widows:3}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{page-break-after:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{background:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #dddddf!important;padding-bottom:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details{border:0!important;display:block;padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details span:first-child{margin-left:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br+span:before{content:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #preamble,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book .sect1>h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book h1.sect0{page-break-before:always}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{padding:0 .9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-on-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:block!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-for-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .show-for-print{display:inherit!important}}@media amzn-kf8,print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{margin-top:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:rgba(0,0,0,.6);font-size:.9em}}@media amzn-kf8{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{padding:0}}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content{padding-left:21em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .toc{position:fixed;width:20em;left:0;top:105px;bottom:0;z-index:1000;padding:0 16px;border-right:1px solid #efefed;border-top-width:0!important;border-bottom-width:0!important;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content i.fa{font-style:normal}.eclipse-jkube__quickstarts{padding:0}.eclipse-jkube__quickstarts-item{list-style:none}.eclipse-jkube__quickstarts-item:not(:last-child){margin-bottom:16px}</style><meta name="generator" content="Gatsby 2.24.12"/><title data-react-helmet="true">Eclipse JKube Documentation</title><meta data-react-helmet="true" charSet="UTF-8"/><meta data-react-helmet="true" name="description" content="Eclipse JKube Documentation Index"/><style type="text/css">
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><style data-href="/jkube/styles.5c9b852c43e28f117cb7.css" id="gatsby-global-css">@import url(https://fonts.googleapis.com/css?family=Libre+Franklin:100,300,400,600,700,|Roboto:300,400,500,700|Jura);@import url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css);@import url(https://unpkg.com/@coreui/icons/css/brand.min.css);code[class*=language-],pre[class*=language-]{color:#657b83;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-ms-hyphens:none;hyphens:none}code[class*=language-]::selection,code[class*=language-] ::selection,pre[class*=language-]::selection,pre[class*=language-] ::selection{background:#073642}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;border-radius:.3em}:not(pre)>code[class*=language-],pre[class*=language-]{background-color:#fdf6e3}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#93a1a1}.token.punctuation{color:#586e75}.token.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#268bd2}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string,.token.url{color:#2aa198}.token.entity{color:#657b83;background:#eee8d5}.token.atrule,.token.attr-value,.token.keyword{color:#859900}.token.class-name,.token.function{color:#b58900}.token.important,.token.regex,.token.variable{color:#cb4b16}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body,html{font-family:Libre Franklin,Roboto,sans-serif}body{margin:0;padding:0;outline:0;background:#f1f2f2;font-size:16px;color:#222}h1{font-size:3rem}h1,h2{margin-top:0;font-family:Roboto,sans-serif;font-weight:300}h2{font-size:2rem}h3{font-size:1.5rem;font-weight:300}a{color:#525c86}a:focus,a:hover{color:#222}.eclipse-jkube-footer{padding:16px;border-top:10px solid #222;background-color:#292c2f;font-size:19.2px;font-family:Roboto,sans-serif;font-weight:300;line-height:1.5}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube{display:flex;flex-direction:column;max-width:1170px;margin:0 auto 16px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-image{width:160px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-tagline{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links{max-width:1170px;margin:0 auto 16px;display:flex;flex-wrap:wrap}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list{padding:0;margin:0 48px 16px 0;list-style:none}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a{transition:color .1s linear;color:#f1f2f2}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a,.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a:hover{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a:hover{color:#525c86}.eclipse-jkube-footer .eclipse-jkube-footer__links a{text-decoration:none}.eclipse-jkube-footer .eclipse-jkube-footer__copyright{max-width:1170px;margin:0 auto 16px;font-family:Roboto,sans-serif;color:#939598}.eclipse-jkube__header{display:block;position:relative;height:175px;background-color:#292c2f}@media (min-width:700px){.eclipse-jkube__header{height:105px}}.eclipse-jkube__header .eclipse-jkube__header-trade-mark{font-size:.5em;font-size:.3em;line-height:2.5;vertical-align:top}.eclipse-jkube__header .eclipse-jkube__header-container{position:relative;margin:0 auto;padding:0 16px;height:100%;max-width:1170px}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-container{display:flex;flex-wrap:nowrap;height:105px}}.eclipse-jkube__header .eclipse-jkube__header-logo{display:flex;justify-content:center;align-items:center;font-size:32px;font-weight:400;color:#f1f2f2}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo{font-size:50px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:65px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:90px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image img{max-height:100%;max-width:100%}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:50px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:65px}}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube-image{height:100%}.eclipse-jkube__header .eclipse-jkube__header-logo:hover{color:#f1f2f2}.eclipse-jkube__header .eclipse-jkube__header-content{flex:1 0;min-width:1px;display:flex;justify-content:center;align-items:center}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-content{justify-content:flex-end}}.eclipse-jkube__header .eclipse-jkube__header-content ul{display:flex;flex-wrap:wrap;align-items:center;justify-content:center}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-content ul{justify-content:flex-start}}.eclipse-jkube__header .eclipse-jkube__header-content ul li{margin:4px 0;padding-right:16px;list-style:none;color:#f1f2f2;font-size:20px}.eclipse-jkube__header .eclipse-jkube__header-content .eclipse-jkube__header-stars{display:block;width:85px;height:20px;line-height:20px}.eclipse-jkube__header a{color:#f1f2f2;text-decoration:none}.eclipse-jkube__header a:hover{color:#dd8623;transition:color .3s}.quick-start-card{border:1px solid #d6d6d6;padding:16px}.quick-start-card .quick-start-card__title{margin:0;padding:0}.quick-start-card .quick-start-card__title a{text-decoration:none}.quick-start-card .quick-start-card__title a:active,.quick-start-card .quick-start-card__title a:hover{text-decoration:underline}.quick-start-card .quick-start-card__technologies{margin:16px 0 0;padding:0}.quick-start-card .quick-start-card__technologies-item{display:inline-flex;align-items:center;padding:.25rem .3rem;border-radius:.2rem;font-size:.8rem;margin:0 0 .5rem;background:#dd8623;color:#222}.quick-start-card .quick-start-card__technologies-item:not(:last-child){margin-right:.5rem}.quick-start-card .quick-start-card__technologies-item-icon{display:inline-block;height:.8rem;margin-right:.2rem}.quick-start-card .quick-start-card__description p{margin-top:0}.quick-start-card .quick-start-card__links a{display:inline-block;text-decoration:none;padding:.3rem .5rem;border-radius:.2rem;border:1px solid #d6d6d6;background:#d6d6d6;color:#222}.quick-start-card .quick-start-card__links a:active,.quick-start-card .quick-start-card__links a:hover{background-color:#f1f2f2}.eclipse-jkube{display:flex;flex-direction:column;min-height:100vh}.eclipse-jkube__main{flex:1 1}@media (min-width:1170px){.eclipse-jkube__main{overflow-x:hidden}}.eclipse-jkube__main .eclipse-jkube__content{margin:0 16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content{max-width:1154px;margin:0 auto}}.eclipse-jkube__main .eclipse-jkube__content img{max-width:100%}.eclipse-jkube__main .eclipse-jkube__content :not(pre)>code[class*=language-],.eclipse-jkube__main .eclipse-jkube__content pre[class*=language-]{background-color:transparent}.eclipse-jkube__main .eclipse-jkube__content .hero{margin:0 -16px 16px;display:block;background-color:#272727;background-image:url(/jkube/static/cubes-8e1e59c337437947105e6668f1f3790a.jpg);background-size:cover;color:#f1f2f2}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px;background-color:rgba(39,39,39,.7)}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px calc(50% - 585px)}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content .getting-involved{color:#f1f2f2;margin:0 -16px;padding:0 16px;display:flex;justify-content:flex-end}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content h1{font-size:2.5rem;font-family:Libre Franklin,Roboto,sans-serif;font-weight:400}.eclipse-jkube__main .eclipse-jkube__content .section-dark{background-color:#404040;color:#f1f2f2;margin:0 -16px;padding:16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;padding:16px calc(50% - 585px)}}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark>*{padding:0 calc(50% - 585px)}}.eclipse-jkube__main .eclipse-jkube__content .highlight{display:flex;align-items:center}.eclipse-jkube__main .eclipse-jkube__content .highlight>p{margin:16px 32px;display:none}@media (min-width:501px){.eclipse-jkube__main .eclipse-jkube__content .highlight>p{display:block}}.eclipse-jkube__main .eclipse-jkube__content .highlight>p img{max-width:100px}.eclipse-jkube__main .eclipse-jkube__content .highlight-description{flex:1 1;min-width:1px}.eclipse-jkube__main .eclipse-jkube__content .highlight ul{flex:1 1;min-width:1px;margin:0;padding:0}.eclipse-jkube__main .eclipse-jkube__content .highlight li{list-style:none;margin:16px 0}.eclipse-jkube__main .eclipse-jkube__content .calendar{position:relative;overflow:hidden;padding-bottom:75%;margin-bottom:16px}@media (min-width:666.66667px){.eclipse-jkube__main .eclipse-jkube__content .calendar{padding-bottom:0;height:500px}}.eclipse-jkube__main .eclipse-jkube__content .calendar iframe{position:absolute;top:0;height:100%;max-height:500px;width:100%}.eclipse-jkube__documentation{margin:0}@media screen and (min-width:768px){.eclipse-jkube__documentation{position:absolute;top:105px;bottom:0;width:100%;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content{position:relative;padding:16px;overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content article,.eclipse-jkube__documentation .eclipse-jkube__documentation-content aside,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figcaption,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure,.eclipse-jkube__documentation .eclipse-jkube__documentation-content footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content header,.eclipse-jkube__documentation .eclipse-jkube__documentation-content hgroup,.eclipse-jkube__documentation .eclipse-jkube__documentation-content main,.eclipse-jkube__documentation .eclipse-jkube__documentation-content nav,.eclipse-jkube__documentation .eclipse-jkube__documentation-content section{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio,.eclipse-jkube__documentation .eclipse-jkube__documentation-content video{display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio:not([controls]){display:none;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus{outline:thin dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{outline:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2em;margin:.67em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]{border-bottom:1px dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dfn{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{box-sizing:content-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content mark{background:#ff0;color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content samp{font-family:monospace;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{white-space:pre-wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content q{quotes:"\201C" "\201D" "\2018" "\2019"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub{bottom:-.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg:not(:root){overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure{margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content legend{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select,.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{font-family:inherit;font-size:100%;margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input{line-height:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[type=button],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=reset],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=submit]{-webkit-appearance:button;cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button[disabled],.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[disabled]{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=checkbox],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=radio]{box-sizing:border-box;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button::-moz-focus-inner,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input::-moz-focus-inner{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{overflow:auto;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{border-collapse:collapse;border-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content *,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :before{box-sizing:border-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body{background:#fff;color:rgba(0,0,0,.8);padding:0;margin:0;font-family:"Noto Serif","DejaVu Serif",serif;font-weight:400;font-style:normal;line-height:1;position:relative;cursor:auto;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{max-width:100%;height:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{height:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{-ms-interpolation-mode:bicubic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .left{float:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .right{float:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-left{text-align:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-right{text-align:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-center{text-align:center!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-justify{text-align:justify!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{display:inline-block;vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{height:auto;min-height:50px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .center{margin-left:auto;margin-right:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stretch{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .subheader,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{line-height:1.45;color:#7a2518;font-weight:400;margin-top:0;margin-bottom:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content div,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content form,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6,.eclipse-jkube__documentation .eclipse-jkube__documentation-content li,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin:0;padding:0;direction:ltr}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:#2156a5;text-decoration:underline;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{color:#1d4b8f}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{font-family:inherit;font-weight:400;font-size:1em;line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p aside{font-size:.875em;line-height:1.35;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-family:Open Sans,DejaVu Sans,sans-serif;font-weight:300;font-style:normal;color:#ba3925;text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:.5em;line-height:1.0125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 small{font-size:60%;color:#e99b8f;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5{font-size:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{border:solid #dddddf;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em,.eclipse-jkube__documentation .eclipse-jkube__documentation-content i{font-style:italic;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b,.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong{font-weight:700;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:60%;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;font-weight:400;color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{font-size:1em;line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ul{margin-left:1.25em;margin-bottom:0;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square li ul{list-style:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square{list-style-type:square}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle{list-style-type:circle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc{list-style-type:disc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ul{margin-left:1.25em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dt{margin-bottom:.3125em;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content acronym{text-transform:uppercase;font-size:90%;color:rgba(0,0,0,.8);border-bottom:1px dotted #ddd;cursor:help}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote{margin:0 0 1.25em;padding:.5625em 1.25em 0 1.1875em;border-left:1px solid #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite{display:block;font-size:.9375em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite:before{content:"\2014 "}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a:visited{color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote p{line-height:1.6;color:rgba(0,0,0,.85)}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:2.3125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4{font-size:1.4375em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{background:#fff;margin-bottom:1.25em;border:1px solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead{background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th{padding:.5em .625em .625em;font-size:inherit;color:rgba(0,0,0,.8);text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr th{padding:.5625em .625em;font-size:inherit;color:rgba(0,0,0,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.even{background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tbody tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td{display:table-cell;line-height:1.6}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2;word-spacing:-.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre):not([class^=L])>code{font-size:.9375em;font-style:normal!important;letter-spacing:0;padding:.1em .5ex;word-spacing:-.15em;background:#f7f7f8;border-radius:4px;line-height:1.45;text-rendering:optimizeSpeed;word-wrap:break-word}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nobreak{word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nowrap{white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{color:rgba(0,0,0,.9);font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;line-height:1.45;text-rendering:optimizeSpeed}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre pre{color:inherit;font-size:inherit;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre>code{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap pre{white-space:pre;word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em em{font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq{color:rgba(51,51,51,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;display:inline-block;color:rgba(0,0,0,.8);font-size:.65em;line-height:1.45;background:#f7f7f7;border:1px solid #ccc;border-radius:3px;box-shadow:0 1px 0 rgba(0,0,0,.2),inset 0 0 0 .1em #fff;margin:0 .15em;padding:.2em .5em;vertical-align:middle;position:relative;top:-.1em;white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:first-child{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:last-child{margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b:not(.caret){font-weight:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{word-spacing:-.02em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b.caret{font-size:1.25em;line-height:.8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq i.caret{font-weight:700;text-align:center;width:.45em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{position:relative;top:-1px;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{content:"[";padding:0 3px 0 2px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after{content:"]";padding:0 2px 0 3px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p a>code:hover{color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{width:100%;margin:0 auto;max-width:62.5em;*zoom:1;position:relative;padding-left:.9375em;padding-right:.9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-top:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before{content:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{color:rgba(0,0,0,.85);margin-top:2.25rem;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child+#toc{margin-top:8px;border-top:1px solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:only-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #dddddf;padding-bottom:8px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details{border-bottom:1px solid #dddddf;line-height:1.45;padding-top:.25em;padding-bottom:.25em;padding-left:.25em;color:rgba(0,0,0,.6);display:flex;flex-flow:row wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span:first-child{margin-left:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span.email a{color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span:before{content:"\A0\2013\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span.author:before{content:"\A0\22C5\A0";color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span#revremark:before{content:"\A0|\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber{text-transform:capitalize}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber:after{content:"\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content>h1:first-child:not([class]){color:rgba(0,0,0,.85);border-bottom:1px solid #dddddf;padding-bottom:8px;margin-top:0;padding-top:1rem;margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #e7e7e9;padding-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc>ul{margin-left:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0>li>a{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0 ul.sectlevel1{margin:.5em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul{font-family:Open Sans,DejaVu Sans,sans-serif;list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc li{line-height:1.3334;margin-top:.3334em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{color:#7a2518;font-size:1.2em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:15em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{margin-top:0!important;background:#f8f8f7;position:fixed;width:15em;left:0;top:0;border-right:1px solid #e7e7e9;border-top-width:0!important;border-bottom-width:0!important;z-index:1000;padding:1.25em 1em;height:100%;overflow:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{margin-top:0;margin-bottom:.8rem;font-size:1.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.9em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{margin-left:0;padding-left:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:.5em;margin-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:15em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right #toc.toc2{border-right-width:0;border-left:1px solid #e7e7e9;left:auto;right:0}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:20em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{width:20em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.95em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{padding-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:20em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc{border:1px solid #e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{max-width:100%;background:rgba(0,0,0,.8);padding:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:hsla(0,0%,100%,.8);line-height:1.44}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:.625em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:1.25em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1:last-child{padding-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border-top:1px solid #e7e7e9}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:before{content:"\A7";font-size:.85em;display:block;padding-top:.1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:hover{visibility:visible}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link{color:#ba3925;text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link:hover{color:#a53221}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content details>summary:first-of-type{cursor:pointer;display:list-item;outline:none;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{text-rendering:optimizeLegibility;text-align:left;font-family:"Noto Serif","DejaVu Serif",serif;font-size:1rem;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock.fit-content>caption.title{white-space:nowrap;width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #preamble>.sectionbody>[class=paragraph]:first-of-type p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph.lead>p{font-size:1.21875em;line-height:1.6;color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock #preamble>.sectionbody>[class=paragraph]:first-of-type p{font-size:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon{text-align:center;width:80px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon .title{font-weight:700;font-family:Open Sans,DejaVu Sans,sans-serif;text-transform:uppercase}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content{padding-left:1.125em;padding-right:1.25em;border-left:1px solid #dddddf;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{border:1px solid #e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#fff;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{border:1px solid #dbdbd6;margin-bottom:1.25em;padding:1.25em;background:#f3f3f2;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title{color:#7a2518;margin-top:0;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{border-radius:4px;word-wrap:break-word;overflow-x:auto;padding:1em;font-size:.8125em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:.90625em}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:1em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre:not(.highlight),.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class=highlight],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class^="highlight "],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock.output pre{color:#f7f7f8;background:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content{position:relative}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:none;content:attr(data-lang);position:absolute;font-size:.75em;top:.425rem;right:.5rem;line-height:1;text-transform:uppercase;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock:hover code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:before{content:attr(data-prompt);padding-right:.5em;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:not([data-prompt]):before{content:"$"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs{padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs>code{padding:1em;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.prettyprint{border-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .prettyprint{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint .linenums{line-height:1.45;margin-left:2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li{background:none;list-style-type:inherit;padding-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li code[data-lang]:before{opacity:1}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li:not(:first-child) code[data-lang]:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable{border-collapse:separate;border:0;margin-bottom:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td[class]{color:inherit;vertical-align:top;padding:0;line-height:inherit;white-space:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.code{padding-left:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.linenos{border-right:1px solid;opacity:.35;padding-right:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno{border-right:1px solid;opacity:.35;display:inline-block;margin-right:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno:before{content:"";margin-right:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock{margin:0 1em 1.25em 1.5em;display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock:not(.excerpt)>.title{margin-left:-1.5em;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock p{color:rgba(0,0,0,.85);font-size:1.15rem;line-height:1.75;word-spacing:.1em;letter-spacing:0;font-style:italic;text-align:justify}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote{margin:0;padding:0;border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote:before{content:"\201C";float:left;font-size:2.75em;font-weight:700;line-height:.6em;margin-left:-.6em;color:#7a2518;text-shadow:0 1px 2px rgba(0,0,0,.1)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote>.paragraph:last-child p{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution{margin-top:.75em;margin-right:.5ex;text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock{margin:0 1em 1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre{font-family:Open Sans,DejaVu Sans,sans;font-size:1.15rem;color:rgba(0,0,0,.85);font-weight:300;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{margin-top:1.25rem;margin-left:.5ex}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{font-size:.9375em;line-height:1.45;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution br,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution cite,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution cite{display:block;letter-spacing:-.025em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{line-height:1.6;word-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract{margin:0 1em 1.25em;display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract>.title{margin:0 0 .375em;font-size:1.15em;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt>blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{padding:0 0 .25em 1em;border-left:.25em solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{color:inherit;font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock .attribution{color:inherit;text-align:left;margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock{max-width:100%;border-collapse:separate}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child{margin-bottom:-1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child.sidebarblock{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{border:0 solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead>tr>.tableblock{border-width:0 1px 1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tfoot>tr>.tableblock{border-width:1px 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock{border-width:0 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead>tr>.tableblock{border-width:0 0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tfoot>tr>.tableblock{border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>*>tr>.tableblock:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock:last-child{border-right-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead:last-child>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead:last-child>tr>.tableblock{border-bottom-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-all{border-width:1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-sides{border-width:0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-ends,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-topbot{border-width:1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-all tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-even tr:nth-of-type(2n),.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-hover tr:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-odd tr:nth-of-type(odd){background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-left{text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-right,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-right{text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-center,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-center{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-top,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-top{vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-bottom,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-bottom{vertical-align:bottom}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-middle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-middle{vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead th{font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th{display:table-cell;line-height:1.6;background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th p{color:rgba(0,0,0,.8);font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock>code:only-child{background:none;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol{margin-left:1.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-left:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul dd{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-check-square-o:first-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-square-o:first-child{width:1.25em;font-size:.8em;position:relative;bottom:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>input[type=checkbox]:first-child{margin-right:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline{display:flex;flex-flow:row wrap;list-style:none;margin:0 0 .625em -1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline>li{margin-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .unstyled dl dt{font-weight:400;font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.arabic{list-style-type:decimal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.decimal{list-style-type:decimal-leading-zero}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.loweralpha{list-style-type:lower-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperalpha{list-style-type:upper-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowerroman{list-style-type:lower-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperroman{list-style-type:upper-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowergreek{list-style-type:lower-greek}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table{border:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table>tbody>tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table>tbody>tr{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist2{vertical-align:top;padding:0 .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1{font-weight:700;padding-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock+.colist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock+.colist{margin-top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child{padding:.4em .75em 0;line-height:1;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):last-child{padding:.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .thumb{line-height:0;display:inline-block;border:4px solid #fff;box-shadow:0 0 0 1px #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.left{margin:.25em .625em 1.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.right{margin:.25em 0 1.25em .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb{border-width:6px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb>.title{padding:0 .125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-top:.25em;margin-bottom:.25em;display:inline-block;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left{margin-right:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image{text-decoration:none;display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image object{pointer-events:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref{font-size:.875em;position:static;vertical-align:super}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 .75em;border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote{padding:0 .375em 0 .225em;line-height:1.3334;font-size:.875em;margin-left:1.2em;margin-bottom:.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote a:first-of-type{font-weight:700;text-decoration:none;margin-left:-1.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote:last-of-type{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table{border:0;background:#fff;width:100%;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table td.line-data{width:99%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.unbreakable{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .big{font-size:larger}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .small{font-size:smaller}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .underline{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .overline{text-decoration:overline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .line-through{text-decoration:line-through}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua{color:#00bfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua-background{background:#00fafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black-background{background:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue{color:#0000bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue-background{background:#0000fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia{color:#bf00bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia-background{background:#fa00fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray{color:#606060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray-background{background:#7d7d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green{color:#006000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green-background{background:#007d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime{color:#00bf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime-background{background:#00fa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon{color:#600000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon-background{background:#7d0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy{color:#000060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy-background{background:#00007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive{color:#606000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive-background{background:#7d7d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple{color:#600060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple-background{background:#7d007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red{color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red-background{background:#fa0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver{color:#909090}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver-background{background:#bcbcbc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal{color:#006060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal-background{background:#007d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white{color:#bfbfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white-background{background:#fafafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow{color:#bfbf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow-background{background:#fafa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.icon>.fa{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a span.icon>.fa{cursor:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;text-shadow:1px 1px 2px rgba(0,0,0,.5);cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-note:before{content:"\F05A";color:#19407c}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-tip:before{content:"\F0EB";text-shadow:1px 1px 2px rgba(155,155,0,.8);color:#111}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-warning:before{content:"\F071";color:#bf6900}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-caution:before{content:"\F06D";color:#bf3400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-important:before{content:"\F06A";color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]{display:inline-block;color:#fff!important;background:rgba(0,0,0,.8);border-radius:100px;text-align:center;font-size:.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:Open Sans,DejaVu Sans,sans-serif;font-style:normal;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value] *{color:#fff!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]+b{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]:after{content:attr(data-value)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre .conum[data-value]{position:relative;top:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.conum *{color:inherit!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum:not([data-value]):empty{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{letter-spacing:-.01em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content strong{letter-spacing:-.005em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{background:#fffef7;border-color:#e0e0dc;box-shadow:0 1px 4px #e0e0dc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:none!important}@page{.eclipse-jkube__documentation .eclipse-jkube__documentation-content{margin:1.25cm .75cm}}@media print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content *{box-shadow:none!important;text-shadow:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:inherit!important;text-decoration:underline!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.bare,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="#"],.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="mailto:"]{text-decoration:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="http:"]:not(.bare):after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="https:"]:not(.bare):after{content:"(" attr(href) ")";display:inline-block;font-size:.875em;padding-left:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]:after{content:" (" attr(title) ")"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tr{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content thead{display:table-header-group}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{max-width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1em;orphans:3;widows:3}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{page-break-after:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{background:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #dddddf!important;padding-bottom:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details{border:0!important;display:block;padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details span:first-child{margin-left:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br+span:before{content:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #preamble,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book .sect1>h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book h1.sect0{page-break-before:always}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{padding:0 .9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-on-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:block!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-for-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .show-for-print{display:inherit!important}}@media amzn-kf8,print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{margin-top:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:rgba(0,0,0,.6);font-size:.9em}}@media amzn-kf8{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{padding:0}}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content{padding-left:21em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .toc{position:fixed;width:20em;left:0;top:105px;bottom:0;z-index:1000;padding:0 16px;border-right:1px solid #efefed;border-top-width:0!important;border-bottom-width:0!important;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content i.fa{font-style:normal}.eclipse-jkube__quickstarts{padding:0}.eclipse-jkube__quickstarts-item{list-style:none}.eclipse-jkube__quickstarts-item:not(:last-child){margin-bottom:16px}</style><meta name="generator" content="Gatsby 2.30.1"/><title data-react-helmet="true">Eclipse JKube Documentation</title><meta data-react-helmet="true" charSet="UTF-8"/><meta data-react-helmet="true" name="description" content="Eclipse JKube Documentation Index"/><style type="text/css">
.anchor.before {
position: absolute;
top: 0;
@@ -48,7 +48,7 @@
}
}
})
- </script><link as="script" rel="preload" href="/jkube/webpack-runtime-5e7a06a902090b1f37ba.js"/><link as="script" rel="preload" href="/jkube/framework-fd2b85530eec85104a39.js"/><link as="script" rel="preload" href="/jkube/app-d7398b08e923fe8a3caa.js"/><link as="script" rel="preload" href="/jkube/styles-c2fe8482057191dca484.js"/><link as="script" rel="preload" href="/jkube/commons-8b827618f0536ebfeda2.js"/><link as="script" rel="preload" href="/jkube/component---src-templates-main-jsx-456568a5c9ae2c9095ee.js"/><link as="fetch" rel="preload" href="/jkube/page-data/docs/page-data.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/jkube/page-data/app-data.json" crossorigin="anonymous"/></head><body><div id="___gatsby"><div style="outline:none" tabindex="-1" id="gatsby-focus-wrapper"><div class="eclipse-jkube"><header class="eclipse-jkube__header"><div class="eclipse-jkube__header-container"><a class="eclipse-jkube__header-logo" href="/jkube/"><div class="eclipse-jkube__header-logo-eclipse-image"><img src="/jkube/static/EF_WHT-OR_png-d0fd43ad31261ee9693a060be920e71e.png" alt="Eclipse Foundation"/></div><div class="eclipse-jkube__header-logo-jkube"><img class="eclipse-jkube__header-logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/><span class="eclipse-jkube__header-trade-mark">™</span></div></a><div class="eclipse-jkube__header-content"><ul><li><a href="/jkube/docs">Docs</a></li><li><a href="/jkube/demos">Demos</a></li><li><a href="/jkube/community">Community</a></li><li><a href="/jkube/contributing">Contributing</a></li><li><a class="eclipse-jkube__header-stars" href="https://github.com/eclipse/jkube" title="eclipse/jkube" target="_blank" rel="nofollow noopener noreferrer"><img src="https://img.shields.io/github/stars/eclipse/jkube?style=social" alt="eclipse/jkube stargazers"/></a></li></ul></div></div></header><div class="eclipse-jkube__main"><div class="eclipse-jkube__content"><div class="hero">
+ </script><link as="script" rel="preload" href="/jkube/webpack-runtime-b52c77882f7d7b54b2b3.js"/><link as="script" rel="preload" href="/jkube/framework-5e01c8af6b1735c9eaa3.js"/><link as="script" rel="preload" href="/jkube/app-59faa9989d677dd59195.js"/><link as="script" rel="preload" href="/jkube/styles-e9d24b1846c7d6eb9685.js"/><link as="script" rel="preload" href="/jkube/commons-ee34cd715ab4f7da30e0.js"/><link as="script" rel="preload" href="/jkube/component---src-templates-main-jsx-8853cf342e1cf1bead5c.js"/><link as="fetch" rel="preload" href="/jkube/page-data/docs/page-data.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/jkube/page-data/app-data.json" crossorigin="anonymous"/></head><body><div id="___gatsby"><div style="outline:none" tabindex="-1" id="gatsby-focus-wrapper"><div class="eclipse-jkube"><header class="eclipse-jkube__header"><div class="eclipse-jkube__header-container"><a class="eclipse-jkube__header-logo" href="/jkube/"><div class="eclipse-jkube__header-logo-eclipse-image"><img src="/jkube/static/EF_WHT-OR_png-d0fd43ad31261ee9693a060be920e71e.png" alt="Eclipse Foundation"/></div><div class="eclipse-jkube__header-logo-jkube"><img class="eclipse-jkube__header-logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/><span class="eclipse-jkube__header-trade-mark">™</span></div></a><div class="eclipse-jkube__header-content"><ul><li><a href="/jkube/docs">Docs</a></li><li><a href="/jkube/demos">Demos</a></li><li><a href="/jkube/community">Community</a></li><li><a href="/jkube/contributing">Contributing</a></li><li><a class="eclipse-jkube__header-stars" href="https://github.com/eclipse/jkube" title="eclipse/jkube" target="_blank" rel="nofollow noopener noreferrer"><img src="https://img.shields.io/github/stars/eclipse/jkube?style=social" alt="eclipse/jkube stargazers"/></a></li></ul></div></div></header><div class="eclipse-jkube__main"><div class="eclipse-jkube__content"><div class="hero">
<div class="hero-content">
<h1 id="documentation" style="position:relative;"><a href="#documentation" aria-label="documentation permalink" class="anchor before"><svg aria-hidden="true" focusable="false" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Documentation</h1>
</div>
@@ -109,4 +109,4 @@
<li><strong>Common Maven</strong> utility classes for Maven plugins.
<a href="http://www.javadoc.io/doc/org.eclipse.jkube/jkube-kit-common-maven-maven" target="_blank" rel="nofollow noopener noreferrer"><img src="http://www.javadoc.io/badge/org.eclipse.jkube/jkube-kit-common-maven.svg?color=blue" alt="Javadocs">
</a></li>
-</ul></div></div><div class="eclipse-jkube-footer"><div class="eclipse-jkube-footer__logo-jkube"><a href="/jkube/"><img class="eclipse-jkube-footer__logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/></a><span class="eclipse-jkube-footer__logo-jkube-tagline">Cloud-Native Java Applications without a hassle</span></div><div class="eclipse-jkube-footer__links"><ul class="eclipse-jkube-footer__links-list"><li><a href="/jkube/docs#getting-started">Get Started</a></li><li><a href="/jkube/docs">Docs</a></li><li><a href="/jkube/quickstarts">Quickstarts</a></li><li><a href="/jkube/docs#katacoda-courses">Katacoda Courses</a></li><li><a href="/jkube/demos">Demos</a></li></ul><ul class="eclipse-jkube-footer__links-list"><li><a href="/jkube/community">Community</a></li><li><a href="/jkube/community#planning-and-meetings">Get Involved</a></li><li><a href="/jkube/contributing">Contributing</a></li></ul><ul class="eclipse-jkube-footer__links-list"><li><a href="https://www.eclipse.org" target="_blank" rel="nofollow noopener noreferrer">Eclipse Foundation</a></li><li><a href="https://www.eclipse.org/legal/privacy.php" target="_blank" rel="nofollow noopener noreferrer">Privacy Policy</a></li><li><a href="https://www.eclipse.org/legal/termsofuse.php" target="_blank" rel="nofollow noopener noreferrer">Terms of Use</a></li><li><a href="https://www.eclipse.org/legal/copyright.php" target="_blank" rel="nofollow noopener noreferrer">Copyright Agent</a></li><li><a href="https://www.eclipse.org/legal" target="_blank" rel="nofollow noopener noreferrer">Legal Resources</a></li></ul></div><div class="eclipse-jkube-footer__copyright">Copyright © Eclipse Foundation 2020</div></div></div></div><div id="gatsby-announcer" style="position:absolute;top:0;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0" aria-live="assertive" aria-atomic="true"></div></div><script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/docs/";/*]]>*/</script><script id="gatsby-chunk-mapping">/*<![CDATA[*/window.___chunkMapping={"polyfill":["/polyfill-88d9aed314b16f9b2adc.js"],"app":["/app-d7398b08e923fe8a3caa.js"],"component---src-pages-quickstarts-index-jsx":["/component---src-pages-quickstarts-index-jsx-a1e42093b41968828647.js"],"component---src-templates-doc-jsx":["/component---src-templates-doc-jsx-5366dbd1b50f3447a412.js"],"component---src-templates-main-jsx":["/component---src-templates-main-jsx-456568a5c9ae2c9095ee.js"]};/*]]>*/</script><script src="/jkube/polyfill-88d9aed314b16f9b2adc.js" nomodule=""></script><script src="/jkube/component---src-templates-main-jsx-456568a5c9ae2c9095ee.js" async=""></script><script src="/jkube/commons-8b827618f0536ebfeda2.js" async=""></script><script src="/jkube/styles-c2fe8482057191dca484.js" async=""></script><script src="/jkube/app-d7398b08e923fe8a3caa.js" async=""></script><script src="/jkube/framework-fd2b85530eec85104a39.js" async=""></script><script src="/jkube/webpack-runtime-5e7a06a902090b1f37ba.js" async=""></script></body></html>
\ No newline at end of file
+</ul></div></div><div class="eclipse-jkube-footer"><div class="eclipse-jkube-footer__logo-jkube"><a href="/jkube/"><img class="eclipse-jkube-footer__logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/></a><span class="eclipse-jkube-footer__logo-jkube-tagline">Cloud-Native Java Applications without a hassle</span></div><div class="eclipse-jkube-footer__links"><ul class="eclipse-jkube-footer__links-list"><li><a href="/jkube/docs#getting-started">Get Started</a></li><li><a href="/jkube/docs">Docs</a></li><li><a href="/jkube/quickstarts">Quickstarts</a></li><li><a href="/jkube/docs#katacoda-courses">Katacoda Courses</a></li><li><a href="/jkube/demos">Demos</a></li></ul><ul class="eclipse-jkube-footer__links-list"><li><a href="/jkube/community">Community</a></li><li><a href="/jkube/community#planning-and-meetings">Get Involved</a></li><li><a href="/jkube/contributing">Contributing</a></li></ul><ul class="eclipse-jkube-footer__links-list"><li><a href="https://www.eclipse.org" target="_blank" rel="nofollow noopener noreferrer">Eclipse Foundation</a></li><li><a href="https://www.eclipse.org/legal/privacy.php" target="_blank" rel="nofollow noopener noreferrer">Privacy Policy</a></li><li><a href="https://www.eclipse.org/legal/termsofuse.php" target="_blank" rel="nofollow noopener noreferrer">Terms of Use</a></li><li><a href="https://www.eclipse.org/legal/copyright.php" target="_blank" rel="nofollow noopener noreferrer">Copyright Agent</a></li><li><a href="https://www.eclipse.org/legal" target="_blank" rel="nofollow noopener noreferrer">Legal Resources</a></li></ul></div><div class="eclipse-jkube-footer__copyright">Copyright © Eclipse Foundation 2020</div></div></div></div><div id="gatsby-announcer" style="position:absolute;top:0;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0" aria-live="assertive" aria-atomic="true"></div></div><script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/docs/";/*]]>*/</script><script id="gatsby-chunk-mapping">/*<![CDATA[*/window.___chunkMapping={"polyfill":["/polyfill-e4957c11759bdfc149d9.js"],"app":["/app-59faa9989d677dd59195.js"],"component---src-pages-quickstarts-index-jsx":["/component---src-pages-quickstarts-index-jsx-8b53e5455e208a3e59b9.js"],"component---src-templates-doc-jsx":["/component---src-templates-doc-jsx-21a94bb36ef3df298f42.js"],"component---src-templates-main-jsx":["/component---src-templates-main-jsx-8853cf342e1cf1bead5c.js"]};/*]]>*/</script><script src="/jkube/polyfill-e4957c11759bdfc149d9.js" nomodule=""></script><script src="/jkube/component---src-templates-main-jsx-8853cf342e1cf1bead5c.js" async=""></script><script src="/jkube/commons-ee34cd715ab4f7da30e0.js" async=""></script><script src="/jkube/styles-e9d24b1846c7d6eb9685.js" async=""></script><script src="/jkube/app-59faa9989d677dd59195.js" async=""></script><script src="/jkube/framework-5e01c8af6b1735c9eaa3.js" async=""></script><script src="/jkube/webpack-runtime-b52c77882f7d7b54b2b3.js" async=""></script></body></html>
\ No newline at end of file
diff --git a/docs/kubernetes-maven-plugin/index.html b/docs/kubernetes-maven-plugin/index.html
index eab2877..89f861b 100644
--- a/docs/kubernetes-maven-plugin/index.html
+++ b/docs/kubernetes-maven-plugin/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><style data-href="/jkube/styles.5c9b852c43e28f117cb7.css">@import url(https://fonts.googleapis.com/css?family=Libre+Franklin:100,300,400,600,700,|Roboto:300,400,500,700|Jura);@import url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css);@import url(https://unpkg.com/@coreui/icons/css/brand.min.css);code[class*=language-],pre[class*=language-]{color:#657b83;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-ms-hyphens:none;hyphens:none}code[class*=language-]::selection,code[class*=language-] ::selection,pre[class*=language-]::selection,pre[class*=language-] ::selection{background:#073642}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;border-radius:.3em}:not(pre)>code[class*=language-],pre[class*=language-]{background-color:#fdf6e3}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#93a1a1}.token.punctuation{color:#586e75}.token.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#268bd2}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string,.token.url{color:#2aa198}.token.entity{color:#657b83;background:#eee8d5}.token.atrule,.token.attr-value,.token.keyword{color:#859900}.token.class-name,.token.function{color:#b58900}.token.important,.token.regex,.token.variable{color:#cb4b16}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body,html{font-family:Libre Franklin,Roboto,sans-serif}body{margin:0;padding:0;outline:0;background:#f1f2f2;font-size:16px;color:#222}h1{font-size:3rem}h1,h2{margin-top:0;font-family:Roboto,sans-serif;font-weight:300}h2{font-size:2rem}h3{font-size:1.5rem;font-weight:300}a{color:#525c86}a:focus,a:hover{color:#222}.eclipse-jkube-footer{padding:16px;border-top:10px solid #222;background-color:#292c2f;font-size:19.2px;font-family:Roboto,sans-serif;font-weight:300;line-height:1.5}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube{display:flex;flex-direction:column;max-width:1170px;margin:0 auto 16px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-image{width:160px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-tagline{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links{max-width:1170px;margin:0 auto 16px;display:flex;flex-wrap:wrap}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list{padding:0;margin:0 48px 16px 0;list-style:none}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a{transition:color .1s linear;color:#f1f2f2}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a,.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a:hover{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a:hover{color:#525c86}.eclipse-jkube-footer .eclipse-jkube-footer__links a{text-decoration:none}.eclipse-jkube-footer .eclipse-jkube-footer__copyright{max-width:1170px;margin:0 auto 16px;font-family:Roboto,sans-serif;color:#939598}.eclipse-jkube__header{display:block;position:relative;height:175px;background-color:#292c2f}@media (min-width:700px){.eclipse-jkube__header{height:105px}}.eclipse-jkube__header .eclipse-jkube__header-trade-mark{font-size:.5em;font-size:.3em;line-height:2.5;vertical-align:top}.eclipse-jkube__header .eclipse-jkube__header-container{position:relative;margin:0 auto;padding:0 16px;height:100%;max-width:1170px}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-container{display:flex;flex-wrap:nowrap;height:105px}}.eclipse-jkube__header .eclipse-jkube__header-logo{display:flex;justify-content:center;align-items:center;font-size:32px;font-weight:400;color:#f1f2f2}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo{font-size:50px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:65px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:90px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image img{max-height:100%;max-width:100%}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:50px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:65px}}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube-image{height:100%}.eclipse-jkube__header .eclipse-jkube__header-logo:hover{color:#f1f2f2}.eclipse-jkube__header .eclipse-jkube__header-content{flex:1 0;min-width:1px;display:flex;justify-content:center;align-items:center}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-content{justify-content:flex-end}}.eclipse-jkube__header .eclipse-jkube__header-content ul{display:flex;flex-wrap:wrap;align-items:center;justify-content:center}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-content ul{justify-content:flex-start}}.eclipse-jkube__header .eclipse-jkube__header-content ul li{margin:4px 0;padding-right:16px;list-style:none;color:#f1f2f2;font-size:20px}.eclipse-jkube__header .eclipse-jkube__header-content .eclipse-jkube__header-stars{display:block;width:85px;height:20px;line-height:20px}.eclipse-jkube__header a{color:#f1f2f2;text-decoration:none}.eclipse-jkube__header a:hover{color:#dd8623;transition:color .3s}.quick-start-card{border:1px solid #d6d6d6;padding:16px}.quick-start-card .quick-start-card__title{margin:0;padding:0}.quick-start-card .quick-start-card__title a{text-decoration:none}.quick-start-card .quick-start-card__title a:active,.quick-start-card .quick-start-card__title a:hover{text-decoration:underline}.quick-start-card .quick-start-card__technologies{margin:16px 0 0;padding:0}.quick-start-card .quick-start-card__technologies-item{display:inline-flex;align-items:center;padding:.25rem .3rem;border-radius:.2rem;font-size:.8rem;margin:0 0 .5rem;background:#dd8623;color:#222}.quick-start-card .quick-start-card__technologies-item:not(:last-child){margin-right:.5rem}.quick-start-card .quick-start-card__technologies-item-icon{display:inline-block;height:.8rem;margin-right:.2rem}.quick-start-card .quick-start-card__description p{margin-top:0}.quick-start-card .quick-start-card__links a{display:inline-block;text-decoration:none;padding:.3rem .5rem;border-radius:.2rem;border:1px solid #d6d6d6;background:#d6d6d6;color:#222}.quick-start-card .quick-start-card__links a:active,.quick-start-card .quick-start-card__links a:hover{background-color:#f1f2f2}.eclipse-jkube{display:flex;flex-direction:column;min-height:100vh}.eclipse-jkube__main{flex:1 1}@media (min-width:1170px){.eclipse-jkube__main{overflow-x:hidden}}.eclipse-jkube__main .eclipse-jkube__content{margin:0 16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content{max-width:1154px;margin:0 auto}}.eclipse-jkube__main .eclipse-jkube__content img{max-width:100%}.eclipse-jkube__main .eclipse-jkube__content :not(pre)>code[class*=language-],.eclipse-jkube__main .eclipse-jkube__content pre[class*=language-]{background-color:transparent}.eclipse-jkube__main .eclipse-jkube__content .hero{margin:0 -16px 16px;display:block;background-color:#272727;background-image:url(/jkube/static/cubes-8e1e59c337437947105e6668f1f3790a.jpg);background-size:cover;color:#f1f2f2}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px;background-color:rgba(39,39,39,.7)}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px calc((100% - 1170px)/2)}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content .getting-involved{color:#f1f2f2;margin:0 -16px;padding:0 16px;display:flex;justify-content:flex-end}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content h1{font-size:2.5rem;font-family:Libre Franklin,Roboto,sans-serif;font-weight:400}.eclipse-jkube__main .eclipse-jkube__content .section-dark{background-color:#404040;color:#f1f2f2;margin:0 -16px;padding:16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;padding:16px calc((100% - 1170px)/2)}}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark>*{padding:0 calc((100% - 1170px)/2)}}.eclipse-jkube__main .eclipse-jkube__content .highlight{display:flex;align-items:center}.eclipse-jkube__main .eclipse-jkube__content .highlight>p{margin:16px 32px;display:none}@media (min-width:501px){.eclipse-jkube__main .eclipse-jkube__content .highlight>p{display:block}}.eclipse-jkube__main .eclipse-jkube__content .highlight>p img{max-width:100px}.eclipse-jkube__main .eclipse-jkube__content .highlight-description{flex:1 1;min-width:1px}.eclipse-jkube__main .eclipse-jkube__content .highlight ul{flex:1 1;min-width:1px;margin:0;padding:0}.eclipse-jkube__main .eclipse-jkube__content .highlight li{list-style:none;margin:16px 0}.eclipse-jkube__main .eclipse-jkube__content .calendar{position:relative;overflow:hidden;padding-bottom:75%;margin-bottom:16px}@media (min-width:666.66667px){.eclipse-jkube__main .eclipse-jkube__content .calendar{padding-bottom:0;height:500px}}.eclipse-jkube__main .eclipse-jkube__content .calendar iframe{position:absolute;top:0;height:100%;max-height:500px;width:100%}.eclipse-jkube__documentation{margin:0}@media screen and (min-width:768px){.eclipse-jkube__documentation{position:absolute;top:105px;bottom:0;width:100%;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content{position:relative;padding:16px;overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content article,.eclipse-jkube__documentation .eclipse-jkube__documentation-content aside,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figcaption,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure,.eclipse-jkube__documentation .eclipse-jkube__documentation-content footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content header,.eclipse-jkube__documentation .eclipse-jkube__documentation-content hgroup,.eclipse-jkube__documentation .eclipse-jkube__documentation-content main,.eclipse-jkube__documentation .eclipse-jkube__documentation-content nav,.eclipse-jkube__documentation .eclipse-jkube__documentation-content section{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio,.eclipse-jkube__documentation .eclipse-jkube__documentation-content video{display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio:not([controls]){display:none;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus{outline:thin dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{outline:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2em;margin:.67em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]{border-bottom:1px dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dfn{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{box-sizing:content-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content mark{background:#ff0;color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content samp{font-family:monospace;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{white-space:pre-wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content q{quotes:"\201C" "\201D" "\2018" "\2019"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub{bottom:-.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg:not(:root){overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure{margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content legend{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select,.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{font-family:inherit;font-size:100%;margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input{line-height:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[type=button],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=reset],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=submit]{-webkit-appearance:button;cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button[disabled],.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[disabled]{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=checkbox],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=radio]{box-sizing:border-box;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button::-moz-focus-inner,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input::-moz-focus-inner{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{overflow:auto;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{border-collapse:collapse;border-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content *,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :before{box-sizing:border-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body{background:#fff;color:rgba(0,0,0,.8);padding:0;margin:0;font-family:"Noto Serif","DejaVu Serif",serif;font-weight:400;font-style:normal;line-height:1;position:relative;cursor:auto;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{max-width:100%;height:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{height:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{-ms-interpolation-mode:bicubic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .left{float:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .right{float:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-left{text-align:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-right{text-align:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-center{text-align:center!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-justify{text-align:justify!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{display:inline-block;vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{height:auto;min-height:50px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .center{margin-left:auto;margin-right:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stretch{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .subheader,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{line-height:1.45;color:#7a2518;font-weight:400;margin-top:0;margin-bottom:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content div,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content form,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6,.eclipse-jkube__documentation .eclipse-jkube__documentation-content li,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin:0;padding:0;direction:ltr}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:#2156a5;text-decoration:underline;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{color:#1d4b8f}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{font-family:inherit;font-weight:400;font-size:1em;line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p aside{font-size:.875em;line-height:1.35;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-family:Open Sans,DejaVu Sans,sans-serif;font-weight:300;font-style:normal;color:#ba3925;text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:.5em;line-height:1.0125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 small{font-size:60%;color:#e99b8f;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5{font-size:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{border:solid #dddddf;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em,.eclipse-jkube__documentation .eclipse-jkube__documentation-content i{font-style:italic;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b,.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong{font-weight:700;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:60%;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;font-weight:400;color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{font-size:1em;line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ul{margin-left:1.25em;margin-bottom:0;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square li ul{list-style:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square{list-style-type:square}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle{list-style-type:circle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc{list-style-type:disc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ul{margin-left:1.25em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dt{margin-bottom:.3125em;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content acronym{text-transform:uppercase;font-size:90%;color:rgba(0,0,0,.8);border-bottom:1px dotted #ddd;cursor:help}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote{margin:0 0 1.25em;padding:.5625em 1.25em 0 1.1875em;border-left:1px solid #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite{display:block;font-size:.9375em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite:before{content:"\2014 "}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a:visited{color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote p{line-height:1.6;color:rgba(0,0,0,.85)}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:2.3125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4{font-size:1.4375em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{background:#fff;margin-bottom:1.25em;border:1px solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead{background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th{padding:.5em .625em .625em;font-size:inherit;color:rgba(0,0,0,.8);text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr th{padding:.5625em .625em;font-size:inherit;color:rgba(0,0,0,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.even{background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tbody tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td{display:table-cell;line-height:1.6}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2;word-spacing:-.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre):not([class^=L])>code{font-size:.9375em;font-style:normal!important;letter-spacing:0;padding:.1em .5ex;word-spacing:-.15em;background:#f7f7f8;border-radius:4px;line-height:1.45;text-rendering:optimizeSpeed;word-wrap:break-word}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nobreak{word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nowrap{white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{color:rgba(0,0,0,.9);font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;line-height:1.45;text-rendering:optimizeSpeed}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre pre{color:inherit;font-size:inherit;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre>code{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap pre{white-space:pre;word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em em{font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq{color:rgba(51,51,51,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;display:inline-block;color:rgba(0,0,0,.8);font-size:.65em;line-height:1.45;background:#f7f7f7;border:1px solid #ccc;border-radius:3px;box-shadow:0 1px 0 rgba(0,0,0,.2),inset 0 0 0 .1em #fff;margin:0 .15em;padding:.2em .5em;vertical-align:middle;position:relative;top:-.1em;white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:first-child{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:last-child{margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b:not(.caret){font-weight:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{word-spacing:-.02em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b.caret{font-size:1.25em;line-height:.8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq i.caret{font-weight:700;text-align:center;width:.45em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{position:relative;top:-1px;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{content:"[";padding:0 3px 0 2px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after{content:"]";padding:0 2px 0 3px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p a>code:hover{color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{width:100%;margin:0 auto;max-width:62.5em;*zoom:1;position:relative;padding-left:.9375em;padding-right:.9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-top:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before{content:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{color:rgba(0,0,0,.85);margin-top:2.25rem;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child+#toc{margin-top:8px;border-top:1px solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:only-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #dddddf;padding-bottom:8px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details{border-bottom:1px solid #dddddf;line-height:1.45;padding-top:.25em;padding-bottom:.25em;padding-left:.25em;color:rgba(0,0,0,.6);display:flex;flex-flow:row wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span:first-child{margin-left:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span.email a{color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span:before{content:"\A0\2013\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span.author:before{content:"\A0\22C5\A0";color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span#revremark:before{content:"\A0|\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber{text-transform:capitalize}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber:after{content:"\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content>h1:first-child:not([class]){color:rgba(0,0,0,.85);border-bottom:1px solid #dddddf;padding-bottom:8px;margin-top:0;padding-top:1rem;margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #e7e7e9;padding-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc>ul{margin-left:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0>li>a{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0 ul.sectlevel1{margin:.5em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul{font-family:Open Sans,DejaVu Sans,sans-serif;list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc li{line-height:1.3334;margin-top:.3334em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{color:#7a2518;font-size:1.2em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:15em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{margin-top:0!important;background:#f8f8f7;position:fixed;width:15em;left:0;top:0;border-right:1px solid #e7e7e9;border-top-width:0!important;border-bottom-width:0!important;z-index:1000;padding:1.25em 1em;height:100%;overflow:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{margin-top:0;margin-bottom:.8rem;font-size:1.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.9em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{margin-left:0;padding-left:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:.5em;margin-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:15em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right #toc.toc2{border-right-width:0;border-left:1px solid #e7e7e9;left:auto;right:0}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:20em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{width:20em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.95em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{padding-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:20em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc{border:1px solid #e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{max-width:100%;background:rgba(0,0,0,.8);padding:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:hsla(0,0%,100%,.8);line-height:1.44}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:.625em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:1.25em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1:last-child{padding-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border-top:1px solid #e7e7e9}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:before{content:"\A7";font-size:.85em;display:block;padding-top:.1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:hover{visibility:visible}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link{color:#ba3925;text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link:hover{color:#a53221}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content details>summary:first-of-type{cursor:pointer;display:list-item;outline:none;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{text-rendering:optimizeLegibility;text-align:left;font-family:"Noto Serif","DejaVu Serif",serif;font-size:1rem;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock.fit-content>caption.title{white-space:nowrap;width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #preamble>.sectionbody>[class=paragraph]:first-of-type p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph.lead>p{font-size:1.21875em;line-height:1.6;color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock #preamble>.sectionbody>[class=paragraph]:first-of-type p{font-size:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon{text-align:center;width:80px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon .title{font-weight:700;font-family:Open Sans,DejaVu Sans,sans-serif;text-transform:uppercase}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content{padding-left:1.125em;padding-right:1.25em;border-left:1px solid #dddddf;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{border:1px solid #e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#fff;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{border:1px solid #dbdbd6;margin-bottom:1.25em;padding:1.25em;background:#f3f3f2;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title{color:#7a2518;margin-top:0;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{border-radius:4px;word-wrap:break-word;overflow-x:auto;padding:1em;font-size:.8125em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:.90625em}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:1em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre:not(.highlight),.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class=highlight],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class^="highlight "],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock.output pre{color:#f7f7f8;background:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content{position:relative}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:none;content:attr(data-lang);position:absolute;font-size:.75em;top:.425rem;right:.5rem;line-height:1;text-transform:uppercase;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock:hover code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:before{content:attr(data-prompt);padding-right:.5em;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:not([data-prompt]):before{content:"$"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs{padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs>code{padding:1em;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.prettyprint{border-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .prettyprint{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint .linenums{line-height:1.45;margin-left:2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li{background:none;list-style-type:inherit;padding-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li code[data-lang]:before{opacity:1}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li:not(:first-child) code[data-lang]:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable{border-collapse:separate;border:0;margin-bottom:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td[class]{color:inherit;vertical-align:top;padding:0;line-height:inherit;white-space:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.code{padding-left:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.linenos{border-right:1px solid;opacity:.35;padding-right:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno{border-right:1px solid;opacity:.35;display:inline-block;margin-right:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno:before{content:"";margin-right:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock{margin:0 1em 1.25em 1.5em;display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock:not(.excerpt)>.title{margin-left:-1.5em;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock p{color:rgba(0,0,0,.85);font-size:1.15rem;line-height:1.75;word-spacing:.1em;letter-spacing:0;font-style:italic;text-align:justify}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote{margin:0;padding:0;border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote:before{content:"\201C";float:left;font-size:2.75em;font-weight:700;line-height:.6em;margin-left:-.6em;color:#7a2518;text-shadow:0 1px 2px rgba(0,0,0,.1)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote>.paragraph:last-child p{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution{margin-top:.75em;margin-right:.5ex;text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock{margin:0 1em 1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre{font-family:Open Sans,DejaVu Sans,sans;font-size:1.15rem;color:rgba(0,0,0,.85);font-weight:300;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{margin-top:1.25rem;margin-left:.5ex}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{font-size:.9375em;line-height:1.45;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution br,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution cite,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution cite{display:block;letter-spacing:-.025em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{line-height:1.6;word-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract{margin:0 1em 1.25em;display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract>.title{margin:0 0 .375em;font-size:1.15em;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt>blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{padding:0 0 .25em 1em;border-left:.25em solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{color:inherit;font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock .attribution{color:inherit;text-align:left;margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock{max-width:100%;border-collapse:separate}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child{margin-bottom:-1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child.sidebarblock{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{border:0 solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead>tr>.tableblock{border-width:0 1px 1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tfoot>tr>.tableblock{border-width:1px 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock{border-width:0 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead>tr>.tableblock{border-width:0 0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tfoot>tr>.tableblock{border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>*>tr>.tableblock:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock:last-child{border-right-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead:last-child>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead:last-child>tr>.tableblock{border-bottom-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-all{border-width:1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-sides{border-width:0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-ends,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-topbot{border-width:1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-all tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-even tr:nth-of-type(2n),.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-hover tr:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-odd tr:nth-of-type(odd){background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-left{text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-right,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-right{text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-center,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-center{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-top,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-top{vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-bottom,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-bottom{vertical-align:bottom}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-middle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-middle{vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead th{font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th{display:table-cell;line-height:1.6;background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th p{color:rgba(0,0,0,.8);font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock>code:only-child{background:none;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol{margin-left:1.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-left:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul dd{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-check-square-o:first-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-square-o:first-child{width:1.25em;font-size:.8em;position:relative;bottom:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>input[type=checkbox]:first-child{margin-right:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline{display:flex;flex-flow:row wrap;list-style:none;margin:0 0 .625em -1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline>li{margin-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .unstyled dl dt{font-weight:400;font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.arabic{list-style-type:decimal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.decimal{list-style-type:decimal-leading-zero}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.loweralpha{list-style-type:lower-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperalpha{list-style-type:upper-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowerroman{list-style-type:lower-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperroman{list-style-type:upper-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowergreek{list-style-type:lower-greek}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table{border:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table>tbody>tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table>tbody>tr{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist2{vertical-align:top;padding:0 .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1{font-weight:700;padding-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock+.colist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock+.colist{margin-top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child{padding:.4em .75em 0;line-height:1;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):last-child{padding:.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .thumb{line-height:0;display:inline-block;border:4px solid #fff;box-shadow:0 0 0 1px #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.left{margin:.25em .625em 1.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.right{margin:.25em 0 1.25em .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb{border-width:6px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb>.title{padding:0 .125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-top:.25em;margin-bottom:.25em;display:inline-block;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left{margin-right:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image{text-decoration:none;display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image object{pointer-events:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref{font-size:.875em;position:static;vertical-align:super}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 .75em;border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote{padding:0 .375em 0 .225em;line-height:1.3334;font-size:.875em;margin-left:1.2em;margin-bottom:.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote a:first-of-type{font-weight:700;text-decoration:none;margin-left:-1.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote:last-of-type{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table{border:0;background:#fff;width:100%;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table td.line-data{width:99%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.unbreakable{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .big{font-size:larger}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .small{font-size:smaller}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .underline{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .overline{text-decoration:overline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .line-through{text-decoration:line-through}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua{color:#00bfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua-background{background:#00fafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black-background{background:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue{color:#0000bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue-background{background:#0000fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia{color:#bf00bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia-background{background:#fa00fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray{color:#606060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray-background{background:#7d7d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green{color:#006000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green-background{background:#007d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime{color:#00bf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime-background{background:#00fa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon{color:#600000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon-background{background:#7d0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy{color:#000060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy-background{background:#00007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive{color:#606000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive-background{background:#7d7d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple{color:#600060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple-background{background:#7d007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red{color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red-background{background:#fa0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver{color:#909090}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver-background{background:#bcbcbc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal{color:#006060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal-background{background:#007d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white{color:#bfbfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white-background{background:#fafafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow{color:#bfbf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow-background{background:#fafa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.icon>.fa{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a span.icon>.fa{cursor:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;text-shadow:1px 1px 2px rgba(0,0,0,.5);cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-note:before{content:"\F05A";color:#19407c}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-tip:before{content:"\F0EB";text-shadow:1px 1px 2px rgba(155,155,0,.8);color:#111}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-warning:before{content:"\F071";color:#bf6900}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-caution:before{content:"\F06D";color:#bf3400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-important:before{content:"\F06A";color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]{display:inline-block;color:#fff!important;background:rgba(0,0,0,.8);border-radius:100px;text-align:center;font-size:.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:Open Sans,DejaVu Sans,sans-serif;font-style:normal;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value] *{color:#fff!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]+b{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]:after{content:attr(data-value)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre .conum[data-value]{position:relative;top:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.conum *{color:inherit!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum:not([data-value]):empty{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{letter-spacing:-.01em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content strong{letter-spacing:-.005em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{background:#fffef7;border-color:#e0e0dc;box-shadow:0 1px 4px #e0e0dc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:none!important}@page{.eclipse-jkube__documentation .eclipse-jkube__documentation-content{margin:1.25cm .75cm}}@media print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content *{box-shadow:none!important;text-shadow:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:inherit!important;text-decoration:underline!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.bare,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="#"],.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="mailto:"]{text-decoration:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="http:"]:not(.bare):after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="https:"]:not(.bare):after{content:"(" attr(href) ")";display:inline-block;font-size:.875em;padding-left:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]:after{content:" (" attr(title) ")"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tr{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content thead{display:table-header-group}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{max-width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1em;orphans:3;widows:3}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{page-break-after:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{background:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #dddddf!important;padding-bottom:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details{border:0!important;display:block;padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details span:first-child{margin-left:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br+span:before{content:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #preamble,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book .sect1>h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book h1.sect0{page-break-before:always}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{padding:0 .9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-on-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:block!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-for-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .show-for-print{display:inherit!important}}@media amzn-kf8,print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{margin-top:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:rgba(0,0,0,.6);font-size:.9em}}@media amzn-kf8{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{padding:0}}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content{padding-left:21em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .toc{position:fixed;width:20em;left:0;top:105px;bottom:0;z-index:1000;padding:0 16px;border-right:1px solid #efefed;border-top-width:0!important;border-bottom-width:0!important;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content i.fa{font-style:normal}.eclipse-jkube__quickstarts{padding:0}.eclipse-jkube__quickstarts-item{list-style:none}.eclipse-jkube__quickstarts-item:not(:last-child){margin-bottom:16px}</style><meta name="generator" content="Gatsby 2.24.12"/><title data-react-helmet="true">org.eclipse.jkube/kubernetes-maven-plugin</title><meta data-react-helmet="true" charSet="UTF-8"/><meta data-react-helmet="true" name="description" content=""/><style type="text/css">
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><style data-href="/jkube/styles.5c9b852c43e28f117cb7.css" id="gatsby-global-css">@import url(https://fonts.googleapis.com/css?family=Libre+Franklin:100,300,400,600,700,|Roboto:300,400,500,700|Jura);@import url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css);@import url(https://unpkg.com/@coreui/icons/css/brand.min.css);code[class*=language-],pre[class*=language-]{color:#657b83;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-ms-hyphens:none;hyphens:none}code[class*=language-]::selection,code[class*=language-] ::selection,pre[class*=language-]::selection,pre[class*=language-] ::selection{background:#073642}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;border-radius:.3em}:not(pre)>code[class*=language-],pre[class*=language-]{background-color:#fdf6e3}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#93a1a1}.token.punctuation{color:#586e75}.token.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#268bd2}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string,.token.url{color:#2aa198}.token.entity{color:#657b83;background:#eee8d5}.token.atrule,.token.attr-value,.token.keyword{color:#859900}.token.class-name,.token.function{color:#b58900}.token.important,.token.regex,.token.variable{color:#cb4b16}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body,html{font-family:Libre Franklin,Roboto,sans-serif}body{margin:0;padding:0;outline:0;background:#f1f2f2;font-size:16px;color:#222}h1{font-size:3rem}h1,h2{margin-top:0;font-family:Roboto,sans-serif;font-weight:300}h2{font-size:2rem}h3{font-size:1.5rem;font-weight:300}a{color:#525c86}a:focus,a:hover{color:#222}.eclipse-jkube-footer{padding:16px;border-top:10px solid #222;background-color:#292c2f;font-size:19.2px;font-family:Roboto,sans-serif;font-weight:300;line-height:1.5}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube{display:flex;flex-direction:column;max-width:1170px;margin:0 auto 16px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-image{width:160px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-tagline{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links{max-width:1170px;margin:0 auto 16px;display:flex;flex-wrap:wrap}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list{padding:0;margin:0 48px 16px 0;list-style:none}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a{transition:color .1s linear;color:#f1f2f2}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a,.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a:hover{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a:hover{color:#525c86}.eclipse-jkube-footer .eclipse-jkube-footer__links a{text-decoration:none}.eclipse-jkube-footer .eclipse-jkube-footer__copyright{max-width:1170px;margin:0 auto 16px;font-family:Roboto,sans-serif;color:#939598}.eclipse-jkube__header{display:block;position:relative;height:175px;background-color:#292c2f}@media (min-width:700px){.eclipse-jkube__header{height:105px}}.eclipse-jkube__header .eclipse-jkube__header-trade-mark{font-size:.5em;font-size:.3em;line-height:2.5;vertical-align:top}.eclipse-jkube__header .eclipse-jkube__header-container{position:relative;margin:0 auto;padding:0 16px;height:100%;max-width:1170px}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-container{display:flex;flex-wrap:nowrap;height:105px}}.eclipse-jkube__header .eclipse-jkube__header-logo{display:flex;justify-content:center;align-items:center;font-size:32px;font-weight:400;color:#f1f2f2}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo{font-size:50px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:65px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:90px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image img{max-height:100%;max-width:100%}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:50px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:65px}}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube-image{height:100%}.eclipse-jkube__header .eclipse-jkube__header-logo:hover{color:#f1f2f2}.eclipse-jkube__header .eclipse-jkube__header-content{flex:1 0;min-width:1px;display:flex;justify-content:center;align-items:center}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-content{justify-content:flex-end}}.eclipse-jkube__header .eclipse-jkube__header-content ul{display:flex;flex-wrap:wrap;align-items:center;justify-content:center}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-content ul{justify-content:flex-start}}.eclipse-jkube__header .eclipse-jkube__header-content ul li{margin:4px 0;padding-right:16px;list-style:none;color:#f1f2f2;font-size:20px}.eclipse-jkube__header .eclipse-jkube__header-content .eclipse-jkube__header-stars{display:block;width:85px;height:20px;line-height:20px}.eclipse-jkube__header a{color:#f1f2f2;text-decoration:none}.eclipse-jkube__header a:hover{color:#dd8623;transition:color .3s}.quick-start-card{border:1px solid #d6d6d6;padding:16px}.quick-start-card .quick-start-card__title{margin:0;padding:0}.quick-start-card .quick-start-card__title a{text-decoration:none}.quick-start-card .quick-start-card__title a:active,.quick-start-card .quick-start-card__title a:hover{text-decoration:underline}.quick-start-card .quick-start-card__technologies{margin:16px 0 0;padding:0}.quick-start-card .quick-start-card__technologies-item{display:inline-flex;align-items:center;padding:.25rem .3rem;border-radius:.2rem;font-size:.8rem;margin:0 0 .5rem;background:#dd8623;color:#222}.quick-start-card .quick-start-card__technologies-item:not(:last-child){margin-right:.5rem}.quick-start-card .quick-start-card__technologies-item-icon{display:inline-block;height:.8rem;margin-right:.2rem}.quick-start-card .quick-start-card__description p{margin-top:0}.quick-start-card .quick-start-card__links a{display:inline-block;text-decoration:none;padding:.3rem .5rem;border-radius:.2rem;border:1px solid #d6d6d6;background:#d6d6d6;color:#222}.quick-start-card .quick-start-card__links a:active,.quick-start-card .quick-start-card__links a:hover{background-color:#f1f2f2}.eclipse-jkube{display:flex;flex-direction:column;min-height:100vh}.eclipse-jkube__main{flex:1 1}@media (min-width:1170px){.eclipse-jkube__main{overflow-x:hidden}}.eclipse-jkube__main .eclipse-jkube__content{margin:0 16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content{max-width:1154px;margin:0 auto}}.eclipse-jkube__main .eclipse-jkube__content img{max-width:100%}.eclipse-jkube__main .eclipse-jkube__content :not(pre)>code[class*=language-],.eclipse-jkube__main .eclipse-jkube__content pre[class*=language-]{background-color:transparent}.eclipse-jkube__main .eclipse-jkube__content .hero{margin:0 -16px 16px;display:block;background-color:#272727;background-image:url(/jkube/static/cubes-8e1e59c337437947105e6668f1f3790a.jpg);background-size:cover;color:#f1f2f2}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px;background-color:rgba(39,39,39,.7)}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px calc(50% - 585px)}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content .getting-involved{color:#f1f2f2;margin:0 -16px;padding:0 16px;display:flex;justify-content:flex-end}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content h1{font-size:2.5rem;font-family:Libre Franklin,Roboto,sans-serif;font-weight:400}.eclipse-jkube__main .eclipse-jkube__content .section-dark{background-color:#404040;color:#f1f2f2;margin:0 -16px;padding:16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;padding:16px calc(50% - 585px)}}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark>*{padding:0 calc(50% - 585px)}}.eclipse-jkube__main .eclipse-jkube__content .highlight{display:flex;align-items:center}.eclipse-jkube__main .eclipse-jkube__content .highlight>p{margin:16px 32px;display:none}@media (min-width:501px){.eclipse-jkube__main .eclipse-jkube__content .highlight>p{display:block}}.eclipse-jkube__main .eclipse-jkube__content .highlight>p img{max-width:100px}.eclipse-jkube__main .eclipse-jkube__content .highlight-description{flex:1 1;min-width:1px}.eclipse-jkube__main .eclipse-jkube__content .highlight ul{flex:1 1;min-width:1px;margin:0;padding:0}.eclipse-jkube__main .eclipse-jkube__content .highlight li{list-style:none;margin:16px 0}.eclipse-jkube__main .eclipse-jkube__content .calendar{position:relative;overflow:hidden;padding-bottom:75%;margin-bottom:16px}@media (min-width:666.66667px){.eclipse-jkube__main .eclipse-jkube__content .calendar{padding-bottom:0;height:500px}}.eclipse-jkube__main .eclipse-jkube__content .calendar iframe{position:absolute;top:0;height:100%;max-height:500px;width:100%}.eclipse-jkube__documentation{margin:0}@media screen and (min-width:768px){.eclipse-jkube__documentation{position:absolute;top:105px;bottom:0;width:100%;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content{position:relative;padding:16px;overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content article,.eclipse-jkube__documentation .eclipse-jkube__documentation-content aside,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figcaption,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure,.eclipse-jkube__documentation .eclipse-jkube__documentation-content footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content header,.eclipse-jkube__documentation .eclipse-jkube__documentation-content hgroup,.eclipse-jkube__documentation .eclipse-jkube__documentation-content main,.eclipse-jkube__documentation .eclipse-jkube__documentation-content nav,.eclipse-jkube__documentation .eclipse-jkube__documentation-content section{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio,.eclipse-jkube__documentation .eclipse-jkube__documentation-content video{display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio:not([controls]){display:none;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus{outline:thin dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{outline:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2em;margin:.67em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]{border-bottom:1px dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dfn{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{box-sizing:content-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content mark{background:#ff0;color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content samp{font-family:monospace;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{white-space:pre-wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content q{quotes:"\201C" "\201D" "\2018" "\2019"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub{bottom:-.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg:not(:root){overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure{margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content legend{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select,.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{font-family:inherit;font-size:100%;margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input{line-height:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[type=button],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=reset],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=submit]{-webkit-appearance:button;cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button[disabled],.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[disabled]{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=checkbox],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=radio]{box-sizing:border-box;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button::-moz-focus-inner,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input::-moz-focus-inner{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{overflow:auto;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{border-collapse:collapse;border-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content *,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :before{box-sizing:border-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body{background:#fff;color:rgba(0,0,0,.8);padding:0;margin:0;font-family:"Noto Serif","DejaVu Serif",serif;font-weight:400;font-style:normal;line-height:1;position:relative;cursor:auto;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{max-width:100%;height:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{height:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{-ms-interpolation-mode:bicubic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .left{float:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .right{float:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-left{text-align:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-right{text-align:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-center{text-align:center!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-justify{text-align:justify!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{display:inline-block;vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{height:auto;min-height:50px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .center{margin-left:auto;margin-right:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stretch{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .subheader,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{line-height:1.45;color:#7a2518;font-weight:400;margin-top:0;margin-bottom:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content div,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content form,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6,.eclipse-jkube__documentation .eclipse-jkube__documentation-content li,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin:0;padding:0;direction:ltr}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:#2156a5;text-decoration:underline;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{color:#1d4b8f}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{font-family:inherit;font-weight:400;font-size:1em;line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p aside{font-size:.875em;line-height:1.35;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-family:Open Sans,DejaVu Sans,sans-serif;font-weight:300;font-style:normal;color:#ba3925;text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:.5em;line-height:1.0125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 small{font-size:60%;color:#e99b8f;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5{font-size:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{border:solid #dddddf;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em,.eclipse-jkube__documentation .eclipse-jkube__documentation-content i{font-style:italic;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b,.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong{font-weight:700;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:60%;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;font-weight:400;color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{font-size:1em;line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ul{margin-left:1.25em;margin-bottom:0;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square li ul{list-style:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square{list-style-type:square}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle{list-style-type:circle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc{list-style-type:disc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ul{margin-left:1.25em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dt{margin-bottom:.3125em;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content acronym{text-transform:uppercase;font-size:90%;color:rgba(0,0,0,.8);border-bottom:1px dotted #ddd;cursor:help}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote{margin:0 0 1.25em;padding:.5625em 1.25em 0 1.1875em;border-left:1px solid #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite{display:block;font-size:.9375em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite:before{content:"\2014 "}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a:visited{color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote p{line-height:1.6;color:rgba(0,0,0,.85)}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:2.3125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4{font-size:1.4375em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{background:#fff;margin-bottom:1.25em;border:1px solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead{background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th{padding:.5em .625em .625em;font-size:inherit;color:rgba(0,0,0,.8);text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr th{padding:.5625em .625em;font-size:inherit;color:rgba(0,0,0,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.even{background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tbody tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td{display:table-cell;line-height:1.6}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2;word-spacing:-.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre):not([class^=L])>code{font-size:.9375em;font-style:normal!important;letter-spacing:0;padding:.1em .5ex;word-spacing:-.15em;background:#f7f7f8;border-radius:4px;line-height:1.45;text-rendering:optimizeSpeed;word-wrap:break-word}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nobreak{word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nowrap{white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{color:rgba(0,0,0,.9);font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;line-height:1.45;text-rendering:optimizeSpeed}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre pre{color:inherit;font-size:inherit;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre>code{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap pre{white-space:pre;word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em em{font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq{color:rgba(51,51,51,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;display:inline-block;color:rgba(0,0,0,.8);font-size:.65em;line-height:1.45;background:#f7f7f7;border:1px solid #ccc;border-radius:3px;box-shadow:0 1px 0 rgba(0,0,0,.2),inset 0 0 0 .1em #fff;margin:0 .15em;padding:.2em .5em;vertical-align:middle;position:relative;top:-.1em;white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:first-child{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:last-child{margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b:not(.caret){font-weight:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{word-spacing:-.02em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b.caret{font-size:1.25em;line-height:.8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq i.caret{font-weight:700;text-align:center;width:.45em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{position:relative;top:-1px;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{content:"[";padding:0 3px 0 2px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after{content:"]";padding:0 2px 0 3px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p a>code:hover{color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{width:100%;margin:0 auto;max-width:62.5em;*zoom:1;position:relative;padding-left:.9375em;padding-right:.9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-top:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before{content:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{color:rgba(0,0,0,.85);margin-top:2.25rem;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child+#toc{margin-top:8px;border-top:1px solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:only-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #dddddf;padding-bottom:8px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details{border-bottom:1px solid #dddddf;line-height:1.45;padding-top:.25em;padding-bottom:.25em;padding-left:.25em;color:rgba(0,0,0,.6);display:flex;flex-flow:row wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span:first-child{margin-left:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span.email a{color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span:before{content:"\A0\2013\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span.author:before{content:"\A0\22C5\A0";color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span#revremark:before{content:"\A0|\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber{text-transform:capitalize}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber:after{content:"\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content>h1:first-child:not([class]){color:rgba(0,0,0,.85);border-bottom:1px solid #dddddf;padding-bottom:8px;margin-top:0;padding-top:1rem;margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #e7e7e9;padding-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc>ul{margin-left:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0>li>a{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0 ul.sectlevel1{margin:.5em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul{font-family:Open Sans,DejaVu Sans,sans-serif;list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc li{line-height:1.3334;margin-top:.3334em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{color:#7a2518;font-size:1.2em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:15em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{margin-top:0!important;background:#f8f8f7;position:fixed;width:15em;left:0;top:0;border-right:1px solid #e7e7e9;border-top-width:0!important;border-bottom-width:0!important;z-index:1000;padding:1.25em 1em;height:100%;overflow:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{margin-top:0;margin-bottom:.8rem;font-size:1.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.9em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{margin-left:0;padding-left:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:.5em;margin-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:15em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right #toc.toc2{border-right-width:0;border-left:1px solid #e7e7e9;left:auto;right:0}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:20em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{width:20em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.95em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{padding-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:20em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc{border:1px solid #e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{max-width:100%;background:rgba(0,0,0,.8);padding:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:hsla(0,0%,100%,.8);line-height:1.44}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:.625em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:1.25em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1:last-child{padding-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border-top:1px solid #e7e7e9}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:before{content:"\A7";font-size:.85em;display:block;padding-top:.1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:hover{visibility:visible}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link{color:#ba3925;text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link:hover{color:#a53221}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content details>summary:first-of-type{cursor:pointer;display:list-item;outline:none;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{text-rendering:optimizeLegibility;text-align:left;font-family:"Noto Serif","DejaVu Serif",serif;font-size:1rem;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock.fit-content>caption.title{white-space:nowrap;width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #preamble>.sectionbody>[class=paragraph]:first-of-type p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph.lead>p{font-size:1.21875em;line-height:1.6;color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock #preamble>.sectionbody>[class=paragraph]:first-of-type p{font-size:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon{text-align:center;width:80px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon .title{font-weight:700;font-family:Open Sans,DejaVu Sans,sans-serif;text-transform:uppercase}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content{padding-left:1.125em;padding-right:1.25em;border-left:1px solid #dddddf;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{border:1px solid #e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#fff;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{border:1px solid #dbdbd6;margin-bottom:1.25em;padding:1.25em;background:#f3f3f2;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title{color:#7a2518;margin-top:0;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{border-radius:4px;word-wrap:break-word;overflow-x:auto;padding:1em;font-size:.8125em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:.90625em}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:1em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre:not(.highlight),.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class=highlight],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class^="highlight "],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock.output pre{color:#f7f7f8;background:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content{position:relative}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:none;content:attr(data-lang);position:absolute;font-size:.75em;top:.425rem;right:.5rem;line-height:1;text-transform:uppercase;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock:hover code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:before{content:attr(data-prompt);padding-right:.5em;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:not([data-prompt]):before{content:"$"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs{padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs>code{padding:1em;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.prettyprint{border-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .prettyprint{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint .linenums{line-height:1.45;margin-left:2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li{background:none;list-style-type:inherit;padding-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li code[data-lang]:before{opacity:1}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li:not(:first-child) code[data-lang]:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable{border-collapse:separate;border:0;margin-bottom:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td[class]{color:inherit;vertical-align:top;padding:0;line-height:inherit;white-space:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.code{padding-left:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.linenos{border-right:1px solid;opacity:.35;padding-right:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno{border-right:1px solid;opacity:.35;display:inline-block;margin-right:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno:before{content:"";margin-right:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock{margin:0 1em 1.25em 1.5em;display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock:not(.excerpt)>.title{margin-left:-1.5em;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock p{color:rgba(0,0,0,.85);font-size:1.15rem;line-height:1.75;word-spacing:.1em;letter-spacing:0;font-style:italic;text-align:justify}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote{margin:0;padding:0;border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote:before{content:"\201C";float:left;font-size:2.75em;font-weight:700;line-height:.6em;margin-left:-.6em;color:#7a2518;text-shadow:0 1px 2px rgba(0,0,0,.1)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote>.paragraph:last-child p{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution{margin-top:.75em;margin-right:.5ex;text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock{margin:0 1em 1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre{font-family:Open Sans,DejaVu Sans,sans;font-size:1.15rem;color:rgba(0,0,0,.85);font-weight:300;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{margin-top:1.25rem;margin-left:.5ex}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{font-size:.9375em;line-height:1.45;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution br,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution cite,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution cite{display:block;letter-spacing:-.025em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{line-height:1.6;word-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract{margin:0 1em 1.25em;display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract>.title{margin:0 0 .375em;font-size:1.15em;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt>blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{padding:0 0 .25em 1em;border-left:.25em solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{color:inherit;font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock .attribution{color:inherit;text-align:left;margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock{max-width:100%;border-collapse:separate}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child{margin-bottom:-1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child.sidebarblock{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{border:0 solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead>tr>.tableblock{border-width:0 1px 1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tfoot>tr>.tableblock{border-width:1px 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock{border-width:0 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead>tr>.tableblock{border-width:0 0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tfoot>tr>.tableblock{border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>*>tr>.tableblock:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock:last-child{border-right-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead:last-child>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead:last-child>tr>.tableblock{border-bottom-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-all{border-width:1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-sides{border-width:0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-ends,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-topbot{border-width:1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-all tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-even tr:nth-of-type(2n),.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-hover tr:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-odd tr:nth-of-type(odd){background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-left{text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-right,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-right{text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-center,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-center{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-top,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-top{vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-bottom,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-bottom{vertical-align:bottom}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-middle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-middle{vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead th{font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th{display:table-cell;line-height:1.6;background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th p{color:rgba(0,0,0,.8);font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock>code:only-child{background:none;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol{margin-left:1.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-left:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul dd{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-check-square-o:first-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-square-o:first-child{width:1.25em;font-size:.8em;position:relative;bottom:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>input[type=checkbox]:first-child{margin-right:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline{display:flex;flex-flow:row wrap;list-style:none;margin:0 0 .625em -1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline>li{margin-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .unstyled dl dt{font-weight:400;font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.arabic{list-style-type:decimal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.decimal{list-style-type:decimal-leading-zero}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.loweralpha{list-style-type:lower-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperalpha{list-style-type:upper-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowerroman{list-style-type:lower-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperroman{list-style-type:upper-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowergreek{list-style-type:lower-greek}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table{border:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table>tbody>tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table>tbody>tr{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist2{vertical-align:top;padding:0 .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1{font-weight:700;padding-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock+.colist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock+.colist{margin-top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child{padding:.4em .75em 0;line-height:1;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):last-child{padding:.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .thumb{line-height:0;display:inline-block;border:4px solid #fff;box-shadow:0 0 0 1px #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.left{margin:.25em .625em 1.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.right{margin:.25em 0 1.25em .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb{border-width:6px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb>.title{padding:0 .125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-top:.25em;margin-bottom:.25em;display:inline-block;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left{margin-right:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image{text-decoration:none;display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image object{pointer-events:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref{font-size:.875em;position:static;vertical-align:super}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 .75em;border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote{padding:0 .375em 0 .225em;line-height:1.3334;font-size:.875em;margin-left:1.2em;margin-bottom:.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote a:first-of-type{font-weight:700;text-decoration:none;margin-left:-1.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote:last-of-type{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table{border:0;background:#fff;width:100%;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table td.line-data{width:99%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.unbreakable{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .big{font-size:larger}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .small{font-size:smaller}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .underline{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .overline{text-decoration:overline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .line-through{text-decoration:line-through}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua{color:#00bfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua-background{background:#00fafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black-background{background:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue{color:#0000bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue-background{background:#0000fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia{color:#bf00bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia-background{background:#fa00fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray{color:#606060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray-background{background:#7d7d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green{color:#006000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green-background{background:#007d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime{color:#00bf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime-background{background:#00fa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon{color:#600000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon-background{background:#7d0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy{color:#000060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy-background{background:#00007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive{color:#606000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive-background{background:#7d7d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple{color:#600060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple-background{background:#7d007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red{color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red-background{background:#fa0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver{color:#909090}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver-background{background:#bcbcbc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal{color:#006060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal-background{background:#007d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white{color:#bfbfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white-background{background:#fafafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow{color:#bfbf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow-background{background:#fafa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.icon>.fa{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a span.icon>.fa{cursor:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;text-shadow:1px 1px 2px rgba(0,0,0,.5);cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-note:before{content:"\F05A";color:#19407c}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-tip:before{content:"\F0EB";text-shadow:1px 1px 2px rgba(155,155,0,.8);color:#111}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-warning:before{content:"\F071";color:#bf6900}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-caution:before{content:"\F06D";color:#bf3400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-important:before{content:"\F06A";color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]{display:inline-block;color:#fff!important;background:rgba(0,0,0,.8);border-radius:100px;text-align:center;font-size:.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:Open Sans,DejaVu Sans,sans-serif;font-style:normal;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value] *{color:#fff!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]+b{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]:after{content:attr(data-value)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre .conum[data-value]{position:relative;top:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.conum *{color:inherit!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum:not([data-value]):empty{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{letter-spacing:-.01em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content strong{letter-spacing:-.005em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{background:#fffef7;border-color:#e0e0dc;box-shadow:0 1px 4px #e0e0dc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:none!important}@page{.eclipse-jkube__documentation .eclipse-jkube__documentation-content{margin:1.25cm .75cm}}@media print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content *{box-shadow:none!important;text-shadow:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:inherit!important;text-decoration:underline!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.bare,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="#"],.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="mailto:"]{text-decoration:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="http:"]:not(.bare):after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="https:"]:not(.bare):after{content:"(" attr(href) ")";display:inline-block;font-size:.875em;padding-left:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]:after{content:" (" attr(title) ")"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tr{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content thead{display:table-header-group}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{max-width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1em;orphans:3;widows:3}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{page-break-after:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{background:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #dddddf!important;padding-bottom:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details{border:0!important;display:block;padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details span:first-child{margin-left:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br+span:before{content:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #preamble,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book .sect1>h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book h1.sect0{page-break-before:always}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{padding:0 .9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-on-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:block!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-for-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .show-for-print{display:inherit!important}}@media amzn-kf8,print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{margin-top:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:rgba(0,0,0,.6);font-size:.9em}}@media amzn-kf8{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{padding:0}}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content{padding-left:21em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .toc{position:fixed;width:20em;left:0;top:105px;bottom:0;z-index:1000;padding:0 16px;border-right:1px solid #efefed;border-top-width:0!important;border-bottom-width:0!important;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content i.fa{font-style:normal}.eclipse-jkube__quickstarts{padding:0}.eclipse-jkube__quickstarts-item{list-style:none}.eclipse-jkube__quickstarts-item:not(:last-child){margin-bottom:16px}</style><meta name="generator" content="Gatsby 2.30.1"/><title data-react-helmet="true">org.eclipse.jkube/kubernetes-maven-plugin</title><meta data-react-helmet="true" charSet="UTF-8"/><meta data-react-helmet="true" name="description" content=""/><style type="text/css">
.anchor.before {
position: absolute;
top: 0;
@@ -48,7 +48,7 @@
}
}
})
- </script><link as="script" rel="preload" href="/jkube/webpack-runtime-5e7a06a902090b1f37ba.js"/><link as="script" rel="preload" href="/jkube/framework-fd2b85530eec85104a39.js"/><link as="script" rel="preload" href="/jkube/app-d7398b08e923fe8a3caa.js"/><link as="script" rel="preload" href="/jkube/styles-c2fe8482057191dca484.js"/><link as="script" rel="preload" href="/jkube/commons-8b827618f0536ebfeda2.js"/><link as="script" rel="preload" href="/jkube/component---src-templates-doc-jsx-5366dbd1b50f3447a412.js"/><link as="fetch" rel="preload" href="/jkube/page-data/docs/kubernetes-maven-plugin/page-data.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/jkube/page-data/app-data.json" crossorigin="anonymous"/></head><body><div id="___gatsby"><div style="outline:none" tabindex="-1" id="gatsby-focus-wrapper"><div class="eclipse-jkube"><header class="eclipse-jkube__header"><div class="eclipse-jkube__header-container"><a class="eclipse-jkube__header-logo" href="/jkube/"><div class="eclipse-jkube__header-logo-eclipse-image"><img src="/jkube/static/EF_WHT-OR_png-d0fd43ad31261ee9693a060be920e71e.png" alt="Eclipse Foundation"/></div><div class="eclipse-jkube__header-logo-jkube"><img class="eclipse-jkube__header-logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/><span class="eclipse-jkube__header-trade-mark">™</span></div></a><div class="eclipse-jkube__header-content"><ul><li><a href="/jkube/docs">Docs</a></li><li><a href="/jkube/demos">Demos</a></li><li><a href="/jkube/community">Community</a></li><li><a href="/jkube/contributing">Contributing</a></li><li><a class="eclipse-jkube__header-stars" href="https://github.com/eclipse/jkube" title="eclipse/jkube" target="_blank" rel="nofollow noopener noreferrer"><img src="https://img.shields.io/github/stars/eclipse/jkube?style=social" alt="eclipse/jkube stargazers"/></a></li></ul></div></div></header><div class="eclipse-jkube__documentation book toc2 toc-left"><div class="eclipse-jkube__documentation-content"><div id="preamble">
+ </script><link as="script" rel="preload" href="/jkube/webpack-runtime-b52c77882f7d7b54b2b3.js"/><link as="script" rel="preload" href="/jkube/framework-5e01c8af6b1735c9eaa3.js"/><link as="script" rel="preload" href="/jkube/app-59faa9989d677dd59195.js"/><link as="script" rel="preload" href="/jkube/styles-e9d24b1846c7d6eb9685.js"/><link as="script" rel="preload" href="/jkube/commons-ee34cd715ab4f7da30e0.js"/><link as="script" rel="preload" href="/jkube/component---src-templates-doc-jsx-21a94bb36ef3df298f42.js"/><link as="fetch" rel="preload" href="/jkube/page-data/docs/kubernetes-maven-plugin/page-data.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/jkube/page-data/app-data.json" crossorigin="anonymous"/></head><body><div id="___gatsby"><div style="outline:none" tabindex="-1" id="gatsby-focus-wrapper"><div class="eclipse-jkube"><header class="eclipse-jkube__header"><div class="eclipse-jkube__header-container"><a class="eclipse-jkube__header-logo" href="/jkube/"><div class="eclipse-jkube__header-logo-eclipse-image"><img src="/jkube/static/EF_WHT-OR_png-d0fd43ad31261ee9693a060be920e71e.png" alt="Eclipse Foundation"/></div><div class="eclipse-jkube__header-logo-jkube"><img class="eclipse-jkube__header-logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/><span class="eclipse-jkube__header-trade-mark">™</span></div></a><div class="eclipse-jkube__header-content"><ul><li><a href="/jkube/docs">Docs</a></li><li><a href="/jkube/demos">Demos</a></li><li><a href="/jkube/community">Community</a></li><li><a href="/jkube/contributing">Contributing</a></li><li><a class="eclipse-jkube__header-stars" href="https://github.com/eclipse/jkube" title="eclipse/jkube" target="_blank" rel="nofollow noopener noreferrer"><img src="https://img.shields.io/github/stars/eclipse/jkube?style=social" alt="eclipse/jkube stargazers"/></a></li></ul></div></div></header><div class="eclipse-jkube__documentation book toc2 toc-left"><div class="eclipse-jkube__documentation-content"><div id="preamble">
<div class="sectionbody">
<div class="paragraph">
<p>© 2020 The original authors.</p>
@@ -184,39 +184,38 @@
<li><a href="#_openshift_and_kubernetes_access">10.2. OpenShift and Kubernetes Access</a></li>
</ul>
</li>
-<li><a href="#registry">11. Registry handling</a></li>
-<li><a href="#authentication">12. Authentication</a>
+<li><a href="#registry">11. Registry handling</a>
<ul class="sectlevel2">
-<li><a href="#_pull_vs_push_authentication">12.1. Pull vs. Push Authentication</a></li>
-<li><a href="#_openshift_authentication">12.2. OpenShift Authentication</a></li>
-<li><a href="#password-encryption">12.3. Password encryption</a></li>
-<li><a href="#extended-authentication">12.4. Extended Authentication</a></li>
+<li><a href="#_pull_vs_push_authentication">11.1. Pull vs. Push Authentication</a></li>
+<li><a href="#_openshift_authentication">11.2. OpenShift Authentication</a></li>
+<li><a href="#password-encryption">11.3. Password encryption</a></li>
+<li><a href="#extended-authentication">11.4. Extended Authentication</a></li>
</ul>
</li>
-<li><a href="#volume-configuration">13. Volume Configuration</a></li>
-<li><a href="#integrations">14. Integrations</a>
+<li><a href="#volume-configuration">12. Volume Configuration</a></li>
+<li><a href="#integrations">13. Integrations</a>
<ul class="sectlevel2">
-<li><a href="#integrations.dekorate">14.1. Dekorate</a></li>
-<li><a href="#_jib_java_image_builder">14.2. JIB (Java Image Builder)</a></li>
+<li><a href="#integrations.dekorate">13.1. Dekorate</a></li>
+<li><a href="#_jib_java_image_builder">13.2. JIB (Java Image Builder)</a></li>
</ul>
</li>
-<li><a href="#faq">15. FAQ</a>
+<li><a href="#faq">14. FAQ</a>
<ul class="sectlevel2">
-<li><a href="#_general_questions">15.1. General questions</a>
+<li><a href="#_general_questions">14.1. General questions</a>
<ul class="sectlevel3">
-<li><a href="#_how_do_i_define_an_environment_variable">15.1.1. How do I define an environment variable?</a></li>
-<li><a href="#_how_do_i_define_a_system_property">15.1.2. How do I define a system property?</a></li>
-<li><a href="#_how_do_i_mount_a_config_file_from_a_configmap">15.1.3. How do I mount a config file from a ConfigMap?</a></li>
-<li><a href="#_how_do_i_use_a_persistent_volume">15.1.4. How do I use a Persistent Volume?</a></li>
-<li><a href="#_how_do_i_generate_ingress_for_my_generated_service">15.1.5. How do I generate Ingress for my generated Service?</a></li>
+<li><a href="#_how_do_i_define_an_environment_variable">14.1.1. How do I define an environment variable?</a></li>
+<li><a href="#_how_do_i_define_a_system_property">14.1.2. How do I define a system property?</a></li>
+<li><a href="#_how_do_i_mount_a_config_file_from_a_configmap">14.1.3. How do I mount a config file from a ConfigMap?</a></li>
+<li><a href="#_how_do_i_use_a_persistent_volume">14.1.4. How do I use a Persistent Volume?</a></li>
+<li><a href="#_how_do_i_generate_ingress_for_my_generated_service">14.1.5. How do I generate Ingress for my generated Service?</a></li>
</ul>
</li>
</ul>
</li>
-<li><a href="#appendix">16. Appendix</a>
+<li><a href="#appendix">15. Appendix</a>
<ul class="sectlevel2">
-<li><a href="#_kindfilename_type_mapping">16.1. Kind/Filename Type Mapping</a></li>
-<li><a href="#_custom_kindfilename_mapping">16.2. Custom Kind/Filename Mapping</a></li>
+<li><a href="#_kindfilename_type_mapping">15.1. Kind/Filename Type Mapping</a></li>
+<li><a href="#_custom_kindfilename_mapping">15.2. Custom Kind/Filename Mapping</a></li>
</ul>
</li>
</ul>
@@ -4793,7 +4792,7 @@
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#jkube-container-env-java-options">jkube-container-env-java-options</a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Merges <code>JAVA_OPTIONS</code> environment variable defined in <a href="#config-image-build">Build configuration (<a href="#config-image"><image> </a>)</a>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Merges <code>JAVA_OPTIONS</code> environment variable defined in <a href="#config-image-build">Build configuration (<image> )</a>
environment (<code>env</code>) with <code>Container</code> <code>JAVA_OPTIONS</code> environment variable added
by other enrichers, XML configuration or fragment.</p></td>
</tr>
@@ -4939,7 +4938,7 @@
<div class="sect4">
<h5 id="jkube-container-env-java-options">jkube-container-env-java-options</h5>
<div class="paragraph">
-<p>Merges <code>JAVA_OPTIONS</code> environment variable defined in <a href="#config-image-build">Build configuration (<a href="#config-image"><image> </a>)</a>
+<p>Merges <code>JAVA_OPTIONS</code> environment variable defined in <a href="#config-image-build">Build configuration (<image> )</a>
environment (<code>env</code>) with <code>Container</code> <code>JAVA_OPTIONS</code> environment variable added
by other enrichers, XML configuration or fragment.</p>
</div>
@@ -7225,14 +7224,12 @@
<p>When <em>pushing</em> a local image, temporarily a tag including the
registry is added and removed after the push. This is required
because Docker can only push registry-named images.</p>
+<div id="authentication" class="paragraph">
+<p>= Authentication</p>
+</div>
</li>
</ul>
</div>
-</div>
-</div>
-<div class="sect1">
-<h2 id="authentication">12. Authentication</h2>
-<div class="sectionbody">
<div class="paragraph">
<p>When pulling (via the <code>autoPull</code> mode of <code>k8s:build</code>) or pushing image, it
might be necessary to authenticate against a Docker registry.</p>
@@ -7326,7 +7323,7 @@
<a href="https://docs.docker.com/engine/reference/commandline/login/#credentials-store">credential store</a>.</p>
</div>
<div class="sect2">
-<h3 id="_pull_vs_push_authentication">12.1. Pull vs. Push Authentication</h3>
+<h3 id="_pull_vs_push_authentication">11.1. Pull vs. Push Authentication</h3>
<div class="paragraph">
<p>The credentials lookup described above is valid for both push and
pull operations. In order to narrow things down, credentials can be
@@ -7364,7 +7361,7 @@
</div>
</div>
<div class="sect2">
-<h3 id="_openshift_authentication">12.2. OpenShift Authentication</h3>
+<h3 id="_openshift_authentication">11.2. OpenShift Authentication</h3>
<div class="paragraph">
<p>When working with the default registry in OpenShift, the credentials
to authenticate are the OpenShift username and access token. So, a
@@ -7413,7 +7410,7 @@
</div>
</div>
<div class="sect2">
-<h3 id="password-encryption">12.3. Password encryption</h3>
+<h3 id="password-encryption">11.3. Password encryption</h3>
<div class="paragraph">
<p>Regardless of which mode you choose you can encrypt password as described
in the
@@ -7439,7 +7436,7 @@
</div>
</div>
<div class="sect2">
-<h3 id="extended-authentication">12.4. Extended Authentication</h3>
+<h3 id="extended-authentication">11.4. Extended Authentication</h3>
<div class="paragraph">
<p>Some docker registries require additional steps to authenticate.
<a href="https://docs.aws.amazon.com/AmazonECR/latest/userguide/ECR_GetStarted.html">Amazon ECR</a> requires using an IAM access key to obtain temporary docker login credentials.
@@ -7467,7 +7464,7 @@
</div>
</div>
<div class="sect1">
-<h2 id="volume-configuration">13. Volume Configuration</h2>
+<h2 id="volume-configuration">12. Volume Configuration</h2>
<div class="sectionbody">
<div class="paragraph">
<p>kubernetes-maven-plugin supports volume configuration in XML format in pom.xml. These are the volume types which are supported:</p>
@@ -7578,10 +7575,10 @@
</div>
</div>
<div class="sect1">
-<h2 id="integrations">14. Integrations</h2>
+<h2 id="integrations">13. Integrations</h2>
<div class="sectionbody">
<div class="sect2">
-<h3 id="integrations.dekorate">14.1. Dekorate</h3>
+<h3 id="integrations.dekorate">13.1. Dekorate</h3>
<div class="paragraph">
<p><strong>kubernetes-maven-plugin</strong> provides a Zero Configuration approach to delegate deployment manifests
generation to <a href="https://github.com/dekorateio/dekorate">Dekorate</a>.</p>
@@ -7628,7 +7625,7 @@
</div>
</div>
<div class="sect2">
-<h3 id="_jib_java_image_builder">14.2. JIB (Java Image Builder)</h3>
+<h3 id="_jib_java_image_builder">13.2. JIB (Java Image Builder)</h3>
<div class="paragraph">
<p><strong>kubernetes-maven-plugin</strong> also provides user an option to build container images without having access to any docker daemon.
You just need to set <code>jkube.build.strategy</code> property to <code>jib</code>. It will delegate the build process to
@@ -7642,12 +7639,12 @@
</div>
</div>
<div class="sect1">
-<h2 id="faq">15. FAQ</h2>
+<h2 id="faq">14. FAQ</h2>
<div class="sectionbody">
<div class="sect2">
-<h3 id="_general_questions">15.1. General questions</h3>
+<h3 id="_general_questions">14.1. General questions</h3>
<div class="sect3">
-<h4 id="_how_do_i_define_an_environment_variable">15.1.1. How do I define an environment variable?</h4>
+<h4 id="_how_do_i_define_an_environment_variable">14.1.1. How do I define an environment variable?</h4>
<div class="paragraph">
<p>The easiest way is to add a <code>src/main/jkube/deployment.yml</code> file to your project containing something like:</p>
</div>
@@ -7670,7 +7667,7 @@
</div>
</div>
<div class="sect3">
-<h4 id="_how_do_i_define_a_system_property">15.1.2. How do I define a system property?</h4>
+<h4 id="_how_do_i_define_a_system_property">14.1.2. How do I define a system property?</h4>
<div class="paragraph">
<p>The simplest way is to add system properties to the <code>JAVA_OPTIONS</code> environment variable.</p>
</div>
@@ -7696,7 +7693,7 @@
</div>
</div>
<div class="sect3">
-<h4 id="_how_do_i_mount_a_config_file_from_a_configmap">15.1.3. How do I mount a config file from a ConfigMap?</h4>
+<h4 id="_how_do_i_mount_a_config_file_from_a_configmap">14.1.3. How do I mount a config file from a ConfigMap?</h4>
<div class="paragraph">
<p>First you need to create your <code>ConfigMap</code> resource via a file <code>src/main/jkube/configmap.yml</code></p>
</div>
@@ -7745,7 +7742,7 @@
</div>
</div>
<div class="sect3">
-<h4 id="_how_do_i_use_a_persistent_volume">15.1.4. How do I use a Persistent Volume?</h4>
+<h4 id="_how_do_i_use_a_persistent_volume">14.1.4. How do I use a Persistent Volume?</h4>
<div class="paragraph">
<p>First you need to create your <code>PersistentVolumeClaim</code> resource via a file <code>src/main/jkube/foo-pvc.yml</code> where <code>foo</code> is the name of the <code>PersistentVolumeClaim</code>. It might be your app requires multiple vpersistent volumes so you will need multiple <code>PersistentVolumeClaim</code> resources.</p>
</div>
@@ -7782,7 +7779,7 @@
</div>
</div>
<div class="sect3">
-<h4 id="_how_do_i_generate_ingress_for_my_generated_service">15.1.5. How do I generate Ingress for my generated Service?</h4>
+<h4 id="_how_do_i_generate_ingress_for_my_generated_service">14.1.5. How do I generate Ingress for my generated Service?</h4>
<div class="paragraph">
<p><code>Ingress</code> generation is supported by Eclipse JKube for <code>Service</code> objects of type <code>LoadBalancer</code>. In order to generate <code>Ingress</code> you need to enable <code>jkube.createExternalUrls</code> property to <code>true</code> and <code>jkube.domain</code> property to desired host suffix, it would be appended to your service name for host value. You can also also provide a host for it in XML config like this:</p>
</div>
@@ -7817,10 +7814,10 @@
</div>
</div>
<div class="sect1">
-<h2 id="appendix">16. Appendix</h2>
+<h2 id="appendix">15. Appendix</h2>
<div class="sectionbody">
<div class="sect2">
-<h3 id="_kindfilename_type_mapping">16.1. Kind/Filename Type Mapping</h3>
+<h3 id="_kindfilename_type_mapping">15.1. Kind/Filename Type Mapping</h3>
<table id="appendix-kind-mapping" class="tableblock frame-all grid-all stretch">
<colgroup>
<col style="width: 50%;">
@@ -7973,7 +7970,7 @@
</table>
</div>
<div class="sect2">
-<h3 id="_custom_kindfilename_mapping">16.2. Custom Kind/Filename Mapping</h3>
+<h3 id="_custom_kindfilename_mapping">15.2. Custom Kind/Filename Mapping</h3>
<div class="paragraph">
<p>You can add your custom <code>Kind/Filename</code> mappings.
To do it you have two approaches:</p>
@@ -8007,4 +8004,4 @@
</div>
</div>
</div>
-</div></div></div></div></div><div id="gatsby-announcer" style="position:absolute;top:0;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0" aria-live="assertive" aria-atomic="true"></div></div><script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/docs/kubernetes-maven-plugin";/*]]>*/</script><script id="gatsby-chunk-mapping">/*<![CDATA[*/window.___chunkMapping={"polyfill":["/polyfill-88d9aed314b16f9b2adc.js"],"app":["/app-d7398b08e923fe8a3caa.js"],"component---src-pages-quickstarts-index-jsx":["/component---src-pages-quickstarts-index-jsx-a1e42093b41968828647.js"],"component---src-templates-doc-jsx":["/component---src-templates-doc-jsx-5366dbd1b50f3447a412.js"],"component---src-templates-main-jsx":["/component---src-templates-main-jsx-456568a5c9ae2c9095ee.js"]};/*]]>*/</script><script src="/jkube/polyfill-88d9aed314b16f9b2adc.js" nomodule=""></script><script src="/jkube/component---src-templates-doc-jsx-5366dbd1b50f3447a412.js" async=""></script><script src="/jkube/commons-8b827618f0536ebfeda2.js" async=""></script><script src="/jkube/styles-c2fe8482057191dca484.js" async=""></script><script src="/jkube/app-d7398b08e923fe8a3caa.js" async=""></script><script src="/jkube/framework-fd2b85530eec85104a39.js" async=""></script><script src="/jkube/webpack-runtime-5e7a06a902090b1f37ba.js" async=""></script></body></html>
\ No newline at end of file
+</div></div></div></div></div><div id="gatsby-announcer" style="position:absolute;top:0;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0" aria-live="assertive" aria-atomic="true"></div></div><script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/docs/kubernetes-maven-plugin";/*]]>*/</script><script id="gatsby-chunk-mapping">/*<![CDATA[*/window.___chunkMapping={"polyfill":["/polyfill-e4957c11759bdfc149d9.js"],"app":["/app-59faa9989d677dd59195.js"],"component---src-pages-quickstarts-index-jsx":["/component---src-pages-quickstarts-index-jsx-8b53e5455e208a3e59b9.js"],"component---src-templates-doc-jsx":["/component---src-templates-doc-jsx-21a94bb36ef3df298f42.js"],"component---src-templates-main-jsx":["/component---src-templates-main-jsx-8853cf342e1cf1bead5c.js"]};/*]]>*/</script><script src="/jkube/polyfill-e4957c11759bdfc149d9.js" nomodule=""></script><script src="/jkube/component---src-templates-doc-jsx-21a94bb36ef3df298f42.js" async=""></script><script src="/jkube/commons-ee34cd715ab4f7da30e0.js" async=""></script><script src="/jkube/styles-e9d24b1846c7d6eb9685.js" async=""></script><script src="/jkube/app-59faa9989d677dd59195.js" async=""></script><script src="/jkube/framework-5e01c8af6b1735c9eaa3.js" async=""></script><script src="/jkube/webpack-runtime-b52c77882f7d7b54b2b3.js" async=""></script></body></html>
\ No newline at end of file
diff --git a/docs/migration-guide/index.html b/docs/migration-guide/index.html
index 15417a5..7d76fff 100644
--- a/docs/migration-guide/index.html
+++ b/docs/migration-guide/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><style data-href="/jkube/styles.5c9b852c43e28f117cb7.css">@import url(https://fonts.googleapis.com/css?family=Libre+Franklin:100,300,400,600,700,|Roboto:300,400,500,700|Jura);@import url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css);@import url(https://unpkg.com/@coreui/icons/css/brand.min.css);code[class*=language-],pre[class*=language-]{color:#657b83;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-ms-hyphens:none;hyphens:none}code[class*=language-]::selection,code[class*=language-] ::selection,pre[class*=language-]::selection,pre[class*=language-] ::selection{background:#073642}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;border-radius:.3em}:not(pre)>code[class*=language-],pre[class*=language-]{background-color:#fdf6e3}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#93a1a1}.token.punctuation{color:#586e75}.token.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#268bd2}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string,.token.url{color:#2aa198}.token.entity{color:#657b83;background:#eee8d5}.token.atrule,.token.attr-value,.token.keyword{color:#859900}.token.class-name,.token.function{color:#b58900}.token.important,.token.regex,.token.variable{color:#cb4b16}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body,html{font-family:Libre Franklin,Roboto,sans-serif}body{margin:0;padding:0;outline:0;background:#f1f2f2;font-size:16px;color:#222}h1{font-size:3rem}h1,h2{margin-top:0;font-family:Roboto,sans-serif;font-weight:300}h2{font-size:2rem}h3{font-size:1.5rem;font-weight:300}a{color:#525c86}a:focus,a:hover{color:#222}.eclipse-jkube-footer{padding:16px;border-top:10px solid #222;background-color:#292c2f;font-size:19.2px;font-family:Roboto,sans-serif;font-weight:300;line-height:1.5}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube{display:flex;flex-direction:column;max-width:1170px;margin:0 auto 16px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-image{width:160px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-tagline{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links{max-width:1170px;margin:0 auto 16px;display:flex;flex-wrap:wrap}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list{padding:0;margin:0 48px 16px 0;list-style:none}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a{transition:color .1s linear;color:#f1f2f2}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a,.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a:hover{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a:hover{color:#525c86}.eclipse-jkube-footer .eclipse-jkube-footer__links a{text-decoration:none}.eclipse-jkube-footer .eclipse-jkube-footer__copyright{max-width:1170px;margin:0 auto 16px;font-family:Roboto,sans-serif;color:#939598}.eclipse-jkube__header{display:block;position:relative;height:175px;background-color:#292c2f}@media (min-width:700px){.eclipse-jkube__header{height:105px}}.eclipse-jkube__header .eclipse-jkube__header-trade-mark{font-size:.5em;font-size:.3em;line-height:2.5;vertical-align:top}.eclipse-jkube__header .eclipse-jkube__header-container{position:relative;margin:0 auto;padding:0 16px;height:100%;max-width:1170px}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-container{display:flex;flex-wrap:nowrap;height:105px}}.eclipse-jkube__header .eclipse-jkube__header-logo{display:flex;justify-content:center;align-items:center;font-size:32px;font-weight:400;color:#f1f2f2}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo{font-size:50px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:65px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:90px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image img{max-height:100%;max-width:100%}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:50px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:65px}}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube-image{height:100%}.eclipse-jkube__header .eclipse-jkube__header-logo:hover{color:#f1f2f2}.eclipse-jkube__header .eclipse-jkube__header-content{flex:1 0;min-width:1px;display:flex;justify-content:center;align-items:center}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-content{justify-content:flex-end}}.eclipse-jkube__header .eclipse-jkube__header-content ul{display:flex;flex-wrap:wrap;align-items:center;justify-content:center}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-content ul{justify-content:flex-start}}.eclipse-jkube__header .eclipse-jkube__header-content ul li{margin:4px 0;padding-right:16px;list-style:none;color:#f1f2f2;font-size:20px}.eclipse-jkube__header .eclipse-jkube__header-content .eclipse-jkube__header-stars{display:block;width:85px;height:20px;line-height:20px}.eclipse-jkube__header a{color:#f1f2f2;text-decoration:none}.eclipse-jkube__header a:hover{color:#dd8623;transition:color .3s}.quick-start-card{border:1px solid #d6d6d6;padding:16px}.quick-start-card .quick-start-card__title{margin:0;padding:0}.quick-start-card .quick-start-card__title a{text-decoration:none}.quick-start-card .quick-start-card__title a:active,.quick-start-card .quick-start-card__title a:hover{text-decoration:underline}.quick-start-card .quick-start-card__technologies{margin:16px 0 0;padding:0}.quick-start-card .quick-start-card__technologies-item{display:inline-flex;align-items:center;padding:.25rem .3rem;border-radius:.2rem;font-size:.8rem;margin:0 0 .5rem;background:#dd8623;color:#222}.quick-start-card .quick-start-card__technologies-item:not(:last-child){margin-right:.5rem}.quick-start-card .quick-start-card__technologies-item-icon{display:inline-block;height:.8rem;margin-right:.2rem}.quick-start-card .quick-start-card__description p{margin-top:0}.quick-start-card .quick-start-card__links a{display:inline-block;text-decoration:none;padding:.3rem .5rem;border-radius:.2rem;border:1px solid #d6d6d6;background:#d6d6d6;color:#222}.quick-start-card .quick-start-card__links a:active,.quick-start-card .quick-start-card__links a:hover{background-color:#f1f2f2}.eclipse-jkube{display:flex;flex-direction:column;min-height:100vh}.eclipse-jkube__main{flex:1 1}@media (min-width:1170px){.eclipse-jkube__main{overflow-x:hidden}}.eclipse-jkube__main .eclipse-jkube__content{margin:0 16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content{max-width:1154px;margin:0 auto}}.eclipse-jkube__main .eclipse-jkube__content img{max-width:100%}.eclipse-jkube__main .eclipse-jkube__content :not(pre)>code[class*=language-],.eclipse-jkube__main .eclipse-jkube__content pre[class*=language-]{background-color:transparent}.eclipse-jkube__main .eclipse-jkube__content .hero{margin:0 -16px 16px;display:block;background-color:#272727;background-image:url(/jkube/static/cubes-8e1e59c337437947105e6668f1f3790a.jpg);background-size:cover;color:#f1f2f2}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px;background-color:rgba(39,39,39,.7)}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px calc((100% - 1170px)/2)}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content .getting-involved{color:#f1f2f2;margin:0 -16px;padding:0 16px;display:flex;justify-content:flex-end}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content h1{font-size:2.5rem;font-family:Libre Franklin,Roboto,sans-serif;font-weight:400}.eclipse-jkube__main .eclipse-jkube__content .section-dark{background-color:#404040;color:#f1f2f2;margin:0 -16px;padding:16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;padding:16px calc((100% - 1170px)/2)}}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark>*{padding:0 calc((100% - 1170px)/2)}}.eclipse-jkube__main .eclipse-jkube__content .highlight{display:flex;align-items:center}.eclipse-jkube__main .eclipse-jkube__content .highlight>p{margin:16px 32px;display:none}@media (min-width:501px){.eclipse-jkube__main .eclipse-jkube__content .highlight>p{display:block}}.eclipse-jkube__main .eclipse-jkube__content .highlight>p img{max-width:100px}.eclipse-jkube__main .eclipse-jkube__content .highlight-description{flex:1 1;min-width:1px}.eclipse-jkube__main .eclipse-jkube__content .highlight ul{flex:1 1;min-width:1px;margin:0;padding:0}.eclipse-jkube__main .eclipse-jkube__content .highlight li{list-style:none;margin:16px 0}.eclipse-jkube__main .eclipse-jkube__content .calendar{position:relative;overflow:hidden;padding-bottom:75%;margin-bottom:16px}@media (min-width:666.66667px){.eclipse-jkube__main .eclipse-jkube__content .calendar{padding-bottom:0;height:500px}}.eclipse-jkube__main .eclipse-jkube__content .calendar iframe{position:absolute;top:0;height:100%;max-height:500px;width:100%}.eclipse-jkube__documentation{margin:0}@media screen and (min-width:768px){.eclipse-jkube__documentation{position:absolute;top:105px;bottom:0;width:100%;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content{position:relative;padding:16px;overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content article,.eclipse-jkube__documentation .eclipse-jkube__documentation-content aside,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figcaption,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure,.eclipse-jkube__documentation .eclipse-jkube__documentation-content footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content header,.eclipse-jkube__documentation .eclipse-jkube__documentation-content hgroup,.eclipse-jkube__documentation .eclipse-jkube__documentation-content main,.eclipse-jkube__documentation .eclipse-jkube__documentation-content nav,.eclipse-jkube__documentation .eclipse-jkube__documentation-content section{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio,.eclipse-jkube__documentation .eclipse-jkube__documentation-content video{display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio:not([controls]){display:none;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus{outline:thin dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{outline:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2em;margin:.67em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]{border-bottom:1px dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dfn{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{box-sizing:content-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content mark{background:#ff0;color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content samp{font-family:monospace;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{white-space:pre-wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content q{quotes:"\201C" "\201D" "\2018" "\2019"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub{bottom:-.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg:not(:root){overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure{margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content legend{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select,.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{font-family:inherit;font-size:100%;margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input{line-height:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[type=button],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=reset],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=submit]{-webkit-appearance:button;cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button[disabled],.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[disabled]{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=checkbox],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=radio]{box-sizing:border-box;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button::-moz-focus-inner,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input::-moz-focus-inner{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{overflow:auto;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{border-collapse:collapse;border-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content *,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :before{box-sizing:border-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body{background:#fff;color:rgba(0,0,0,.8);padding:0;margin:0;font-family:"Noto Serif","DejaVu Serif",serif;font-weight:400;font-style:normal;line-height:1;position:relative;cursor:auto;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{max-width:100%;height:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{height:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{-ms-interpolation-mode:bicubic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .left{float:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .right{float:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-left{text-align:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-right{text-align:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-center{text-align:center!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-justify{text-align:justify!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{display:inline-block;vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{height:auto;min-height:50px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .center{margin-left:auto;margin-right:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stretch{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .subheader,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{line-height:1.45;color:#7a2518;font-weight:400;margin-top:0;margin-bottom:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content div,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content form,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6,.eclipse-jkube__documentation .eclipse-jkube__documentation-content li,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin:0;padding:0;direction:ltr}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:#2156a5;text-decoration:underline;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{color:#1d4b8f}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{font-family:inherit;font-weight:400;font-size:1em;line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p aside{font-size:.875em;line-height:1.35;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-family:Open Sans,DejaVu Sans,sans-serif;font-weight:300;font-style:normal;color:#ba3925;text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:.5em;line-height:1.0125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 small{font-size:60%;color:#e99b8f;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5{font-size:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{border:solid #dddddf;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em,.eclipse-jkube__documentation .eclipse-jkube__documentation-content i{font-style:italic;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b,.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong{font-weight:700;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:60%;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;font-weight:400;color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{font-size:1em;line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ul{margin-left:1.25em;margin-bottom:0;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square li ul{list-style:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square{list-style-type:square}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle{list-style-type:circle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc{list-style-type:disc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ul{margin-left:1.25em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dt{margin-bottom:.3125em;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content acronym{text-transform:uppercase;font-size:90%;color:rgba(0,0,0,.8);border-bottom:1px dotted #ddd;cursor:help}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote{margin:0 0 1.25em;padding:.5625em 1.25em 0 1.1875em;border-left:1px solid #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite{display:block;font-size:.9375em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite:before{content:"\2014 "}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a:visited{color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote p{line-height:1.6;color:rgba(0,0,0,.85)}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:2.3125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4{font-size:1.4375em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{background:#fff;margin-bottom:1.25em;border:1px solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead{background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th{padding:.5em .625em .625em;font-size:inherit;color:rgba(0,0,0,.8);text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr th{padding:.5625em .625em;font-size:inherit;color:rgba(0,0,0,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.even{background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tbody tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td{display:table-cell;line-height:1.6}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2;word-spacing:-.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre):not([class^=L])>code{font-size:.9375em;font-style:normal!important;letter-spacing:0;padding:.1em .5ex;word-spacing:-.15em;background:#f7f7f8;border-radius:4px;line-height:1.45;text-rendering:optimizeSpeed;word-wrap:break-word}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nobreak{word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nowrap{white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{color:rgba(0,0,0,.9);font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;line-height:1.45;text-rendering:optimizeSpeed}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre pre{color:inherit;font-size:inherit;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre>code{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap pre{white-space:pre;word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em em{font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq{color:rgba(51,51,51,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;display:inline-block;color:rgba(0,0,0,.8);font-size:.65em;line-height:1.45;background:#f7f7f7;border:1px solid #ccc;border-radius:3px;box-shadow:0 1px 0 rgba(0,0,0,.2),inset 0 0 0 .1em #fff;margin:0 .15em;padding:.2em .5em;vertical-align:middle;position:relative;top:-.1em;white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:first-child{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:last-child{margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b:not(.caret){font-weight:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{word-spacing:-.02em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b.caret{font-size:1.25em;line-height:.8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq i.caret{font-weight:700;text-align:center;width:.45em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{position:relative;top:-1px;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{content:"[";padding:0 3px 0 2px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after{content:"]";padding:0 2px 0 3px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p a>code:hover{color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{width:100%;margin:0 auto;max-width:62.5em;*zoom:1;position:relative;padding-left:.9375em;padding-right:.9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-top:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before{content:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{color:rgba(0,0,0,.85);margin-top:2.25rem;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child+#toc{margin-top:8px;border-top:1px solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:only-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #dddddf;padding-bottom:8px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details{border-bottom:1px solid #dddddf;line-height:1.45;padding-top:.25em;padding-bottom:.25em;padding-left:.25em;color:rgba(0,0,0,.6);display:flex;flex-flow:row wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span:first-child{margin-left:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span.email a{color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span:before{content:"\A0\2013\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span.author:before{content:"\A0\22C5\A0";color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span#revremark:before{content:"\A0|\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber{text-transform:capitalize}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber:after{content:"\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content>h1:first-child:not([class]){color:rgba(0,0,0,.85);border-bottom:1px solid #dddddf;padding-bottom:8px;margin-top:0;padding-top:1rem;margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #e7e7e9;padding-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc>ul{margin-left:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0>li>a{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0 ul.sectlevel1{margin:.5em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul{font-family:Open Sans,DejaVu Sans,sans-serif;list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc li{line-height:1.3334;margin-top:.3334em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{color:#7a2518;font-size:1.2em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:15em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{margin-top:0!important;background:#f8f8f7;position:fixed;width:15em;left:0;top:0;border-right:1px solid #e7e7e9;border-top-width:0!important;border-bottom-width:0!important;z-index:1000;padding:1.25em 1em;height:100%;overflow:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{margin-top:0;margin-bottom:.8rem;font-size:1.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.9em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{margin-left:0;padding-left:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:.5em;margin-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:15em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right #toc.toc2{border-right-width:0;border-left:1px solid #e7e7e9;left:auto;right:0}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:20em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{width:20em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.95em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{padding-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:20em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc{border:1px solid #e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{max-width:100%;background:rgba(0,0,0,.8);padding:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:hsla(0,0%,100%,.8);line-height:1.44}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:.625em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:1.25em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1:last-child{padding-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border-top:1px solid #e7e7e9}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:before{content:"\A7";font-size:.85em;display:block;padding-top:.1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:hover{visibility:visible}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link{color:#ba3925;text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link:hover{color:#a53221}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content details>summary:first-of-type{cursor:pointer;display:list-item;outline:none;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{text-rendering:optimizeLegibility;text-align:left;font-family:"Noto Serif","DejaVu Serif",serif;font-size:1rem;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock.fit-content>caption.title{white-space:nowrap;width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #preamble>.sectionbody>[class=paragraph]:first-of-type p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph.lead>p{font-size:1.21875em;line-height:1.6;color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock #preamble>.sectionbody>[class=paragraph]:first-of-type p{font-size:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon{text-align:center;width:80px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon .title{font-weight:700;font-family:Open Sans,DejaVu Sans,sans-serif;text-transform:uppercase}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content{padding-left:1.125em;padding-right:1.25em;border-left:1px solid #dddddf;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{border:1px solid #e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#fff;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{border:1px solid #dbdbd6;margin-bottom:1.25em;padding:1.25em;background:#f3f3f2;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title{color:#7a2518;margin-top:0;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{border-radius:4px;word-wrap:break-word;overflow-x:auto;padding:1em;font-size:.8125em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:.90625em}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:1em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre:not(.highlight),.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class=highlight],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class^="highlight "],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock.output pre{color:#f7f7f8;background:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content{position:relative}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:none;content:attr(data-lang);position:absolute;font-size:.75em;top:.425rem;right:.5rem;line-height:1;text-transform:uppercase;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock:hover code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:before{content:attr(data-prompt);padding-right:.5em;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:not([data-prompt]):before{content:"$"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs{padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs>code{padding:1em;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.prettyprint{border-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .prettyprint{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint .linenums{line-height:1.45;margin-left:2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li{background:none;list-style-type:inherit;padding-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li code[data-lang]:before{opacity:1}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li:not(:first-child) code[data-lang]:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable{border-collapse:separate;border:0;margin-bottom:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td[class]{color:inherit;vertical-align:top;padding:0;line-height:inherit;white-space:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.code{padding-left:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.linenos{border-right:1px solid;opacity:.35;padding-right:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno{border-right:1px solid;opacity:.35;display:inline-block;margin-right:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno:before{content:"";margin-right:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock{margin:0 1em 1.25em 1.5em;display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock:not(.excerpt)>.title{margin-left:-1.5em;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock p{color:rgba(0,0,0,.85);font-size:1.15rem;line-height:1.75;word-spacing:.1em;letter-spacing:0;font-style:italic;text-align:justify}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote{margin:0;padding:0;border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote:before{content:"\201C";float:left;font-size:2.75em;font-weight:700;line-height:.6em;margin-left:-.6em;color:#7a2518;text-shadow:0 1px 2px rgba(0,0,0,.1)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote>.paragraph:last-child p{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution{margin-top:.75em;margin-right:.5ex;text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock{margin:0 1em 1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre{font-family:Open Sans,DejaVu Sans,sans;font-size:1.15rem;color:rgba(0,0,0,.85);font-weight:300;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{margin-top:1.25rem;margin-left:.5ex}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{font-size:.9375em;line-height:1.45;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution br,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution cite,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution cite{display:block;letter-spacing:-.025em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{line-height:1.6;word-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract{margin:0 1em 1.25em;display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract>.title{margin:0 0 .375em;font-size:1.15em;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt>blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{padding:0 0 .25em 1em;border-left:.25em solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{color:inherit;font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock .attribution{color:inherit;text-align:left;margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock{max-width:100%;border-collapse:separate}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child{margin-bottom:-1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child.sidebarblock{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{border:0 solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead>tr>.tableblock{border-width:0 1px 1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tfoot>tr>.tableblock{border-width:1px 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock{border-width:0 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead>tr>.tableblock{border-width:0 0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tfoot>tr>.tableblock{border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>*>tr>.tableblock:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock:last-child{border-right-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead:last-child>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead:last-child>tr>.tableblock{border-bottom-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-all{border-width:1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-sides{border-width:0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-ends,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-topbot{border-width:1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-all tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-even tr:nth-of-type(2n),.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-hover tr:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-odd tr:nth-of-type(odd){background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-left{text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-right,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-right{text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-center,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-center{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-top,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-top{vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-bottom,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-bottom{vertical-align:bottom}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-middle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-middle{vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead th{font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th{display:table-cell;line-height:1.6;background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th p{color:rgba(0,0,0,.8);font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock>code:only-child{background:none;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol{margin-left:1.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-left:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul dd{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-check-square-o:first-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-square-o:first-child{width:1.25em;font-size:.8em;position:relative;bottom:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>input[type=checkbox]:first-child{margin-right:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline{display:flex;flex-flow:row wrap;list-style:none;margin:0 0 .625em -1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline>li{margin-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .unstyled dl dt{font-weight:400;font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.arabic{list-style-type:decimal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.decimal{list-style-type:decimal-leading-zero}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.loweralpha{list-style-type:lower-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperalpha{list-style-type:upper-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowerroman{list-style-type:lower-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperroman{list-style-type:upper-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowergreek{list-style-type:lower-greek}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table{border:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table>tbody>tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table>tbody>tr{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist2{vertical-align:top;padding:0 .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1{font-weight:700;padding-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock+.colist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock+.colist{margin-top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child{padding:.4em .75em 0;line-height:1;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):last-child{padding:.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .thumb{line-height:0;display:inline-block;border:4px solid #fff;box-shadow:0 0 0 1px #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.left{margin:.25em .625em 1.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.right{margin:.25em 0 1.25em .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb{border-width:6px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb>.title{padding:0 .125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-top:.25em;margin-bottom:.25em;display:inline-block;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left{margin-right:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image{text-decoration:none;display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image object{pointer-events:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref{font-size:.875em;position:static;vertical-align:super}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 .75em;border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote{padding:0 .375em 0 .225em;line-height:1.3334;font-size:.875em;margin-left:1.2em;margin-bottom:.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote a:first-of-type{font-weight:700;text-decoration:none;margin-left:-1.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote:last-of-type{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table{border:0;background:#fff;width:100%;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table td.line-data{width:99%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.unbreakable{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .big{font-size:larger}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .small{font-size:smaller}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .underline{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .overline{text-decoration:overline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .line-through{text-decoration:line-through}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua{color:#00bfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua-background{background:#00fafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black-background{background:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue{color:#0000bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue-background{background:#0000fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia{color:#bf00bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia-background{background:#fa00fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray{color:#606060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray-background{background:#7d7d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green{color:#006000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green-background{background:#007d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime{color:#00bf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime-background{background:#00fa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon{color:#600000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon-background{background:#7d0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy{color:#000060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy-background{background:#00007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive{color:#606000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive-background{background:#7d7d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple{color:#600060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple-background{background:#7d007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red{color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red-background{background:#fa0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver{color:#909090}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver-background{background:#bcbcbc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal{color:#006060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal-background{background:#007d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white{color:#bfbfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white-background{background:#fafafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow{color:#bfbf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow-background{background:#fafa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.icon>.fa{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a span.icon>.fa{cursor:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;text-shadow:1px 1px 2px rgba(0,0,0,.5);cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-note:before{content:"\F05A";color:#19407c}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-tip:before{content:"\F0EB";text-shadow:1px 1px 2px rgba(155,155,0,.8);color:#111}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-warning:before{content:"\F071";color:#bf6900}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-caution:before{content:"\F06D";color:#bf3400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-important:before{content:"\F06A";color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]{display:inline-block;color:#fff!important;background:rgba(0,0,0,.8);border-radius:100px;text-align:center;font-size:.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:Open Sans,DejaVu Sans,sans-serif;font-style:normal;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value] *{color:#fff!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]+b{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]:after{content:attr(data-value)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre .conum[data-value]{position:relative;top:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.conum *{color:inherit!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum:not([data-value]):empty{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{letter-spacing:-.01em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content strong{letter-spacing:-.005em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{background:#fffef7;border-color:#e0e0dc;box-shadow:0 1px 4px #e0e0dc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:none!important}@page{.eclipse-jkube__documentation .eclipse-jkube__documentation-content{margin:1.25cm .75cm}}@media print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content *{box-shadow:none!important;text-shadow:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:inherit!important;text-decoration:underline!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.bare,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="#"],.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="mailto:"]{text-decoration:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="http:"]:not(.bare):after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="https:"]:not(.bare):after{content:"(" attr(href) ")";display:inline-block;font-size:.875em;padding-left:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]:after{content:" (" attr(title) ")"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tr{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content thead{display:table-header-group}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{max-width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1em;orphans:3;widows:3}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{page-break-after:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{background:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #dddddf!important;padding-bottom:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details{border:0!important;display:block;padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details span:first-child{margin-left:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br+span:before{content:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #preamble,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book .sect1>h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book h1.sect0{page-break-before:always}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{padding:0 .9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-on-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:block!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-for-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .show-for-print{display:inherit!important}}@media amzn-kf8,print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{margin-top:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:rgba(0,0,0,.6);font-size:.9em}}@media amzn-kf8{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{padding:0}}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content{padding-left:21em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .toc{position:fixed;width:20em;left:0;top:105px;bottom:0;z-index:1000;padding:0 16px;border-right:1px solid #efefed;border-top-width:0!important;border-bottom-width:0!important;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content i.fa{font-style:normal}.eclipse-jkube__quickstarts{padding:0}.eclipse-jkube__quickstarts-item{list-style:none}.eclipse-jkube__quickstarts-item:not(:last-child){margin-bottom:16px}</style><meta name="generator" content="Gatsby 2.24.12"/><title data-react-helmet="true">Eclipse JKube Migration Guide</title><meta data-react-helmet="true" charSet="UTF-8"/><meta data-react-helmet="true" name="description" content="Eclipse JKube migration guide from Fabric8 Maven Plugin (FMP)"/><style type="text/css">
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><style data-href="/jkube/styles.5c9b852c43e28f117cb7.css" id="gatsby-global-css">@import url(https://fonts.googleapis.com/css?family=Libre+Franklin:100,300,400,600,700,|Roboto:300,400,500,700|Jura);@import url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css);@import url(https://unpkg.com/@coreui/icons/css/brand.min.css);code[class*=language-],pre[class*=language-]{color:#657b83;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-ms-hyphens:none;hyphens:none}code[class*=language-]::selection,code[class*=language-] ::selection,pre[class*=language-]::selection,pre[class*=language-] ::selection{background:#073642}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;border-radius:.3em}:not(pre)>code[class*=language-],pre[class*=language-]{background-color:#fdf6e3}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#93a1a1}.token.punctuation{color:#586e75}.token.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#268bd2}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string,.token.url{color:#2aa198}.token.entity{color:#657b83;background:#eee8d5}.token.atrule,.token.attr-value,.token.keyword{color:#859900}.token.class-name,.token.function{color:#b58900}.token.important,.token.regex,.token.variable{color:#cb4b16}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body,html{font-family:Libre Franklin,Roboto,sans-serif}body{margin:0;padding:0;outline:0;background:#f1f2f2;font-size:16px;color:#222}h1{font-size:3rem}h1,h2{margin-top:0;font-family:Roboto,sans-serif;font-weight:300}h2{font-size:2rem}h3{font-size:1.5rem;font-weight:300}a{color:#525c86}a:focus,a:hover{color:#222}.eclipse-jkube-footer{padding:16px;border-top:10px solid #222;background-color:#292c2f;font-size:19.2px;font-family:Roboto,sans-serif;font-weight:300;line-height:1.5}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube{display:flex;flex-direction:column;max-width:1170px;margin:0 auto 16px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-image{width:160px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-tagline{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links{max-width:1170px;margin:0 auto 16px;display:flex;flex-wrap:wrap}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list{padding:0;margin:0 48px 16px 0;list-style:none}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a{transition:color .1s linear;color:#f1f2f2}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a,.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a:hover{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a:hover{color:#525c86}.eclipse-jkube-footer .eclipse-jkube-footer__links a{text-decoration:none}.eclipse-jkube-footer .eclipse-jkube-footer__copyright{max-width:1170px;margin:0 auto 16px;font-family:Roboto,sans-serif;color:#939598}.eclipse-jkube__header{display:block;position:relative;height:175px;background-color:#292c2f}@media (min-width:700px){.eclipse-jkube__header{height:105px}}.eclipse-jkube__header .eclipse-jkube__header-trade-mark{font-size:.5em;font-size:.3em;line-height:2.5;vertical-align:top}.eclipse-jkube__header .eclipse-jkube__header-container{position:relative;margin:0 auto;padding:0 16px;height:100%;max-width:1170px}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-container{display:flex;flex-wrap:nowrap;height:105px}}.eclipse-jkube__header .eclipse-jkube__header-logo{display:flex;justify-content:center;align-items:center;font-size:32px;font-weight:400;color:#f1f2f2}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo{font-size:50px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:65px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:90px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image img{max-height:100%;max-width:100%}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:50px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:65px}}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube-image{height:100%}.eclipse-jkube__header .eclipse-jkube__header-logo:hover{color:#f1f2f2}.eclipse-jkube__header .eclipse-jkube__header-content{flex:1 0;min-width:1px;display:flex;justify-content:center;align-items:center}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-content{justify-content:flex-end}}.eclipse-jkube__header .eclipse-jkube__header-content ul{display:flex;flex-wrap:wrap;align-items:center;justify-content:center}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-content ul{justify-content:flex-start}}.eclipse-jkube__header .eclipse-jkube__header-content ul li{margin:4px 0;padding-right:16px;list-style:none;color:#f1f2f2;font-size:20px}.eclipse-jkube__header .eclipse-jkube__header-content .eclipse-jkube__header-stars{display:block;width:85px;height:20px;line-height:20px}.eclipse-jkube__header a{color:#f1f2f2;text-decoration:none}.eclipse-jkube__header a:hover{color:#dd8623;transition:color .3s}.quick-start-card{border:1px solid #d6d6d6;padding:16px}.quick-start-card .quick-start-card__title{margin:0;padding:0}.quick-start-card .quick-start-card__title a{text-decoration:none}.quick-start-card .quick-start-card__title a:active,.quick-start-card .quick-start-card__title a:hover{text-decoration:underline}.quick-start-card .quick-start-card__technologies{margin:16px 0 0;padding:0}.quick-start-card .quick-start-card__technologies-item{display:inline-flex;align-items:center;padding:.25rem .3rem;border-radius:.2rem;font-size:.8rem;margin:0 0 .5rem;background:#dd8623;color:#222}.quick-start-card .quick-start-card__technologies-item:not(:last-child){margin-right:.5rem}.quick-start-card .quick-start-card__technologies-item-icon{display:inline-block;height:.8rem;margin-right:.2rem}.quick-start-card .quick-start-card__description p{margin-top:0}.quick-start-card .quick-start-card__links a{display:inline-block;text-decoration:none;padding:.3rem .5rem;border-radius:.2rem;border:1px solid #d6d6d6;background:#d6d6d6;color:#222}.quick-start-card .quick-start-card__links a:active,.quick-start-card .quick-start-card__links a:hover{background-color:#f1f2f2}.eclipse-jkube{display:flex;flex-direction:column;min-height:100vh}.eclipse-jkube__main{flex:1 1}@media (min-width:1170px){.eclipse-jkube__main{overflow-x:hidden}}.eclipse-jkube__main .eclipse-jkube__content{margin:0 16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content{max-width:1154px;margin:0 auto}}.eclipse-jkube__main .eclipse-jkube__content img{max-width:100%}.eclipse-jkube__main .eclipse-jkube__content :not(pre)>code[class*=language-],.eclipse-jkube__main .eclipse-jkube__content pre[class*=language-]{background-color:transparent}.eclipse-jkube__main .eclipse-jkube__content .hero{margin:0 -16px 16px;display:block;background-color:#272727;background-image:url(/jkube/static/cubes-8e1e59c337437947105e6668f1f3790a.jpg);background-size:cover;color:#f1f2f2}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px;background-color:rgba(39,39,39,.7)}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px calc(50% - 585px)}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content .getting-involved{color:#f1f2f2;margin:0 -16px;padding:0 16px;display:flex;justify-content:flex-end}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content h1{font-size:2.5rem;font-family:Libre Franklin,Roboto,sans-serif;font-weight:400}.eclipse-jkube__main .eclipse-jkube__content .section-dark{background-color:#404040;color:#f1f2f2;margin:0 -16px;padding:16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;padding:16px calc(50% - 585px)}}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark>*{padding:0 calc(50% - 585px)}}.eclipse-jkube__main .eclipse-jkube__content .highlight{display:flex;align-items:center}.eclipse-jkube__main .eclipse-jkube__content .highlight>p{margin:16px 32px;display:none}@media (min-width:501px){.eclipse-jkube__main .eclipse-jkube__content .highlight>p{display:block}}.eclipse-jkube__main .eclipse-jkube__content .highlight>p img{max-width:100px}.eclipse-jkube__main .eclipse-jkube__content .highlight-description{flex:1 1;min-width:1px}.eclipse-jkube__main .eclipse-jkube__content .highlight ul{flex:1 1;min-width:1px;margin:0;padding:0}.eclipse-jkube__main .eclipse-jkube__content .highlight li{list-style:none;margin:16px 0}.eclipse-jkube__main .eclipse-jkube__content .calendar{position:relative;overflow:hidden;padding-bottom:75%;margin-bottom:16px}@media (min-width:666.66667px){.eclipse-jkube__main .eclipse-jkube__content .calendar{padding-bottom:0;height:500px}}.eclipse-jkube__main .eclipse-jkube__content .calendar iframe{position:absolute;top:0;height:100%;max-height:500px;width:100%}.eclipse-jkube__documentation{margin:0}@media screen and (min-width:768px){.eclipse-jkube__documentation{position:absolute;top:105px;bottom:0;width:100%;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content{position:relative;padding:16px;overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content article,.eclipse-jkube__documentation .eclipse-jkube__documentation-content aside,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figcaption,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure,.eclipse-jkube__documentation .eclipse-jkube__documentation-content footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content header,.eclipse-jkube__documentation .eclipse-jkube__documentation-content hgroup,.eclipse-jkube__documentation .eclipse-jkube__documentation-content main,.eclipse-jkube__documentation .eclipse-jkube__documentation-content nav,.eclipse-jkube__documentation .eclipse-jkube__documentation-content section{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio,.eclipse-jkube__documentation .eclipse-jkube__documentation-content video{display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio:not([controls]){display:none;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus{outline:thin dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{outline:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2em;margin:.67em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]{border-bottom:1px dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dfn{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{box-sizing:content-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content mark{background:#ff0;color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content samp{font-family:monospace;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{white-space:pre-wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content q{quotes:"\201C" "\201D" "\2018" "\2019"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub{bottom:-.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg:not(:root){overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure{margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content legend{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select,.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{font-family:inherit;font-size:100%;margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input{line-height:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[type=button],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=reset],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=submit]{-webkit-appearance:button;cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button[disabled],.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[disabled]{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=checkbox],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=radio]{box-sizing:border-box;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button::-moz-focus-inner,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input::-moz-focus-inner{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{overflow:auto;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{border-collapse:collapse;border-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content *,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :before{box-sizing:border-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body{background:#fff;color:rgba(0,0,0,.8);padding:0;margin:0;font-family:"Noto Serif","DejaVu Serif",serif;font-weight:400;font-style:normal;line-height:1;position:relative;cursor:auto;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{max-width:100%;height:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{height:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{-ms-interpolation-mode:bicubic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .left{float:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .right{float:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-left{text-align:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-right{text-align:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-center{text-align:center!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-justify{text-align:justify!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{display:inline-block;vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{height:auto;min-height:50px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .center{margin-left:auto;margin-right:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stretch{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .subheader,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{line-height:1.45;color:#7a2518;font-weight:400;margin-top:0;margin-bottom:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content div,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content form,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6,.eclipse-jkube__documentation .eclipse-jkube__documentation-content li,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin:0;padding:0;direction:ltr}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:#2156a5;text-decoration:underline;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{color:#1d4b8f}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{font-family:inherit;font-weight:400;font-size:1em;line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p aside{font-size:.875em;line-height:1.35;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-family:Open Sans,DejaVu Sans,sans-serif;font-weight:300;font-style:normal;color:#ba3925;text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:.5em;line-height:1.0125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 small{font-size:60%;color:#e99b8f;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5{font-size:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{border:solid #dddddf;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em,.eclipse-jkube__documentation .eclipse-jkube__documentation-content i{font-style:italic;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b,.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong{font-weight:700;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:60%;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;font-weight:400;color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{font-size:1em;line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ul{margin-left:1.25em;margin-bottom:0;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square li ul{list-style:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square{list-style-type:square}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle{list-style-type:circle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc{list-style-type:disc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ul{margin-left:1.25em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dt{margin-bottom:.3125em;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content acronym{text-transform:uppercase;font-size:90%;color:rgba(0,0,0,.8);border-bottom:1px dotted #ddd;cursor:help}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote{margin:0 0 1.25em;padding:.5625em 1.25em 0 1.1875em;border-left:1px solid #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite{display:block;font-size:.9375em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite:before{content:"\2014 "}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a:visited{color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote p{line-height:1.6;color:rgba(0,0,0,.85)}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:2.3125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4{font-size:1.4375em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{background:#fff;margin-bottom:1.25em;border:1px solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead{background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th{padding:.5em .625em .625em;font-size:inherit;color:rgba(0,0,0,.8);text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr th{padding:.5625em .625em;font-size:inherit;color:rgba(0,0,0,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.even{background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tbody tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td{display:table-cell;line-height:1.6}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2;word-spacing:-.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre):not([class^=L])>code{font-size:.9375em;font-style:normal!important;letter-spacing:0;padding:.1em .5ex;word-spacing:-.15em;background:#f7f7f8;border-radius:4px;line-height:1.45;text-rendering:optimizeSpeed;word-wrap:break-word}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nobreak{word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nowrap{white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{color:rgba(0,0,0,.9);font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;line-height:1.45;text-rendering:optimizeSpeed}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre pre{color:inherit;font-size:inherit;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre>code{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap pre{white-space:pre;word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em em{font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq{color:rgba(51,51,51,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;display:inline-block;color:rgba(0,0,0,.8);font-size:.65em;line-height:1.45;background:#f7f7f7;border:1px solid #ccc;border-radius:3px;box-shadow:0 1px 0 rgba(0,0,0,.2),inset 0 0 0 .1em #fff;margin:0 .15em;padding:.2em .5em;vertical-align:middle;position:relative;top:-.1em;white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:first-child{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:last-child{margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b:not(.caret){font-weight:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{word-spacing:-.02em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b.caret{font-size:1.25em;line-height:.8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq i.caret{font-weight:700;text-align:center;width:.45em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{position:relative;top:-1px;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{content:"[";padding:0 3px 0 2px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after{content:"]";padding:0 2px 0 3px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p a>code:hover{color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{width:100%;margin:0 auto;max-width:62.5em;*zoom:1;position:relative;padding-left:.9375em;padding-right:.9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-top:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before{content:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{color:rgba(0,0,0,.85);margin-top:2.25rem;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child+#toc{margin-top:8px;border-top:1px solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:only-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #dddddf;padding-bottom:8px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details{border-bottom:1px solid #dddddf;line-height:1.45;padding-top:.25em;padding-bottom:.25em;padding-left:.25em;color:rgba(0,0,0,.6);display:flex;flex-flow:row wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span:first-child{margin-left:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span.email a{color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span:before{content:"\A0\2013\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span.author:before{content:"\A0\22C5\A0";color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span#revremark:before{content:"\A0|\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber{text-transform:capitalize}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber:after{content:"\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content>h1:first-child:not([class]){color:rgba(0,0,0,.85);border-bottom:1px solid #dddddf;padding-bottom:8px;margin-top:0;padding-top:1rem;margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #e7e7e9;padding-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc>ul{margin-left:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0>li>a{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0 ul.sectlevel1{margin:.5em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul{font-family:Open Sans,DejaVu Sans,sans-serif;list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc li{line-height:1.3334;margin-top:.3334em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{color:#7a2518;font-size:1.2em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:15em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{margin-top:0!important;background:#f8f8f7;position:fixed;width:15em;left:0;top:0;border-right:1px solid #e7e7e9;border-top-width:0!important;border-bottom-width:0!important;z-index:1000;padding:1.25em 1em;height:100%;overflow:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{margin-top:0;margin-bottom:.8rem;font-size:1.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.9em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{margin-left:0;padding-left:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:.5em;margin-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:15em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right #toc.toc2{border-right-width:0;border-left:1px solid #e7e7e9;left:auto;right:0}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:20em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{width:20em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.95em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{padding-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:20em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc{border:1px solid #e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{max-width:100%;background:rgba(0,0,0,.8);padding:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:hsla(0,0%,100%,.8);line-height:1.44}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:.625em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:1.25em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1:last-child{padding-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border-top:1px solid #e7e7e9}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:before{content:"\A7";font-size:.85em;display:block;padding-top:.1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:hover{visibility:visible}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link{color:#ba3925;text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link:hover{color:#a53221}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content details>summary:first-of-type{cursor:pointer;display:list-item;outline:none;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{text-rendering:optimizeLegibility;text-align:left;font-family:"Noto Serif","DejaVu Serif",serif;font-size:1rem;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock.fit-content>caption.title{white-space:nowrap;width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #preamble>.sectionbody>[class=paragraph]:first-of-type p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph.lead>p{font-size:1.21875em;line-height:1.6;color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock #preamble>.sectionbody>[class=paragraph]:first-of-type p{font-size:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon{text-align:center;width:80px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon .title{font-weight:700;font-family:Open Sans,DejaVu Sans,sans-serif;text-transform:uppercase}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content{padding-left:1.125em;padding-right:1.25em;border-left:1px solid #dddddf;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{border:1px solid #e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#fff;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{border:1px solid #dbdbd6;margin-bottom:1.25em;padding:1.25em;background:#f3f3f2;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title{color:#7a2518;margin-top:0;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{border-radius:4px;word-wrap:break-word;overflow-x:auto;padding:1em;font-size:.8125em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:.90625em}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:1em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre:not(.highlight),.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class=highlight],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class^="highlight "],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock.output pre{color:#f7f7f8;background:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content{position:relative}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:none;content:attr(data-lang);position:absolute;font-size:.75em;top:.425rem;right:.5rem;line-height:1;text-transform:uppercase;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock:hover code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:before{content:attr(data-prompt);padding-right:.5em;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:not([data-prompt]):before{content:"$"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs{padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs>code{padding:1em;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.prettyprint{border-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .prettyprint{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint .linenums{line-height:1.45;margin-left:2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li{background:none;list-style-type:inherit;padding-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li code[data-lang]:before{opacity:1}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li:not(:first-child) code[data-lang]:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable{border-collapse:separate;border:0;margin-bottom:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td[class]{color:inherit;vertical-align:top;padding:0;line-height:inherit;white-space:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.code{padding-left:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.linenos{border-right:1px solid;opacity:.35;padding-right:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno{border-right:1px solid;opacity:.35;display:inline-block;margin-right:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno:before{content:"";margin-right:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock{margin:0 1em 1.25em 1.5em;display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock:not(.excerpt)>.title{margin-left:-1.5em;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock p{color:rgba(0,0,0,.85);font-size:1.15rem;line-height:1.75;word-spacing:.1em;letter-spacing:0;font-style:italic;text-align:justify}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote{margin:0;padding:0;border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote:before{content:"\201C";float:left;font-size:2.75em;font-weight:700;line-height:.6em;margin-left:-.6em;color:#7a2518;text-shadow:0 1px 2px rgba(0,0,0,.1)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote>.paragraph:last-child p{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution{margin-top:.75em;margin-right:.5ex;text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock{margin:0 1em 1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre{font-family:Open Sans,DejaVu Sans,sans;font-size:1.15rem;color:rgba(0,0,0,.85);font-weight:300;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{margin-top:1.25rem;margin-left:.5ex}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{font-size:.9375em;line-height:1.45;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution br,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution cite,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution cite{display:block;letter-spacing:-.025em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{line-height:1.6;word-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract{margin:0 1em 1.25em;display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract>.title{margin:0 0 .375em;font-size:1.15em;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt>blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{padding:0 0 .25em 1em;border-left:.25em solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{color:inherit;font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock .attribution{color:inherit;text-align:left;margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock{max-width:100%;border-collapse:separate}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child{margin-bottom:-1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child.sidebarblock{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{border:0 solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead>tr>.tableblock{border-width:0 1px 1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tfoot>tr>.tableblock{border-width:1px 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock{border-width:0 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead>tr>.tableblock{border-width:0 0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tfoot>tr>.tableblock{border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>*>tr>.tableblock:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock:last-child{border-right-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead:last-child>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead:last-child>tr>.tableblock{border-bottom-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-all{border-width:1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-sides{border-width:0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-ends,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-topbot{border-width:1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-all tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-even tr:nth-of-type(2n),.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-hover tr:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-odd tr:nth-of-type(odd){background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-left{text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-right,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-right{text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-center,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-center{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-top,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-top{vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-bottom,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-bottom{vertical-align:bottom}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-middle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-middle{vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead th{font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th{display:table-cell;line-height:1.6;background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th p{color:rgba(0,0,0,.8);font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock>code:only-child{background:none;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol{margin-left:1.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-left:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul dd{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-check-square-o:first-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-square-o:first-child{width:1.25em;font-size:.8em;position:relative;bottom:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>input[type=checkbox]:first-child{margin-right:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline{display:flex;flex-flow:row wrap;list-style:none;margin:0 0 .625em -1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline>li{margin-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .unstyled dl dt{font-weight:400;font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.arabic{list-style-type:decimal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.decimal{list-style-type:decimal-leading-zero}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.loweralpha{list-style-type:lower-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperalpha{list-style-type:upper-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowerroman{list-style-type:lower-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperroman{list-style-type:upper-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowergreek{list-style-type:lower-greek}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table{border:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table>tbody>tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table>tbody>tr{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist2{vertical-align:top;padding:0 .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1{font-weight:700;padding-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock+.colist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock+.colist{margin-top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child{padding:.4em .75em 0;line-height:1;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):last-child{padding:.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .thumb{line-height:0;display:inline-block;border:4px solid #fff;box-shadow:0 0 0 1px #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.left{margin:.25em .625em 1.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.right{margin:.25em 0 1.25em .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb{border-width:6px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb>.title{padding:0 .125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-top:.25em;margin-bottom:.25em;display:inline-block;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left{margin-right:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image{text-decoration:none;display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image object{pointer-events:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref{font-size:.875em;position:static;vertical-align:super}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 .75em;border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote{padding:0 .375em 0 .225em;line-height:1.3334;font-size:.875em;margin-left:1.2em;margin-bottom:.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote a:first-of-type{font-weight:700;text-decoration:none;margin-left:-1.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote:last-of-type{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table{border:0;background:#fff;width:100%;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table td.line-data{width:99%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.unbreakable{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .big{font-size:larger}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .small{font-size:smaller}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .underline{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .overline{text-decoration:overline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .line-through{text-decoration:line-through}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua{color:#00bfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua-background{background:#00fafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black-background{background:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue{color:#0000bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue-background{background:#0000fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia{color:#bf00bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia-background{background:#fa00fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray{color:#606060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray-background{background:#7d7d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green{color:#006000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green-background{background:#007d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime{color:#00bf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime-background{background:#00fa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon{color:#600000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon-background{background:#7d0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy{color:#000060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy-background{background:#00007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive{color:#606000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive-background{background:#7d7d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple{color:#600060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple-background{background:#7d007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red{color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red-background{background:#fa0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver{color:#909090}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver-background{background:#bcbcbc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal{color:#006060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal-background{background:#007d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white{color:#bfbfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white-background{background:#fafafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow{color:#bfbf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow-background{background:#fafa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.icon>.fa{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a span.icon>.fa{cursor:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;text-shadow:1px 1px 2px rgba(0,0,0,.5);cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-note:before{content:"\F05A";color:#19407c}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-tip:before{content:"\F0EB";text-shadow:1px 1px 2px rgba(155,155,0,.8);color:#111}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-warning:before{content:"\F071";color:#bf6900}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-caution:before{content:"\F06D";color:#bf3400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-important:before{content:"\F06A";color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]{display:inline-block;color:#fff!important;background:rgba(0,0,0,.8);border-radius:100px;text-align:center;font-size:.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:Open Sans,DejaVu Sans,sans-serif;font-style:normal;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value] *{color:#fff!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]+b{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]:after{content:attr(data-value)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre .conum[data-value]{position:relative;top:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.conum *{color:inherit!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum:not([data-value]):empty{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{letter-spacing:-.01em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content strong{letter-spacing:-.005em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{background:#fffef7;border-color:#e0e0dc;box-shadow:0 1px 4px #e0e0dc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:none!important}@page{.eclipse-jkube__documentation .eclipse-jkube__documentation-content{margin:1.25cm .75cm}}@media print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content *{box-shadow:none!important;text-shadow:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:inherit!important;text-decoration:underline!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.bare,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="#"],.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="mailto:"]{text-decoration:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="http:"]:not(.bare):after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="https:"]:not(.bare):after{content:"(" attr(href) ")";display:inline-block;font-size:.875em;padding-left:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]:after{content:" (" attr(title) ")"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tr{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content thead{display:table-header-group}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{max-width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1em;orphans:3;widows:3}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{page-break-after:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{background:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #dddddf!important;padding-bottom:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details{border:0!important;display:block;padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details span:first-child{margin-left:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br+span:before{content:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #preamble,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book .sect1>h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book h1.sect0{page-break-before:always}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{padding:0 .9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-on-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:block!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-for-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .show-for-print{display:inherit!important}}@media amzn-kf8,print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{margin-top:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:rgba(0,0,0,.6);font-size:.9em}}@media amzn-kf8{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{padding:0}}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content{padding-left:21em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .toc{position:fixed;width:20em;left:0;top:105px;bottom:0;z-index:1000;padding:0 16px;border-right:1px solid #efefed;border-top-width:0!important;border-bottom-width:0!important;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content i.fa{font-style:normal}.eclipse-jkube__quickstarts{padding:0}.eclipse-jkube__quickstarts-item{list-style:none}.eclipse-jkube__quickstarts-item:not(:last-child){margin-bottom:16px}</style><meta name="generator" content="Gatsby 2.30.1"/><title data-react-helmet="true">Eclipse JKube Migration Guide</title><meta data-react-helmet="true" charSet="UTF-8"/><meta data-react-helmet="true" name="description" content="Eclipse JKube migration guide from Fabric8 Maven Plugin (FMP)"/><style type="text/css">
.anchor.before {
position: absolute;
top: 0;
@@ -48,7 +48,7 @@
}
}
})
- </script><link as="script" rel="preload" href="/jkube/webpack-runtime-5e7a06a902090b1f37ba.js"/><link as="script" rel="preload" href="/jkube/framework-fd2b85530eec85104a39.js"/><link as="script" rel="preload" href="/jkube/app-d7398b08e923fe8a3caa.js"/><link as="script" rel="preload" href="/jkube/styles-c2fe8482057191dca484.js"/><link as="script" rel="preload" href="/jkube/commons-8b827618f0536ebfeda2.js"/><link as="script" rel="preload" href="/jkube/component---src-templates-main-jsx-456568a5c9ae2c9095ee.js"/><link as="fetch" rel="preload" href="/jkube/page-data/docs/migration-guide/page-data.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/jkube/page-data/app-data.json" crossorigin="anonymous"/></head><body><div id="___gatsby"><div style="outline:none" tabindex="-1" id="gatsby-focus-wrapper"><div class="eclipse-jkube"><header class="eclipse-jkube__header"><div class="eclipse-jkube__header-container"><a class="eclipse-jkube__header-logo" href="/jkube/"><div class="eclipse-jkube__header-logo-eclipse-image"><img src="/jkube/static/EF_WHT-OR_png-d0fd43ad31261ee9693a060be920e71e.png" alt="Eclipse Foundation"/></div><div class="eclipse-jkube__header-logo-jkube"><img class="eclipse-jkube__header-logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/><span class="eclipse-jkube__header-trade-mark">™</span></div></a><div class="eclipse-jkube__header-content"><ul><li><a href="/jkube/docs">Docs</a></li><li><a href="/jkube/demos">Demos</a></li><li><a href="/jkube/community">Community</a></li><li><a href="/jkube/contributing">Contributing</a></li><li><a class="eclipse-jkube__header-stars" href="https://github.com/eclipse/jkube" title="eclipse/jkube" target="_blank" rel="nofollow noopener noreferrer"><img src="https://img.shields.io/github/stars/eclipse/jkube?style=social" alt="eclipse/jkube stargazers"/></a></li></ul></div></div></header><div class="eclipse-jkube__main"><div class="eclipse-jkube__content"><div class="hero">
+ </script><link as="script" rel="preload" href="/jkube/webpack-runtime-b52c77882f7d7b54b2b3.js"/><link as="script" rel="preload" href="/jkube/framework-5e01c8af6b1735c9eaa3.js"/><link as="script" rel="preload" href="/jkube/app-59faa9989d677dd59195.js"/><link as="script" rel="preload" href="/jkube/styles-e9d24b1846c7d6eb9685.js"/><link as="script" rel="preload" href="/jkube/commons-ee34cd715ab4f7da30e0.js"/><link as="script" rel="preload" href="/jkube/component---src-templates-main-jsx-8853cf342e1cf1bead5c.js"/><link as="fetch" rel="preload" href="/jkube/page-data/docs/migration-guide/page-data.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/jkube/page-data/app-data.json" crossorigin="anonymous"/></head><body><div id="___gatsby"><div style="outline:none" tabindex="-1" id="gatsby-focus-wrapper"><div class="eclipse-jkube"><header class="eclipse-jkube__header"><div class="eclipse-jkube__header-container"><a class="eclipse-jkube__header-logo" href="/jkube/"><div class="eclipse-jkube__header-logo-eclipse-image"><img src="/jkube/static/EF_WHT-OR_png-d0fd43ad31261ee9693a060be920e71e.png" alt="Eclipse Foundation"/></div><div class="eclipse-jkube__header-logo-jkube"><img class="eclipse-jkube__header-logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/><span class="eclipse-jkube__header-trade-mark">™</span></div></a><div class="eclipse-jkube__header-content"><ul><li><a href="/jkube/docs">Docs</a></li><li><a href="/jkube/demos">Demos</a></li><li><a href="/jkube/community">Community</a></li><li><a href="/jkube/contributing">Contributing</a></li><li><a class="eclipse-jkube__header-stars" href="https://github.com/eclipse/jkube" title="eclipse/jkube" target="_blank" rel="nofollow noopener noreferrer"><img src="https://img.shields.io/github/stars/eclipse/jkube?style=social" alt="eclipse/jkube stargazers"/></a></li></ul></div></div></header><div class="eclipse-jkube__main"><div class="eclipse-jkube__content"><div class="hero">
<div class="hero-content">
<h1 id="documentation" style="position:relative;"><a href="#documentation" aria-label="documentation permalink" class="anchor before"><svg aria-hidden="true" focusable="false" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Documentation</h1>
</div>
@@ -132,4 +132,4 @@
<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>image</span><span class="token punctuation">></span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>images</span><span class="token punctuation">></span></span>
<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>configuration</span><span class="token punctuation">></span></span>
-<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>plugin</span><span class="token punctuation">></span></span></code></pre></div></div></div><div class="eclipse-jkube-footer"><div class="eclipse-jkube-footer__logo-jkube"><a href="/jkube/"><img class="eclipse-jkube-footer__logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/></a><span class="eclipse-jkube-footer__logo-jkube-tagline">Cloud-Native Java Applications without a hassle</span></div><div class="eclipse-jkube-footer__links"><ul class="eclipse-jkube-footer__links-list"><li><a href="/jkube/docs#getting-started">Get Started</a></li><li><a href="/jkube/docs">Docs</a></li><li><a href="/jkube/quickstarts">Quickstarts</a></li><li><a href="/jkube/docs#katacoda-courses">Katacoda Courses</a></li><li><a href="/jkube/demos">Demos</a></li></ul><ul class="eclipse-jkube-footer__links-list"><li><a href="/jkube/community">Community</a></li><li><a href="/jkube/community#planning-and-meetings">Get Involved</a></li><li><a href="/jkube/contributing">Contributing</a></li></ul><ul class="eclipse-jkube-footer__links-list"><li><a href="https://www.eclipse.org" target="_blank" rel="nofollow noopener noreferrer">Eclipse Foundation</a></li><li><a href="https://www.eclipse.org/legal/privacy.php" target="_blank" rel="nofollow noopener noreferrer">Privacy Policy</a></li><li><a href="https://www.eclipse.org/legal/termsofuse.php" target="_blank" rel="nofollow noopener noreferrer">Terms of Use</a></li><li><a href="https://www.eclipse.org/legal/copyright.php" target="_blank" rel="nofollow noopener noreferrer">Copyright Agent</a></li><li><a href="https://www.eclipse.org/legal" target="_blank" rel="nofollow noopener noreferrer">Legal Resources</a></li></ul></div><div class="eclipse-jkube-footer__copyright">Copyright © Eclipse Foundation 2020</div></div></div></div><div id="gatsby-announcer" style="position:absolute;top:0;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0" aria-live="assertive" aria-atomic="true"></div></div><script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/docs/migration-guide/";/*]]>*/</script><script id="gatsby-chunk-mapping">/*<![CDATA[*/window.___chunkMapping={"polyfill":["/polyfill-88d9aed314b16f9b2adc.js"],"app":["/app-d7398b08e923fe8a3caa.js"],"component---src-pages-quickstarts-index-jsx":["/component---src-pages-quickstarts-index-jsx-a1e42093b41968828647.js"],"component---src-templates-doc-jsx":["/component---src-templates-doc-jsx-5366dbd1b50f3447a412.js"],"component---src-templates-main-jsx":["/component---src-templates-main-jsx-456568a5c9ae2c9095ee.js"]};/*]]>*/</script><script src="/jkube/polyfill-88d9aed314b16f9b2adc.js" nomodule=""></script><script src="/jkube/component---src-templates-main-jsx-456568a5c9ae2c9095ee.js" async=""></script><script src="/jkube/commons-8b827618f0536ebfeda2.js" async=""></script><script src="/jkube/styles-c2fe8482057191dca484.js" async=""></script><script src="/jkube/app-d7398b08e923fe8a3caa.js" async=""></script><script src="/jkube/framework-fd2b85530eec85104a39.js" async=""></script><script src="/jkube/webpack-runtime-5e7a06a902090b1f37ba.js" async=""></script></body></html>
\ No newline at end of file
+<span class="token tag"><span class="token tag"><span class="token punctuation"></</span>plugin</span><span class="token punctuation">></span></span></code></pre></div></div></div><div class="eclipse-jkube-footer"><div class="eclipse-jkube-footer__logo-jkube"><a href="/jkube/"><img class="eclipse-jkube-footer__logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/></a><span class="eclipse-jkube-footer__logo-jkube-tagline">Cloud-Native Java Applications without a hassle</span></div><div class="eclipse-jkube-footer__links"><ul class="eclipse-jkube-footer__links-list"><li><a href="/jkube/docs#getting-started">Get Started</a></li><li><a href="/jkube/docs">Docs</a></li><li><a href="/jkube/quickstarts">Quickstarts</a></li><li><a href="/jkube/docs#katacoda-courses">Katacoda Courses</a></li><li><a href="/jkube/demos">Demos</a></li></ul><ul class="eclipse-jkube-footer__links-list"><li><a href="/jkube/community">Community</a></li><li><a href="/jkube/community#planning-and-meetings">Get Involved</a></li><li><a href="/jkube/contributing">Contributing</a></li></ul><ul class="eclipse-jkube-footer__links-list"><li><a href="https://www.eclipse.org" target="_blank" rel="nofollow noopener noreferrer">Eclipse Foundation</a></li><li><a href="https://www.eclipse.org/legal/privacy.php" target="_blank" rel="nofollow noopener noreferrer">Privacy Policy</a></li><li><a href="https://www.eclipse.org/legal/termsofuse.php" target="_blank" rel="nofollow noopener noreferrer">Terms of Use</a></li><li><a href="https://www.eclipse.org/legal/copyright.php" target="_blank" rel="nofollow noopener noreferrer">Copyright Agent</a></li><li><a href="https://www.eclipse.org/legal" target="_blank" rel="nofollow noopener noreferrer">Legal Resources</a></li></ul></div><div class="eclipse-jkube-footer__copyright">Copyright © Eclipse Foundation 2020</div></div></div></div><div id="gatsby-announcer" style="position:absolute;top:0;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0" aria-live="assertive" aria-atomic="true"></div></div><script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/docs/migration-guide/";/*]]>*/</script><script id="gatsby-chunk-mapping">/*<![CDATA[*/window.___chunkMapping={"polyfill":["/polyfill-e4957c11759bdfc149d9.js"],"app":["/app-59faa9989d677dd59195.js"],"component---src-pages-quickstarts-index-jsx":["/component---src-pages-quickstarts-index-jsx-8b53e5455e208a3e59b9.js"],"component---src-templates-doc-jsx":["/component---src-templates-doc-jsx-21a94bb36ef3df298f42.js"],"component---src-templates-main-jsx":["/component---src-templates-main-jsx-8853cf342e1cf1bead5c.js"]};/*]]>*/</script><script src="/jkube/polyfill-e4957c11759bdfc149d9.js" nomodule=""></script><script src="/jkube/component---src-templates-main-jsx-8853cf342e1cf1bead5c.js" async=""></script><script src="/jkube/commons-ee34cd715ab4f7da30e0.js" async=""></script><script src="/jkube/styles-e9d24b1846c7d6eb9685.js" async=""></script><script src="/jkube/app-59faa9989d677dd59195.js" async=""></script><script src="/jkube/framework-5e01c8af6b1735c9eaa3.js" async=""></script><script src="/jkube/webpack-runtime-b52c77882f7d7b54b2b3.js" async=""></script></body></html>
\ No newline at end of file
diff --git a/docs/openshift-maven-plugin/index.html b/docs/openshift-maven-plugin/index.html
index cc3810c..964a347 100644
--- a/docs/openshift-maven-plugin/index.html
+++ b/docs/openshift-maven-plugin/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><style data-href="/jkube/styles.5c9b852c43e28f117cb7.css">@import url(https://fonts.googleapis.com/css?family=Libre+Franklin:100,300,400,600,700,|Roboto:300,400,500,700|Jura);@import url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css);@import url(https://unpkg.com/@coreui/icons/css/brand.min.css);code[class*=language-],pre[class*=language-]{color:#657b83;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-ms-hyphens:none;hyphens:none}code[class*=language-]::selection,code[class*=language-] ::selection,pre[class*=language-]::selection,pre[class*=language-] ::selection{background:#073642}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;border-radius:.3em}:not(pre)>code[class*=language-],pre[class*=language-]{background-color:#fdf6e3}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#93a1a1}.token.punctuation{color:#586e75}.token.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#268bd2}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string,.token.url{color:#2aa198}.token.entity{color:#657b83;background:#eee8d5}.token.atrule,.token.attr-value,.token.keyword{color:#859900}.token.class-name,.token.function{color:#b58900}.token.important,.token.regex,.token.variable{color:#cb4b16}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body,html{font-family:Libre Franklin,Roboto,sans-serif}body{margin:0;padding:0;outline:0;background:#f1f2f2;font-size:16px;color:#222}h1{font-size:3rem}h1,h2{margin-top:0;font-family:Roboto,sans-serif;font-weight:300}h2{font-size:2rem}h3{font-size:1.5rem;font-weight:300}a{color:#525c86}a:focus,a:hover{color:#222}.eclipse-jkube-footer{padding:16px;border-top:10px solid #222;background-color:#292c2f;font-size:19.2px;font-family:Roboto,sans-serif;font-weight:300;line-height:1.5}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube{display:flex;flex-direction:column;max-width:1170px;margin:0 auto 16px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-image{width:160px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-tagline{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links{max-width:1170px;margin:0 auto 16px;display:flex;flex-wrap:wrap}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list{padding:0;margin:0 48px 16px 0;list-style:none}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a{transition:color .1s linear;color:#f1f2f2}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a,.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a:hover{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a:hover{color:#525c86}.eclipse-jkube-footer .eclipse-jkube-footer__links a{text-decoration:none}.eclipse-jkube-footer .eclipse-jkube-footer__copyright{max-width:1170px;margin:0 auto 16px;font-family:Roboto,sans-serif;color:#939598}.eclipse-jkube__header{display:block;position:relative;height:175px;background-color:#292c2f}@media (min-width:700px){.eclipse-jkube__header{height:105px}}.eclipse-jkube__header .eclipse-jkube__header-trade-mark{font-size:.5em;font-size:.3em;line-height:2.5;vertical-align:top}.eclipse-jkube__header .eclipse-jkube__header-container{position:relative;margin:0 auto;padding:0 16px;height:100%;max-width:1170px}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-container{display:flex;flex-wrap:nowrap;height:105px}}.eclipse-jkube__header .eclipse-jkube__header-logo{display:flex;justify-content:center;align-items:center;font-size:32px;font-weight:400;color:#f1f2f2}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo{font-size:50px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:65px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:90px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image img{max-height:100%;max-width:100%}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:50px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:65px}}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube-image{height:100%}.eclipse-jkube__header .eclipse-jkube__header-logo:hover{color:#f1f2f2}.eclipse-jkube__header .eclipse-jkube__header-content{flex:1 0;min-width:1px;display:flex;justify-content:center;align-items:center}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-content{justify-content:flex-end}}.eclipse-jkube__header .eclipse-jkube__header-content ul{display:flex;flex-wrap:wrap;align-items:center;justify-content:center}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-content ul{justify-content:flex-start}}.eclipse-jkube__header .eclipse-jkube__header-content ul li{margin:4px 0;padding-right:16px;list-style:none;color:#f1f2f2;font-size:20px}.eclipse-jkube__header .eclipse-jkube__header-content .eclipse-jkube__header-stars{display:block;width:85px;height:20px;line-height:20px}.eclipse-jkube__header a{color:#f1f2f2;text-decoration:none}.eclipse-jkube__header a:hover{color:#dd8623;transition:color .3s}.quick-start-card{border:1px solid #d6d6d6;padding:16px}.quick-start-card .quick-start-card__title{margin:0;padding:0}.quick-start-card .quick-start-card__title a{text-decoration:none}.quick-start-card .quick-start-card__title a:active,.quick-start-card .quick-start-card__title a:hover{text-decoration:underline}.quick-start-card .quick-start-card__technologies{margin:16px 0 0;padding:0}.quick-start-card .quick-start-card__technologies-item{display:inline-flex;align-items:center;padding:.25rem .3rem;border-radius:.2rem;font-size:.8rem;margin:0 0 .5rem;background:#dd8623;color:#222}.quick-start-card .quick-start-card__technologies-item:not(:last-child){margin-right:.5rem}.quick-start-card .quick-start-card__technologies-item-icon{display:inline-block;height:.8rem;margin-right:.2rem}.quick-start-card .quick-start-card__description p{margin-top:0}.quick-start-card .quick-start-card__links a{display:inline-block;text-decoration:none;padding:.3rem .5rem;border-radius:.2rem;border:1px solid #d6d6d6;background:#d6d6d6;color:#222}.quick-start-card .quick-start-card__links a:active,.quick-start-card .quick-start-card__links a:hover{background-color:#f1f2f2}.eclipse-jkube{display:flex;flex-direction:column;min-height:100vh}.eclipse-jkube__main{flex:1 1}@media (min-width:1170px){.eclipse-jkube__main{overflow-x:hidden}}.eclipse-jkube__main .eclipse-jkube__content{margin:0 16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content{max-width:1154px;margin:0 auto}}.eclipse-jkube__main .eclipse-jkube__content img{max-width:100%}.eclipse-jkube__main .eclipse-jkube__content :not(pre)>code[class*=language-],.eclipse-jkube__main .eclipse-jkube__content pre[class*=language-]{background-color:transparent}.eclipse-jkube__main .eclipse-jkube__content .hero{margin:0 -16px 16px;display:block;background-color:#272727;background-image:url(/jkube/static/cubes-8e1e59c337437947105e6668f1f3790a.jpg);background-size:cover;color:#f1f2f2}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px;background-color:rgba(39,39,39,.7)}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px calc((100% - 1170px)/2)}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content .getting-involved{color:#f1f2f2;margin:0 -16px;padding:0 16px;display:flex;justify-content:flex-end}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content h1{font-size:2.5rem;font-family:Libre Franklin,Roboto,sans-serif;font-weight:400}.eclipse-jkube__main .eclipse-jkube__content .section-dark{background-color:#404040;color:#f1f2f2;margin:0 -16px;padding:16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;padding:16px calc((100% - 1170px)/2)}}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark>*{padding:0 calc((100% - 1170px)/2)}}.eclipse-jkube__main .eclipse-jkube__content .highlight{display:flex;align-items:center}.eclipse-jkube__main .eclipse-jkube__content .highlight>p{margin:16px 32px;display:none}@media (min-width:501px){.eclipse-jkube__main .eclipse-jkube__content .highlight>p{display:block}}.eclipse-jkube__main .eclipse-jkube__content .highlight>p img{max-width:100px}.eclipse-jkube__main .eclipse-jkube__content .highlight-description{flex:1 1;min-width:1px}.eclipse-jkube__main .eclipse-jkube__content .highlight ul{flex:1 1;min-width:1px;margin:0;padding:0}.eclipse-jkube__main .eclipse-jkube__content .highlight li{list-style:none;margin:16px 0}.eclipse-jkube__main .eclipse-jkube__content .calendar{position:relative;overflow:hidden;padding-bottom:75%;margin-bottom:16px}@media (min-width:666.66667px){.eclipse-jkube__main .eclipse-jkube__content .calendar{padding-bottom:0;height:500px}}.eclipse-jkube__main .eclipse-jkube__content .calendar iframe{position:absolute;top:0;height:100%;max-height:500px;width:100%}.eclipse-jkube__documentation{margin:0}@media screen and (min-width:768px){.eclipse-jkube__documentation{position:absolute;top:105px;bottom:0;width:100%;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content{position:relative;padding:16px;overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content article,.eclipse-jkube__documentation .eclipse-jkube__documentation-content aside,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figcaption,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure,.eclipse-jkube__documentation .eclipse-jkube__documentation-content footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content header,.eclipse-jkube__documentation .eclipse-jkube__documentation-content hgroup,.eclipse-jkube__documentation .eclipse-jkube__documentation-content main,.eclipse-jkube__documentation .eclipse-jkube__documentation-content nav,.eclipse-jkube__documentation .eclipse-jkube__documentation-content section{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio,.eclipse-jkube__documentation .eclipse-jkube__documentation-content video{display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio:not([controls]){display:none;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus{outline:thin dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{outline:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2em;margin:.67em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]{border-bottom:1px dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dfn{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{box-sizing:content-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content mark{background:#ff0;color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content samp{font-family:monospace;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{white-space:pre-wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content q{quotes:"\201C" "\201D" "\2018" "\2019"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub{bottom:-.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg:not(:root){overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure{margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content legend{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select,.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{font-family:inherit;font-size:100%;margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input{line-height:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[type=button],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=reset],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=submit]{-webkit-appearance:button;cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button[disabled],.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[disabled]{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=checkbox],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=radio]{box-sizing:border-box;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button::-moz-focus-inner,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input::-moz-focus-inner{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{overflow:auto;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{border-collapse:collapse;border-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content *,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :before{box-sizing:border-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body{background:#fff;color:rgba(0,0,0,.8);padding:0;margin:0;font-family:"Noto Serif","DejaVu Serif",serif;font-weight:400;font-style:normal;line-height:1;position:relative;cursor:auto;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{max-width:100%;height:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{height:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{-ms-interpolation-mode:bicubic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .left{float:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .right{float:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-left{text-align:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-right{text-align:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-center{text-align:center!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-justify{text-align:justify!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{display:inline-block;vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{height:auto;min-height:50px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .center{margin-left:auto;margin-right:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stretch{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .subheader,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{line-height:1.45;color:#7a2518;font-weight:400;margin-top:0;margin-bottom:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content div,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content form,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6,.eclipse-jkube__documentation .eclipse-jkube__documentation-content li,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin:0;padding:0;direction:ltr}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:#2156a5;text-decoration:underline;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{color:#1d4b8f}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{font-family:inherit;font-weight:400;font-size:1em;line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p aside{font-size:.875em;line-height:1.35;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-family:Open Sans,DejaVu Sans,sans-serif;font-weight:300;font-style:normal;color:#ba3925;text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:.5em;line-height:1.0125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 small{font-size:60%;color:#e99b8f;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5{font-size:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{border:solid #dddddf;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em,.eclipse-jkube__documentation .eclipse-jkube__documentation-content i{font-style:italic;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b,.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong{font-weight:700;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:60%;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;font-weight:400;color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{font-size:1em;line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ul{margin-left:1.25em;margin-bottom:0;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square li ul{list-style:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square{list-style-type:square}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle{list-style-type:circle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc{list-style-type:disc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ul{margin-left:1.25em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dt{margin-bottom:.3125em;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content acronym{text-transform:uppercase;font-size:90%;color:rgba(0,0,0,.8);border-bottom:1px dotted #ddd;cursor:help}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote{margin:0 0 1.25em;padding:.5625em 1.25em 0 1.1875em;border-left:1px solid #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite{display:block;font-size:.9375em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite:before{content:"\2014 "}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a:visited{color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote p{line-height:1.6;color:rgba(0,0,0,.85)}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:2.3125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4{font-size:1.4375em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{background:#fff;margin-bottom:1.25em;border:1px solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead{background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th{padding:.5em .625em .625em;font-size:inherit;color:rgba(0,0,0,.8);text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr th{padding:.5625em .625em;font-size:inherit;color:rgba(0,0,0,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.even{background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tbody tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td{display:table-cell;line-height:1.6}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2;word-spacing:-.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre):not([class^=L])>code{font-size:.9375em;font-style:normal!important;letter-spacing:0;padding:.1em .5ex;word-spacing:-.15em;background:#f7f7f8;border-radius:4px;line-height:1.45;text-rendering:optimizeSpeed;word-wrap:break-word}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nobreak{word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nowrap{white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{color:rgba(0,0,0,.9);font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;line-height:1.45;text-rendering:optimizeSpeed}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre pre{color:inherit;font-size:inherit;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre>code{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap pre{white-space:pre;word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em em{font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq{color:rgba(51,51,51,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;display:inline-block;color:rgba(0,0,0,.8);font-size:.65em;line-height:1.45;background:#f7f7f7;border:1px solid #ccc;border-radius:3px;box-shadow:0 1px 0 rgba(0,0,0,.2),inset 0 0 0 .1em #fff;margin:0 .15em;padding:.2em .5em;vertical-align:middle;position:relative;top:-.1em;white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:first-child{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:last-child{margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b:not(.caret){font-weight:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{word-spacing:-.02em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b.caret{font-size:1.25em;line-height:.8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq i.caret{font-weight:700;text-align:center;width:.45em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{position:relative;top:-1px;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{content:"[";padding:0 3px 0 2px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after{content:"]";padding:0 2px 0 3px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p a>code:hover{color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{width:100%;margin:0 auto;max-width:62.5em;*zoom:1;position:relative;padding-left:.9375em;padding-right:.9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-top:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before{content:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{color:rgba(0,0,0,.85);margin-top:2.25rem;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child+#toc{margin-top:8px;border-top:1px solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:only-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #dddddf;padding-bottom:8px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details{border-bottom:1px solid #dddddf;line-height:1.45;padding-top:.25em;padding-bottom:.25em;padding-left:.25em;color:rgba(0,0,0,.6);display:flex;flex-flow:row wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span:first-child{margin-left:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span.email a{color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span:before{content:"\A0\2013\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span.author:before{content:"\A0\22C5\A0";color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span#revremark:before{content:"\A0|\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber{text-transform:capitalize}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber:after{content:"\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content>h1:first-child:not([class]){color:rgba(0,0,0,.85);border-bottom:1px solid #dddddf;padding-bottom:8px;margin-top:0;padding-top:1rem;margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #e7e7e9;padding-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc>ul{margin-left:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0>li>a{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0 ul.sectlevel1{margin:.5em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul{font-family:Open Sans,DejaVu Sans,sans-serif;list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc li{line-height:1.3334;margin-top:.3334em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{color:#7a2518;font-size:1.2em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:15em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{margin-top:0!important;background:#f8f8f7;position:fixed;width:15em;left:0;top:0;border-right:1px solid #e7e7e9;border-top-width:0!important;border-bottom-width:0!important;z-index:1000;padding:1.25em 1em;height:100%;overflow:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{margin-top:0;margin-bottom:.8rem;font-size:1.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.9em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{margin-left:0;padding-left:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:.5em;margin-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:15em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right #toc.toc2{border-right-width:0;border-left:1px solid #e7e7e9;left:auto;right:0}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:20em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{width:20em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.95em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{padding-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:20em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc{border:1px solid #e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{max-width:100%;background:rgba(0,0,0,.8);padding:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:hsla(0,0%,100%,.8);line-height:1.44}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:.625em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:1.25em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1:last-child{padding-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border-top:1px solid #e7e7e9}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:before{content:"\A7";font-size:.85em;display:block;padding-top:.1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:hover{visibility:visible}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link{color:#ba3925;text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link:hover{color:#a53221}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content details>summary:first-of-type{cursor:pointer;display:list-item;outline:none;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{text-rendering:optimizeLegibility;text-align:left;font-family:"Noto Serif","DejaVu Serif",serif;font-size:1rem;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock.fit-content>caption.title{white-space:nowrap;width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #preamble>.sectionbody>[class=paragraph]:first-of-type p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph.lead>p{font-size:1.21875em;line-height:1.6;color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock #preamble>.sectionbody>[class=paragraph]:first-of-type p{font-size:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon{text-align:center;width:80px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon .title{font-weight:700;font-family:Open Sans,DejaVu Sans,sans-serif;text-transform:uppercase}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content{padding-left:1.125em;padding-right:1.25em;border-left:1px solid #dddddf;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{border:1px solid #e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#fff;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{border:1px solid #dbdbd6;margin-bottom:1.25em;padding:1.25em;background:#f3f3f2;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title{color:#7a2518;margin-top:0;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{border-radius:4px;word-wrap:break-word;overflow-x:auto;padding:1em;font-size:.8125em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:.90625em}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:1em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre:not(.highlight),.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class=highlight],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class^="highlight "],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock.output pre{color:#f7f7f8;background:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content{position:relative}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:none;content:attr(data-lang);position:absolute;font-size:.75em;top:.425rem;right:.5rem;line-height:1;text-transform:uppercase;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock:hover code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:before{content:attr(data-prompt);padding-right:.5em;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:not([data-prompt]):before{content:"$"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs{padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs>code{padding:1em;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.prettyprint{border-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .prettyprint{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint .linenums{line-height:1.45;margin-left:2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li{background:none;list-style-type:inherit;padding-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li code[data-lang]:before{opacity:1}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li:not(:first-child) code[data-lang]:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable{border-collapse:separate;border:0;margin-bottom:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td[class]{color:inherit;vertical-align:top;padding:0;line-height:inherit;white-space:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.code{padding-left:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.linenos{border-right:1px solid;opacity:.35;padding-right:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno{border-right:1px solid;opacity:.35;display:inline-block;margin-right:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno:before{content:"";margin-right:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock{margin:0 1em 1.25em 1.5em;display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock:not(.excerpt)>.title{margin-left:-1.5em;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock p{color:rgba(0,0,0,.85);font-size:1.15rem;line-height:1.75;word-spacing:.1em;letter-spacing:0;font-style:italic;text-align:justify}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote{margin:0;padding:0;border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote:before{content:"\201C";float:left;font-size:2.75em;font-weight:700;line-height:.6em;margin-left:-.6em;color:#7a2518;text-shadow:0 1px 2px rgba(0,0,0,.1)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote>.paragraph:last-child p{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution{margin-top:.75em;margin-right:.5ex;text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock{margin:0 1em 1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre{font-family:Open Sans,DejaVu Sans,sans;font-size:1.15rem;color:rgba(0,0,0,.85);font-weight:300;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{margin-top:1.25rem;margin-left:.5ex}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{font-size:.9375em;line-height:1.45;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution br,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution cite,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution cite{display:block;letter-spacing:-.025em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{line-height:1.6;word-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract{margin:0 1em 1.25em;display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract>.title{margin:0 0 .375em;font-size:1.15em;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt>blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{padding:0 0 .25em 1em;border-left:.25em solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{color:inherit;font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock .attribution{color:inherit;text-align:left;margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock{max-width:100%;border-collapse:separate}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child{margin-bottom:-1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child.sidebarblock{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{border:0 solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead>tr>.tableblock{border-width:0 1px 1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tfoot>tr>.tableblock{border-width:1px 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock{border-width:0 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead>tr>.tableblock{border-width:0 0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tfoot>tr>.tableblock{border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>*>tr>.tableblock:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock:last-child{border-right-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead:last-child>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead:last-child>tr>.tableblock{border-bottom-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-all{border-width:1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-sides{border-width:0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-ends,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-topbot{border-width:1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-all tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-even tr:nth-of-type(2n),.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-hover tr:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-odd tr:nth-of-type(odd){background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-left{text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-right,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-right{text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-center,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-center{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-top,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-top{vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-bottom,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-bottom{vertical-align:bottom}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-middle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-middle{vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead th{font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th{display:table-cell;line-height:1.6;background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th p{color:rgba(0,0,0,.8);font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock>code:only-child{background:none;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol{margin-left:1.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-left:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul dd{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-check-square-o:first-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-square-o:first-child{width:1.25em;font-size:.8em;position:relative;bottom:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>input[type=checkbox]:first-child{margin-right:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline{display:flex;flex-flow:row wrap;list-style:none;margin:0 0 .625em -1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline>li{margin-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .unstyled dl dt{font-weight:400;font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.arabic{list-style-type:decimal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.decimal{list-style-type:decimal-leading-zero}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.loweralpha{list-style-type:lower-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperalpha{list-style-type:upper-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowerroman{list-style-type:lower-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperroman{list-style-type:upper-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowergreek{list-style-type:lower-greek}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table{border:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table>tbody>tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table>tbody>tr{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist2{vertical-align:top;padding:0 .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1{font-weight:700;padding-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock+.colist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock+.colist{margin-top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child{padding:.4em .75em 0;line-height:1;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):last-child{padding:.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .thumb{line-height:0;display:inline-block;border:4px solid #fff;box-shadow:0 0 0 1px #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.left{margin:.25em .625em 1.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.right{margin:.25em 0 1.25em .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb{border-width:6px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb>.title{padding:0 .125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-top:.25em;margin-bottom:.25em;display:inline-block;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left{margin-right:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image{text-decoration:none;display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image object{pointer-events:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref{font-size:.875em;position:static;vertical-align:super}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 .75em;border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote{padding:0 .375em 0 .225em;line-height:1.3334;font-size:.875em;margin-left:1.2em;margin-bottom:.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote a:first-of-type{font-weight:700;text-decoration:none;margin-left:-1.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote:last-of-type{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table{border:0;background:#fff;width:100%;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table td.line-data{width:99%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.unbreakable{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .big{font-size:larger}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .small{font-size:smaller}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .underline{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .overline{text-decoration:overline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .line-through{text-decoration:line-through}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua{color:#00bfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua-background{background:#00fafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black-background{background:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue{color:#0000bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue-background{background:#0000fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia{color:#bf00bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia-background{background:#fa00fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray{color:#606060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray-background{background:#7d7d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green{color:#006000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green-background{background:#007d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime{color:#00bf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime-background{background:#00fa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon{color:#600000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon-background{background:#7d0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy{color:#000060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy-background{background:#00007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive{color:#606000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive-background{background:#7d7d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple{color:#600060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple-background{background:#7d007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red{color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red-background{background:#fa0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver{color:#909090}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver-background{background:#bcbcbc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal{color:#006060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal-background{background:#007d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white{color:#bfbfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white-background{background:#fafafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow{color:#bfbf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow-background{background:#fafa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.icon>.fa{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a span.icon>.fa{cursor:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;text-shadow:1px 1px 2px rgba(0,0,0,.5);cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-note:before{content:"\F05A";color:#19407c}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-tip:before{content:"\F0EB";text-shadow:1px 1px 2px rgba(155,155,0,.8);color:#111}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-warning:before{content:"\F071";color:#bf6900}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-caution:before{content:"\F06D";color:#bf3400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-important:before{content:"\F06A";color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]{display:inline-block;color:#fff!important;background:rgba(0,0,0,.8);border-radius:100px;text-align:center;font-size:.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:Open Sans,DejaVu Sans,sans-serif;font-style:normal;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value] *{color:#fff!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]+b{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]:after{content:attr(data-value)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre .conum[data-value]{position:relative;top:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.conum *{color:inherit!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum:not([data-value]):empty{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{letter-spacing:-.01em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content strong{letter-spacing:-.005em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{background:#fffef7;border-color:#e0e0dc;box-shadow:0 1px 4px #e0e0dc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:none!important}@page{.eclipse-jkube__documentation .eclipse-jkube__documentation-content{margin:1.25cm .75cm}}@media print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content *{box-shadow:none!important;text-shadow:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:inherit!important;text-decoration:underline!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.bare,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="#"],.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="mailto:"]{text-decoration:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="http:"]:not(.bare):after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="https:"]:not(.bare):after{content:"(" attr(href) ")";display:inline-block;font-size:.875em;padding-left:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]:after{content:" (" attr(title) ")"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tr{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content thead{display:table-header-group}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{max-width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1em;orphans:3;widows:3}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{page-break-after:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{background:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #dddddf!important;padding-bottom:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details{border:0!important;display:block;padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details span:first-child{margin-left:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br+span:before{content:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #preamble,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book .sect1>h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book h1.sect0{page-break-before:always}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{padding:0 .9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-on-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:block!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-for-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .show-for-print{display:inherit!important}}@media amzn-kf8,print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{margin-top:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:rgba(0,0,0,.6);font-size:.9em}}@media amzn-kf8{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{padding:0}}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content{padding-left:21em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .toc{position:fixed;width:20em;left:0;top:105px;bottom:0;z-index:1000;padding:0 16px;border-right:1px solid #efefed;border-top-width:0!important;border-bottom-width:0!important;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content i.fa{font-style:normal}.eclipse-jkube__quickstarts{padding:0}.eclipse-jkube__quickstarts-item{list-style:none}.eclipse-jkube__quickstarts-item:not(:last-child){margin-bottom:16px}</style><meta name="generator" content="Gatsby 2.24.12"/><title data-react-helmet="true">org.eclipse.jkube/openshift-maven-plugin</title><meta data-react-helmet="true" charSet="UTF-8"/><meta data-react-helmet="true" name="description" content=""/><style type="text/css">
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><style data-href="/jkube/styles.5c9b852c43e28f117cb7.css" id="gatsby-global-css">@import url(https://fonts.googleapis.com/css?family=Libre+Franklin:100,300,400,600,700,|Roboto:300,400,500,700|Jura);@import url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css);@import url(https://unpkg.com/@coreui/icons/css/brand.min.css);code[class*=language-],pre[class*=language-]{color:#657b83;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-ms-hyphens:none;hyphens:none}code[class*=language-]::selection,code[class*=language-] ::selection,pre[class*=language-]::selection,pre[class*=language-] ::selection{background:#073642}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;border-radius:.3em}:not(pre)>code[class*=language-],pre[class*=language-]{background-color:#fdf6e3}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#93a1a1}.token.punctuation{color:#586e75}.token.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#268bd2}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string,.token.url{color:#2aa198}.token.entity{color:#657b83;background:#eee8d5}.token.atrule,.token.attr-value,.token.keyword{color:#859900}.token.class-name,.token.function{color:#b58900}.token.important,.token.regex,.token.variable{color:#cb4b16}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body,html{font-family:Libre Franklin,Roboto,sans-serif}body{margin:0;padding:0;outline:0;background:#f1f2f2;font-size:16px;color:#222}h1{font-size:3rem}h1,h2{margin-top:0;font-family:Roboto,sans-serif;font-weight:300}h2{font-size:2rem}h3{font-size:1.5rem;font-weight:300}a{color:#525c86}a:focus,a:hover{color:#222}.eclipse-jkube-footer{padding:16px;border-top:10px solid #222;background-color:#292c2f;font-size:19.2px;font-family:Roboto,sans-serif;font-weight:300;line-height:1.5}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube{display:flex;flex-direction:column;max-width:1170px;margin:0 auto 16px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-image{width:160px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-tagline{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links{max-width:1170px;margin:0 auto 16px;display:flex;flex-wrap:wrap}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list{padding:0;margin:0 48px 16px 0;list-style:none}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a{transition:color .1s linear;color:#f1f2f2}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a,.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a:hover{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a:hover{color:#525c86}.eclipse-jkube-footer .eclipse-jkube-footer__links a{text-decoration:none}.eclipse-jkube-footer .eclipse-jkube-footer__copyright{max-width:1170px;margin:0 auto 16px;font-family:Roboto,sans-serif;color:#939598}.eclipse-jkube__header{display:block;position:relative;height:175px;background-color:#292c2f}@media (min-width:700px){.eclipse-jkube__header{height:105px}}.eclipse-jkube__header .eclipse-jkube__header-trade-mark{font-size:.5em;font-size:.3em;line-height:2.5;vertical-align:top}.eclipse-jkube__header .eclipse-jkube__header-container{position:relative;margin:0 auto;padding:0 16px;height:100%;max-width:1170px}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-container{display:flex;flex-wrap:nowrap;height:105px}}.eclipse-jkube__header .eclipse-jkube__header-logo{display:flex;justify-content:center;align-items:center;font-size:32px;font-weight:400;color:#f1f2f2}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo{font-size:50px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:65px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:90px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image img{max-height:100%;max-width:100%}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:50px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:65px}}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube-image{height:100%}.eclipse-jkube__header .eclipse-jkube__header-logo:hover{color:#f1f2f2}.eclipse-jkube__header .eclipse-jkube__header-content{flex:1 0;min-width:1px;display:flex;justify-content:center;align-items:center}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-content{justify-content:flex-end}}.eclipse-jkube__header .eclipse-jkube__header-content ul{display:flex;flex-wrap:wrap;align-items:center;justify-content:center}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-content ul{justify-content:flex-start}}.eclipse-jkube__header .eclipse-jkube__header-content ul li{margin:4px 0;padding-right:16px;list-style:none;color:#f1f2f2;font-size:20px}.eclipse-jkube__header .eclipse-jkube__header-content .eclipse-jkube__header-stars{display:block;width:85px;height:20px;line-height:20px}.eclipse-jkube__header a{color:#f1f2f2;text-decoration:none}.eclipse-jkube__header a:hover{color:#dd8623;transition:color .3s}.quick-start-card{border:1px solid #d6d6d6;padding:16px}.quick-start-card .quick-start-card__title{margin:0;padding:0}.quick-start-card .quick-start-card__title a{text-decoration:none}.quick-start-card .quick-start-card__title a:active,.quick-start-card .quick-start-card__title a:hover{text-decoration:underline}.quick-start-card .quick-start-card__technologies{margin:16px 0 0;padding:0}.quick-start-card .quick-start-card__technologies-item{display:inline-flex;align-items:center;padding:.25rem .3rem;border-radius:.2rem;font-size:.8rem;margin:0 0 .5rem;background:#dd8623;color:#222}.quick-start-card .quick-start-card__technologies-item:not(:last-child){margin-right:.5rem}.quick-start-card .quick-start-card__technologies-item-icon{display:inline-block;height:.8rem;margin-right:.2rem}.quick-start-card .quick-start-card__description p{margin-top:0}.quick-start-card .quick-start-card__links a{display:inline-block;text-decoration:none;padding:.3rem .5rem;border-radius:.2rem;border:1px solid #d6d6d6;background:#d6d6d6;color:#222}.quick-start-card .quick-start-card__links a:active,.quick-start-card .quick-start-card__links a:hover{background-color:#f1f2f2}.eclipse-jkube{display:flex;flex-direction:column;min-height:100vh}.eclipse-jkube__main{flex:1 1}@media (min-width:1170px){.eclipse-jkube__main{overflow-x:hidden}}.eclipse-jkube__main .eclipse-jkube__content{margin:0 16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content{max-width:1154px;margin:0 auto}}.eclipse-jkube__main .eclipse-jkube__content img{max-width:100%}.eclipse-jkube__main .eclipse-jkube__content :not(pre)>code[class*=language-],.eclipse-jkube__main .eclipse-jkube__content pre[class*=language-]{background-color:transparent}.eclipse-jkube__main .eclipse-jkube__content .hero{margin:0 -16px 16px;display:block;background-color:#272727;background-image:url(/jkube/static/cubes-8e1e59c337437947105e6668f1f3790a.jpg);background-size:cover;color:#f1f2f2}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px;background-color:rgba(39,39,39,.7)}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px calc(50% - 585px)}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content .getting-involved{color:#f1f2f2;margin:0 -16px;padding:0 16px;display:flex;justify-content:flex-end}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content h1{font-size:2.5rem;font-family:Libre Franklin,Roboto,sans-serif;font-weight:400}.eclipse-jkube__main .eclipse-jkube__content .section-dark{background-color:#404040;color:#f1f2f2;margin:0 -16px;padding:16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;padding:16px calc(50% - 585px)}}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark>*{padding:0 calc(50% - 585px)}}.eclipse-jkube__main .eclipse-jkube__content .highlight{display:flex;align-items:center}.eclipse-jkube__main .eclipse-jkube__content .highlight>p{margin:16px 32px;display:none}@media (min-width:501px){.eclipse-jkube__main .eclipse-jkube__content .highlight>p{display:block}}.eclipse-jkube__main .eclipse-jkube__content .highlight>p img{max-width:100px}.eclipse-jkube__main .eclipse-jkube__content .highlight-description{flex:1 1;min-width:1px}.eclipse-jkube__main .eclipse-jkube__content .highlight ul{flex:1 1;min-width:1px;margin:0;padding:0}.eclipse-jkube__main .eclipse-jkube__content .highlight li{list-style:none;margin:16px 0}.eclipse-jkube__main .eclipse-jkube__content .calendar{position:relative;overflow:hidden;padding-bottom:75%;margin-bottom:16px}@media (min-width:666.66667px){.eclipse-jkube__main .eclipse-jkube__content .calendar{padding-bottom:0;height:500px}}.eclipse-jkube__main .eclipse-jkube__content .calendar iframe{position:absolute;top:0;height:100%;max-height:500px;width:100%}.eclipse-jkube__documentation{margin:0}@media screen and (min-width:768px){.eclipse-jkube__documentation{position:absolute;top:105px;bottom:0;width:100%;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content{position:relative;padding:16px;overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content article,.eclipse-jkube__documentation .eclipse-jkube__documentation-content aside,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figcaption,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure,.eclipse-jkube__documentation .eclipse-jkube__documentation-content footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content header,.eclipse-jkube__documentation .eclipse-jkube__documentation-content hgroup,.eclipse-jkube__documentation .eclipse-jkube__documentation-content main,.eclipse-jkube__documentation .eclipse-jkube__documentation-content nav,.eclipse-jkube__documentation .eclipse-jkube__documentation-content section{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio,.eclipse-jkube__documentation .eclipse-jkube__documentation-content video{display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio:not([controls]){display:none;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus{outline:thin dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{outline:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2em;margin:.67em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]{border-bottom:1px dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dfn{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{box-sizing:content-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content mark{background:#ff0;color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content samp{font-family:monospace;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{white-space:pre-wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content q{quotes:"\201C" "\201D" "\2018" "\2019"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub{bottom:-.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg:not(:root){overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure{margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content legend{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select,.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{font-family:inherit;font-size:100%;margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input{line-height:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[type=button],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=reset],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=submit]{-webkit-appearance:button;cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button[disabled],.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[disabled]{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=checkbox],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=radio]{box-sizing:border-box;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button::-moz-focus-inner,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input::-moz-focus-inner{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{overflow:auto;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{border-collapse:collapse;border-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content *,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :before{box-sizing:border-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body{background:#fff;color:rgba(0,0,0,.8);padding:0;margin:0;font-family:"Noto Serif","DejaVu Serif",serif;font-weight:400;font-style:normal;line-height:1;position:relative;cursor:auto;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{max-width:100%;height:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{height:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{-ms-interpolation-mode:bicubic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .left{float:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .right{float:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-left{text-align:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-right{text-align:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-center{text-align:center!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-justify{text-align:justify!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{display:inline-block;vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{height:auto;min-height:50px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .center{margin-left:auto;margin-right:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stretch{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .subheader,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{line-height:1.45;color:#7a2518;font-weight:400;margin-top:0;margin-bottom:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content div,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content form,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6,.eclipse-jkube__documentation .eclipse-jkube__documentation-content li,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin:0;padding:0;direction:ltr}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:#2156a5;text-decoration:underline;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{color:#1d4b8f}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{font-family:inherit;font-weight:400;font-size:1em;line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p aside{font-size:.875em;line-height:1.35;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-family:Open Sans,DejaVu Sans,sans-serif;font-weight:300;font-style:normal;color:#ba3925;text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:.5em;line-height:1.0125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 small{font-size:60%;color:#e99b8f;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5{font-size:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{border:solid #dddddf;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em,.eclipse-jkube__documentation .eclipse-jkube__documentation-content i{font-style:italic;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b,.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong{font-weight:700;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:60%;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;font-weight:400;color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{font-size:1em;line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ul{margin-left:1.25em;margin-bottom:0;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square li ul{list-style:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square{list-style-type:square}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle{list-style-type:circle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc{list-style-type:disc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ul{margin-left:1.25em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dt{margin-bottom:.3125em;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content acronym{text-transform:uppercase;font-size:90%;color:rgba(0,0,0,.8);border-bottom:1px dotted #ddd;cursor:help}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote{margin:0 0 1.25em;padding:.5625em 1.25em 0 1.1875em;border-left:1px solid #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite{display:block;font-size:.9375em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite:before{content:"\2014 "}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a:visited{color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote p{line-height:1.6;color:rgba(0,0,0,.85)}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:2.3125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4{font-size:1.4375em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{background:#fff;margin-bottom:1.25em;border:1px solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead{background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th{padding:.5em .625em .625em;font-size:inherit;color:rgba(0,0,0,.8);text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr th{padding:.5625em .625em;font-size:inherit;color:rgba(0,0,0,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.even{background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tbody tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td{display:table-cell;line-height:1.6}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2;word-spacing:-.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre):not([class^=L])>code{font-size:.9375em;font-style:normal!important;letter-spacing:0;padding:.1em .5ex;word-spacing:-.15em;background:#f7f7f8;border-radius:4px;line-height:1.45;text-rendering:optimizeSpeed;word-wrap:break-word}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nobreak{word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nowrap{white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{color:rgba(0,0,0,.9);font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;line-height:1.45;text-rendering:optimizeSpeed}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre pre{color:inherit;font-size:inherit;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre>code{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap pre{white-space:pre;word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em em{font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq{color:rgba(51,51,51,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;display:inline-block;color:rgba(0,0,0,.8);font-size:.65em;line-height:1.45;background:#f7f7f7;border:1px solid #ccc;border-radius:3px;box-shadow:0 1px 0 rgba(0,0,0,.2),inset 0 0 0 .1em #fff;margin:0 .15em;padding:.2em .5em;vertical-align:middle;position:relative;top:-.1em;white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:first-child{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:last-child{margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b:not(.caret){font-weight:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{word-spacing:-.02em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b.caret{font-size:1.25em;line-height:.8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq i.caret{font-weight:700;text-align:center;width:.45em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{position:relative;top:-1px;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{content:"[";padding:0 3px 0 2px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after{content:"]";padding:0 2px 0 3px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p a>code:hover{color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{width:100%;margin:0 auto;max-width:62.5em;*zoom:1;position:relative;padding-left:.9375em;padding-right:.9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-top:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before{content:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{color:rgba(0,0,0,.85);margin-top:2.25rem;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child+#toc{margin-top:8px;border-top:1px solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:only-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #dddddf;padding-bottom:8px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details{border-bottom:1px solid #dddddf;line-height:1.45;padding-top:.25em;padding-bottom:.25em;padding-left:.25em;color:rgba(0,0,0,.6);display:flex;flex-flow:row wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span:first-child{margin-left:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span.email a{color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span:before{content:"\A0\2013\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span.author:before{content:"\A0\22C5\A0";color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span#revremark:before{content:"\A0|\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber{text-transform:capitalize}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber:after{content:"\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content>h1:first-child:not([class]){color:rgba(0,0,0,.85);border-bottom:1px solid #dddddf;padding-bottom:8px;margin-top:0;padding-top:1rem;margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #e7e7e9;padding-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc>ul{margin-left:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0>li>a{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0 ul.sectlevel1{margin:.5em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul{font-family:Open Sans,DejaVu Sans,sans-serif;list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc li{line-height:1.3334;margin-top:.3334em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{color:#7a2518;font-size:1.2em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:15em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{margin-top:0!important;background:#f8f8f7;position:fixed;width:15em;left:0;top:0;border-right:1px solid #e7e7e9;border-top-width:0!important;border-bottom-width:0!important;z-index:1000;padding:1.25em 1em;height:100%;overflow:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{margin-top:0;margin-bottom:.8rem;font-size:1.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.9em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{margin-left:0;padding-left:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:.5em;margin-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:15em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right #toc.toc2{border-right-width:0;border-left:1px solid #e7e7e9;left:auto;right:0}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:20em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{width:20em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.95em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{padding-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:20em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc{border:1px solid #e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{max-width:100%;background:rgba(0,0,0,.8);padding:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:hsla(0,0%,100%,.8);line-height:1.44}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:.625em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:1.25em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1:last-child{padding-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border-top:1px solid #e7e7e9}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:before{content:"\A7";font-size:.85em;display:block;padding-top:.1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:hover{visibility:visible}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link{color:#ba3925;text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link:hover{color:#a53221}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content details>summary:first-of-type{cursor:pointer;display:list-item;outline:none;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{text-rendering:optimizeLegibility;text-align:left;font-family:"Noto Serif","DejaVu Serif",serif;font-size:1rem;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock.fit-content>caption.title{white-space:nowrap;width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #preamble>.sectionbody>[class=paragraph]:first-of-type p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph.lead>p{font-size:1.21875em;line-height:1.6;color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock #preamble>.sectionbody>[class=paragraph]:first-of-type p{font-size:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon{text-align:center;width:80px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon .title{font-weight:700;font-family:Open Sans,DejaVu Sans,sans-serif;text-transform:uppercase}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content{padding-left:1.125em;padding-right:1.25em;border-left:1px solid #dddddf;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{border:1px solid #e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#fff;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{border:1px solid #dbdbd6;margin-bottom:1.25em;padding:1.25em;background:#f3f3f2;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title{color:#7a2518;margin-top:0;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{border-radius:4px;word-wrap:break-word;overflow-x:auto;padding:1em;font-size:.8125em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:.90625em}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:1em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre:not(.highlight),.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class=highlight],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class^="highlight "],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock.output pre{color:#f7f7f8;background:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content{position:relative}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:none;content:attr(data-lang);position:absolute;font-size:.75em;top:.425rem;right:.5rem;line-height:1;text-transform:uppercase;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock:hover code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:before{content:attr(data-prompt);padding-right:.5em;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:not([data-prompt]):before{content:"$"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs{padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs>code{padding:1em;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.prettyprint{border-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .prettyprint{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint .linenums{line-height:1.45;margin-left:2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li{background:none;list-style-type:inherit;padding-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li code[data-lang]:before{opacity:1}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li:not(:first-child) code[data-lang]:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable{border-collapse:separate;border:0;margin-bottom:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td[class]{color:inherit;vertical-align:top;padding:0;line-height:inherit;white-space:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.code{padding-left:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.linenos{border-right:1px solid;opacity:.35;padding-right:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno{border-right:1px solid;opacity:.35;display:inline-block;margin-right:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno:before{content:"";margin-right:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock{margin:0 1em 1.25em 1.5em;display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock:not(.excerpt)>.title{margin-left:-1.5em;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock p{color:rgba(0,0,0,.85);font-size:1.15rem;line-height:1.75;word-spacing:.1em;letter-spacing:0;font-style:italic;text-align:justify}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote{margin:0;padding:0;border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote:before{content:"\201C";float:left;font-size:2.75em;font-weight:700;line-height:.6em;margin-left:-.6em;color:#7a2518;text-shadow:0 1px 2px rgba(0,0,0,.1)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote>.paragraph:last-child p{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution{margin-top:.75em;margin-right:.5ex;text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock{margin:0 1em 1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre{font-family:Open Sans,DejaVu Sans,sans;font-size:1.15rem;color:rgba(0,0,0,.85);font-weight:300;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{margin-top:1.25rem;margin-left:.5ex}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{font-size:.9375em;line-height:1.45;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution br,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution cite,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution cite{display:block;letter-spacing:-.025em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{line-height:1.6;word-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract{margin:0 1em 1.25em;display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract>.title{margin:0 0 .375em;font-size:1.15em;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt>blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{padding:0 0 .25em 1em;border-left:.25em solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{color:inherit;font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock .attribution{color:inherit;text-align:left;margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock{max-width:100%;border-collapse:separate}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child{margin-bottom:-1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child.sidebarblock{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{border:0 solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead>tr>.tableblock{border-width:0 1px 1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tfoot>tr>.tableblock{border-width:1px 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock{border-width:0 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead>tr>.tableblock{border-width:0 0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tfoot>tr>.tableblock{border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>*>tr>.tableblock:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock:last-child{border-right-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead:last-child>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead:last-child>tr>.tableblock{border-bottom-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-all{border-width:1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-sides{border-width:0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-ends,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-topbot{border-width:1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-all tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-even tr:nth-of-type(2n),.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-hover tr:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-odd tr:nth-of-type(odd){background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-left{text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-right,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-right{text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-center,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-center{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-top,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-top{vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-bottom,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-bottom{vertical-align:bottom}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-middle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-middle{vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead th{font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th{display:table-cell;line-height:1.6;background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th p{color:rgba(0,0,0,.8);font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock>code:only-child{background:none;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol{margin-left:1.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-left:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul dd{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-check-square-o:first-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-square-o:first-child{width:1.25em;font-size:.8em;position:relative;bottom:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>input[type=checkbox]:first-child{margin-right:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline{display:flex;flex-flow:row wrap;list-style:none;margin:0 0 .625em -1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline>li{margin-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .unstyled dl dt{font-weight:400;font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.arabic{list-style-type:decimal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.decimal{list-style-type:decimal-leading-zero}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.loweralpha{list-style-type:lower-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperalpha{list-style-type:upper-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowerroman{list-style-type:lower-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperroman{list-style-type:upper-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowergreek{list-style-type:lower-greek}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table{border:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table>tbody>tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table>tbody>tr{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist2{vertical-align:top;padding:0 .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1{font-weight:700;padding-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock+.colist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock+.colist{margin-top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child{padding:.4em .75em 0;line-height:1;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):last-child{padding:.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .thumb{line-height:0;display:inline-block;border:4px solid #fff;box-shadow:0 0 0 1px #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.left{margin:.25em .625em 1.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.right{margin:.25em 0 1.25em .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb{border-width:6px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb>.title{padding:0 .125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-top:.25em;margin-bottom:.25em;display:inline-block;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left{margin-right:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image{text-decoration:none;display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image object{pointer-events:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref{font-size:.875em;position:static;vertical-align:super}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 .75em;border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote{padding:0 .375em 0 .225em;line-height:1.3334;font-size:.875em;margin-left:1.2em;margin-bottom:.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote a:first-of-type{font-weight:700;text-decoration:none;margin-left:-1.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote:last-of-type{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table{border:0;background:#fff;width:100%;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table td.line-data{width:99%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.unbreakable{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .big{font-size:larger}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .small{font-size:smaller}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .underline{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .overline{text-decoration:overline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .line-through{text-decoration:line-through}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua{color:#00bfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua-background{background:#00fafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black-background{background:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue{color:#0000bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue-background{background:#0000fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia{color:#bf00bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia-background{background:#fa00fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray{color:#606060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray-background{background:#7d7d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green{color:#006000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green-background{background:#007d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime{color:#00bf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime-background{background:#00fa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon{color:#600000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon-background{background:#7d0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy{color:#000060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy-background{background:#00007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive{color:#606000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive-background{background:#7d7d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple{color:#600060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple-background{background:#7d007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red{color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red-background{background:#fa0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver{color:#909090}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver-background{background:#bcbcbc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal{color:#006060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal-background{background:#007d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white{color:#bfbfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white-background{background:#fafafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow{color:#bfbf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow-background{background:#fafa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.icon>.fa{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a span.icon>.fa{cursor:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;text-shadow:1px 1px 2px rgba(0,0,0,.5);cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-note:before{content:"\F05A";color:#19407c}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-tip:before{content:"\F0EB";text-shadow:1px 1px 2px rgba(155,155,0,.8);color:#111}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-warning:before{content:"\F071";color:#bf6900}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-caution:before{content:"\F06D";color:#bf3400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-important:before{content:"\F06A";color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]{display:inline-block;color:#fff!important;background:rgba(0,0,0,.8);border-radius:100px;text-align:center;font-size:.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:Open Sans,DejaVu Sans,sans-serif;font-style:normal;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value] *{color:#fff!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]+b{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]:after{content:attr(data-value)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre .conum[data-value]{position:relative;top:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.conum *{color:inherit!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum:not([data-value]):empty{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{letter-spacing:-.01em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content strong{letter-spacing:-.005em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{background:#fffef7;border-color:#e0e0dc;box-shadow:0 1px 4px #e0e0dc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:none!important}@page{.eclipse-jkube__documentation .eclipse-jkube__documentation-content{margin:1.25cm .75cm}}@media print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content *{box-shadow:none!important;text-shadow:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:inherit!important;text-decoration:underline!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.bare,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="#"],.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="mailto:"]{text-decoration:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="http:"]:not(.bare):after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="https:"]:not(.bare):after{content:"(" attr(href) ")";display:inline-block;font-size:.875em;padding-left:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]:after{content:" (" attr(title) ")"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tr{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content thead{display:table-header-group}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{max-width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1em;orphans:3;widows:3}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{page-break-after:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{background:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #dddddf!important;padding-bottom:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details{border:0!important;display:block;padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details span:first-child{margin-left:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br+span:before{content:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #preamble,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book .sect1>h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book h1.sect0{page-break-before:always}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{padding:0 .9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-on-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:block!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-for-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .show-for-print{display:inherit!important}}@media amzn-kf8,print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{margin-top:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:rgba(0,0,0,.6);font-size:.9em}}@media amzn-kf8{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{padding:0}}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content{padding-left:21em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .toc{position:fixed;width:20em;left:0;top:105px;bottom:0;z-index:1000;padding:0 16px;border-right:1px solid #efefed;border-top-width:0!important;border-bottom-width:0!important;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content i.fa{font-style:normal}.eclipse-jkube__quickstarts{padding:0}.eclipse-jkube__quickstarts-item{list-style:none}.eclipse-jkube__quickstarts-item:not(:last-child){margin-bottom:16px}</style><meta name="generator" content="Gatsby 2.30.1"/><title data-react-helmet="true">org.eclipse.jkube/openshift-maven-plugin</title><meta data-react-helmet="true" charSet="UTF-8"/><meta data-react-helmet="true" name="description" content=""/><style type="text/css">
.anchor.before {
position: absolute;
top: 0;
@@ -48,7 +48,7 @@
}
}
})
- </script><link as="script" rel="preload" href="/jkube/webpack-runtime-5e7a06a902090b1f37ba.js"/><link as="script" rel="preload" href="/jkube/framework-fd2b85530eec85104a39.js"/><link as="script" rel="preload" href="/jkube/app-d7398b08e923fe8a3caa.js"/><link as="script" rel="preload" href="/jkube/styles-c2fe8482057191dca484.js"/><link as="script" rel="preload" href="/jkube/commons-8b827618f0536ebfeda2.js"/><link as="script" rel="preload" href="/jkube/component---src-templates-doc-jsx-5366dbd1b50f3447a412.js"/><link as="fetch" rel="preload" href="/jkube/page-data/docs/openshift-maven-plugin/page-data.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/jkube/page-data/app-data.json" crossorigin="anonymous"/></head><body><div id="___gatsby"><div style="outline:none" tabindex="-1" id="gatsby-focus-wrapper"><div class="eclipse-jkube"><header class="eclipse-jkube__header"><div class="eclipse-jkube__header-container"><a class="eclipse-jkube__header-logo" href="/jkube/"><div class="eclipse-jkube__header-logo-eclipse-image"><img src="/jkube/static/EF_WHT-OR_png-d0fd43ad31261ee9693a060be920e71e.png" alt="Eclipse Foundation"/></div><div class="eclipse-jkube__header-logo-jkube"><img class="eclipse-jkube__header-logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/><span class="eclipse-jkube__header-trade-mark">™</span></div></a><div class="eclipse-jkube__header-content"><ul><li><a href="/jkube/docs">Docs</a></li><li><a href="/jkube/demos">Demos</a></li><li><a href="/jkube/community">Community</a></li><li><a href="/jkube/contributing">Contributing</a></li><li><a class="eclipse-jkube__header-stars" href="https://github.com/eclipse/jkube" title="eclipse/jkube" target="_blank" rel="nofollow noopener noreferrer"><img src="https://img.shields.io/github/stars/eclipse/jkube?style=social" alt="eclipse/jkube stargazers"/></a></li></ul></div></div></header><div class="eclipse-jkube__documentation book toc2 toc-left"><div class="eclipse-jkube__documentation-content"><div id="preamble">
+ </script><link as="script" rel="preload" href="/jkube/webpack-runtime-b52c77882f7d7b54b2b3.js"/><link as="script" rel="preload" href="/jkube/framework-5e01c8af6b1735c9eaa3.js"/><link as="script" rel="preload" href="/jkube/app-59faa9989d677dd59195.js"/><link as="script" rel="preload" href="/jkube/styles-e9d24b1846c7d6eb9685.js"/><link as="script" rel="preload" href="/jkube/commons-ee34cd715ab4f7da30e0.js"/><link as="script" rel="preload" href="/jkube/component---src-templates-doc-jsx-21a94bb36ef3df298f42.js"/><link as="fetch" rel="preload" href="/jkube/page-data/docs/openshift-maven-plugin/page-data.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/jkube/page-data/app-data.json" crossorigin="anonymous"/></head><body><div id="___gatsby"><div style="outline:none" tabindex="-1" id="gatsby-focus-wrapper"><div class="eclipse-jkube"><header class="eclipse-jkube__header"><div class="eclipse-jkube__header-container"><a class="eclipse-jkube__header-logo" href="/jkube/"><div class="eclipse-jkube__header-logo-eclipse-image"><img src="/jkube/static/EF_WHT-OR_png-d0fd43ad31261ee9693a060be920e71e.png" alt="Eclipse Foundation"/></div><div class="eclipse-jkube__header-logo-jkube"><img class="eclipse-jkube__header-logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/><span class="eclipse-jkube__header-trade-mark">™</span></div></a><div class="eclipse-jkube__header-content"><ul><li><a href="/jkube/docs">Docs</a></li><li><a href="/jkube/demos">Demos</a></li><li><a href="/jkube/community">Community</a></li><li><a href="/jkube/contributing">Contributing</a></li><li><a class="eclipse-jkube__header-stars" href="https://github.com/eclipse/jkube" title="eclipse/jkube" target="_blank" rel="nofollow noopener noreferrer"><img src="https://img.shields.io/github/stars/eclipse/jkube?style=social" alt="eclipse/jkube stargazers"/></a></li></ul></div></div></header><div class="eclipse-jkube__documentation book toc2 toc-left"><div class="eclipse-jkube__documentation-content"><div id="preamble">
<div class="sectionbody">
<div class="paragraph">
<p>© 2020 The original authors.</p>
@@ -186,39 +186,38 @@
<li><a href="#_openshift_and_kubernetes_access">10.2. OpenShift and Kubernetes Access</a></li>
</ul>
</li>
-<li><a href="#registry">11. Registry handling</a></li>
-<li><a href="#authentication">12. Authentication</a>
+<li><a href="#registry">11. Registry handling</a>
<ul class="sectlevel2">
-<li><a href="#_pull_vs_push_authentication">12.1. Pull vs. Push Authentication</a></li>
-<li><a href="#_openshift_authentication">12.2. OpenShift Authentication</a></li>
-<li><a href="#password-encryption">12.3. Password encryption</a></li>
-<li><a href="#extended-authentication">12.4. Extended Authentication</a></li>
+<li><a href="#_pull_vs_push_authentication">11.1. Pull vs. Push Authentication</a></li>
+<li><a href="#_openshift_authentication">11.2. OpenShift Authentication</a></li>
+<li><a href="#password-encryption">11.3. Password encryption</a></li>
+<li><a href="#extended-authentication">11.4. Extended Authentication</a></li>
</ul>
</li>
-<li><a href="#volume-configuration">13. Volume Configuration</a></li>
-<li><a href="#integrations">14. Integrations</a>
+<li><a href="#volume-configuration">12. Volume Configuration</a></li>
+<li><a href="#integrations">13. Integrations</a>
<ul class="sectlevel2">
-<li><a href="#integrations.dekorate">14.1. Dekorate</a></li>
-<li><a href="#_jib_java_image_builder">14.2. JIB (Java Image Builder)</a></li>
+<li><a href="#integrations.dekorate">13.1. Dekorate</a></li>
+<li><a href="#_jib_java_image_builder">13.2. JIB (Java Image Builder)</a></li>
</ul>
</li>
-<li><a href="#faq">15. FAQ</a>
+<li><a href="#faq">14. FAQ</a>
<ul class="sectlevel2">
-<li><a href="#_general_questions">15.1. General questions</a>
+<li><a href="#_general_questions">14.1. General questions</a>
<ul class="sectlevel3">
-<li><a href="#_how_do_i_define_an_environment_variable">15.1.1. How do I define an environment variable?</a></li>
-<li><a href="#_how_do_i_define_a_system_property">15.1.2. How do I define a system property?</a></li>
-<li><a href="#_how_do_i_mount_a_config_file_from_a_configmap">15.1.3. How do I mount a config file from a ConfigMap?</a></li>
-<li><a href="#_how_do_i_use_a_persistent_volume">15.1.4. How do I use a Persistent Volume?</a></li>
-<li><a href="#_how_do_i_generate_ingress_for_my_generated_service">15.1.5. How do I generate Ingress for my generated Service?</a></li>
+<li><a href="#_how_do_i_define_an_environment_variable">14.1.1. How do I define an environment variable?</a></li>
+<li><a href="#_how_do_i_define_a_system_property">14.1.2. How do I define a system property?</a></li>
+<li><a href="#_how_do_i_mount_a_config_file_from_a_configmap">14.1.3. How do I mount a config file from a ConfigMap?</a></li>
+<li><a href="#_how_do_i_use_a_persistent_volume">14.1.4. How do I use a Persistent Volume?</a></li>
+<li><a href="#_how_do_i_generate_ingress_for_my_generated_service">14.1.5. How do I generate Ingress for my generated Service?</a></li>
</ul>
</li>
</ul>
</li>
-<li><a href="#appendix">16. Appendix</a>
+<li><a href="#appendix">15. Appendix</a>
<ul class="sectlevel2">
-<li><a href="#_kindfilename_type_mapping">16.1. Kind/Filename Type Mapping</a></li>
-<li><a href="#_custom_kindfilename_mapping">16.2. Custom Kind/Filename Mapping</a></li>
+<li><a href="#_kindfilename_type_mapping">15.1. Kind/Filename Type Mapping</a></li>
+<li><a href="#_custom_kindfilename_mapping">15.2. Custom Kind/Filename Mapping</a></li>
</ul>
</li>
</ul>
@@ -5082,7 +5081,7 @@
</tr>
<tr>
<td class="tableblock halign-left valign-top"><p class="tableblock"><a href="#jkube-container-env-java-options">jkube-container-env-java-options</a></p></td>
-<td class="tableblock halign-left valign-top"><p class="tableblock">Merges <code>JAVA_OPTIONS</code> environment variable defined in <a href="#config-image-build">Build configuration (<a href="#config-image"><image> </a>)</a>
+<td class="tableblock halign-left valign-top"><p class="tableblock">Merges <code>JAVA_OPTIONS</code> environment variable defined in <a href="#config-image-build">Build configuration (<image> )</a>
environment (<code>env</code>) with <code>Container</code> <code>JAVA_OPTIONS</code> environment variable added
by other enrichers, XML configuration or fragment.</p></td>
</tr>
@@ -5228,7 +5227,7 @@
<div class="sect4">
<h5 id="jkube-container-env-java-options">jkube-container-env-java-options</h5>
<div class="paragraph">
-<p>Merges <code>JAVA_OPTIONS</code> environment variable defined in <a href="#config-image-build">Build configuration (<a href="#config-image"><image> </a>)</a>
+<p>Merges <code>JAVA_OPTIONS</code> environment variable defined in <a href="#config-image-build">Build configuration (<image> )</a>
environment (<code>env</code>) with <code>Container</code> <code>JAVA_OPTIONS</code> environment variable added
by other enrichers, XML configuration or fragment.</p>
</div>
@@ -7514,14 +7513,12 @@
<p>When <em>pushing</em> a local image, temporarily a tag including the
registry is added and removed after the push. This is required
because Docker can only push registry-named images.</p>
+<div id="authentication" class="paragraph">
+<p>= Authentication</p>
+</div>
</li>
</ul>
</div>
-</div>
-</div>
-<div class="sect1">
-<h2 id="authentication">12. Authentication</h2>
-<div class="sectionbody">
<div class="paragraph">
<p>When pulling (via the <code>autoPull</code> mode of <code>oc:build</code>) or pushing image, it
might be necessary to authenticate against a Docker registry.</p>
@@ -7615,7 +7612,7 @@
<a href="https://docs.docker.com/engine/reference/commandline/login/#credentials-store">credential store</a>.</p>
</div>
<div class="sect2">
-<h3 id="_pull_vs_push_authentication">12.1. Pull vs. Push Authentication</h3>
+<h3 id="_pull_vs_push_authentication">11.1. Pull vs. Push Authentication</h3>
<div class="paragraph">
<p>The credentials lookup described above is valid for both push and
pull operations. In order to narrow things down, credentials can be
@@ -7653,7 +7650,7 @@
</div>
</div>
<div class="sect2">
-<h3 id="_openshift_authentication">12.2. OpenShift Authentication</h3>
+<h3 id="_openshift_authentication">11.2. OpenShift Authentication</h3>
<div class="paragraph">
<p>When working with the default registry in OpenShift, the credentials
to authenticate are the OpenShift username and access token. So, a
@@ -7702,7 +7699,7 @@
</div>
</div>
<div class="sect2">
-<h3 id="password-encryption">12.3. Password encryption</h3>
+<h3 id="password-encryption">11.3. Password encryption</h3>
<div class="paragraph">
<p>Regardless of which mode you choose you can encrypt password as described
in the
@@ -7728,7 +7725,7 @@
</div>
</div>
<div class="sect2">
-<h3 id="extended-authentication">12.4. Extended Authentication</h3>
+<h3 id="extended-authentication">11.4. Extended Authentication</h3>
<div class="paragraph">
<p>Some docker registries require additional steps to authenticate.
<a href="https://docs.aws.amazon.com/AmazonECR/latest/userguide/ECR_GetStarted.html">Amazon ECR</a> requires using an IAM access key to obtain temporary docker login credentials.
@@ -7756,7 +7753,7 @@
</div>
</div>
<div class="sect1">
-<h2 id="volume-configuration">13. Volume Configuration</h2>
+<h2 id="volume-configuration">12. Volume Configuration</h2>
<div class="sectionbody">
<div class="paragraph">
<p>openshift-maven-plugin supports volume configuration in XML format in pom.xml. These are the volume types which are supported:</p>
@@ -7867,10 +7864,10 @@
</div>
</div>
<div class="sect1">
-<h2 id="integrations">14. Integrations</h2>
+<h2 id="integrations">13. Integrations</h2>
<div class="sectionbody">
<div class="sect2">
-<h3 id="integrations.dekorate">14.1. Dekorate</h3>
+<h3 id="integrations.dekorate">13.1. Dekorate</h3>
<div class="paragraph">
<p><strong>openshift-maven-plugin</strong> provides a Zero Configuration approach to delegate deployment manifests
generation to <a href="https://github.com/dekorateio/dekorate">Dekorate</a>.</p>
@@ -7917,7 +7914,7 @@
</div>
</div>
<div class="sect2">
-<h3 id="_jib_java_image_builder">14.2. JIB (Java Image Builder)</h3>
+<h3 id="_jib_java_image_builder">13.2. JIB (Java Image Builder)</h3>
<div class="paragraph">
<p><strong>openshift-maven-plugin</strong> also provides user an option to build container images without having access to any docker daemon.
You just need to set <code>jkube.build.strategy</code> property to <code>jib</code>. It will delegate the build process to
@@ -7931,12 +7928,12 @@
</div>
</div>
<div class="sect1">
-<h2 id="faq">15. FAQ</h2>
+<h2 id="faq">14. FAQ</h2>
<div class="sectionbody">
<div class="sect2">
-<h3 id="_general_questions">15.1. General questions</h3>
+<h3 id="_general_questions">14.1. General questions</h3>
<div class="sect3">
-<h4 id="_how_do_i_define_an_environment_variable">15.1.1. How do I define an environment variable?</h4>
+<h4 id="_how_do_i_define_an_environment_variable">14.1.1. How do I define an environment variable?</h4>
<div class="paragraph">
<p>The easiest way is to add a <code>src/main/jkube/deployment.yml</code> file to your project containing something like:</p>
</div>
@@ -7959,7 +7956,7 @@
</div>
</div>
<div class="sect3">
-<h4 id="_how_do_i_define_a_system_property">15.1.2. How do I define a system property?</h4>
+<h4 id="_how_do_i_define_a_system_property">14.1.2. How do I define a system property?</h4>
<div class="paragraph">
<p>The simplest way is to add system properties to the <code>JAVA_OPTIONS</code> environment variable.</p>
</div>
@@ -7985,7 +7982,7 @@
</div>
</div>
<div class="sect3">
-<h4 id="_how_do_i_mount_a_config_file_from_a_configmap">15.1.3. How do I mount a config file from a ConfigMap?</h4>
+<h4 id="_how_do_i_mount_a_config_file_from_a_configmap">14.1.3. How do I mount a config file from a ConfigMap?</h4>
<div class="paragraph">
<p>First you need to create your <code>ConfigMap</code> resource via a file <code>src/main/jkube/configmap.yml</code></p>
</div>
@@ -8034,7 +8031,7 @@
</div>
</div>
<div class="sect3">
-<h4 id="_how_do_i_use_a_persistent_volume">15.1.4. How do I use a Persistent Volume?</h4>
+<h4 id="_how_do_i_use_a_persistent_volume">14.1.4. How do I use a Persistent Volume?</h4>
<div class="paragraph">
<p>First you need to create your <code>PersistentVolumeClaim</code> resource via a file <code>src/main/jkube/foo-pvc.yml</code> where <code>foo</code> is the name of the <code>PersistentVolumeClaim</code>. It might be your app requires multiple vpersistent volumes so you will need multiple <code>PersistentVolumeClaim</code> resources.</p>
</div>
@@ -8071,7 +8068,7 @@
</div>
</div>
<div class="sect3">
-<h4 id="_how_do_i_generate_ingress_for_my_generated_service">15.1.5. How do I generate Ingress for my generated Service?</h4>
+<h4 id="_how_do_i_generate_ingress_for_my_generated_service">14.1.5. How do I generate Ingress for my generated Service?</h4>
<div class="paragraph">
<p><code>Ingress</code> generation is supported by Eclipse JKube for <code>Service</code> objects of type <code>LoadBalancer</code>. In order to generate <code>Ingress</code> you need to enable <code>jkube.createExternalUrls</code> property to <code>true</code> and <code>jkube.domain</code> property to desired host suffix, it would be appended to your service name for host value. You can also also provide a host for it in XML config like this:</p>
</div>
@@ -8106,10 +8103,10 @@
</div>
</div>
<div class="sect1">
-<h2 id="appendix">16. Appendix</h2>
+<h2 id="appendix">15. Appendix</h2>
<div class="sectionbody">
<div class="sect2">
-<h3 id="_kindfilename_type_mapping">16.1. Kind/Filename Type Mapping</h3>
+<h3 id="_kindfilename_type_mapping">15.1. Kind/Filename Type Mapping</h3>
<table id="appendix-kind-mapping" class="tableblock frame-all grid-all stretch">
<colgroup>
<col style="width: 50%;">
@@ -8262,7 +8259,7 @@
</table>
</div>
<div class="sect2">
-<h3 id="_custom_kindfilename_mapping">16.2. Custom Kind/Filename Mapping</h3>
+<h3 id="_custom_kindfilename_mapping">15.2. Custom Kind/Filename Mapping</h3>
<div class="paragraph">
<p>You can add your custom <code>Kind/Filename</code> mappings.
To do it you have two approaches:</p>
@@ -8296,4 +8293,4 @@
</div>
</div>
</div>
-</div></div></div></div></div><div id="gatsby-announcer" style="position:absolute;top:0;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0" aria-live="assertive" aria-atomic="true"></div></div><script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/docs/openshift-maven-plugin";/*]]>*/</script><script id="gatsby-chunk-mapping">/*<![CDATA[*/window.___chunkMapping={"polyfill":["/polyfill-88d9aed314b16f9b2adc.js"],"app":["/app-d7398b08e923fe8a3caa.js"],"component---src-pages-quickstarts-index-jsx":["/component---src-pages-quickstarts-index-jsx-a1e42093b41968828647.js"],"component---src-templates-doc-jsx":["/component---src-templates-doc-jsx-5366dbd1b50f3447a412.js"],"component---src-templates-main-jsx":["/component---src-templates-main-jsx-456568a5c9ae2c9095ee.js"]};/*]]>*/</script><script src="/jkube/polyfill-88d9aed314b16f9b2adc.js" nomodule=""></script><script src="/jkube/component---src-templates-doc-jsx-5366dbd1b50f3447a412.js" async=""></script><script src="/jkube/commons-8b827618f0536ebfeda2.js" async=""></script><script src="/jkube/styles-c2fe8482057191dca484.js" async=""></script><script src="/jkube/app-d7398b08e923fe8a3caa.js" async=""></script><script src="/jkube/framework-fd2b85530eec85104a39.js" async=""></script><script src="/jkube/webpack-runtime-5e7a06a902090b1f37ba.js" async=""></script></body></html>
\ No newline at end of file
+</div></div></div></div></div><div id="gatsby-announcer" style="position:absolute;top:0;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0" aria-live="assertive" aria-atomic="true"></div></div><script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/docs/openshift-maven-plugin";/*]]>*/</script><script id="gatsby-chunk-mapping">/*<![CDATA[*/window.___chunkMapping={"polyfill":["/polyfill-e4957c11759bdfc149d9.js"],"app":["/app-59faa9989d677dd59195.js"],"component---src-pages-quickstarts-index-jsx":["/component---src-pages-quickstarts-index-jsx-8b53e5455e208a3e59b9.js"],"component---src-templates-doc-jsx":["/component---src-templates-doc-jsx-21a94bb36ef3df298f42.js"],"component---src-templates-main-jsx":["/component---src-templates-main-jsx-8853cf342e1cf1bead5c.js"]};/*]]>*/</script><script src="/jkube/polyfill-e4957c11759bdfc149d9.js" nomodule=""></script><script src="/jkube/component---src-templates-doc-jsx-21a94bb36ef3df298f42.js" async=""></script><script src="/jkube/commons-ee34cd715ab4f7da30e0.js" async=""></script><script src="/jkube/styles-e9d24b1846c7d6eb9685.js" async=""></script><script src="/jkube/app-59faa9989d677dd59195.js" async=""></script><script src="/jkube/framework-5e01c8af6b1735c9eaa3.js" async=""></script><script src="/jkube/webpack-runtime-b52c77882f7d7b54b2b3.js" async=""></script></body></html>
\ No newline at end of file
diff --git a/es/demos/index.html b/es/demos/index.html
index 18397da..177c114 100644
--- a/es/demos/index.html
+++ b/es/demos/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="es"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><style data-href="/jkube/styles.5c9b852c43e28f117cb7.css">@import url(https://fonts.googleapis.com/css?family=Libre+Franklin:100,300,400,600,700,|Roboto:300,400,500,700|Jura);@import url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css);@import url(https://unpkg.com/@coreui/icons/css/brand.min.css);code[class*=language-],pre[class*=language-]{color:#657b83;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-ms-hyphens:none;hyphens:none}code[class*=language-]::selection,code[class*=language-] ::selection,pre[class*=language-]::selection,pre[class*=language-] ::selection{background:#073642}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;border-radius:.3em}:not(pre)>code[class*=language-],pre[class*=language-]{background-color:#fdf6e3}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#93a1a1}.token.punctuation{color:#586e75}.token.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#268bd2}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string,.token.url{color:#2aa198}.token.entity{color:#657b83;background:#eee8d5}.token.atrule,.token.attr-value,.token.keyword{color:#859900}.token.class-name,.token.function{color:#b58900}.token.important,.token.regex,.token.variable{color:#cb4b16}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body,html{font-family:Libre Franklin,Roboto,sans-serif}body{margin:0;padding:0;outline:0;background:#f1f2f2;font-size:16px;color:#222}h1{font-size:3rem}h1,h2{margin-top:0;font-family:Roboto,sans-serif;font-weight:300}h2{font-size:2rem}h3{font-size:1.5rem;font-weight:300}a{color:#525c86}a:focus,a:hover{color:#222}.eclipse-jkube-footer{padding:16px;border-top:10px solid #222;background-color:#292c2f;font-size:19.2px;font-family:Roboto,sans-serif;font-weight:300;line-height:1.5}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube{display:flex;flex-direction:column;max-width:1170px;margin:0 auto 16px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-image{width:160px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-tagline{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links{max-width:1170px;margin:0 auto 16px;display:flex;flex-wrap:wrap}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list{padding:0;margin:0 48px 16px 0;list-style:none}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a{transition:color .1s linear;color:#f1f2f2}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a,.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a:hover{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a:hover{color:#525c86}.eclipse-jkube-footer .eclipse-jkube-footer__links a{text-decoration:none}.eclipse-jkube-footer .eclipse-jkube-footer__copyright{max-width:1170px;margin:0 auto 16px;font-family:Roboto,sans-serif;color:#939598}.eclipse-jkube__header{display:block;position:relative;height:175px;background-color:#292c2f}@media (min-width:700px){.eclipse-jkube__header{height:105px}}.eclipse-jkube__header .eclipse-jkube__header-trade-mark{font-size:.5em;font-size:.3em;line-height:2.5;vertical-align:top}.eclipse-jkube__header .eclipse-jkube__header-container{position:relative;margin:0 auto;padding:0 16px;height:100%;max-width:1170px}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-container{display:flex;flex-wrap:nowrap;height:105px}}.eclipse-jkube__header .eclipse-jkube__header-logo{display:flex;justify-content:center;align-items:center;font-size:32px;font-weight:400;color:#f1f2f2}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo{font-size:50px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:65px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:90px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image img{max-height:100%;max-width:100%}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:50px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:65px}}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube-image{height:100%}.eclipse-jkube__header .eclipse-jkube__header-logo:hover{color:#f1f2f2}.eclipse-jkube__header .eclipse-jkube__header-content{flex:1 0;min-width:1px;display:flex;justify-content:center;align-items:center}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-content{justify-content:flex-end}}.eclipse-jkube__header .eclipse-jkube__header-content ul{display:flex;flex-wrap:wrap;align-items:center;justify-content:center}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-content ul{justify-content:flex-start}}.eclipse-jkube__header .eclipse-jkube__header-content ul li{margin:4px 0;padding-right:16px;list-style:none;color:#f1f2f2;font-size:20px}.eclipse-jkube__header .eclipse-jkube__header-content .eclipse-jkube__header-stars{display:block;width:85px;height:20px;line-height:20px}.eclipse-jkube__header a{color:#f1f2f2;text-decoration:none}.eclipse-jkube__header a:hover{color:#dd8623;transition:color .3s}.quick-start-card{border:1px solid #d6d6d6;padding:16px}.quick-start-card .quick-start-card__title{margin:0;padding:0}.quick-start-card .quick-start-card__title a{text-decoration:none}.quick-start-card .quick-start-card__title a:active,.quick-start-card .quick-start-card__title a:hover{text-decoration:underline}.quick-start-card .quick-start-card__technologies{margin:16px 0 0;padding:0}.quick-start-card .quick-start-card__technologies-item{display:inline-flex;align-items:center;padding:.25rem .3rem;border-radius:.2rem;font-size:.8rem;margin:0 0 .5rem;background:#dd8623;color:#222}.quick-start-card .quick-start-card__technologies-item:not(:last-child){margin-right:.5rem}.quick-start-card .quick-start-card__technologies-item-icon{display:inline-block;height:.8rem;margin-right:.2rem}.quick-start-card .quick-start-card__description p{margin-top:0}.quick-start-card .quick-start-card__links a{display:inline-block;text-decoration:none;padding:.3rem .5rem;border-radius:.2rem;border:1px solid #d6d6d6;background:#d6d6d6;color:#222}.quick-start-card .quick-start-card__links a:active,.quick-start-card .quick-start-card__links a:hover{background-color:#f1f2f2}.eclipse-jkube{display:flex;flex-direction:column;min-height:100vh}.eclipse-jkube__main{flex:1 1}@media (min-width:1170px){.eclipse-jkube__main{overflow-x:hidden}}.eclipse-jkube__main .eclipse-jkube__content{margin:0 16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content{max-width:1154px;margin:0 auto}}.eclipse-jkube__main .eclipse-jkube__content img{max-width:100%}.eclipse-jkube__main .eclipse-jkube__content :not(pre)>code[class*=language-],.eclipse-jkube__main .eclipse-jkube__content pre[class*=language-]{background-color:transparent}.eclipse-jkube__main .eclipse-jkube__content .hero{margin:0 -16px 16px;display:block;background-color:#272727;background-image:url(/jkube/static/cubes-8e1e59c337437947105e6668f1f3790a.jpg);background-size:cover;color:#f1f2f2}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px;background-color:rgba(39,39,39,.7)}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px calc((100% - 1170px)/2)}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content .getting-involved{color:#f1f2f2;margin:0 -16px;padding:0 16px;display:flex;justify-content:flex-end}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content h1{font-size:2.5rem;font-family:Libre Franklin,Roboto,sans-serif;font-weight:400}.eclipse-jkube__main .eclipse-jkube__content .section-dark{background-color:#404040;color:#f1f2f2;margin:0 -16px;padding:16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;padding:16px calc((100% - 1170px)/2)}}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark>*{padding:0 calc((100% - 1170px)/2)}}.eclipse-jkube__main .eclipse-jkube__content .highlight{display:flex;align-items:center}.eclipse-jkube__main .eclipse-jkube__content .highlight>p{margin:16px 32px;display:none}@media (min-width:501px){.eclipse-jkube__main .eclipse-jkube__content .highlight>p{display:block}}.eclipse-jkube__main .eclipse-jkube__content .highlight>p img{max-width:100px}.eclipse-jkube__main .eclipse-jkube__content .highlight-description{flex:1 1;min-width:1px}.eclipse-jkube__main .eclipse-jkube__content .highlight ul{flex:1 1;min-width:1px;margin:0;padding:0}.eclipse-jkube__main .eclipse-jkube__content .highlight li{list-style:none;margin:16px 0}.eclipse-jkube__main .eclipse-jkube__content .calendar{position:relative;overflow:hidden;padding-bottom:75%;margin-bottom:16px}@media (min-width:666.66667px){.eclipse-jkube__main .eclipse-jkube__content .calendar{padding-bottom:0;height:500px}}.eclipse-jkube__main .eclipse-jkube__content .calendar iframe{position:absolute;top:0;height:100%;max-height:500px;width:100%}.eclipse-jkube__documentation{margin:0}@media screen and (min-width:768px){.eclipse-jkube__documentation{position:absolute;top:105px;bottom:0;width:100%;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content{position:relative;padding:16px;overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content article,.eclipse-jkube__documentation .eclipse-jkube__documentation-content aside,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figcaption,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure,.eclipse-jkube__documentation .eclipse-jkube__documentation-content footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content header,.eclipse-jkube__documentation .eclipse-jkube__documentation-content hgroup,.eclipse-jkube__documentation .eclipse-jkube__documentation-content main,.eclipse-jkube__documentation .eclipse-jkube__documentation-content nav,.eclipse-jkube__documentation .eclipse-jkube__documentation-content section{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio,.eclipse-jkube__documentation .eclipse-jkube__documentation-content video{display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio:not([controls]){display:none;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus{outline:thin dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{outline:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2em;margin:.67em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]{border-bottom:1px dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dfn{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{box-sizing:content-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content mark{background:#ff0;color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content samp{font-family:monospace;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{white-space:pre-wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content q{quotes:"\201C" "\201D" "\2018" "\2019"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub{bottom:-.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg:not(:root){overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure{margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content legend{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select,.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{font-family:inherit;font-size:100%;margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input{line-height:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[type=button],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=reset],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=submit]{-webkit-appearance:button;cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button[disabled],.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[disabled]{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=checkbox],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=radio]{box-sizing:border-box;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button::-moz-focus-inner,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input::-moz-focus-inner{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{overflow:auto;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{border-collapse:collapse;border-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content *,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :before{box-sizing:border-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body{background:#fff;color:rgba(0,0,0,.8);padding:0;margin:0;font-family:"Noto Serif","DejaVu Serif",serif;font-weight:400;font-style:normal;line-height:1;position:relative;cursor:auto;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{max-width:100%;height:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{height:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{-ms-interpolation-mode:bicubic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .left{float:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .right{float:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-left{text-align:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-right{text-align:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-center{text-align:center!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-justify{text-align:justify!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{display:inline-block;vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{height:auto;min-height:50px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .center{margin-left:auto;margin-right:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stretch{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .subheader,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{line-height:1.45;color:#7a2518;font-weight:400;margin-top:0;margin-bottom:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content div,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content form,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6,.eclipse-jkube__documentation .eclipse-jkube__documentation-content li,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin:0;padding:0;direction:ltr}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:#2156a5;text-decoration:underline;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{color:#1d4b8f}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{font-family:inherit;font-weight:400;font-size:1em;line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p aside{font-size:.875em;line-height:1.35;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-family:Open Sans,DejaVu Sans,sans-serif;font-weight:300;font-style:normal;color:#ba3925;text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:.5em;line-height:1.0125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 small{font-size:60%;color:#e99b8f;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5{font-size:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{border:solid #dddddf;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em,.eclipse-jkube__documentation .eclipse-jkube__documentation-content i{font-style:italic;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b,.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong{font-weight:700;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:60%;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;font-weight:400;color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{font-size:1em;line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ul{margin-left:1.25em;margin-bottom:0;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square li ul{list-style:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square{list-style-type:square}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle{list-style-type:circle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc{list-style-type:disc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ul{margin-left:1.25em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dt{margin-bottom:.3125em;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content acronym{text-transform:uppercase;font-size:90%;color:rgba(0,0,0,.8);border-bottom:1px dotted #ddd;cursor:help}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote{margin:0 0 1.25em;padding:.5625em 1.25em 0 1.1875em;border-left:1px solid #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite{display:block;font-size:.9375em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite:before{content:"\2014 "}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a:visited{color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote p{line-height:1.6;color:rgba(0,0,0,.85)}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:2.3125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4{font-size:1.4375em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{background:#fff;margin-bottom:1.25em;border:1px solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead{background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th{padding:.5em .625em .625em;font-size:inherit;color:rgba(0,0,0,.8);text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr th{padding:.5625em .625em;font-size:inherit;color:rgba(0,0,0,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.even{background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tbody tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td{display:table-cell;line-height:1.6}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2;word-spacing:-.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre):not([class^=L])>code{font-size:.9375em;font-style:normal!important;letter-spacing:0;padding:.1em .5ex;word-spacing:-.15em;background:#f7f7f8;border-radius:4px;line-height:1.45;text-rendering:optimizeSpeed;word-wrap:break-word}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nobreak{word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nowrap{white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{color:rgba(0,0,0,.9);font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;line-height:1.45;text-rendering:optimizeSpeed}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre pre{color:inherit;font-size:inherit;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre>code{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap pre{white-space:pre;word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em em{font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq{color:rgba(51,51,51,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;display:inline-block;color:rgba(0,0,0,.8);font-size:.65em;line-height:1.45;background:#f7f7f7;border:1px solid #ccc;border-radius:3px;box-shadow:0 1px 0 rgba(0,0,0,.2),inset 0 0 0 .1em #fff;margin:0 .15em;padding:.2em .5em;vertical-align:middle;position:relative;top:-.1em;white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:first-child{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:last-child{margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b:not(.caret){font-weight:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{word-spacing:-.02em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b.caret{font-size:1.25em;line-height:.8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq i.caret{font-weight:700;text-align:center;width:.45em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{position:relative;top:-1px;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{content:"[";padding:0 3px 0 2px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after{content:"]";padding:0 2px 0 3px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p a>code:hover{color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{width:100%;margin:0 auto;max-width:62.5em;*zoom:1;position:relative;padding-left:.9375em;padding-right:.9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-top:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before{content:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{color:rgba(0,0,0,.85);margin-top:2.25rem;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child+#toc{margin-top:8px;border-top:1px solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:only-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #dddddf;padding-bottom:8px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details{border-bottom:1px solid #dddddf;line-height:1.45;padding-top:.25em;padding-bottom:.25em;padding-left:.25em;color:rgba(0,0,0,.6);display:flex;flex-flow:row wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span:first-child{margin-left:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span.email a{color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span:before{content:"\A0\2013\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span.author:before{content:"\A0\22C5\A0";color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span#revremark:before{content:"\A0|\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber{text-transform:capitalize}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber:after{content:"\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content>h1:first-child:not([class]){color:rgba(0,0,0,.85);border-bottom:1px solid #dddddf;padding-bottom:8px;margin-top:0;padding-top:1rem;margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #e7e7e9;padding-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc>ul{margin-left:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0>li>a{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0 ul.sectlevel1{margin:.5em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul{font-family:Open Sans,DejaVu Sans,sans-serif;list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc li{line-height:1.3334;margin-top:.3334em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{color:#7a2518;font-size:1.2em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:15em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{margin-top:0!important;background:#f8f8f7;position:fixed;width:15em;left:0;top:0;border-right:1px solid #e7e7e9;border-top-width:0!important;border-bottom-width:0!important;z-index:1000;padding:1.25em 1em;height:100%;overflow:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{margin-top:0;margin-bottom:.8rem;font-size:1.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.9em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{margin-left:0;padding-left:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:.5em;margin-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:15em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right #toc.toc2{border-right-width:0;border-left:1px solid #e7e7e9;left:auto;right:0}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:20em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{width:20em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.95em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{padding-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:20em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc{border:1px solid #e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{max-width:100%;background:rgba(0,0,0,.8);padding:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:hsla(0,0%,100%,.8);line-height:1.44}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:.625em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:1.25em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1:last-child{padding-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border-top:1px solid #e7e7e9}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:before{content:"\A7";font-size:.85em;display:block;padding-top:.1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:hover{visibility:visible}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link{color:#ba3925;text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link:hover{color:#a53221}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content details>summary:first-of-type{cursor:pointer;display:list-item;outline:none;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{text-rendering:optimizeLegibility;text-align:left;font-family:"Noto Serif","DejaVu Serif",serif;font-size:1rem;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock.fit-content>caption.title{white-space:nowrap;width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #preamble>.sectionbody>[class=paragraph]:first-of-type p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph.lead>p{font-size:1.21875em;line-height:1.6;color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock #preamble>.sectionbody>[class=paragraph]:first-of-type p{font-size:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon{text-align:center;width:80px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon .title{font-weight:700;font-family:Open Sans,DejaVu Sans,sans-serif;text-transform:uppercase}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content{padding-left:1.125em;padding-right:1.25em;border-left:1px solid #dddddf;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{border:1px solid #e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#fff;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{border:1px solid #dbdbd6;margin-bottom:1.25em;padding:1.25em;background:#f3f3f2;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title{color:#7a2518;margin-top:0;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{border-radius:4px;word-wrap:break-word;overflow-x:auto;padding:1em;font-size:.8125em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:.90625em}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:1em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre:not(.highlight),.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class=highlight],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class^="highlight "],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock.output pre{color:#f7f7f8;background:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content{position:relative}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:none;content:attr(data-lang);position:absolute;font-size:.75em;top:.425rem;right:.5rem;line-height:1;text-transform:uppercase;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock:hover code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:before{content:attr(data-prompt);padding-right:.5em;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:not([data-prompt]):before{content:"$"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs{padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs>code{padding:1em;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.prettyprint{border-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .prettyprint{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint .linenums{line-height:1.45;margin-left:2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li{background:none;list-style-type:inherit;padding-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li code[data-lang]:before{opacity:1}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li:not(:first-child) code[data-lang]:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable{border-collapse:separate;border:0;margin-bottom:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td[class]{color:inherit;vertical-align:top;padding:0;line-height:inherit;white-space:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.code{padding-left:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.linenos{border-right:1px solid;opacity:.35;padding-right:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno{border-right:1px solid;opacity:.35;display:inline-block;margin-right:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno:before{content:"";margin-right:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock{margin:0 1em 1.25em 1.5em;display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock:not(.excerpt)>.title{margin-left:-1.5em;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock p{color:rgba(0,0,0,.85);font-size:1.15rem;line-height:1.75;word-spacing:.1em;letter-spacing:0;font-style:italic;text-align:justify}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote{margin:0;padding:0;border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote:before{content:"\201C";float:left;font-size:2.75em;font-weight:700;line-height:.6em;margin-left:-.6em;color:#7a2518;text-shadow:0 1px 2px rgba(0,0,0,.1)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote>.paragraph:last-child p{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution{margin-top:.75em;margin-right:.5ex;text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock{margin:0 1em 1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre{font-family:Open Sans,DejaVu Sans,sans;font-size:1.15rem;color:rgba(0,0,0,.85);font-weight:300;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{margin-top:1.25rem;margin-left:.5ex}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{font-size:.9375em;line-height:1.45;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution br,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution cite,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution cite{display:block;letter-spacing:-.025em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{line-height:1.6;word-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract{margin:0 1em 1.25em;display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract>.title{margin:0 0 .375em;font-size:1.15em;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt>blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{padding:0 0 .25em 1em;border-left:.25em solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{color:inherit;font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock .attribution{color:inherit;text-align:left;margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock{max-width:100%;border-collapse:separate}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child{margin-bottom:-1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child.sidebarblock{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{border:0 solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead>tr>.tableblock{border-width:0 1px 1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tfoot>tr>.tableblock{border-width:1px 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock{border-width:0 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead>tr>.tableblock{border-width:0 0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tfoot>tr>.tableblock{border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>*>tr>.tableblock:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock:last-child{border-right-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead:last-child>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead:last-child>tr>.tableblock{border-bottom-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-all{border-width:1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-sides{border-width:0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-ends,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-topbot{border-width:1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-all tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-even tr:nth-of-type(2n),.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-hover tr:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-odd tr:nth-of-type(odd){background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-left{text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-right,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-right{text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-center,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-center{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-top,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-top{vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-bottom,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-bottom{vertical-align:bottom}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-middle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-middle{vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead th{font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th{display:table-cell;line-height:1.6;background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th p{color:rgba(0,0,0,.8);font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock>code:only-child{background:none;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol{margin-left:1.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-left:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul dd{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-check-square-o:first-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-square-o:first-child{width:1.25em;font-size:.8em;position:relative;bottom:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>input[type=checkbox]:first-child{margin-right:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline{display:flex;flex-flow:row wrap;list-style:none;margin:0 0 .625em -1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline>li{margin-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .unstyled dl dt{font-weight:400;font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.arabic{list-style-type:decimal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.decimal{list-style-type:decimal-leading-zero}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.loweralpha{list-style-type:lower-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperalpha{list-style-type:upper-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowerroman{list-style-type:lower-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperroman{list-style-type:upper-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowergreek{list-style-type:lower-greek}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table{border:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table>tbody>tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table>tbody>tr{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist2{vertical-align:top;padding:0 .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1{font-weight:700;padding-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock+.colist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock+.colist{margin-top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child{padding:.4em .75em 0;line-height:1;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):last-child{padding:.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .thumb{line-height:0;display:inline-block;border:4px solid #fff;box-shadow:0 0 0 1px #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.left{margin:.25em .625em 1.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.right{margin:.25em 0 1.25em .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb{border-width:6px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb>.title{padding:0 .125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-top:.25em;margin-bottom:.25em;display:inline-block;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left{margin-right:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image{text-decoration:none;display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image object{pointer-events:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref{font-size:.875em;position:static;vertical-align:super}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 .75em;border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote{padding:0 .375em 0 .225em;line-height:1.3334;font-size:.875em;margin-left:1.2em;margin-bottom:.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote a:first-of-type{font-weight:700;text-decoration:none;margin-left:-1.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote:last-of-type{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table{border:0;background:#fff;width:100%;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table td.line-data{width:99%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.unbreakable{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .big{font-size:larger}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .small{font-size:smaller}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .underline{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .overline{text-decoration:overline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .line-through{text-decoration:line-through}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua{color:#00bfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua-background{background:#00fafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black-background{background:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue{color:#0000bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue-background{background:#0000fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia{color:#bf00bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia-background{background:#fa00fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray{color:#606060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray-background{background:#7d7d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green{color:#006000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green-background{background:#007d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime{color:#00bf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime-background{background:#00fa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon{color:#600000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon-background{background:#7d0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy{color:#000060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy-background{background:#00007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive{color:#606000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive-background{background:#7d7d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple{color:#600060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple-background{background:#7d007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red{color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red-background{background:#fa0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver{color:#909090}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver-background{background:#bcbcbc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal{color:#006060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal-background{background:#007d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white{color:#bfbfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white-background{background:#fafafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow{color:#bfbf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow-background{background:#fafa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.icon>.fa{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a span.icon>.fa{cursor:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;text-shadow:1px 1px 2px rgba(0,0,0,.5);cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-note:before{content:"\F05A";color:#19407c}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-tip:before{content:"\F0EB";text-shadow:1px 1px 2px rgba(155,155,0,.8);color:#111}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-warning:before{content:"\F071";color:#bf6900}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-caution:before{content:"\F06D";color:#bf3400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-important:before{content:"\F06A";color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]{display:inline-block;color:#fff!important;background:rgba(0,0,0,.8);border-radius:100px;text-align:center;font-size:.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:Open Sans,DejaVu Sans,sans-serif;font-style:normal;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value] *{color:#fff!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]+b{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]:after{content:attr(data-value)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre .conum[data-value]{position:relative;top:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.conum *{color:inherit!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum:not([data-value]):empty{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{letter-spacing:-.01em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content strong{letter-spacing:-.005em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{background:#fffef7;border-color:#e0e0dc;box-shadow:0 1px 4px #e0e0dc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:none!important}@page{.eclipse-jkube__documentation .eclipse-jkube__documentation-content{margin:1.25cm .75cm}}@media print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content *{box-shadow:none!important;text-shadow:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:inherit!important;text-decoration:underline!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.bare,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="#"],.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="mailto:"]{text-decoration:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="http:"]:not(.bare):after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="https:"]:not(.bare):after{content:"(" attr(href) ")";display:inline-block;font-size:.875em;padding-left:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]:after{content:" (" attr(title) ")"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tr{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content thead{display:table-header-group}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{max-width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1em;orphans:3;widows:3}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{page-break-after:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{background:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #dddddf!important;padding-bottom:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details{border:0!important;display:block;padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details span:first-child{margin-left:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br+span:before{content:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #preamble,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book .sect1>h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book h1.sect0{page-break-before:always}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{padding:0 .9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-on-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:block!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-for-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .show-for-print{display:inherit!important}}@media amzn-kf8,print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{margin-top:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:rgba(0,0,0,.6);font-size:.9em}}@media amzn-kf8{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{padding:0}}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content{padding-left:21em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .toc{position:fixed;width:20em;left:0;top:105px;bottom:0;z-index:1000;padding:0 16px;border-right:1px solid #efefed;border-top-width:0!important;border-bottom-width:0!important;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content i.fa{font-style:normal}.eclipse-jkube__quickstarts{padding:0}.eclipse-jkube__quickstarts-item{list-style:none}.eclipse-jkube__quickstarts-item:not(:last-child){margin-bottom:16px}</style><meta name="generator" content="Gatsby 2.24.12"/><title data-react-helmet="true">Eclipse JKube - Demostraciones</title><meta data-react-helmet="true" charSet="UTF-8"/><meta data-react-helmet="true" name="description" content="Eclipse JKube - Demostraciones y guías rápidas para Kubernetes y OpenShift"/><style type="text/css">
+<!DOCTYPE html><html lang="es"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><style data-href="/jkube/styles.5c9b852c43e28f117cb7.css" id="gatsby-global-css">@import url(https://fonts.googleapis.com/css?family=Libre+Franklin:100,300,400,600,700,|Roboto:300,400,500,700|Jura);@import url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css);@import url(https://unpkg.com/@coreui/icons/css/brand.min.css);code[class*=language-],pre[class*=language-]{color:#657b83;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-ms-hyphens:none;hyphens:none}code[class*=language-]::selection,code[class*=language-] ::selection,pre[class*=language-]::selection,pre[class*=language-] ::selection{background:#073642}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;border-radius:.3em}:not(pre)>code[class*=language-],pre[class*=language-]{background-color:#fdf6e3}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#93a1a1}.token.punctuation{color:#586e75}.token.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#268bd2}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string,.token.url{color:#2aa198}.token.entity{color:#657b83;background:#eee8d5}.token.atrule,.token.attr-value,.token.keyword{color:#859900}.token.class-name,.token.function{color:#b58900}.token.important,.token.regex,.token.variable{color:#cb4b16}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body,html{font-family:Libre Franklin,Roboto,sans-serif}body{margin:0;padding:0;outline:0;background:#f1f2f2;font-size:16px;color:#222}h1{font-size:3rem}h1,h2{margin-top:0;font-family:Roboto,sans-serif;font-weight:300}h2{font-size:2rem}h3{font-size:1.5rem;font-weight:300}a{color:#525c86}a:focus,a:hover{color:#222}.eclipse-jkube-footer{padding:16px;border-top:10px solid #222;background-color:#292c2f;font-size:19.2px;font-family:Roboto,sans-serif;font-weight:300;line-height:1.5}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube{display:flex;flex-direction:column;max-width:1170px;margin:0 auto 16px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-image{width:160px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-tagline{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links{max-width:1170px;margin:0 auto 16px;display:flex;flex-wrap:wrap}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list{padding:0;margin:0 48px 16px 0;list-style:none}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a{transition:color .1s linear;color:#f1f2f2}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a,.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a:hover{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a:hover{color:#525c86}.eclipse-jkube-footer .eclipse-jkube-footer__links a{text-decoration:none}.eclipse-jkube-footer .eclipse-jkube-footer__copyright{max-width:1170px;margin:0 auto 16px;font-family:Roboto,sans-serif;color:#939598}.eclipse-jkube__header{display:block;position:relative;height:175px;background-color:#292c2f}@media (min-width:700px){.eclipse-jkube__header{height:105px}}.eclipse-jkube__header .eclipse-jkube__header-trade-mark{font-size:.5em;font-size:.3em;line-height:2.5;vertical-align:top}.eclipse-jkube__header .eclipse-jkube__header-container{position:relative;margin:0 auto;padding:0 16px;height:100%;max-width:1170px}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-container{display:flex;flex-wrap:nowrap;height:105px}}.eclipse-jkube__header .eclipse-jkube__header-logo{display:flex;justify-content:center;align-items:center;font-size:32px;font-weight:400;color:#f1f2f2}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo{font-size:50px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:65px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:90px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image img{max-height:100%;max-width:100%}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:50px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:65px}}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube-image{height:100%}.eclipse-jkube__header .eclipse-jkube__header-logo:hover{color:#f1f2f2}.eclipse-jkube__header .eclipse-jkube__header-content{flex:1 0;min-width:1px;display:flex;justify-content:center;align-items:center}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-content{justify-content:flex-end}}.eclipse-jkube__header .eclipse-jkube__header-content ul{display:flex;flex-wrap:wrap;align-items:center;justify-content:center}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-content ul{justify-content:flex-start}}.eclipse-jkube__header .eclipse-jkube__header-content ul li{margin:4px 0;padding-right:16px;list-style:none;color:#f1f2f2;font-size:20px}.eclipse-jkube__header .eclipse-jkube__header-content .eclipse-jkube__header-stars{display:block;width:85px;height:20px;line-height:20px}.eclipse-jkube__header a{color:#f1f2f2;text-decoration:none}.eclipse-jkube__header a:hover{color:#dd8623;transition:color .3s}.quick-start-card{border:1px solid #d6d6d6;padding:16px}.quick-start-card .quick-start-card__title{margin:0;padding:0}.quick-start-card .quick-start-card__title a{text-decoration:none}.quick-start-card .quick-start-card__title a:active,.quick-start-card .quick-start-card__title a:hover{text-decoration:underline}.quick-start-card .quick-start-card__technologies{margin:16px 0 0;padding:0}.quick-start-card .quick-start-card__technologies-item{display:inline-flex;align-items:center;padding:.25rem .3rem;border-radius:.2rem;font-size:.8rem;margin:0 0 .5rem;background:#dd8623;color:#222}.quick-start-card .quick-start-card__technologies-item:not(:last-child){margin-right:.5rem}.quick-start-card .quick-start-card__technologies-item-icon{display:inline-block;height:.8rem;margin-right:.2rem}.quick-start-card .quick-start-card__description p{margin-top:0}.quick-start-card .quick-start-card__links a{display:inline-block;text-decoration:none;padding:.3rem .5rem;border-radius:.2rem;border:1px solid #d6d6d6;background:#d6d6d6;color:#222}.quick-start-card .quick-start-card__links a:active,.quick-start-card .quick-start-card__links a:hover{background-color:#f1f2f2}.eclipse-jkube{display:flex;flex-direction:column;min-height:100vh}.eclipse-jkube__main{flex:1 1}@media (min-width:1170px){.eclipse-jkube__main{overflow-x:hidden}}.eclipse-jkube__main .eclipse-jkube__content{margin:0 16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content{max-width:1154px;margin:0 auto}}.eclipse-jkube__main .eclipse-jkube__content img{max-width:100%}.eclipse-jkube__main .eclipse-jkube__content :not(pre)>code[class*=language-],.eclipse-jkube__main .eclipse-jkube__content pre[class*=language-]{background-color:transparent}.eclipse-jkube__main .eclipse-jkube__content .hero{margin:0 -16px 16px;display:block;background-color:#272727;background-image:url(/jkube/static/cubes-8e1e59c337437947105e6668f1f3790a.jpg);background-size:cover;color:#f1f2f2}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px;background-color:rgba(39,39,39,.7)}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px calc(50% - 585px)}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content .getting-involved{color:#f1f2f2;margin:0 -16px;padding:0 16px;display:flex;justify-content:flex-end}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content h1{font-size:2.5rem;font-family:Libre Franklin,Roboto,sans-serif;font-weight:400}.eclipse-jkube__main .eclipse-jkube__content .section-dark{background-color:#404040;color:#f1f2f2;margin:0 -16px;padding:16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;padding:16px calc(50% - 585px)}}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark>*{padding:0 calc(50% - 585px)}}.eclipse-jkube__main .eclipse-jkube__content .highlight{display:flex;align-items:center}.eclipse-jkube__main .eclipse-jkube__content .highlight>p{margin:16px 32px;display:none}@media (min-width:501px){.eclipse-jkube__main .eclipse-jkube__content .highlight>p{display:block}}.eclipse-jkube__main .eclipse-jkube__content .highlight>p img{max-width:100px}.eclipse-jkube__main .eclipse-jkube__content .highlight-description{flex:1 1;min-width:1px}.eclipse-jkube__main .eclipse-jkube__content .highlight ul{flex:1 1;min-width:1px;margin:0;padding:0}.eclipse-jkube__main .eclipse-jkube__content .highlight li{list-style:none;margin:16px 0}.eclipse-jkube__main .eclipse-jkube__content .calendar{position:relative;overflow:hidden;padding-bottom:75%;margin-bottom:16px}@media (min-width:666.66667px){.eclipse-jkube__main .eclipse-jkube__content .calendar{padding-bottom:0;height:500px}}.eclipse-jkube__main .eclipse-jkube__content .calendar iframe{position:absolute;top:0;height:100%;max-height:500px;width:100%}.eclipse-jkube__documentation{margin:0}@media screen and (min-width:768px){.eclipse-jkube__documentation{position:absolute;top:105px;bottom:0;width:100%;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content{position:relative;padding:16px;overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content article,.eclipse-jkube__documentation .eclipse-jkube__documentation-content aside,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figcaption,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure,.eclipse-jkube__documentation .eclipse-jkube__documentation-content footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content header,.eclipse-jkube__documentation .eclipse-jkube__documentation-content hgroup,.eclipse-jkube__documentation .eclipse-jkube__documentation-content main,.eclipse-jkube__documentation .eclipse-jkube__documentation-content nav,.eclipse-jkube__documentation .eclipse-jkube__documentation-content section{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio,.eclipse-jkube__documentation .eclipse-jkube__documentation-content video{display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio:not([controls]){display:none;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus{outline:thin dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{outline:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2em;margin:.67em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]{border-bottom:1px dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dfn{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{box-sizing:content-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content mark{background:#ff0;color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content samp{font-family:monospace;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{white-space:pre-wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content q{quotes:"\201C" "\201D" "\2018" "\2019"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub{bottom:-.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg:not(:root){overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure{margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content legend{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select,.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{font-family:inherit;font-size:100%;margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input{line-height:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[type=button],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=reset],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=submit]{-webkit-appearance:button;cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button[disabled],.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[disabled]{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=checkbox],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=radio]{box-sizing:border-box;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button::-moz-focus-inner,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input::-moz-focus-inner{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{overflow:auto;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{border-collapse:collapse;border-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content *,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :before{box-sizing:border-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body{background:#fff;color:rgba(0,0,0,.8);padding:0;margin:0;font-family:"Noto Serif","DejaVu Serif",serif;font-weight:400;font-style:normal;line-height:1;position:relative;cursor:auto;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{max-width:100%;height:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{height:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{-ms-interpolation-mode:bicubic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .left{float:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .right{float:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-left{text-align:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-right{text-align:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-center{text-align:center!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-justify{text-align:justify!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{display:inline-block;vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{height:auto;min-height:50px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .center{margin-left:auto;margin-right:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stretch{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .subheader,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{line-height:1.45;color:#7a2518;font-weight:400;margin-top:0;margin-bottom:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content div,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content form,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6,.eclipse-jkube__documentation .eclipse-jkube__documentation-content li,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin:0;padding:0;direction:ltr}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:#2156a5;text-decoration:underline;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{color:#1d4b8f}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{font-family:inherit;font-weight:400;font-size:1em;line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p aside{font-size:.875em;line-height:1.35;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-family:Open Sans,DejaVu Sans,sans-serif;font-weight:300;font-style:normal;color:#ba3925;text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:.5em;line-height:1.0125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 small{font-size:60%;color:#e99b8f;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5{font-size:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{border:solid #dddddf;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em,.eclipse-jkube__documentation .eclipse-jkube__documentation-content i{font-style:italic;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b,.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong{font-weight:700;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:60%;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;font-weight:400;color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{font-size:1em;line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ul{margin-left:1.25em;margin-bottom:0;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square li ul{list-style:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square{list-style-type:square}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle{list-style-type:circle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc{list-style-type:disc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ul{margin-left:1.25em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dt{margin-bottom:.3125em;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content acronym{text-transform:uppercase;font-size:90%;color:rgba(0,0,0,.8);border-bottom:1px dotted #ddd;cursor:help}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote{margin:0 0 1.25em;padding:.5625em 1.25em 0 1.1875em;border-left:1px solid #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite{display:block;font-size:.9375em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite:before{content:"\2014 "}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a:visited{color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote p{line-height:1.6;color:rgba(0,0,0,.85)}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:2.3125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4{font-size:1.4375em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{background:#fff;margin-bottom:1.25em;border:1px solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead{background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th{padding:.5em .625em .625em;font-size:inherit;color:rgba(0,0,0,.8);text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr th{padding:.5625em .625em;font-size:inherit;color:rgba(0,0,0,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.even{background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tbody tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td{display:table-cell;line-height:1.6}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2;word-spacing:-.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre):not([class^=L])>code{font-size:.9375em;font-style:normal!important;letter-spacing:0;padding:.1em .5ex;word-spacing:-.15em;background:#f7f7f8;border-radius:4px;line-height:1.45;text-rendering:optimizeSpeed;word-wrap:break-word}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nobreak{word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nowrap{white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{color:rgba(0,0,0,.9);font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;line-height:1.45;text-rendering:optimizeSpeed}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre pre{color:inherit;font-size:inherit;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre>code{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap pre{white-space:pre;word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em em{font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq{color:rgba(51,51,51,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;display:inline-block;color:rgba(0,0,0,.8);font-size:.65em;line-height:1.45;background:#f7f7f7;border:1px solid #ccc;border-radius:3px;box-shadow:0 1px 0 rgba(0,0,0,.2),inset 0 0 0 .1em #fff;margin:0 .15em;padding:.2em .5em;vertical-align:middle;position:relative;top:-.1em;white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:first-child{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:last-child{margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b:not(.caret){font-weight:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{word-spacing:-.02em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b.caret{font-size:1.25em;line-height:.8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq i.caret{font-weight:700;text-align:center;width:.45em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{position:relative;top:-1px;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{content:"[";padding:0 3px 0 2px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after{content:"]";padding:0 2px 0 3px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p a>code:hover{color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{width:100%;margin:0 auto;max-width:62.5em;*zoom:1;position:relative;padding-left:.9375em;padding-right:.9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-top:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before{content:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{color:rgba(0,0,0,.85);margin-top:2.25rem;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child+#toc{margin-top:8px;border-top:1px solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:only-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #dddddf;padding-bottom:8px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details{border-bottom:1px solid #dddddf;line-height:1.45;padding-top:.25em;padding-bottom:.25em;padding-left:.25em;color:rgba(0,0,0,.6);display:flex;flex-flow:row wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span:first-child{margin-left:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span.email a{color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span:before{content:"\A0\2013\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span.author:before{content:"\A0\22C5\A0";color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span#revremark:before{content:"\A0|\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber{text-transform:capitalize}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber:after{content:"\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content>h1:first-child:not([class]){color:rgba(0,0,0,.85);border-bottom:1px solid #dddddf;padding-bottom:8px;margin-top:0;padding-top:1rem;margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #e7e7e9;padding-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc>ul{margin-left:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0>li>a{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0 ul.sectlevel1{margin:.5em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul{font-family:Open Sans,DejaVu Sans,sans-serif;list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc li{line-height:1.3334;margin-top:.3334em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{color:#7a2518;font-size:1.2em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:15em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{margin-top:0!important;background:#f8f8f7;position:fixed;width:15em;left:0;top:0;border-right:1px solid #e7e7e9;border-top-width:0!important;border-bottom-width:0!important;z-index:1000;padding:1.25em 1em;height:100%;overflow:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{margin-top:0;margin-bottom:.8rem;font-size:1.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.9em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{margin-left:0;padding-left:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:.5em;margin-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:15em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right #toc.toc2{border-right-width:0;border-left:1px solid #e7e7e9;left:auto;right:0}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:20em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{width:20em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.95em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{padding-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:20em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc{border:1px solid #e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{max-width:100%;background:rgba(0,0,0,.8);padding:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:hsla(0,0%,100%,.8);line-height:1.44}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:.625em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:1.25em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1:last-child{padding-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border-top:1px solid #e7e7e9}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:before{content:"\A7";font-size:.85em;display:block;padding-top:.1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:hover{visibility:visible}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link{color:#ba3925;text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link:hover{color:#a53221}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content details>summary:first-of-type{cursor:pointer;display:list-item;outline:none;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{text-rendering:optimizeLegibility;text-align:left;font-family:"Noto Serif","DejaVu Serif",serif;font-size:1rem;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock.fit-content>caption.title{white-space:nowrap;width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #preamble>.sectionbody>[class=paragraph]:first-of-type p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph.lead>p{font-size:1.21875em;line-height:1.6;color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock #preamble>.sectionbody>[class=paragraph]:first-of-type p{font-size:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon{text-align:center;width:80px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon .title{font-weight:700;font-family:Open Sans,DejaVu Sans,sans-serif;text-transform:uppercase}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content{padding-left:1.125em;padding-right:1.25em;border-left:1px solid #dddddf;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{border:1px solid #e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#fff;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{border:1px solid #dbdbd6;margin-bottom:1.25em;padding:1.25em;background:#f3f3f2;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title{color:#7a2518;margin-top:0;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{border-radius:4px;word-wrap:break-word;overflow-x:auto;padding:1em;font-size:.8125em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:.90625em}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:1em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre:not(.highlight),.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class=highlight],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class^="highlight "],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock.output pre{color:#f7f7f8;background:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content{position:relative}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:none;content:attr(data-lang);position:absolute;font-size:.75em;top:.425rem;right:.5rem;line-height:1;text-transform:uppercase;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock:hover code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:before{content:attr(data-prompt);padding-right:.5em;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:not([data-prompt]):before{content:"$"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs{padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs>code{padding:1em;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.prettyprint{border-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .prettyprint{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint .linenums{line-height:1.45;margin-left:2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li{background:none;list-style-type:inherit;padding-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li code[data-lang]:before{opacity:1}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li:not(:first-child) code[data-lang]:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable{border-collapse:separate;border:0;margin-bottom:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td[class]{color:inherit;vertical-align:top;padding:0;line-height:inherit;white-space:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.code{padding-left:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.linenos{border-right:1px solid;opacity:.35;padding-right:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno{border-right:1px solid;opacity:.35;display:inline-block;margin-right:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno:before{content:"";margin-right:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock{margin:0 1em 1.25em 1.5em;display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock:not(.excerpt)>.title{margin-left:-1.5em;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock p{color:rgba(0,0,0,.85);font-size:1.15rem;line-height:1.75;word-spacing:.1em;letter-spacing:0;font-style:italic;text-align:justify}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote{margin:0;padding:0;border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote:before{content:"\201C";float:left;font-size:2.75em;font-weight:700;line-height:.6em;margin-left:-.6em;color:#7a2518;text-shadow:0 1px 2px rgba(0,0,0,.1)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote>.paragraph:last-child p{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution{margin-top:.75em;margin-right:.5ex;text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock{margin:0 1em 1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre{font-family:Open Sans,DejaVu Sans,sans;font-size:1.15rem;color:rgba(0,0,0,.85);font-weight:300;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{margin-top:1.25rem;margin-left:.5ex}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{font-size:.9375em;line-height:1.45;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution br,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution cite,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution cite{display:block;letter-spacing:-.025em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{line-height:1.6;word-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract{margin:0 1em 1.25em;display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract>.title{margin:0 0 .375em;font-size:1.15em;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt>blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{padding:0 0 .25em 1em;border-left:.25em solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{color:inherit;font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock .attribution{color:inherit;text-align:left;margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock{max-width:100%;border-collapse:separate}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child{margin-bottom:-1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child.sidebarblock{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{border:0 solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead>tr>.tableblock{border-width:0 1px 1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tfoot>tr>.tableblock{border-width:1px 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock{border-width:0 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead>tr>.tableblock{border-width:0 0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tfoot>tr>.tableblock{border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>*>tr>.tableblock:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock:last-child{border-right-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead:last-child>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead:last-child>tr>.tableblock{border-bottom-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-all{border-width:1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-sides{border-width:0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-ends,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-topbot{border-width:1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-all tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-even tr:nth-of-type(2n),.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-hover tr:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-odd tr:nth-of-type(odd){background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-left{text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-right,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-right{text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-center,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-center{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-top,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-top{vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-bottom,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-bottom{vertical-align:bottom}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-middle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-middle{vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead th{font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th{display:table-cell;line-height:1.6;background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th p{color:rgba(0,0,0,.8);font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock>code:only-child{background:none;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol{margin-left:1.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-left:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul dd{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-check-square-o:first-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-square-o:first-child{width:1.25em;font-size:.8em;position:relative;bottom:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>input[type=checkbox]:first-child{margin-right:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline{display:flex;flex-flow:row wrap;list-style:none;margin:0 0 .625em -1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline>li{margin-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .unstyled dl dt{font-weight:400;font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.arabic{list-style-type:decimal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.decimal{list-style-type:decimal-leading-zero}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.loweralpha{list-style-type:lower-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperalpha{list-style-type:upper-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowerroman{list-style-type:lower-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperroman{list-style-type:upper-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowergreek{list-style-type:lower-greek}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table{border:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table>tbody>tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table>tbody>tr{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist2{vertical-align:top;padding:0 .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1{font-weight:700;padding-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock+.colist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock+.colist{margin-top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child{padding:.4em .75em 0;line-height:1;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):last-child{padding:.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .thumb{line-height:0;display:inline-block;border:4px solid #fff;box-shadow:0 0 0 1px #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.left{margin:.25em .625em 1.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.right{margin:.25em 0 1.25em .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb{border-width:6px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb>.title{padding:0 .125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-top:.25em;margin-bottom:.25em;display:inline-block;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left{margin-right:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image{text-decoration:none;display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image object{pointer-events:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref{font-size:.875em;position:static;vertical-align:super}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 .75em;border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote{padding:0 .375em 0 .225em;line-height:1.3334;font-size:.875em;margin-left:1.2em;margin-bottom:.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote a:first-of-type{font-weight:700;text-decoration:none;margin-left:-1.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote:last-of-type{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table{border:0;background:#fff;width:100%;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table td.line-data{width:99%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.unbreakable{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .big{font-size:larger}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .small{font-size:smaller}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .underline{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .overline{text-decoration:overline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .line-through{text-decoration:line-through}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua{color:#00bfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua-background{background:#00fafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black-background{background:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue{color:#0000bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue-background{background:#0000fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia{color:#bf00bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia-background{background:#fa00fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray{color:#606060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray-background{background:#7d7d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green{color:#006000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green-background{background:#007d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime{color:#00bf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime-background{background:#00fa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon{color:#600000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon-background{background:#7d0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy{color:#000060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy-background{background:#00007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive{color:#606000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive-background{background:#7d7d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple{color:#600060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple-background{background:#7d007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red{color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red-background{background:#fa0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver{color:#909090}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver-background{background:#bcbcbc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal{color:#006060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal-background{background:#007d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white{color:#bfbfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white-background{background:#fafafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow{color:#bfbf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow-background{background:#fafa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.icon>.fa{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a span.icon>.fa{cursor:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;text-shadow:1px 1px 2px rgba(0,0,0,.5);cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-note:before{content:"\F05A";color:#19407c}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-tip:before{content:"\F0EB";text-shadow:1px 1px 2px rgba(155,155,0,.8);color:#111}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-warning:before{content:"\F071";color:#bf6900}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-caution:before{content:"\F06D";color:#bf3400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-important:before{content:"\F06A";color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]{display:inline-block;color:#fff!important;background:rgba(0,0,0,.8);border-radius:100px;text-align:center;font-size:.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:Open Sans,DejaVu Sans,sans-serif;font-style:normal;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value] *{color:#fff!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]+b{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]:after{content:attr(data-value)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre .conum[data-value]{position:relative;top:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.conum *{color:inherit!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum:not([data-value]):empty{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{letter-spacing:-.01em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content strong{letter-spacing:-.005em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{background:#fffef7;border-color:#e0e0dc;box-shadow:0 1px 4px #e0e0dc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:none!important}@page{.eclipse-jkube__documentation .eclipse-jkube__documentation-content{margin:1.25cm .75cm}}@media print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content *{box-shadow:none!important;text-shadow:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:inherit!important;text-decoration:underline!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.bare,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="#"],.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="mailto:"]{text-decoration:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="http:"]:not(.bare):after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="https:"]:not(.bare):after{content:"(" attr(href) ")";display:inline-block;font-size:.875em;padding-left:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]:after{content:" (" attr(title) ")"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tr{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content thead{display:table-header-group}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{max-width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1em;orphans:3;widows:3}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{page-break-after:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{background:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #dddddf!important;padding-bottom:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details{border:0!important;display:block;padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details span:first-child{margin-left:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br+span:before{content:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #preamble,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book .sect1>h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book h1.sect0{page-break-before:always}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{padding:0 .9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-on-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:block!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-for-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .show-for-print{display:inherit!important}}@media amzn-kf8,print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{margin-top:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:rgba(0,0,0,.6);font-size:.9em}}@media amzn-kf8{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{padding:0}}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content{padding-left:21em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .toc{position:fixed;width:20em;left:0;top:105px;bottom:0;z-index:1000;padding:0 16px;border-right:1px solid #efefed;border-top-width:0!important;border-bottom-width:0!important;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content i.fa{font-style:normal}.eclipse-jkube__quickstarts{padding:0}.eclipse-jkube__quickstarts-item{list-style:none}.eclipse-jkube__quickstarts-item:not(:last-child){margin-bottom:16px}</style><meta name="generator" content="Gatsby 2.30.1"/><title data-react-helmet="true">Eclipse JKube - Demostraciones</title><meta data-react-helmet="true" charSet="UTF-8"/><meta data-react-helmet="true" name="description" content="Eclipse JKube - Demostraciones y guías rápidas para Kubernetes y OpenShift"/><style type="text/css">
.anchor.before {
position: absolute;
top: 0;
@@ -48,7 +48,7 @@
}
}
})
- </script><link as="script" rel="preload" href="/jkube/webpack-runtime-5e7a06a902090b1f37ba.js"/><link as="script" rel="preload" href="/jkube/framework-fd2b85530eec85104a39.js"/><link as="script" rel="preload" href="/jkube/app-d7398b08e923fe8a3caa.js"/><link as="script" rel="preload" href="/jkube/styles-c2fe8482057191dca484.js"/><link as="script" rel="preload" href="/jkube/commons-8b827618f0536ebfeda2.js"/><link as="script" rel="preload" href="/jkube/component---src-templates-main-jsx-456568a5c9ae2c9095ee.js"/><link as="fetch" rel="preload" href="/jkube/page-data/es/demos/page-data.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/jkube/page-data/app-data.json" crossorigin="anonymous"/></head><body><div id="___gatsby"><div style="outline:none" tabindex="-1" id="gatsby-focus-wrapper"><div class="eclipse-jkube"><header class="eclipse-jkube__header"><div class="eclipse-jkube__header-container"><a class="eclipse-jkube__header-logo" href="/jkube/es/demos/es"><div class="eclipse-jkube__header-logo-eclipse-image"><img src="/jkube/static/EF_WHT-OR_png-d0fd43ad31261ee9693a060be920e71e.png" alt="Eclipse Foundation"/></div><div class="eclipse-jkube__header-logo-jkube"><img class="eclipse-jkube__header-logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/><span class="eclipse-jkube__header-trade-mark">™</span></div></a><div class="eclipse-jkube__header-content"><ul><li><a href="/jkube/es/demos/es//docs">Docs</a></li><li><a href="/jkube/es/demos/es//demos">Demos</a></li><li><a href="/jkube/es/demos/es//community">Community</a></li><li><a href="/jkube/es/demos/es//contributing">Contributing</a></li><li><a class="eclipse-jkube__header-stars" href="https://github.com/eclipse/jkube" title="eclipse/jkube" target="_blank" rel="nofollow noopener noreferrer"><img src="https://img.shields.io/github/stars/eclipse/jkube?style=social" alt="eclipse/jkube stargazers"/></a></li></ul></div></div></header><div class="eclipse-jkube__main"><div class="eclipse-jkube__content"><div class="hero">
+ </script><link as="script" rel="preload" href="/jkube/webpack-runtime-b52c77882f7d7b54b2b3.js"/><link as="script" rel="preload" href="/jkube/framework-5e01c8af6b1735c9eaa3.js"/><link as="script" rel="preload" href="/jkube/app-59faa9989d677dd59195.js"/><link as="script" rel="preload" href="/jkube/styles-e9d24b1846c7d6eb9685.js"/><link as="script" rel="preload" href="/jkube/commons-ee34cd715ab4f7da30e0.js"/><link as="script" rel="preload" href="/jkube/component---src-templates-main-jsx-8853cf342e1cf1bead5c.js"/><link as="fetch" rel="preload" href="/jkube/page-data/es/demos/page-data.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/jkube/page-data/app-data.json" crossorigin="anonymous"/></head><body><div id="___gatsby"><div style="outline:none" tabindex="-1" id="gatsby-focus-wrapper"><div class="eclipse-jkube"><header class="eclipse-jkube__header"><div class="eclipse-jkube__header-container"><a class="eclipse-jkube__header-logo" href="/jkube/es/demos/es"><div class="eclipse-jkube__header-logo-eclipse-image"><img src="/jkube/static/EF_WHT-OR_png-d0fd43ad31261ee9693a060be920e71e.png" alt="Eclipse Foundation"/></div><div class="eclipse-jkube__header-logo-jkube"><img class="eclipse-jkube__header-logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/><span class="eclipse-jkube__header-trade-mark">™</span></div></a><div class="eclipse-jkube__header-content"><ul><li><a href="/jkube/es/demos/es//docs">Docs</a></li><li><a href="/jkube/es/demos/es//demos">Demos</a></li><li><a href="/jkube/es/demos/es//community">Community</a></li><li><a href="/jkube/es/demos/es//contributing">Contributing</a></li><li><a class="eclipse-jkube__header-stars" href="https://github.com/eclipse/jkube" title="eclipse/jkube" target="_blank" rel="nofollow noopener noreferrer"><img src="https://img.shields.io/github/stars/eclipse/jkube?style=social" alt="eclipse/jkube stargazers"/></a></li></ul></div></div></header><div class="eclipse-jkube__main"><div class="eclipse-jkube__content"><div class="hero">
<div class="hero-content">
<h1 id="demostraciones" style="position:relative;"><a href="#demostraciones" aria-label="demostraciones permalink" class="anchor before"><svg aria-hidden="true" focusable="false" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a>Demostraciones</h1>
</div>
@@ -56,4 +56,4 @@
<h3 id="kubernetes-maven-plugin" style="position:relative;"><a href="#kubernetes-maven-plugin" aria-label="kubernetes maven plugin permalink" class="anchor before"><svg aria-hidden="true" focusable="false" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a><a href="https://asciinema.org/a/253747" target="_blank" rel="nofollow noopener noreferrer">Kubernetes Maven Plugin</a></h3>
<p><a href="https://asciinema.org/a/335724" target="_blank" rel="nofollow noopener noreferrer"><img src="https://asciinema.org/a/335724.svg" alt="Kubernetes Maven Plugin"></a></p>
<h3 id="openshift-maven-plugin" style="position:relative;"><a href="#openshift-maven-plugin" aria-label="openshift maven plugin permalink" class="anchor before"><svg aria-hidden="true" focusable="false" height="16" version="1.1" viewBox="0 0 16 16" width="16"><path fill-rule="evenodd" d="M4 9h1v1H4c-1.5 0-3-1.69-3-3.5S2.55 3 4 3h4c1.45 0 3 1.69 3 3.5 0 1.41-.91 2.72-2 3.25V8.59c.58-.45 1-1.27 1-2.09C10 5.22 8.98 4 8 4H4c-.98 0-2 1.22-2 2.5S3 9 4 9zm9-3h-1v1h1c1 0 2 1.22 2 2.5S13.98 12 13 12H9c-.98 0-2-1.22-2-2.5 0-.83.42-1.64 1-2.09V6.25c-1.09.53-2 1.84-2 3.25C6 11.31 7.55 13 9 13h4c1.45 0 3-1.69 3-3.5S14.5 6 13 6z"></path></svg></a><a href="https://asciinema.org/a/253742" target="_blank" rel="nofollow noopener noreferrer">OpenShift Maven Plugin</a></h3>
-<p><a href="https://asciinema.org/a/335743" target="_blank" rel="nofollow noopener noreferrer"><img src="https://asciinema.org/a/335743.svg" alt="OpenShift Maven Plugin"></a></p></div></div><div class="eclipse-jkube-footer"><div class="eclipse-jkube-footer__logo-jkube"><a href="/jkube/es/demos/es"><img class="eclipse-jkube-footer__logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/></a><span class="eclipse-jkube-footer__logo-jkube-tagline">Cloud-Native Java Applications without a hassle</span></div><div class="eclipse-jkube-footer__links"><ul class="eclipse-jkube-footer__links-list"><li><a href="/jkube/es/demos/es//docs#getting-started">Get Started</a></li><li><a href="/jkube/es/demos/es//docs">Docs</a></li><li><a href="/jkube/es/demos/es//quickstarts">Quickstarts</a></li><li><a href="/jkube/es/demos/es//docs#katacoda-courses">Katacoda Courses</a></li><li><a href="/jkube/es/demos/es//demos">Demos</a></li></ul><ul class="eclipse-jkube-footer__links-list"><li><a href="/jkube/es/demos/es//community">Community</a></li><li><a href="/jkube/es/demos/es//community#planning-and-meetings">Get Involved</a></li><li><a href="/jkube/es/demos/es//contributing">Contributing</a></li></ul><ul class="eclipse-jkube-footer__links-list"><li><a href="https://www.eclipse.org" target="_blank" rel="nofollow noopener noreferrer">Eclipse Foundation</a></li><li><a href="https://www.eclipse.org/legal/privacy.php" target="_blank" rel="nofollow noopener noreferrer">Privacy Policy</a></li><li><a href="https://www.eclipse.org/legal/termsofuse.php" target="_blank" rel="nofollow noopener noreferrer">Terms of Use</a></li><li><a href="https://www.eclipse.org/legal/copyright.php" target="_blank" rel="nofollow noopener noreferrer">Copyright Agent</a></li><li><a href="https://www.eclipse.org/legal" target="_blank" rel="nofollow noopener noreferrer">Legal Resources</a></li></ul></div><div class="eclipse-jkube-footer__copyright">Copyright © Eclipse Foundation 2020</div></div></div></div><div id="gatsby-announcer" style="position:absolute;top:0;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0" aria-live="assertive" aria-atomic="true"></div></div><script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/es/demos/";/*]]>*/</script><script id="gatsby-chunk-mapping">/*<![CDATA[*/window.___chunkMapping={"polyfill":["/polyfill-88d9aed314b16f9b2adc.js"],"app":["/app-d7398b08e923fe8a3caa.js"],"component---src-pages-quickstarts-index-jsx":["/component---src-pages-quickstarts-index-jsx-a1e42093b41968828647.js"],"component---src-templates-doc-jsx":["/component---src-templates-doc-jsx-5366dbd1b50f3447a412.js"],"component---src-templates-main-jsx":["/component---src-templates-main-jsx-456568a5c9ae2c9095ee.js"]};/*]]>*/</script><script src="/jkube/polyfill-88d9aed314b16f9b2adc.js" nomodule=""></script><script src="/jkube/component---src-templates-main-jsx-456568a5c9ae2c9095ee.js" async=""></script><script src="/jkube/commons-8b827618f0536ebfeda2.js" async=""></script><script src="/jkube/styles-c2fe8482057191dca484.js" async=""></script><script src="/jkube/app-d7398b08e923fe8a3caa.js" async=""></script><script src="/jkube/framework-fd2b85530eec85104a39.js" async=""></script><script src="/jkube/webpack-runtime-5e7a06a902090b1f37ba.js" async=""></script></body></html>
\ No newline at end of file
+<p><a href="https://asciinema.org/a/335743" target="_blank" rel="nofollow noopener noreferrer"><img src="https://asciinema.org/a/335743.svg" alt="OpenShift Maven Plugin"></a></p></div></div><div class="eclipse-jkube-footer"><div class="eclipse-jkube-footer__logo-jkube"><a href="/jkube/es/demos/es"><img class="eclipse-jkube-footer__logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/></a><span class="eclipse-jkube-footer__logo-jkube-tagline">Cloud-Native Java Applications without a hassle</span></div><div class="eclipse-jkube-footer__links"><ul class="eclipse-jkube-footer__links-list"><li><a href="/jkube/es/demos/es//docs#getting-started">Get Started</a></li><li><a href="/jkube/es/demos/es//docs">Docs</a></li><li><a href="/jkube/es/demos/es//quickstarts">Quickstarts</a></li><li><a href="/jkube/es/demos/es//docs#katacoda-courses">Katacoda Courses</a></li><li><a href="/jkube/es/demos/es//demos">Demos</a></li></ul><ul class="eclipse-jkube-footer__links-list"><li><a href="/jkube/es/demos/es//community">Community</a></li><li><a href="/jkube/es/demos/es//community#planning-and-meetings">Get Involved</a></li><li><a href="/jkube/es/demos/es//contributing">Contributing</a></li></ul><ul class="eclipse-jkube-footer__links-list"><li><a href="https://www.eclipse.org" target="_blank" rel="nofollow noopener noreferrer">Eclipse Foundation</a></li><li><a href="https://www.eclipse.org/legal/privacy.php" target="_blank" rel="nofollow noopener noreferrer">Privacy Policy</a></li><li><a href="https://www.eclipse.org/legal/termsofuse.php" target="_blank" rel="nofollow noopener noreferrer">Terms of Use</a></li><li><a href="https://www.eclipse.org/legal/copyright.php" target="_blank" rel="nofollow noopener noreferrer">Copyright Agent</a></li><li><a href="https://www.eclipse.org/legal" target="_blank" rel="nofollow noopener noreferrer">Legal Resources</a></li></ul></div><div class="eclipse-jkube-footer__copyright">Copyright © Eclipse Foundation 2020</div></div></div></div><div id="gatsby-announcer" style="position:absolute;top:0;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0" aria-live="assertive" aria-atomic="true"></div></div><script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/es/demos/";/*]]>*/</script><script id="gatsby-chunk-mapping">/*<![CDATA[*/window.___chunkMapping={"polyfill":["/polyfill-e4957c11759bdfc149d9.js"],"app":["/app-59faa9989d677dd59195.js"],"component---src-pages-quickstarts-index-jsx":["/component---src-pages-quickstarts-index-jsx-8b53e5455e208a3e59b9.js"],"component---src-templates-doc-jsx":["/component---src-templates-doc-jsx-21a94bb36ef3df298f42.js"],"component---src-templates-main-jsx":["/component---src-templates-main-jsx-8853cf342e1cf1bead5c.js"]};/*]]>*/</script><script src="/jkube/polyfill-e4957c11759bdfc149d9.js" nomodule=""></script><script src="/jkube/component---src-templates-main-jsx-8853cf342e1cf1bead5c.js" async=""></script><script src="/jkube/commons-ee34cd715ab4f7da30e0.js" async=""></script><script src="/jkube/styles-e9d24b1846c7d6eb9685.js" async=""></script><script src="/jkube/app-59faa9989d677dd59195.js" async=""></script><script src="/jkube/framework-5e01c8af6b1735c9eaa3.js" async=""></script><script src="/jkube/webpack-runtime-b52c77882f7d7b54b2b3.js" async=""></script></body></html>
\ No newline at end of file
diff --git a/es/index.html b/es/index.html
index 0cc72b6..5db0373 100644
--- a/es/index.html
+++ b/es/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="es"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><style data-href="/jkube/styles.5c9b852c43e28f117cb7.css">@import url(https://fonts.googleapis.com/css?family=Libre+Franklin:100,300,400,600,700,|Roboto:300,400,500,700|Jura);@import url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css);@import url(https://unpkg.com/@coreui/icons/css/brand.min.css);code[class*=language-],pre[class*=language-]{color:#657b83;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-ms-hyphens:none;hyphens:none}code[class*=language-]::selection,code[class*=language-] ::selection,pre[class*=language-]::selection,pre[class*=language-] ::selection{background:#073642}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;border-radius:.3em}:not(pre)>code[class*=language-],pre[class*=language-]{background-color:#fdf6e3}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#93a1a1}.token.punctuation{color:#586e75}.token.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#268bd2}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string,.token.url{color:#2aa198}.token.entity{color:#657b83;background:#eee8d5}.token.atrule,.token.attr-value,.token.keyword{color:#859900}.token.class-name,.token.function{color:#b58900}.token.important,.token.regex,.token.variable{color:#cb4b16}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body,html{font-family:Libre Franklin,Roboto,sans-serif}body{margin:0;padding:0;outline:0;background:#f1f2f2;font-size:16px;color:#222}h1{font-size:3rem}h1,h2{margin-top:0;font-family:Roboto,sans-serif;font-weight:300}h2{font-size:2rem}h3{font-size:1.5rem;font-weight:300}a{color:#525c86}a:focus,a:hover{color:#222}.eclipse-jkube-footer{padding:16px;border-top:10px solid #222;background-color:#292c2f;font-size:19.2px;font-family:Roboto,sans-serif;font-weight:300;line-height:1.5}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube{display:flex;flex-direction:column;max-width:1170px;margin:0 auto 16px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-image{width:160px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-tagline{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links{max-width:1170px;margin:0 auto 16px;display:flex;flex-wrap:wrap}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list{padding:0;margin:0 48px 16px 0;list-style:none}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a{transition:color .1s linear;color:#f1f2f2}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a,.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a:hover{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a:hover{color:#525c86}.eclipse-jkube-footer .eclipse-jkube-footer__links a{text-decoration:none}.eclipse-jkube-footer .eclipse-jkube-footer__copyright{max-width:1170px;margin:0 auto 16px;font-family:Roboto,sans-serif;color:#939598}.eclipse-jkube__header{display:block;position:relative;height:175px;background-color:#292c2f}@media (min-width:700px){.eclipse-jkube__header{height:105px}}.eclipse-jkube__header .eclipse-jkube__header-trade-mark{font-size:.5em;font-size:.3em;line-height:2.5;vertical-align:top}.eclipse-jkube__header .eclipse-jkube__header-container{position:relative;margin:0 auto;padding:0 16px;height:100%;max-width:1170px}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-container{display:flex;flex-wrap:nowrap;height:105px}}.eclipse-jkube__header .eclipse-jkube__header-logo{display:flex;justify-content:center;align-items:center;font-size:32px;font-weight:400;color:#f1f2f2}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo{font-size:50px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:65px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:90px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image img{max-height:100%;max-width:100%}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:50px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:65px}}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube-image{height:100%}.eclipse-jkube__header .eclipse-jkube__header-logo:hover{color:#f1f2f2}.eclipse-jkube__header .eclipse-jkube__header-content{flex:1 0;min-width:1px;display:flex;justify-content:center;align-items:center}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-content{justify-content:flex-end}}.eclipse-jkube__header .eclipse-jkube__header-content ul{display:flex;flex-wrap:wrap;align-items:center;justify-content:center}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-content ul{justify-content:flex-start}}.eclipse-jkube__header .eclipse-jkube__header-content ul li{margin:4px 0;padding-right:16px;list-style:none;color:#f1f2f2;font-size:20px}.eclipse-jkube__header .eclipse-jkube__header-content .eclipse-jkube__header-stars{display:block;width:85px;height:20px;line-height:20px}.eclipse-jkube__header a{color:#f1f2f2;text-decoration:none}.eclipse-jkube__header a:hover{color:#dd8623;transition:color .3s}.quick-start-card{border:1px solid #d6d6d6;padding:16px}.quick-start-card .quick-start-card__title{margin:0;padding:0}.quick-start-card .quick-start-card__title a{text-decoration:none}.quick-start-card .quick-start-card__title a:active,.quick-start-card .quick-start-card__title a:hover{text-decoration:underline}.quick-start-card .quick-start-card__technologies{margin:16px 0 0;padding:0}.quick-start-card .quick-start-card__technologies-item{display:inline-flex;align-items:center;padding:.25rem .3rem;border-radius:.2rem;font-size:.8rem;margin:0 0 .5rem;background:#dd8623;color:#222}.quick-start-card .quick-start-card__technologies-item:not(:last-child){margin-right:.5rem}.quick-start-card .quick-start-card__technologies-item-icon{display:inline-block;height:.8rem;margin-right:.2rem}.quick-start-card .quick-start-card__description p{margin-top:0}.quick-start-card .quick-start-card__links a{display:inline-block;text-decoration:none;padding:.3rem .5rem;border-radius:.2rem;border:1px solid #d6d6d6;background:#d6d6d6;color:#222}.quick-start-card .quick-start-card__links a:active,.quick-start-card .quick-start-card__links a:hover{background-color:#f1f2f2}.eclipse-jkube{display:flex;flex-direction:column;min-height:100vh}.eclipse-jkube__main{flex:1 1}@media (min-width:1170px){.eclipse-jkube__main{overflow-x:hidden}}.eclipse-jkube__main .eclipse-jkube__content{margin:0 16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content{max-width:1154px;margin:0 auto}}.eclipse-jkube__main .eclipse-jkube__content img{max-width:100%}.eclipse-jkube__main .eclipse-jkube__content :not(pre)>code[class*=language-],.eclipse-jkube__main .eclipse-jkube__content pre[class*=language-]{background-color:transparent}.eclipse-jkube__main .eclipse-jkube__content .hero{margin:0 -16px 16px;display:block;background-color:#272727;background-image:url(/jkube/static/cubes-8e1e59c337437947105e6668f1f3790a.jpg);background-size:cover;color:#f1f2f2}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px;background-color:rgba(39,39,39,.7)}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px calc((100% - 1170px)/2)}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content .getting-involved{color:#f1f2f2;margin:0 -16px;padding:0 16px;display:flex;justify-content:flex-end}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content h1{font-size:2.5rem;font-family:Libre Franklin,Roboto,sans-serif;font-weight:400}.eclipse-jkube__main .eclipse-jkube__content .section-dark{background-color:#404040;color:#f1f2f2;margin:0 -16px;padding:16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;padding:16px calc((100% - 1170px)/2)}}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark>*{padding:0 calc((100% - 1170px)/2)}}.eclipse-jkube__main .eclipse-jkube__content .highlight{display:flex;align-items:center}.eclipse-jkube__main .eclipse-jkube__content .highlight>p{margin:16px 32px;display:none}@media (min-width:501px){.eclipse-jkube__main .eclipse-jkube__content .highlight>p{display:block}}.eclipse-jkube__main .eclipse-jkube__content .highlight>p img{max-width:100px}.eclipse-jkube__main .eclipse-jkube__content .highlight-description{flex:1 1;min-width:1px}.eclipse-jkube__main .eclipse-jkube__content .highlight ul{flex:1 1;min-width:1px;margin:0;padding:0}.eclipse-jkube__main .eclipse-jkube__content .highlight li{list-style:none;margin:16px 0}.eclipse-jkube__main .eclipse-jkube__content .calendar{position:relative;overflow:hidden;padding-bottom:75%;margin-bottom:16px}@media (min-width:666.66667px){.eclipse-jkube__main .eclipse-jkube__content .calendar{padding-bottom:0;height:500px}}.eclipse-jkube__main .eclipse-jkube__content .calendar iframe{position:absolute;top:0;height:100%;max-height:500px;width:100%}.eclipse-jkube__documentation{margin:0}@media screen and (min-width:768px){.eclipse-jkube__documentation{position:absolute;top:105px;bottom:0;width:100%;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content{position:relative;padding:16px;overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content article,.eclipse-jkube__documentation .eclipse-jkube__documentation-content aside,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figcaption,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure,.eclipse-jkube__documentation .eclipse-jkube__documentation-content footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content header,.eclipse-jkube__documentation .eclipse-jkube__documentation-content hgroup,.eclipse-jkube__documentation .eclipse-jkube__documentation-content main,.eclipse-jkube__documentation .eclipse-jkube__documentation-content nav,.eclipse-jkube__documentation .eclipse-jkube__documentation-content section{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio,.eclipse-jkube__documentation .eclipse-jkube__documentation-content video{display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio:not([controls]){display:none;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus{outline:thin dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{outline:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2em;margin:.67em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]{border-bottom:1px dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dfn{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{box-sizing:content-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content mark{background:#ff0;color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content samp{font-family:monospace;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{white-space:pre-wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content q{quotes:"\201C" "\201D" "\2018" "\2019"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub{bottom:-.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg:not(:root){overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure{margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content legend{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select,.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{font-family:inherit;font-size:100%;margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input{line-height:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[type=button],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=reset],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=submit]{-webkit-appearance:button;cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button[disabled],.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[disabled]{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=checkbox],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=radio]{box-sizing:border-box;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button::-moz-focus-inner,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input::-moz-focus-inner{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{overflow:auto;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{border-collapse:collapse;border-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content *,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :before{box-sizing:border-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body{background:#fff;color:rgba(0,0,0,.8);padding:0;margin:0;font-family:"Noto Serif","DejaVu Serif",serif;font-weight:400;font-style:normal;line-height:1;position:relative;cursor:auto;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{max-width:100%;height:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{height:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{-ms-interpolation-mode:bicubic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .left{float:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .right{float:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-left{text-align:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-right{text-align:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-center{text-align:center!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-justify{text-align:justify!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{display:inline-block;vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{height:auto;min-height:50px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .center{margin-left:auto;margin-right:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stretch{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .subheader,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{line-height:1.45;color:#7a2518;font-weight:400;margin-top:0;margin-bottom:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content div,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content form,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6,.eclipse-jkube__documentation .eclipse-jkube__documentation-content li,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin:0;padding:0;direction:ltr}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:#2156a5;text-decoration:underline;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{color:#1d4b8f}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{font-family:inherit;font-weight:400;font-size:1em;line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p aside{font-size:.875em;line-height:1.35;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-family:Open Sans,DejaVu Sans,sans-serif;font-weight:300;font-style:normal;color:#ba3925;text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:.5em;line-height:1.0125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 small{font-size:60%;color:#e99b8f;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5{font-size:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{border:solid #dddddf;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em,.eclipse-jkube__documentation .eclipse-jkube__documentation-content i{font-style:italic;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b,.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong{font-weight:700;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:60%;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;font-weight:400;color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{font-size:1em;line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ul{margin-left:1.25em;margin-bottom:0;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square li ul{list-style:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square{list-style-type:square}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle{list-style-type:circle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc{list-style-type:disc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ul{margin-left:1.25em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dt{margin-bottom:.3125em;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content acronym{text-transform:uppercase;font-size:90%;color:rgba(0,0,0,.8);border-bottom:1px dotted #ddd;cursor:help}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote{margin:0 0 1.25em;padding:.5625em 1.25em 0 1.1875em;border-left:1px solid #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite{display:block;font-size:.9375em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite:before{content:"\2014 "}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a:visited{color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote p{line-height:1.6;color:rgba(0,0,0,.85)}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:2.3125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4{font-size:1.4375em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{background:#fff;margin-bottom:1.25em;border:1px solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead{background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th{padding:.5em .625em .625em;font-size:inherit;color:rgba(0,0,0,.8);text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr th{padding:.5625em .625em;font-size:inherit;color:rgba(0,0,0,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.even{background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tbody tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td{display:table-cell;line-height:1.6}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2;word-spacing:-.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre):not([class^=L])>code{font-size:.9375em;font-style:normal!important;letter-spacing:0;padding:.1em .5ex;word-spacing:-.15em;background:#f7f7f8;border-radius:4px;line-height:1.45;text-rendering:optimizeSpeed;word-wrap:break-word}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nobreak{word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nowrap{white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{color:rgba(0,0,0,.9);font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;line-height:1.45;text-rendering:optimizeSpeed}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre pre{color:inherit;font-size:inherit;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre>code{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap pre{white-space:pre;word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em em{font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq{color:rgba(51,51,51,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;display:inline-block;color:rgba(0,0,0,.8);font-size:.65em;line-height:1.45;background:#f7f7f7;border:1px solid #ccc;border-radius:3px;box-shadow:0 1px 0 rgba(0,0,0,.2),inset 0 0 0 .1em #fff;margin:0 .15em;padding:.2em .5em;vertical-align:middle;position:relative;top:-.1em;white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:first-child{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:last-child{margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b:not(.caret){font-weight:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{word-spacing:-.02em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b.caret{font-size:1.25em;line-height:.8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq i.caret{font-weight:700;text-align:center;width:.45em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{position:relative;top:-1px;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{content:"[";padding:0 3px 0 2px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after{content:"]";padding:0 2px 0 3px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p a>code:hover{color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{width:100%;margin:0 auto;max-width:62.5em;*zoom:1;position:relative;padding-left:.9375em;padding-right:.9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-top:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before{content:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{color:rgba(0,0,0,.85);margin-top:2.25rem;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child+#toc{margin-top:8px;border-top:1px solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:only-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #dddddf;padding-bottom:8px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details{border-bottom:1px solid #dddddf;line-height:1.45;padding-top:.25em;padding-bottom:.25em;padding-left:.25em;color:rgba(0,0,0,.6);display:flex;flex-flow:row wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span:first-child{margin-left:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span.email a{color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span:before{content:"\A0\2013\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span.author:before{content:"\A0\22C5\A0";color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span#revremark:before{content:"\A0|\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber{text-transform:capitalize}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber:after{content:"\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content>h1:first-child:not([class]){color:rgba(0,0,0,.85);border-bottom:1px solid #dddddf;padding-bottom:8px;margin-top:0;padding-top:1rem;margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #e7e7e9;padding-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc>ul{margin-left:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0>li>a{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0 ul.sectlevel1{margin:.5em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul{font-family:Open Sans,DejaVu Sans,sans-serif;list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc li{line-height:1.3334;margin-top:.3334em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{color:#7a2518;font-size:1.2em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:15em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{margin-top:0!important;background:#f8f8f7;position:fixed;width:15em;left:0;top:0;border-right:1px solid #e7e7e9;border-top-width:0!important;border-bottom-width:0!important;z-index:1000;padding:1.25em 1em;height:100%;overflow:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{margin-top:0;margin-bottom:.8rem;font-size:1.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.9em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{margin-left:0;padding-left:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:.5em;margin-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:15em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right #toc.toc2{border-right-width:0;border-left:1px solid #e7e7e9;left:auto;right:0}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:20em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{width:20em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.95em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{padding-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:20em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc{border:1px solid #e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{max-width:100%;background:rgba(0,0,0,.8);padding:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:hsla(0,0%,100%,.8);line-height:1.44}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:.625em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:1.25em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1:last-child{padding-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border-top:1px solid #e7e7e9}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:before{content:"\A7";font-size:.85em;display:block;padding-top:.1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:hover{visibility:visible}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link{color:#ba3925;text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link:hover{color:#a53221}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content details>summary:first-of-type{cursor:pointer;display:list-item;outline:none;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{text-rendering:optimizeLegibility;text-align:left;font-family:"Noto Serif","DejaVu Serif",serif;font-size:1rem;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock.fit-content>caption.title{white-space:nowrap;width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #preamble>.sectionbody>[class=paragraph]:first-of-type p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph.lead>p{font-size:1.21875em;line-height:1.6;color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock #preamble>.sectionbody>[class=paragraph]:first-of-type p{font-size:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon{text-align:center;width:80px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon .title{font-weight:700;font-family:Open Sans,DejaVu Sans,sans-serif;text-transform:uppercase}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content{padding-left:1.125em;padding-right:1.25em;border-left:1px solid #dddddf;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{border:1px solid #e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#fff;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{border:1px solid #dbdbd6;margin-bottom:1.25em;padding:1.25em;background:#f3f3f2;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title{color:#7a2518;margin-top:0;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{border-radius:4px;word-wrap:break-word;overflow-x:auto;padding:1em;font-size:.8125em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:.90625em}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:1em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre:not(.highlight),.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class=highlight],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class^="highlight "],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock.output pre{color:#f7f7f8;background:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content{position:relative}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:none;content:attr(data-lang);position:absolute;font-size:.75em;top:.425rem;right:.5rem;line-height:1;text-transform:uppercase;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock:hover code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:before{content:attr(data-prompt);padding-right:.5em;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:not([data-prompt]):before{content:"$"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs{padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs>code{padding:1em;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.prettyprint{border-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .prettyprint{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint .linenums{line-height:1.45;margin-left:2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li{background:none;list-style-type:inherit;padding-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li code[data-lang]:before{opacity:1}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li:not(:first-child) code[data-lang]:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable{border-collapse:separate;border:0;margin-bottom:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td[class]{color:inherit;vertical-align:top;padding:0;line-height:inherit;white-space:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.code{padding-left:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.linenos{border-right:1px solid;opacity:.35;padding-right:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno{border-right:1px solid;opacity:.35;display:inline-block;margin-right:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno:before{content:"";margin-right:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock{margin:0 1em 1.25em 1.5em;display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock:not(.excerpt)>.title{margin-left:-1.5em;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock p{color:rgba(0,0,0,.85);font-size:1.15rem;line-height:1.75;word-spacing:.1em;letter-spacing:0;font-style:italic;text-align:justify}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote{margin:0;padding:0;border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote:before{content:"\201C";float:left;font-size:2.75em;font-weight:700;line-height:.6em;margin-left:-.6em;color:#7a2518;text-shadow:0 1px 2px rgba(0,0,0,.1)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote>.paragraph:last-child p{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution{margin-top:.75em;margin-right:.5ex;text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock{margin:0 1em 1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre{font-family:Open Sans,DejaVu Sans,sans;font-size:1.15rem;color:rgba(0,0,0,.85);font-weight:300;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{margin-top:1.25rem;margin-left:.5ex}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{font-size:.9375em;line-height:1.45;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution br,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution cite,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution cite{display:block;letter-spacing:-.025em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{line-height:1.6;word-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract{margin:0 1em 1.25em;display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract>.title{margin:0 0 .375em;font-size:1.15em;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt>blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{padding:0 0 .25em 1em;border-left:.25em solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{color:inherit;font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock .attribution{color:inherit;text-align:left;margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock{max-width:100%;border-collapse:separate}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child{margin-bottom:-1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child.sidebarblock{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{border:0 solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead>tr>.tableblock{border-width:0 1px 1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tfoot>tr>.tableblock{border-width:1px 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock{border-width:0 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead>tr>.tableblock{border-width:0 0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tfoot>tr>.tableblock{border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>*>tr>.tableblock:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock:last-child{border-right-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead:last-child>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead:last-child>tr>.tableblock{border-bottom-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-all{border-width:1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-sides{border-width:0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-ends,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-topbot{border-width:1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-all tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-even tr:nth-of-type(2n),.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-hover tr:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-odd tr:nth-of-type(odd){background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-left{text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-right,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-right{text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-center,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-center{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-top,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-top{vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-bottom,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-bottom{vertical-align:bottom}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-middle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-middle{vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead th{font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th{display:table-cell;line-height:1.6;background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th p{color:rgba(0,0,0,.8);font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock>code:only-child{background:none;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol{margin-left:1.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-left:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul dd{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-check-square-o:first-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-square-o:first-child{width:1.25em;font-size:.8em;position:relative;bottom:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>input[type=checkbox]:first-child{margin-right:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline{display:flex;flex-flow:row wrap;list-style:none;margin:0 0 .625em -1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline>li{margin-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .unstyled dl dt{font-weight:400;font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.arabic{list-style-type:decimal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.decimal{list-style-type:decimal-leading-zero}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.loweralpha{list-style-type:lower-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperalpha{list-style-type:upper-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowerroman{list-style-type:lower-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperroman{list-style-type:upper-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowergreek{list-style-type:lower-greek}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table{border:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table>tbody>tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table>tbody>tr{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist2{vertical-align:top;padding:0 .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1{font-weight:700;padding-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock+.colist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock+.colist{margin-top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child{padding:.4em .75em 0;line-height:1;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):last-child{padding:.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .thumb{line-height:0;display:inline-block;border:4px solid #fff;box-shadow:0 0 0 1px #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.left{margin:.25em .625em 1.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.right{margin:.25em 0 1.25em .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb{border-width:6px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb>.title{padding:0 .125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-top:.25em;margin-bottom:.25em;display:inline-block;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left{margin-right:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image{text-decoration:none;display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image object{pointer-events:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref{font-size:.875em;position:static;vertical-align:super}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 .75em;border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote{padding:0 .375em 0 .225em;line-height:1.3334;font-size:.875em;margin-left:1.2em;margin-bottom:.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote a:first-of-type{font-weight:700;text-decoration:none;margin-left:-1.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote:last-of-type{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table{border:0;background:#fff;width:100%;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table td.line-data{width:99%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.unbreakable{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .big{font-size:larger}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .small{font-size:smaller}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .underline{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .overline{text-decoration:overline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .line-through{text-decoration:line-through}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua{color:#00bfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua-background{background:#00fafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black-background{background:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue{color:#0000bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue-background{background:#0000fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia{color:#bf00bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia-background{background:#fa00fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray{color:#606060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray-background{background:#7d7d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green{color:#006000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green-background{background:#007d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime{color:#00bf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime-background{background:#00fa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon{color:#600000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon-background{background:#7d0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy{color:#000060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy-background{background:#00007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive{color:#606000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive-background{background:#7d7d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple{color:#600060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple-background{background:#7d007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red{color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red-background{background:#fa0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver{color:#909090}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver-background{background:#bcbcbc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal{color:#006060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal-background{background:#007d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white{color:#bfbfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white-background{background:#fafafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow{color:#bfbf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow-background{background:#fafa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.icon>.fa{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a span.icon>.fa{cursor:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;text-shadow:1px 1px 2px rgba(0,0,0,.5);cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-note:before{content:"\F05A";color:#19407c}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-tip:before{content:"\F0EB";text-shadow:1px 1px 2px rgba(155,155,0,.8);color:#111}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-warning:before{content:"\F071";color:#bf6900}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-caution:before{content:"\F06D";color:#bf3400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-important:before{content:"\F06A";color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]{display:inline-block;color:#fff!important;background:rgba(0,0,0,.8);border-radius:100px;text-align:center;font-size:.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:Open Sans,DejaVu Sans,sans-serif;font-style:normal;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value] *{color:#fff!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]+b{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]:after{content:attr(data-value)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre .conum[data-value]{position:relative;top:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.conum *{color:inherit!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum:not([data-value]):empty{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{letter-spacing:-.01em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content strong{letter-spacing:-.005em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{background:#fffef7;border-color:#e0e0dc;box-shadow:0 1px 4px #e0e0dc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:none!important}@page{.eclipse-jkube__documentation .eclipse-jkube__documentation-content{margin:1.25cm .75cm}}@media print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content *{box-shadow:none!important;text-shadow:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:inherit!important;text-decoration:underline!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.bare,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="#"],.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="mailto:"]{text-decoration:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="http:"]:not(.bare):after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="https:"]:not(.bare):after{content:"(" attr(href) ")";display:inline-block;font-size:.875em;padding-left:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]:after{content:" (" attr(title) ")"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tr{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content thead{display:table-header-group}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{max-width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1em;orphans:3;widows:3}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{page-break-after:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{background:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #dddddf!important;padding-bottom:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details{border:0!important;display:block;padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details span:first-child{margin-left:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br+span:before{content:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #preamble,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book .sect1>h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book h1.sect0{page-break-before:always}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{padding:0 .9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-on-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:block!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-for-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .show-for-print{display:inherit!important}}@media amzn-kf8,print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{margin-top:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:rgba(0,0,0,.6);font-size:.9em}}@media amzn-kf8{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{padding:0}}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content{padding-left:21em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .toc{position:fixed;width:20em;left:0;top:105px;bottom:0;z-index:1000;padding:0 16px;border-right:1px solid #efefed;border-top-width:0!important;border-bottom-width:0!important;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content i.fa{font-style:normal}.eclipse-jkube__quickstarts{padding:0}.eclipse-jkube__quickstarts-item{list-style:none}.eclipse-jkube__quickstarts-item:not(:last-child){margin-bottom:16px}</style><meta name="generator" content="Gatsby 2.24.12"/><title data-react-helmet="true">Eclipse JKube</title><meta data-react-helmet="true" charSet="UTF-8"/><meta data-react-helmet="true" name="description" content="Página de bienvenida de JKube"/><style type="text/css">
+<!DOCTYPE html><html lang="es"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><style data-href="/jkube/styles.5c9b852c43e28f117cb7.css" id="gatsby-global-css">@import url(https://fonts.googleapis.com/css?family=Libre+Franklin:100,300,400,600,700,|Roboto:300,400,500,700|Jura);@import url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css);@import url(https://unpkg.com/@coreui/icons/css/brand.min.css);code[class*=language-],pre[class*=language-]{color:#657b83;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-ms-hyphens:none;hyphens:none}code[class*=language-]::selection,code[class*=language-] ::selection,pre[class*=language-]::selection,pre[class*=language-] ::selection{background:#073642}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;border-radius:.3em}:not(pre)>code[class*=language-],pre[class*=language-]{background-color:#fdf6e3}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#93a1a1}.token.punctuation{color:#586e75}.token.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#268bd2}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string,.token.url{color:#2aa198}.token.entity{color:#657b83;background:#eee8d5}.token.atrule,.token.attr-value,.token.keyword{color:#859900}.token.class-name,.token.function{color:#b58900}.token.important,.token.regex,.token.variable{color:#cb4b16}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body,html{font-family:Libre Franklin,Roboto,sans-serif}body{margin:0;padding:0;outline:0;background:#f1f2f2;font-size:16px;color:#222}h1{font-size:3rem}h1,h2{margin-top:0;font-family:Roboto,sans-serif;font-weight:300}h2{font-size:2rem}h3{font-size:1.5rem;font-weight:300}a{color:#525c86}a:focus,a:hover{color:#222}.eclipse-jkube-footer{padding:16px;border-top:10px solid #222;background-color:#292c2f;font-size:19.2px;font-family:Roboto,sans-serif;font-weight:300;line-height:1.5}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube{display:flex;flex-direction:column;max-width:1170px;margin:0 auto 16px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-image{width:160px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-tagline{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links{max-width:1170px;margin:0 auto 16px;display:flex;flex-wrap:wrap}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list{padding:0;margin:0 48px 16px 0;list-style:none}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a{transition:color .1s linear;color:#f1f2f2}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a,.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a:hover{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a:hover{color:#525c86}.eclipse-jkube-footer .eclipse-jkube-footer__links a{text-decoration:none}.eclipse-jkube-footer .eclipse-jkube-footer__copyright{max-width:1170px;margin:0 auto 16px;font-family:Roboto,sans-serif;color:#939598}.eclipse-jkube__header{display:block;position:relative;height:175px;background-color:#292c2f}@media (min-width:700px){.eclipse-jkube__header{height:105px}}.eclipse-jkube__header .eclipse-jkube__header-trade-mark{font-size:.5em;font-size:.3em;line-height:2.5;vertical-align:top}.eclipse-jkube__header .eclipse-jkube__header-container{position:relative;margin:0 auto;padding:0 16px;height:100%;max-width:1170px}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-container{display:flex;flex-wrap:nowrap;height:105px}}.eclipse-jkube__header .eclipse-jkube__header-logo{display:flex;justify-content:center;align-items:center;font-size:32px;font-weight:400;color:#f1f2f2}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo{font-size:50px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:65px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:90px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image img{max-height:100%;max-width:100%}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:50px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:65px}}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube-image{height:100%}.eclipse-jkube__header .eclipse-jkube__header-logo:hover{color:#f1f2f2}.eclipse-jkube__header .eclipse-jkube__header-content{flex:1 0;min-width:1px;display:flex;justify-content:center;align-items:center}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-content{justify-content:flex-end}}.eclipse-jkube__header .eclipse-jkube__header-content ul{display:flex;flex-wrap:wrap;align-items:center;justify-content:center}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-content ul{justify-content:flex-start}}.eclipse-jkube__header .eclipse-jkube__header-content ul li{margin:4px 0;padding-right:16px;list-style:none;color:#f1f2f2;font-size:20px}.eclipse-jkube__header .eclipse-jkube__header-content .eclipse-jkube__header-stars{display:block;width:85px;height:20px;line-height:20px}.eclipse-jkube__header a{color:#f1f2f2;text-decoration:none}.eclipse-jkube__header a:hover{color:#dd8623;transition:color .3s}.quick-start-card{border:1px solid #d6d6d6;padding:16px}.quick-start-card .quick-start-card__title{margin:0;padding:0}.quick-start-card .quick-start-card__title a{text-decoration:none}.quick-start-card .quick-start-card__title a:active,.quick-start-card .quick-start-card__title a:hover{text-decoration:underline}.quick-start-card .quick-start-card__technologies{margin:16px 0 0;padding:0}.quick-start-card .quick-start-card__technologies-item{display:inline-flex;align-items:center;padding:.25rem .3rem;border-radius:.2rem;font-size:.8rem;margin:0 0 .5rem;background:#dd8623;color:#222}.quick-start-card .quick-start-card__technologies-item:not(:last-child){margin-right:.5rem}.quick-start-card .quick-start-card__technologies-item-icon{display:inline-block;height:.8rem;margin-right:.2rem}.quick-start-card .quick-start-card__description p{margin-top:0}.quick-start-card .quick-start-card__links a{display:inline-block;text-decoration:none;padding:.3rem .5rem;border-radius:.2rem;border:1px solid #d6d6d6;background:#d6d6d6;color:#222}.quick-start-card .quick-start-card__links a:active,.quick-start-card .quick-start-card__links a:hover{background-color:#f1f2f2}.eclipse-jkube{display:flex;flex-direction:column;min-height:100vh}.eclipse-jkube__main{flex:1 1}@media (min-width:1170px){.eclipse-jkube__main{overflow-x:hidden}}.eclipse-jkube__main .eclipse-jkube__content{margin:0 16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content{max-width:1154px;margin:0 auto}}.eclipse-jkube__main .eclipse-jkube__content img{max-width:100%}.eclipse-jkube__main .eclipse-jkube__content :not(pre)>code[class*=language-],.eclipse-jkube__main .eclipse-jkube__content pre[class*=language-]{background-color:transparent}.eclipse-jkube__main .eclipse-jkube__content .hero{margin:0 -16px 16px;display:block;background-color:#272727;background-image:url(/jkube/static/cubes-8e1e59c337437947105e6668f1f3790a.jpg);background-size:cover;color:#f1f2f2}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px;background-color:rgba(39,39,39,.7)}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px calc(50% - 585px)}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content .getting-involved{color:#f1f2f2;margin:0 -16px;padding:0 16px;display:flex;justify-content:flex-end}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content h1{font-size:2.5rem;font-family:Libre Franklin,Roboto,sans-serif;font-weight:400}.eclipse-jkube__main .eclipse-jkube__content .section-dark{background-color:#404040;color:#f1f2f2;margin:0 -16px;padding:16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;padding:16px calc(50% - 585px)}}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark>*{padding:0 calc(50% - 585px)}}.eclipse-jkube__main .eclipse-jkube__content .highlight{display:flex;align-items:center}.eclipse-jkube__main .eclipse-jkube__content .highlight>p{margin:16px 32px;display:none}@media (min-width:501px){.eclipse-jkube__main .eclipse-jkube__content .highlight>p{display:block}}.eclipse-jkube__main .eclipse-jkube__content .highlight>p img{max-width:100px}.eclipse-jkube__main .eclipse-jkube__content .highlight-description{flex:1 1;min-width:1px}.eclipse-jkube__main .eclipse-jkube__content .highlight ul{flex:1 1;min-width:1px;margin:0;padding:0}.eclipse-jkube__main .eclipse-jkube__content .highlight li{list-style:none;margin:16px 0}.eclipse-jkube__main .eclipse-jkube__content .calendar{position:relative;overflow:hidden;padding-bottom:75%;margin-bottom:16px}@media (min-width:666.66667px){.eclipse-jkube__main .eclipse-jkube__content .calendar{padding-bottom:0;height:500px}}.eclipse-jkube__main .eclipse-jkube__content .calendar iframe{position:absolute;top:0;height:100%;max-height:500px;width:100%}.eclipse-jkube__documentation{margin:0}@media screen and (min-width:768px){.eclipse-jkube__documentation{position:absolute;top:105px;bottom:0;width:100%;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content{position:relative;padding:16px;overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content article,.eclipse-jkube__documentation .eclipse-jkube__documentation-content aside,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figcaption,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure,.eclipse-jkube__documentation .eclipse-jkube__documentation-content footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content header,.eclipse-jkube__documentation .eclipse-jkube__documentation-content hgroup,.eclipse-jkube__documentation .eclipse-jkube__documentation-content main,.eclipse-jkube__documentation .eclipse-jkube__documentation-content nav,.eclipse-jkube__documentation .eclipse-jkube__documentation-content section{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio,.eclipse-jkube__documentation .eclipse-jkube__documentation-content video{display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio:not([controls]){display:none;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus{outline:thin dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{outline:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2em;margin:.67em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]{border-bottom:1px dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dfn{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{box-sizing:content-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content mark{background:#ff0;color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content samp{font-family:monospace;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{white-space:pre-wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content q{quotes:"\201C" "\201D" "\2018" "\2019"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub{bottom:-.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg:not(:root){overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure{margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content legend{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select,.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{font-family:inherit;font-size:100%;margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input{line-height:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[type=button],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=reset],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=submit]{-webkit-appearance:button;cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button[disabled],.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[disabled]{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=checkbox],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=radio]{box-sizing:border-box;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button::-moz-focus-inner,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input::-moz-focus-inner{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{overflow:auto;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{border-collapse:collapse;border-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content *,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :before{box-sizing:border-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body{background:#fff;color:rgba(0,0,0,.8);padding:0;margin:0;font-family:"Noto Serif","DejaVu Serif",serif;font-weight:400;font-style:normal;line-height:1;position:relative;cursor:auto;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{max-width:100%;height:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{height:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{-ms-interpolation-mode:bicubic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .left{float:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .right{float:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-left{text-align:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-right{text-align:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-center{text-align:center!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-justify{text-align:justify!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{display:inline-block;vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{height:auto;min-height:50px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .center{margin-left:auto;margin-right:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stretch{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .subheader,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{line-height:1.45;color:#7a2518;font-weight:400;margin-top:0;margin-bottom:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content div,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content form,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6,.eclipse-jkube__documentation .eclipse-jkube__documentation-content li,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin:0;padding:0;direction:ltr}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:#2156a5;text-decoration:underline;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{color:#1d4b8f}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{font-family:inherit;font-weight:400;font-size:1em;line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p aside{font-size:.875em;line-height:1.35;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-family:Open Sans,DejaVu Sans,sans-serif;font-weight:300;font-style:normal;color:#ba3925;text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:.5em;line-height:1.0125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 small{font-size:60%;color:#e99b8f;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5{font-size:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{border:solid #dddddf;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em,.eclipse-jkube__documentation .eclipse-jkube__documentation-content i{font-style:italic;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b,.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong{font-weight:700;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:60%;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;font-weight:400;color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{font-size:1em;line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ul{margin-left:1.25em;margin-bottom:0;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square li ul{list-style:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square{list-style-type:square}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle{list-style-type:circle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc{list-style-type:disc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ul{margin-left:1.25em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dt{margin-bottom:.3125em;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content acronym{text-transform:uppercase;font-size:90%;color:rgba(0,0,0,.8);border-bottom:1px dotted #ddd;cursor:help}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote{margin:0 0 1.25em;padding:.5625em 1.25em 0 1.1875em;border-left:1px solid #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite{display:block;font-size:.9375em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite:before{content:"\2014 "}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a:visited{color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote p{line-height:1.6;color:rgba(0,0,0,.85)}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:2.3125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4{font-size:1.4375em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{background:#fff;margin-bottom:1.25em;border:1px solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead{background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th{padding:.5em .625em .625em;font-size:inherit;color:rgba(0,0,0,.8);text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr th{padding:.5625em .625em;font-size:inherit;color:rgba(0,0,0,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.even{background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tbody tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td{display:table-cell;line-height:1.6}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2;word-spacing:-.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre):not([class^=L])>code{font-size:.9375em;font-style:normal!important;letter-spacing:0;padding:.1em .5ex;word-spacing:-.15em;background:#f7f7f8;border-radius:4px;line-height:1.45;text-rendering:optimizeSpeed;word-wrap:break-word}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nobreak{word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nowrap{white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{color:rgba(0,0,0,.9);font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;line-height:1.45;text-rendering:optimizeSpeed}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre pre{color:inherit;font-size:inherit;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre>code{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap pre{white-space:pre;word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em em{font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq{color:rgba(51,51,51,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;display:inline-block;color:rgba(0,0,0,.8);font-size:.65em;line-height:1.45;background:#f7f7f7;border:1px solid #ccc;border-radius:3px;box-shadow:0 1px 0 rgba(0,0,0,.2),inset 0 0 0 .1em #fff;margin:0 .15em;padding:.2em .5em;vertical-align:middle;position:relative;top:-.1em;white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:first-child{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:last-child{margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b:not(.caret){font-weight:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{word-spacing:-.02em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b.caret{font-size:1.25em;line-height:.8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq i.caret{font-weight:700;text-align:center;width:.45em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{position:relative;top:-1px;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{content:"[";padding:0 3px 0 2px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after{content:"]";padding:0 2px 0 3px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p a>code:hover{color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{width:100%;margin:0 auto;max-width:62.5em;*zoom:1;position:relative;padding-left:.9375em;padding-right:.9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-top:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before{content:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{color:rgba(0,0,0,.85);margin-top:2.25rem;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child+#toc{margin-top:8px;border-top:1px solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:only-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #dddddf;padding-bottom:8px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details{border-bottom:1px solid #dddddf;line-height:1.45;padding-top:.25em;padding-bottom:.25em;padding-left:.25em;color:rgba(0,0,0,.6);display:flex;flex-flow:row wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span:first-child{margin-left:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span.email a{color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span:before{content:"\A0\2013\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span.author:before{content:"\A0\22C5\A0";color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span#revremark:before{content:"\A0|\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber{text-transform:capitalize}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber:after{content:"\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content>h1:first-child:not([class]){color:rgba(0,0,0,.85);border-bottom:1px solid #dddddf;padding-bottom:8px;margin-top:0;padding-top:1rem;margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #e7e7e9;padding-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc>ul{margin-left:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0>li>a{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0 ul.sectlevel1{margin:.5em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul{font-family:Open Sans,DejaVu Sans,sans-serif;list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc li{line-height:1.3334;margin-top:.3334em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{color:#7a2518;font-size:1.2em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:15em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{margin-top:0!important;background:#f8f8f7;position:fixed;width:15em;left:0;top:0;border-right:1px solid #e7e7e9;border-top-width:0!important;border-bottom-width:0!important;z-index:1000;padding:1.25em 1em;height:100%;overflow:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{margin-top:0;margin-bottom:.8rem;font-size:1.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.9em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{margin-left:0;padding-left:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:.5em;margin-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:15em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right #toc.toc2{border-right-width:0;border-left:1px solid #e7e7e9;left:auto;right:0}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:20em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{width:20em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.95em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{padding-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:20em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc{border:1px solid #e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{max-width:100%;background:rgba(0,0,0,.8);padding:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:hsla(0,0%,100%,.8);line-height:1.44}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:.625em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:1.25em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1:last-child{padding-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border-top:1px solid #e7e7e9}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:before{content:"\A7";font-size:.85em;display:block;padding-top:.1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:hover{visibility:visible}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link{color:#ba3925;text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link:hover{color:#a53221}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content details>summary:first-of-type{cursor:pointer;display:list-item;outline:none;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{text-rendering:optimizeLegibility;text-align:left;font-family:"Noto Serif","DejaVu Serif",serif;font-size:1rem;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock.fit-content>caption.title{white-space:nowrap;width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #preamble>.sectionbody>[class=paragraph]:first-of-type p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph.lead>p{font-size:1.21875em;line-height:1.6;color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock #preamble>.sectionbody>[class=paragraph]:first-of-type p{font-size:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon{text-align:center;width:80px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon .title{font-weight:700;font-family:Open Sans,DejaVu Sans,sans-serif;text-transform:uppercase}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content{padding-left:1.125em;padding-right:1.25em;border-left:1px solid #dddddf;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{border:1px solid #e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#fff;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{border:1px solid #dbdbd6;margin-bottom:1.25em;padding:1.25em;background:#f3f3f2;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title{color:#7a2518;margin-top:0;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{border-radius:4px;word-wrap:break-word;overflow-x:auto;padding:1em;font-size:.8125em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:.90625em}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:1em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre:not(.highlight),.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class=highlight],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class^="highlight "],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock.output pre{color:#f7f7f8;background:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content{position:relative}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:none;content:attr(data-lang);position:absolute;font-size:.75em;top:.425rem;right:.5rem;line-height:1;text-transform:uppercase;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock:hover code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:before{content:attr(data-prompt);padding-right:.5em;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:not([data-prompt]):before{content:"$"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs{padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs>code{padding:1em;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.prettyprint{border-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .prettyprint{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint .linenums{line-height:1.45;margin-left:2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li{background:none;list-style-type:inherit;padding-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li code[data-lang]:before{opacity:1}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li:not(:first-child) code[data-lang]:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable{border-collapse:separate;border:0;margin-bottom:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td[class]{color:inherit;vertical-align:top;padding:0;line-height:inherit;white-space:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.code{padding-left:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.linenos{border-right:1px solid;opacity:.35;padding-right:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno{border-right:1px solid;opacity:.35;display:inline-block;margin-right:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno:before{content:"";margin-right:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock{margin:0 1em 1.25em 1.5em;display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock:not(.excerpt)>.title{margin-left:-1.5em;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock p{color:rgba(0,0,0,.85);font-size:1.15rem;line-height:1.75;word-spacing:.1em;letter-spacing:0;font-style:italic;text-align:justify}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote{margin:0;padding:0;border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote:before{content:"\201C";float:left;font-size:2.75em;font-weight:700;line-height:.6em;margin-left:-.6em;color:#7a2518;text-shadow:0 1px 2px rgba(0,0,0,.1)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote>.paragraph:last-child p{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution{margin-top:.75em;margin-right:.5ex;text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock{margin:0 1em 1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre{font-family:Open Sans,DejaVu Sans,sans;font-size:1.15rem;color:rgba(0,0,0,.85);font-weight:300;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{margin-top:1.25rem;margin-left:.5ex}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{font-size:.9375em;line-height:1.45;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution br,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution cite,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution cite{display:block;letter-spacing:-.025em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{line-height:1.6;word-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract{margin:0 1em 1.25em;display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract>.title{margin:0 0 .375em;font-size:1.15em;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt>blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{padding:0 0 .25em 1em;border-left:.25em solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{color:inherit;font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock .attribution{color:inherit;text-align:left;margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock{max-width:100%;border-collapse:separate}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child{margin-bottom:-1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child.sidebarblock{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{border:0 solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead>tr>.tableblock{border-width:0 1px 1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tfoot>tr>.tableblock{border-width:1px 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock{border-width:0 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead>tr>.tableblock{border-width:0 0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tfoot>tr>.tableblock{border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>*>tr>.tableblock:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock:last-child{border-right-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead:last-child>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead:last-child>tr>.tableblock{border-bottom-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-all{border-width:1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-sides{border-width:0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-ends,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-topbot{border-width:1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-all tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-even tr:nth-of-type(2n),.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-hover tr:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-odd tr:nth-of-type(odd){background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-left{text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-right,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-right{text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-center,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-center{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-top,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-top{vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-bottom,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-bottom{vertical-align:bottom}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-middle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-middle{vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead th{font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th{display:table-cell;line-height:1.6;background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th p{color:rgba(0,0,0,.8);font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock>code:only-child{background:none;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol{margin-left:1.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-left:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul dd{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-check-square-o:first-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-square-o:first-child{width:1.25em;font-size:.8em;position:relative;bottom:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>input[type=checkbox]:first-child{margin-right:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline{display:flex;flex-flow:row wrap;list-style:none;margin:0 0 .625em -1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline>li{margin-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .unstyled dl dt{font-weight:400;font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.arabic{list-style-type:decimal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.decimal{list-style-type:decimal-leading-zero}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.loweralpha{list-style-type:lower-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperalpha{list-style-type:upper-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowerroman{list-style-type:lower-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperroman{list-style-type:upper-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowergreek{list-style-type:lower-greek}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table{border:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table>tbody>tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table>tbody>tr{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist2{vertical-align:top;padding:0 .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1{font-weight:700;padding-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock+.colist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock+.colist{margin-top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child{padding:.4em .75em 0;line-height:1;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):last-child{padding:.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .thumb{line-height:0;display:inline-block;border:4px solid #fff;box-shadow:0 0 0 1px #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.left{margin:.25em .625em 1.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.right{margin:.25em 0 1.25em .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb{border-width:6px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb>.title{padding:0 .125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-top:.25em;margin-bottom:.25em;display:inline-block;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left{margin-right:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image{text-decoration:none;display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image object{pointer-events:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref{font-size:.875em;position:static;vertical-align:super}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 .75em;border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote{padding:0 .375em 0 .225em;line-height:1.3334;font-size:.875em;margin-left:1.2em;margin-bottom:.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote a:first-of-type{font-weight:700;text-decoration:none;margin-left:-1.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote:last-of-type{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table{border:0;background:#fff;width:100%;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table td.line-data{width:99%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.unbreakable{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .big{font-size:larger}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .small{font-size:smaller}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .underline{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .overline{text-decoration:overline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .line-through{text-decoration:line-through}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua{color:#00bfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua-background{background:#00fafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black-background{background:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue{color:#0000bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue-background{background:#0000fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia{color:#bf00bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia-background{background:#fa00fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray{color:#606060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray-background{background:#7d7d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green{color:#006000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green-background{background:#007d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime{color:#00bf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime-background{background:#00fa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon{color:#600000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon-background{background:#7d0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy{color:#000060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy-background{background:#00007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive{color:#606000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive-background{background:#7d7d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple{color:#600060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple-background{background:#7d007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red{color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red-background{background:#fa0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver{color:#909090}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver-background{background:#bcbcbc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal{color:#006060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal-background{background:#007d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white{color:#bfbfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white-background{background:#fafafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow{color:#bfbf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow-background{background:#fafa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.icon>.fa{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a span.icon>.fa{cursor:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;text-shadow:1px 1px 2px rgba(0,0,0,.5);cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-note:before{content:"\F05A";color:#19407c}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-tip:before{content:"\F0EB";text-shadow:1px 1px 2px rgba(155,155,0,.8);color:#111}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-warning:before{content:"\F071";color:#bf6900}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-caution:before{content:"\F06D";color:#bf3400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-important:before{content:"\F06A";color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]{display:inline-block;color:#fff!important;background:rgba(0,0,0,.8);border-radius:100px;text-align:center;font-size:.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:Open Sans,DejaVu Sans,sans-serif;font-style:normal;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value] *{color:#fff!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]+b{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]:after{content:attr(data-value)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre .conum[data-value]{position:relative;top:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.conum *{color:inherit!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum:not([data-value]):empty{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{letter-spacing:-.01em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content strong{letter-spacing:-.005em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{background:#fffef7;border-color:#e0e0dc;box-shadow:0 1px 4px #e0e0dc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:none!important}@page{.eclipse-jkube__documentation .eclipse-jkube__documentation-content{margin:1.25cm .75cm}}@media print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content *{box-shadow:none!important;text-shadow:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:inherit!important;text-decoration:underline!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.bare,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="#"],.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="mailto:"]{text-decoration:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="http:"]:not(.bare):after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="https:"]:not(.bare):after{content:"(" attr(href) ")";display:inline-block;font-size:.875em;padding-left:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]:after{content:" (" attr(title) ")"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tr{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content thead{display:table-header-group}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{max-width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1em;orphans:3;widows:3}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{page-break-after:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{background:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #dddddf!important;padding-bottom:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details{border:0!important;display:block;padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details span:first-child{margin-left:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br+span:before{content:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #preamble,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book .sect1>h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book h1.sect0{page-break-before:always}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{padding:0 .9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-on-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:block!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-for-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .show-for-print{display:inherit!important}}@media amzn-kf8,print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{margin-top:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:rgba(0,0,0,.6);font-size:.9em}}@media amzn-kf8{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{padding:0}}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content{padding-left:21em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .toc{position:fixed;width:20em;left:0;top:105px;bottom:0;z-index:1000;padding:0 16px;border-right:1px solid #efefed;border-top-width:0!important;border-bottom-width:0!important;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content i.fa{font-style:normal}.eclipse-jkube__quickstarts{padding:0}.eclipse-jkube__quickstarts-item{list-style:none}.eclipse-jkube__quickstarts-item:not(:last-child){margin-bottom:16px}</style><meta name="generator" content="Gatsby 2.30.1"/><title data-react-helmet="true">Eclipse JKube</title><meta data-react-helmet="true" charSet="UTF-8"/><meta data-react-helmet="true" name="description" content="Página de bienvenida de JKube"/><style type="text/css">
.anchor.before {
position: absolute;
top: 0;
@@ -48,7 +48,7 @@
}
}
})
- </script><link as="script" rel="preload" href="/jkube/webpack-runtime-5e7a06a902090b1f37ba.js"/><link as="script" rel="preload" href="/jkube/framework-fd2b85530eec85104a39.js"/><link as="script" rel="preload" href="/jkube/app-d7398b08e923fe8a3caa.js"/><link as="script" rel="preload" href="/jkube/styles-c2fe8482057191dca484.js"/><link as="script" rel="preload" href="/jkube/commons-8b827618f0536ebfeda2.js"/><link as="script" rel="preload" href="/jkube/component---src-templates-main-jsx-456568a5c9ae2c9095ee.js"/><link as="fetch" rel="preload" href="/jkube/page-data/es/page-data.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/jkube/page-data/app-data.json" crossorigin="anonymous"/></head><body><div id="___gatsby"><div style="outline:none" tabindex="-1" id="gatsby-focus-wrapper"><div class="eclipse-jkube"><header class="eclipse-jkube__header"><div class="eclipse-jkube__header-container"><a class="eclipse-jkube__header-logo" href="/jkube/es/es"><div class="eclipse-jkube__header-logo-eclipse-image"><img src="/jkube/static/EF_WHT-OR_png-d0fd43ad31261ee9693a060be920e71e.png" alt="Eclipse Foundation"/></div><div class="eclipse-jkube__header-logo-jkube"><img class="eclipse-jkube__header-logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/><span class="eclipse-jkube__header-trade-mark">™</span></div></a><div class="eclipse-jkube__header-content"><ul><li><a href="/jkube/es/es//docs">Docs</a></li><li><a href="/jkube/es/es//demos">Demos</a></li><li><a href="/jkube/es/es//community">Community</a></li><li><a href="/jkube/es/es//contributing">Contributing</a></li><li><a class="eclipse-jkube__header-stars" href="https://github.com/eclipse/jkube" title="eclipse/jkube" target="_blank" rel="nofollow noopener noreferrer"><img src="https://img.shields.io/github/stars/eclipse/jkube?style=social" alt="eclipse/jkube stargazers"/></a></li></ul></div></div></header><div class="eclipse-jkube__main"><div class="eclipse-jkube__content"><div class="hero">
+ </script><link as="script" rel="preload" href="/jkube/webpack-runtime-b52c77882f7d7b54b2b3.js"/><link as="script" rel="preload" href="/jkube/framework-5e01c8af6b1735c9eaa3.js"/><link as="script" rel="preload" href="/jkube/app-59faa9989d677dd59195.js"/><link as="script" rel="preload" href="/jkube/styles-e9d24b1846c7d6eb9685.js"/><link as="script" rel="preload" href="/jkube/commons-ee34cd715ab4f7da30e0.js"/><link as="script" rel="preload" href="/jkube/component---src-templates-main-jsx-8853cf342e1cf1bead5c.js"/><link as="fetch" rel="preload" href="/jkube/page-data/es/page-data.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/jkube/page-data/app-data.json" crossorigin="anonymous"/></head><body><div id="___gatsby"><div style="outline:none" tabindex="-1" id="gatsby-focus-wrapper"><div class="eclipse-jkube"><header class="eclipse-jkube__header"><div class="eclipse-jkube__header-container"><a class="eclipse-jkube__header-logo" href="/jkube/es/es"><div class="eclipse-jkube__header-logo-eclipse-image"><img src="/jkube/static/EF_WHT-OR_png-d0fd43ad31261ee9693a060be920e71e.png" alt="Eclipse Foundation"/></div><div class="eclipse-jkube__header-logo-jkube"><img class="eclipse-jkube__header-logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/><span class="eclipse-jkube__header-trade-mark">™</span></div></a><div class="eclipse-jkube__header-content"><ul><li><a href="/jkube/es/es//docs">Docs</a></li><li><a href="/jkube/es/es//demos">Demos</a></li><li><a href="/jkube/es/es//community">Community</a></li><li><a href="/jkube/es/es//contributing">Contributing</a></li><li><a class="eclipse-jkube__header-stars" href="https://github.com/eclipse/jkube" title="eclipse/jkube" target="_blank" rel="nofollow noopener noreferrer"><img src="https://img.shields.io/github/stars/eclipse/jkube?style=social" alt="eclipse/jkube stargazers"/></a></li></ul></div></div></header><div class="eclipse-jkube__main"><div class="eclipse-jkube__content"><div class="hero">
<div class="hero-content">
<div class="getting-involved">
<p><a href="https://twitter.com/jkubeio" target="_blank" rel="nofollow noopener noreferrer"><img src="https://img.shields.io/twitter/follow/jkubeio?label=Follow" alt="Twitter"></a>
@@ -63,4 +63,4 @@
<p>El proyecto se centra en dos tareas, construir imágenes de Docker y crear descriptores de recursos para Kubernetes
y OpenShift.</p>
</div>
-</div></div></div><div class="eclipse-jkube-footer"><div class="eclipse-jkube-footer__logo-jkube"><a href="/jkube/es/es"><img class="eclipse-jkube-footer__logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/></a><span class="eclipse-jkube-footer__logo-jkube-tagline">Cloud-Native Java Applications without a hassle</span></div><div class="eclipse-jkube-footer__links"><ul class="eclipse-jkube-footer__links-list"><li><a href="/jkube/es/es//docs#getting-started">Get Started</a></li><li><a href="/jkube/es/es//docs">Docs</a></li><li><a href="/jkube/es/es//quickstarts">Quickstarts</a></li><li><a href="/jkube/es/es//docs#katacoda-courses">Katacoda Courses</a></li><li><a href="/jkube/es/es//demos">Demos</a></li></ul><ul class="eclipse-jkube-footer__links-list"><li><a href="/jkube/es/es//community">Community</a></li><li><a href="/jkube/es/es//community#planning-and-meetings">Get Involved</a></li><li><a href="/jkube/es/es//contributing">Contributing</a></li></ul><ul class="eclipse-jkube-footer__links-list"><li><a href="https://www.eclipse.org" target="_blank" rel="nofollow noopener noreferrer">Eclipse Foundation</a></li><li><a href="https://www.eclipse.org/legal/privacy.php" target="_blank" rel="nofollow noopener noreferrer">Privacy Policy</a></li><li><a href="https://www.eclipse.org/legal/termsofuse.php" target="_blank" rel="nofollow noopener noreferrer">Terms of Use</a></li><li><a href="https://www.eclipse.org/legal/copyright.php" target="_blank" rel="nofollow noopener noreferrer">Copyright Agent</a></li><li><a href="https://www.eclipse.org/legal" target="_blank" rel="nofollow noopener noreferrer">Legal Resources</a></li></ul></div><div class="eclipse-jkube-footer__copyright">Copyright © Eclipse Foundation 2020</div></div></div></div><div id="gatsby-announcer" style="position:absolute;top:0;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0" aria-live="assertive" aria-atomic="true"></div></div><script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/es/";/*]]>*/</script><script id="gatsby-chunk-mapping">/*<![CDATA[*/window.___chunkMapping={"polyfill":["/polyfill-88d9aed314b16f9b2adc.js"],"app":["/app-d7398b08e923fe8a3caa.js"],"component---src-pages-quickstarts-index-jsx":["/component---src-pages-quickstarts-index-jsx-a1e42093b41968828647.js"],"component---src-templates-doc-jsx":["/component---src-templates-doc-jsx-5366dbd1b50f3447a412.js"],"component---src-templates-main-jsx":["/component---src-templates-main-jsx-456568a5c9ae2c9095ee.js"]};/*]]>*/</script><script src="/jkube/polyfill-88d9aed314b16f9b2adc.js" nomodule=""></script><script src="/jkube/component---src-templates-main-jsx-456568a5c9ae2c9095ee.js" async=""></script><script src="/jkube/commons-8b827618f0536ebfeda2.js" async=""></script><script src="/jkube/styles-c2fe8482057191dca484.js" async=""></script><script src="/jkube/app-d7398b08e923fe8a3caa.js" async=""></script><script src="/jkube/framework-fd2b85530eec85104a39.js" async=""></script><script src="/jkube/webpack-runtime-5e7a06a902090b1f37ba.js" async=""></script></body></html>
\ No newline at end of file
+</div></div></div><div class="eclipse-jkube-footer"><div class="eclipse-jkube-footer__logo-jkube"><a href="/jkube/es/es"><img class="eclipse-jkube-footer__logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/></a><span class="eclipse-jkube-footer__logo-jkube-tagline">Cloud-Native Java Applications without a hassle</span></div><div class="eclipse-jkube-footer__links"><ul class="eclipse-jkube-footer__links-list"><li><a href="/jkube/es/es//docs#getting-started">Get Started</a></li><li><a href="/jkube/es/es//docs">Docs</a></li><li><a href="/jkube/es/es//quickstarts">Quickstarts</a></li><li><a href="/jkube/es/es//docs#katacoda-courses">Katacoda Courses</a></li><li><a href="/jkube/es/es//demos">Demos</a></li></ul><ul class="eclipse-jkube-footer__links-list"><li><a href="/jkube/es/es//community">Community</a></li><li><a href="/jkube/es/es//community#planning-and-meetings">Get Involved</a></li><li><a href="/jkube/es/es//contributing">Contributing</a></li></ul><ul class="eclipse-jkube-footer__links-list"><li><a href="https://www.eclipse.org" target="_blank" rel="nofollow noopener noreferrer">Eclipse Foundation</a></li><li><a href="https://www.eclipse.org/legal/privacy.php" target="_blank" rel="nofollow noopener noreferrer">Privacy Policy</a></li><li><a href="https://www.eclipse.org/legal/termsofuse.php" target="_blank" rel="nofollow noopener noreferrer">Terms of Use</a></li><li><a href="https://www.eclipse.org/legal/copyright.php" target="_blank" rel="nofollow noopener noreferrer">Copyright Agent</a></li><li><a href="https://www.eclipse.org/legal" target="_blank" rel="nofollow noopener noreferrer">Legal Resources</a></li></ul></div><div class="eclipse-jkube-footer__copyright">Copyright © Eclipse Foundation 2020</div></div></div></div><div id="gatsby-announcer" style="position:absolute;top:0;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0" aria-live="assertive" aria-atomic="true"></div></div><script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/es/";/*]]>*/</script><script id="gatsby-chunk-mapping">/*<![CDATA[*/window.___chunkMapping={"polyfill":["/polyfill-e4957c11759bdfc149d9.js"],"app":["/app-59faa9989d677dd59195.js"],"component---src-pages-quickstarts-index-jsx":["/component---src-pages-quickstarts-index-jsx-8b53e5455e208a3e59b9.js"],"component---src-templates-doc-jsx":["/component---src-templates-doc-jsx-21a94bb36ef3df298f42.js"],"component---src-templates-main-jsx":["/component---src-templates-main-jsx-8853cf342e1cf1bead5c.js"]};/*]]>*/</script><script src="/jkube/polyfill-e4957c11759bdfc149d9.js" nomodule=""></script><script src="/jkube/component---src-templates-main-jsx-8853cf342e1cf1bead5c.js" async=""></script><script src="/jkube/commons-ee34cd715ab4f7da30e0.js" async=""></script><script src="/jkube/styles-e9d24b1846c7d6eb9685.js" async=""></script><script src="/jkube/app-59faa9989d677dd59195.js" async=""></script><script src="/jkube/framework-5e01c8af6b1735c9eaa3.js" async=""></script><script src="/jkube/webpack-runtime-b52c77882f7d7b54b2b3.js" async=""></script></body></html>
\ No newline at end of file
diff --git a/framework-5e01c8af6b1735c9eaa3.js b/framework-5e01c8af6b1735c9eaa3.js
new file mode 100644
index 0000000..c65ae48
--- /dev/null
+++ b/framework-5e01c8af6b1735c9eaa3.js
@@ -0,0 +1,3 @@
+/*! For license information please see framework-5e01c8af6b1735c9eaa3.js.LICENSE.txt */
+(window.webpackJsonp=window.webpackJsonp||[]).push([[7],{"+wdc":function(e,t,n){"use strict";var r,l,a,o;if("object"==typeof performance&&"function"==typeof performance.now){var u=performance;t.unstable_now=function(){return u.now()}}else{var i=Date,s=i.now();t.unstable_now=function(){return i.now()-s}}if("undefined"==typeof window||"function"!=typeof MessageChannel){var c=null,f=null,d=function(){if(null!==c)try{var e=t.unstable_now();c(!0,e),c=null}catch(n){throw setTimeout(d,0),n}};r=function(e){null!==c?setTimeout(r,0,e):(c=e,setTimeout(d,0))},l=function(e,t){f=setTimeout(e,t)},a=function(){clearTimeout(f)},t.unstable_shouldYield=function(){return!1},o=t.unstable_forceFrameRate=function(){}}else{var p=window.setTimeout,h=window.clearTimeout;if("undefined"!=typeof console){var m=window.cancelAnimationFrame;"function"!=typeof window.requestAnimationFrame&&console.error("This browser doesn't support requestAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills"),"function"!=typeof m&&console.error("This browser doesn't support cancelAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills")}var v=!1,g=null,y=-1,b=5,w=0;t.unstable_shouldYield=function(){return t.unstable_now()>=w},o=function(){},t.unstable_forceFrameRate=function(e){0>e||125<e?console.error("forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported"):b=0<e?Math.floor(1e3/e):5};var k=new MessageChannel,S=k.port2;k.port1.onmessage=function(){if(null!==g){var e=t.unstable_now();w=e+b;try{g(!0,e)?S.postMessage(null):(v=!1,g=null)}catch(n){throw S.postMessage(null),n}}else v=!1},r=function(e){g=e,v||(v=!0,S.postMessage(null))},l=function(e,n){y=p((function(){e(t.unstable_now())}),n)},a=function(){h(y),y=-1}}function E(e,t){var n=e.length;e.push(t);e:for(;;){var r=n-1>>>1,l=e[r];if(!(void 0!==l&&0<C(l,t)))break e;e[r]=t,e[n]=l,n=r}}function x(e){return void 0===(e=e[0])?null:e}function _(e){var t=e[0];if(void 0!==t){var n=e.pop();if(n!==t){e[0]=n;e:for(var r=0,l=e.length;r<l;){var a=2*(r+1)-1,o=e[a],u=a+1,i=e[u];if(void 0!==o&&0>C(o,n))void 0!==i&&0>C(i,o)?(e[r]=i,e[u]=n,r=u):(e[r]=o,e[a]=n,r=a);else{if(!(void 0!==i&&0>C(i,n)))break e;e[r]=i,e[u]=n,r=u}}}return t}return null}function C(e,t){var n=e.sortIndex-t.sortIndex;return 0!==n?n:e.id-t.id}var P=[],N=[],T=1,z=null,L=3,O=!1,R=!1,M=!1;function I(e){for(var t=x(N);null!==t;){if(null===t.callback)_(N);else{if(!(t.startTime<=e))break;_(N),t.sortIndex=t.expirationTime,E(P,t)}t=x(N)}}function D(e){if(M=!1,I(e),!R)if(null!==x(P))R=!0,r(F);else{var t=x(N);null!==t&&l(D,t.startTime-e)}}function F(e,n){R=!1,M&&(M=!1,a()),O=!0;var r=L;try{for(I(n),z=x(P);null!==z&&(!(z.expirationTime>n)||e&&!t.unstable_shouldYield());){var o=z.callback;if("function"==typeof o){z.callback=null,L=z.priorityLevel;var u=o(z.expirationTime<=n);n=t.unstable_now(),"function"==typeof u?z.callback=u:z===x(P)&&_(P),I(n)}else _(P);z=x(P)}if(null!==z)var i=!0;else{var s=x(N);null!==s&&l(D,s.startTime-n),i=!1}return i}finally{z=null,L=r,O=!1}}var U=o;t.unstable_IdlePriority=5,t.unstable_ImmediatePriority=1,t.unstable_LowPriority=4,t.unstable_NormalPriority=3,t.unstable_Profiling=null,t.unstable_UserBlockingPriority=2,t.unstable_cancelCallback=function(e){e.callback=null},t.unstable_continueExecution=function(){R||O||(R=!0,r(F))},t.unstable_getCurrentPriorityLevel=function(){return L},t.unstable_getFirstCallbackNode=function(){return x(P)},t.unstable_next=function(e){switch(L){case 1:case 2:case 3:var t=3;break;default:t=L}var n=L;L=t;try{return e()}finally{L=n}},t.unstable_pauseExecution=function(){},t.unstable_requestPaint=U,t.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=L;L=e;try{return t()}finally{L=n}},t.unstable_scheduleCallback=function(e,n,o){var u=t.unstable_now();switch("object"==typeof o&&null!==o?o="number"==typeof(o=o.delay)&&0<o?u+o:u:o=u,e){case 1:var i=-1;break;case 2:i=250;break;case 5:i=1073741823;break;case 4:i=1e4;break;default:i=5e3}return e={id:T++,callback:n,priorityLevel:e,startTime:o,expirationTime:i=o+i,sortIndex:-1},o>u?(e.sortIndex=o,E(N,e),null===x(P)&&e===x(N)&&(M?a():M=!0,l(D,o-u))):(e.sortIndex=i,E(P,e),R||O||(R=!0,r(F))),e},t.unstable_wrapCallback=function(e){var t=L;return function(){var n=L;L=t;try{return e.apply(this,arguments)}finally{L=n}}}},"16Al":function(e,t,n){"use strict";var r=n("WbBG");function l(){}function a(){}a.resetWarningCache=l,e.exports=function(){function e(e,t,n,l,a,o){if(o!==r){var u=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw u.name="Invariant Violation",u}}function t(){return e}e.isRequired=e;var n={array:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:a,resetWarningCache:l};return n.PropTypes=n,n}},"17x9":function(e,t,n){e.exports=n("16Al")()},QCnb:function(e,t,n){"use strict";e.exports=n("+wdc")},WbBG:function(e,t,n){"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},i8i4:function(e,t,n){"use strict";!function e(){if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE){0;try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}}(),e.exports=n("yl30")},q1tI:function(e,t,n){"use strict";e.exports=n("viRO")},viRO:function(e,t,n){"use strict";var r=n("YVoz"),l=60103,a=60106;t.Fragment=60107,t.StrictMode=60108,t.Profiler=60114;var o=60109,u=60110,i=60112;t.Suspense=60113;var s=60115,c=60116;if("function"==typeof Symbol&&Symbol.for){var f=Symbol.for;l=f("react.element"),a=f("react.portal"),t.Fragment=f("react.fragment"),t.StrictMode=f("react.strict_mode"),t.Profiler=f("react.profiler"),o=f("react.provider"),u=f("react.context"),i=f("react.forward_ref"),t.Suspense=f("react.suspense"),s=f("react.memo"),c=f("react.lazy")}var d="function"==typeof Symbol&&Symbol.iterator;function p(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var h={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},m={};function v(e,t,n){this.props=e,this.context=t,this.refs=m,this.updater=n||h}function g(){}function y(e,t,n){this.props=e,this.context=t,this.refs=m,this.updater=n||h}v.prototype.isReactComponent={},v.prototype.setState=function(e,t){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw Error(p(85));this.updater.enqueueSetState(this,e,t,"setState")},v.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},g.prototype=v.prototype;var b=y.prototype=new g;b.constructor=y,r(b,v.prototype),b.isPureReactComponent=!0;var w={current:null},k=Object.prototype.hasOwnProperty,S={key:!0,ref:!0,__self:!0,__source:!0};function E(e,t,n){var r,a={},o=null,u=null;if(null!=t)for(r in void 0!==t.ref&&(u=t.ref),void 0!==t.key&&(o=""+t.key),t)k.call(t,r)&&!S.hasOwnProperty(r)&&(a[r]=t[r]);var i=arguments.length-2;if(1===i)a.children=n;else if(1<i){for(var s=Array(i),c=0;c<i;c++)s[c]=arguments[c+2];a.children=s}if(e&&e.defaultProps)for(r in i=e.defaultProps)void 0===a[r]&&(a[r]=i[r]);return{$$typeof:l,type:e,key:o,ref:u,props:a,_owner:w.current}}function x(e){return"object"==typeof e&&null!==e&&e.$$typeof===l}var _=/\/+/g;function C(e,t){return"object"==typeof e&&null!==e&&null!=e.key?function(e){var t={"=":"=0",":":"=2"};return"$"+e.replace(/[=:]/g,(function(e){return t[e]}))}(""+e.key):t.toString(36)}function P(e,t,n,r,o){var u=typeof e;"undefined"!==u&&"boolean"!==u||(e=null);var i=!1;if(null===e)i=!0;else switch(u){case"string":case"number":i=!0;break;case"object":switch(e.$$typeof){case l:case a:i=!0}}if(i)return o=o(i=e),e=""===r?"."+C(i,0):r,Array.isArray(o)?(n="",null!=e&&(n=e.replace(_,"$&/")+"/"),P(o,t,n,"",(function(e){return e}))):null!=o&&(x(o)&&(o=function(e,t){return{$$typeof:l,type:e.type,key:t,ref:e.ref,props:e.props,_owner:e._owner}}(o,n+(!o.key||i&&i.key===o.key?"":(""+o.key).replace(_,"$&/")+"/")+e)),t.push(o)),1;if(i=0,r=""===r?".":r+":",Array.isArray(e))for(var s=0;s<e.length;s++){var c=r+C(u=e[s],s);i+=P(u,t,n,c,o)}else if("function"==typeof(c=function(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=d&&e[d]||e["@@iterator"])?e:null}(e)))for(e=c.call(e),s=0;!(u=e.next()).done;)i+=P(u=u.value,t,n,c=r+C(u,s++),o);else if("object"===u)throw t=""+e,Error(p(31,"[object Object]"===t?"object with keys {"+Object.keys(e).join(", ")+"}":t));return i}function N(e,t,n){if(null==e)return e;var r=[],l=0;return P(e,r,"","",(function(e){return t.call(n,e,l++)})),r}function T(e){if(-1===e._status){var t=e._result;t=t(),e._status=0,e._result=t,t.then((function(t){0===e._status&&(t=t.default,e._status=1,e._result=t)}),(function(t){0===e._status&&(e._status=2,e._result=t)}))}if(1===e._status)return e._result;throw e._result}var z={current:null};function L(){var e=z.current;if(null===e)throw Error(p(321));return e}var O={ReactCurrentDispatcher:z,ReactCurrentBatchConfig:{transition:0},ReactCurrentOwner:w,IsSomeRendererActing:{current:!1},assign:r};t.Children={map:N,forEach:function(e,t,n){N(e,(function(){t.apply(this,arguments)}),n)},count:function(e){var t=0;return N(e,(function(){t++})),t},toArray:function(e){return N(e,(function(e){return e}))||[]},only:function(e){if(!x(e))throw Error(p(143));return e}},t.Component=v,t.PureComponent=y,t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=O,t.cloneElement=function(e,t,n){if(null==e)throw Error(p(267,e));var a=r({},e.props),o=e.key,u=e.ref,i=e._owner;if(null!=t){if(void 0!==t.ref&&(u=t.ref,i=w.current),void 0!==t.key&&(o=""+t.key),e.type&&e.type.defaultProps)var s=e.type.defaultProps;for(c in t)k.call(t,c)&&!S.hasOwnProperty(c)&&(a[c]=void 0===t[c]&&void 0!==s?s[c]:t[c])}var c=arguments.length-2;if(1===c)a.children=n;else if(1<c){s=Array(c);for(var f=0;f<c;f++)s[f]=arguments[f+2];a.children=s}return{$$typeof:l,type:e.type,key:o,ref:u,props:a,_owner:i}},t.createContext=function(e,t){return void 0===t&&(t=null),(e={$$typeof:u,_calculateChangedBits:t,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null}).Provider={$$typeof:o,_context:e},e.Consumer=e},t.createElement=E,t.createFactory=function(e){var t=E.bind(null,e);return t.type=e,t},t.createRef=function(){return{current:null}},t.forwardRef=function(e){return{$$typeof:i,render:e}},t.isValidElement=x,t.lazy=function(e){return{$$typeof:c,_payload:{_status:-1,_result:e},_init:T}},t.memo=function(e,t){return{$$typeof:s,type:e,compare:void 0===t?null:t}},t.useCallback=function(e,t){return L().useCallback(e,t)},t.useContext=function(e,t){return L().useContext(e,t)},t.useDebugValue=function(){},t.useEffect=function(e,t){return L().useEffect(e,t)},t.useImperativeHandle=function(e,t,n){return L().useImperativeHandle(e,t,n)},t.useLayoutEffect=function(e,t){return L().useLayoutEffect(e,t)},t.useMemo=function(e,t){return L().useMemo(e,t)},t.useReducer=function(e,t,n){return L().useReducer(e,t,n)},t.useRef=function(e){return L().useRef(e)},t.useState=function(e){return L().useState(e)},t.version="17.0.1"},yl30:function(e,t,n){"use strict";var r=n("q1tI"),l=n("YVoz"),a=n("QCnb");function o(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}if(!r)throw Error(o(227));var u=new Set,i={};function s(e,t){c(e,t),c(e+"Capture",t)}function c(e,t){for(i[e]=t,e=0;e<t.length;e++)u.add(t[e])}var f=!("undefined"==typeof window||void 0===window.document||void 0===window.document.createElement),d=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,p=Object.prototype.hasOwnProperty,h={},m={};function v(e,t,n,r,l,a,o){this.acceptsBooleans=2===t||3===t||4===t,this.attributeName=r,this.attributeNamespace=l,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=a,this.removeEmptyString=o}var g={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach((function(e){g[e]=new v(e,0,!1,e,null,!1,!1)})),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach((function(e){var t=e[0];g[t]=new v(t,1,!1,e[1],null,!1,!1)})),["contentEditable","draggable","spellCheck","value"].forEach((function(e){g[e]=new v(e,2,!1,e.toLowerCase(),null,!1,!1)})),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach((function(e){g[e]=new v(e,2,!1,e,null,!1,!1)})),"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach((function(e){g[e]=new v(e,3,!1,e.toLowerCase(),null,!1,!1)})),["checked","multiple","muted","selected"].forEach((function(e){g[e]=new v(e,3,!0,e,null,!1,!1)})),["capture","download"].forEach((function(e){g[e]=new v(e,4,!1,e,null,!1,!1)})),["cols","rows","size","span"].forEach((function(e){g[e]=new v(e,6,!1,e,null,!1,!1)})),["rowSpan","start"].forEach((function(e){g[e]=new v(e,5,!1,e.toLowerCase(),null,!1,!1)}));var y=/[\-:]([a-z])/g;function b(e){return e[1].toUpperCase()}function w(e,t,n,r){var l=g.hasOwnProperty(t)?g[t]:null;(null!==l?0===l.type:!r&&(2<t.length&&("o"===t[0]||"O"===t[0])&&("n"===t[1]||"N"===t[1])))||(function(e,t,n,r){if(null==t||function(e,t,n,r){if(null!==n&&0===n.type)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return!r&&(null!==n?!n.acceptsBooleans:"data-"!==(e=e.toLowerCase().slice(0,5))&&"aria-"!==e);default:return!1}}(e,t,n,r))return!0;if(r)return!1;if(null!==n)switch(n.type){case 3:return!t;case 4:return!1===t;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}(t,n,l,r)&&(n=null),r||null===l?function(e){return!!p.call(m,e)||!p.call(h,e)&&(d.test(e)?m[e]=!0:(h[e]=!0,!1))}(t)&&(null===n?e.removeAttribute(t):e.setAttribute(t,""+n)):l.mustUseProperty?e[l.propertyName]=null===n?3!==l.type&&"":n:(t=l.attributeName,r=l.attributeNamespace,null===n?e.removeAttribute(t):(n=3===(l=l.type)||4===l&&!0===n?"":""+n,r?e.setAttributeNS(r,t,n):e.setAttribute(t,n))))}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach((function(e){var t=e.replace(y,b);g[t]=new v(t,1,!1,e,null,!1,!1)})),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach((function(e){var t=e.replace(y,b);g[t]=new v(t,1,!1,e,"http://www.w3.org/1999/xlink",!1,!1)})),["xml:base","xml:lang","xml:space"].forEach((function(e){var t=e.replace(y,b);g[t]=new v(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1,!1)})),["tabIndex","crossOrigin"].forEach((function(e){g[e]=new v(e,1,!1,e.toLowerCase(),null,!1,!1)})),g.xlinkHref=new v("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0,!1),["src","href","action","formAction"].forEach((function(e){g[e]=new v(e,1,!1,e.toLowerCase(),null,!0,!0)}));var k=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,S=60103,E=60106,x=60107,_=60108,C=60114,P=60109,N=60110,T=60112,z=60113,L=60120,O=60115,R=60116,M=60121,I=60128,D=60129,F=60130,U=60131;if("function"==typeof Symbol&&Symbol.for){var A=Symbol.for;S=A("react.element"),E=A("react.portal"),x=A("react.fragment"),_=A("react.strict_mode"),C=A("react.profiler"),P=A("react.provider"),N=A("react.context"),T=A("react.forward_ref"),z=A("react.suspense"),L=A("react.suspense_list"),O=A("react.memo"),R=A("react.lazy"),M=A("react.block"),A("react.scope"),I=A("react.opaque.id"),D=A("react.debug_trace_mode"),F=A("react.offscreen"),U=A("react.legacy_hidden")}var V,B="function"==typeof Symbol&&Symbol.iterator;function j(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=B&&e[B]||e["@@iterator"])?e:null}function W(e){if(void 0===V)try{throw Error()}catch(n){var t=n.stack.trim().match(/\n( *(at )?)/);V=t&&t[1]||""}return"\n"+V+e}var $=!1;function H(e,t){if(!e||$)return"";$=!0;var n=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(t)if(t=function(){throw Error()},Object.defineProperty(t.prototype,"props",{set:function(){throw Error()}}),"object"==typeof Reflect&&Reflect.construct){try{Reflect.construct(t,[])}catch(i){var r=i}Reflect.construct(e,[],t)}else{try{t.call()}catch(i){r=i}e.call(t.prototype)}else{try{throw Error()}catch(i){r=i}e()}}catch(i){if(i&&r&&"string"==typeof i.stack){for(var l=i.stack.split("\n"),a=r.stack.split("\n"),o=l.length-1,u=a.length-1;1<=o&&0<=u&&l[o]!==a[u];)u--;for(;1<=o&&0<=u;o--,u--)if(l[o]!==a[u]){if(1!==o||1!==u)do{if(o--,0>--u||l[o]!==a[u])return"\n"+l[o].replace(" at new "," at ")}while(1<=o&&0<=u);break}}}finally{$=!1,Error.prepareStackTrace=n}return(e=e?e.displayName||e.name:"")?W(e):""}function Q(e){switch(e.tag){case 5:return W(e.type);case 16:return W("Lazy");case 13:return W("Suspense");case 19:return W("SuspenseList");case 0:case 2:case 15:return e=H(e.type,!1);case 11:return e=H(e.type.render,!1);case 22:return e=H(e.type._render,!1);case 1:return e=H(e.type,!0);default:return""}}function q(e){if(null==e)return null;if("function"==typeof e)return e.displayName||e.name||null;if("string"==typeof e)return e;switch(e){case x:return"Fragment";case E:return"Portal";case C:return"Profiler";case _:return"StrictMode";case z:return"Suspense";case L:return"SuspenseList"}if("object"==typeof e)switch(e.$$typeof){case N:return(e.displayName||"Context")+".Consumer";case P:return(e._context.displayName||"Context")+".Provider";case T:var t=e.render;return t=t.displayName||t.name||"",e.displayName||(""!==t?"ForwardRef("+t+")":"ForwardRef");case O:return q(e.type);case M:return q(e._render);case R:t=e._payload,e=e._init;try{return q(e(t))}catch(n){}}return null}function K(e){switch(typeof e){case"boolean":case"number":case"object":case"string":case"undefined":return e;default:return""}}function Y(e){var t=e.type;return(e=e.nodeName)&&"input"===e.toLowerCase()&&("checkbox"===t||"radio"===t)}function X(e){e._valueTracker||(e._valueTracker=function(e){var t=Y(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&void 0!==n&&"function"==typeof n.get&&"function"==typeof n.set){var l=n.get,a=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return l.call(this)},set:function(e){r=""+e,a.call(this,e)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(e){r=""+e},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}(e))}function G(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=Y(e)?e.checked?"true":"false":e.value),(e=r)!==n&&(t.setValue(e),!0)}function J(e){if(void 0===(e=e||("undefined"!=typeof document?document:void 0)))return null;try{return e.activeElement||e.body}catch(t){return e.body}}function Z(e,t){var n=t.checked;return l({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:null!=n?n:e._wrapperState.initialChecked})}function ee(e,t){var n=null==t.defaultValue?"":t.defaultValue,r=null!=t.checked?t.checked:t.defaultChecked;n=K(null!=t.value?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:"checkbox"===t.type||"radio"===t.type?null!=t.checked:null!=t.value}}function te(e,t){null!=(t=t.checked)&&w(e,"checked",t,!1)}function ne(e,t){te(e,t);var n=K(t.value),r=t.type;if(null!=n)"number"===r?(0===n&&""===e.value||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if("submit"===r||"reset"===r)return void e.removeAttribute("value");t.hasOwnProperty("value")?le(e,t.type,n):t.hasOwnProperty("defaultValue")&&le(e,t.type,K(t.defaultValue)),null==t.checked&&null!=t.defaultChecked&&(e.defaultChecked=!!t.defaultChecked)}function re(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!("submit"!==r&&"reset"!==r||void 0!==t.value&&null!==t.value))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}""!==(n=e.name)&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,""!==n&&(e.name=n)}function le(e,t,n){"number"===t&&J(e.ownerDocument)===e||(null==n?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}function ae(e,t){return e=l({children:void 0},t),(t=function(e){var t="";return r.Children.forEach(e,(function(e){null!=e&&(t+=e)})),t}(t.children))&&(e.children=t),e}function oe(e,t,n,r){if(e=e.options,t){t={};for(var l=0;l<n.length;l++)t["$"+n[l]]=!0;for(n=0;n<e.length;n++)l=t.hasOwnProperty("$"+e[n].value),e[n].selected!==l&&(e[n].selected=l),l&&r&&(e[n].defaultSelected=!0)}else{for(n=""+K(n),t=null,l=0;l<e.length;l++){if(e[l].value===n)return e[l].selected=!0,void(r&&(e[l].defaultSelected=!0));null!==t||e[l].disabled||(t=e[l])}null!==t&&(t.selected=!0)}}function ue(e,t){if(null!=t.dangerouslySetInnerHTML)throw Error(o(91));return l({},t,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function ie(e,t){var n=t.value;if(null==n){if(n=t.children,t=t.defaultValue,null!=n){if(null!=t)throw Error(o(92));if(Array.isArray(n)){if(!(1>=n.length))throw Error(o(93));n=n[0]}t=n}null==t&&(t=""),n=t}e._wrapperState={initialValue:K(n)}}function se(e,t){var n=K(t.value),r=K(t.defaultValue);null!=n&&((n=""+n)!==e.value&&(e.value=n),null==t.defaultValue&&e.defaultValue!==n&&(e.defaultValue=n)),null!=r&&(e.defaultValue=""+r)}function ce(e){var t=e.textContent;t===e._wrapperState.initialValue&&""!==t&&null!==t&&(e.value=t)}var fe="http://www.w3.org/1999/xhtml",de="http://www.w3.org/2000/svg";function pe(e){switch(e){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function he(e,t){return null==e||"http://www.w3.org/1999/xhtml"===e?pe(t):"http://www.w3.org/2000/svg"===e&&"foreignObject"===t?"http://www.w3.org/1999/xhtml":e}var me,ve=function(e){return"undefined"!=typeof MSApp&&MSApp.execUnsafeLocalFunction?function(t,n,r,l){MSApp.execUnsafeLocalFunction((function(){return e(t,n)}))}:e}((function(e,t){if(e.namespaceURI!==de||"innerHTML"in e)e.innerHTML=t;else{for((me=me||document.createElement("div")).innerHTML="<svg>"+t.valueOf().toString()+"</svg>",t=me.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}}));function ge(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&3===n.nodeType)return void(n.nodeValue=t)}e.textContent=t}var ye={animationIterationCount:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},be=["Webkit","ms","Moz","O"];function we(e,t,n){return null==t||"boolean"==typeof t||""===t?"":n||"number"!=typeof t||0===t||ye.hasOwnProperty(e)&&ye[e]?(""+t).trim():t+"px"}function ke(e,t){for(var n in e=e.style,t)if(t.hasOwnProperty(n)){var r=0===n.indexOf("--"),l=we(n,t[n],r);"float"===n&&(n="cssFloat"),r?e.setProperty(n,l):e[n]=l}}Object.keys(ye).forEach((function(e){be.forEach((function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),ye[t]=ye[e]}))}));var Se=l({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function Ee(e,t){if(t){if(Se[e]&&(null!=t.children||null!=t.dangerouslySetInnerHTML))throw Error(o(137,e));if(null!=t.dangerouslySetInnerHTML){if(null!=t.children)throw Error(o(60));if("object"!=typeof t.dangerouslySetInnerHTML||!("__html"in t.dangerouslySetInnerHTML))throw Error(o(61))}if(null!=t.style&&"object"!=typeof t.style)throw Error(o(62))}}function xe(e,t){if(-1===e.indexOf("-"))return"string"==typeof t.is;switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}function _e(e){return(e=e.target||e.srcElement||window).correspondingUseElement&&(e=e.correspondingUseElement),3===e.nodeType?e.parentNode:e}var Ce=null,Pe=null,Ne=null;function Te(e){if(e=Jr(e)){if("function"!=typeof Ce)throw Error(o(280));var t=e.stateNode;t&&(t=el(t),Ce(e.stateNode,e.type,t))}}function ze(e){Pe?Ne?Ne.push(e):Ne=[e]:Pe=e}function Le(){if(Pe){var e=Pe,t=Ne;if(Ne=Pe=null,Te(e),t)for(e=0;e<t.length;e++)Te(t[e])}}function Oe(e,t){return e(t)}function Re(e,t,n,r,l){return e(t,n,r,l)}function Me(){}var Ie=Oe,De=!1,Fe=!1;function Ue(){null===Pe&&null===Ne||(Me(),Le())}function Ae(e,t){var n=e.stateNode;if(null===n)return null;var r=el(n);if(null===r)return null;n=r[t];e:switch(t){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(r=!r.disabled)||(r=!("button"===(e=e.type)||"input"===e||"select"===e||"textarea"===e)),e=!r;break e;default:e=!1}if(e)return null;if(n&&"function"!=typeof n)throw Error(o(231,t,typeof n));return n}var Ve=!1;if(f)try{var Be={};Object.defineProperty(Be,"passive",{get:function(){Ve=!0}}),window.addEventListener("test",Be,Be),window.removeEventListener("test",Be,Be)}catch(as){Ve=!1}function je(e,t,n,r,l,a,o,u,i){var s=Array.prototype.slice.call(arguments,3);try{t.apply(n,s)}catch(c){this.onError(c)}}var We=!1,$e=null,He=!1,Qe=null,qe={onError:function(e){We=!0,$e=e}};function Ke(e,t,n,r,l,a,o,u,i){We=!1,$e=null,je.apply(qe,arguments)}function Ye(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do{0!=(1026&(t=e).flags)&&(n=t.return),e=t.return}while(e)}return 3===t.tag?n:null}function Xe(e){if(13===e.tag){var t=e.memoizedState;if(null===t&&(null!==(e=e.alternate)&&(t=e.memoizedState)),null!==t)return t.dehydrated}return null}function Ge(e){if(Ye(e)!==e)throw Error(o(188))}function Je(e){if(!(e=function(e){var t=e.alternate;if(!t){if(null===(t=Ye(e)))throw Error(o(188));return t!==e?null:e}for(var n=e,r=t;;){var l=n.return;if(null===l)break;var a=l.alternate;if(null===a){if(null!==(r=l.return)){n=r;continue}break}if(l.child===a.child){for(a=l.child;a;){if(a===n)return Ge(l),e;if(a===r)return Ge(l),t;a=a.sibling}throw Error(o(188))}if(n.return!==r.return)n=l,r=a;else{for(var u=!1,i=l.child;i;){if(i===n){u=!0,n=l,r=a;break}if(i===r){u=!0,r=l,n=a;break}i=i.sibling}if(!u){for(i=a.child;i;){if(i===n){u=!0,n=a,r=l;break}if(i===r){u=!0,r=a,n=l;break}i=i.sibling}if(!u)throw Error(o(189))}}if(n.alternate!==r)throw Error(o(190))}if(3!==n.tag)throw Error(o(188));return n.stateNode.current===n?e:t}(e)))return null;for(var t=e;;){if(5===t.tag||6===t.tag)return t;if(t.child)t.child.return=t,t=t.child;else{if(t===e)break;for(;!t.sibling;){if(!t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}}return null}function Ze(e,t){for(var n=e.alternate;null!==t;){if(t===e||t===n)return!0;t=t.return}return!1}var et,tt,nt,rt,lt=!1,at=[],ot=null,ut=null,it=null,st=new Map,ct=new Map,ft=[],dt="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit".split(" ");function pt(e,t,n,r,l){return{blockedOn:e,domEventName:t,eventSystemFlags:16|n,nativeEvent:l,targetContainers:[r]}}function ht(e,t){switch(e){case"focusin":case"focusout":ot=null;break;case"dragenter":case"dragleave":ut=null;break;case"mouseover":case"mouseout":it=null;break;case"pointerover":case"pointerout":st.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":ct.delete(t.pointerId)}}function mt(e,t,n,r,l,a){return null===e||e.nativeEvent!==a?(e=pt(t,n,r,l,a),null!==t&&(null!==(t=Jr(t))&&tt(t)),e):(e.eventSystemFlags|=r,t=e.targetContainers,null!==l&&-1===t.indexOf(l)&&t.push(l),e)}function vt(e){var t=Gr(e.target);if(null!==t){var n=Ye(t);if(null!==n)if(13===(t=n.tag)){if(null!==(t=Xe(n)))return e.blockedOn=t,void rt(e.lanePriority,(function(){a.unstable_runWithPriority(e.priority,(function(){nt(n)}))}))}else if(3===t&&n.stateNode.hydrate)return void(e.blockedOn=3===n.tag?n.stateNode.containerInfo:null)}e.blockedOn=null}function gt(e){if(null!==e.blockedOn)return!1;for(var t=e.targetContainers;0<t.length;){var n=Jt(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(null!==n)return null!==(t=Jr(n))&&tt(t),e.blockedOn=n,!1;t.shift()}return!0}function yt(e,t,n){gt(e)&&n.delete(t)}function bt(){for(lt=!1;0<at.length;){var e=at[0];if(null!==e.blockedOn){null!==(e=Jr(e.blockedOn))&&et(e);break}for(var t=e.targetContainers;0<t.length;){var n=Jt(e.domEventName,e.eventSystemFlags,t[0],e.nativeEvent);if(null!==n){e.blockedOn=n;break}t.shift()}null===e.blockedOn&&at.shift()}null!==ot&>(ot)&&(ot=null),null!==ut&>(ut)&&(ut=null),null!==it&>(it)&&(it=null),st.forEach(yt),ct.forEach(yt)}function wt(e,t){e.blockedOn===t&&(e.blockedOn=null,lt||(lt=!0,a.unstable_scheduleCallback(a.unstable_NormalPriority,bt)))}function kt(e){function t(t){return wt(t,e)}if(0<at.length){wt(at[0],e);for(var n=1;n<at.length;n++){var r=at[n];r.blockedOn===e&&(r.blockedOn=null)}}for(null!==ot&&wt(ot,e),null!==ut&&wt(ut,e),null!==it&&wt(it,e),st.forEach(t),ct.forEach(t),n=0;n<ft.length;n++)(r=ft[n]).blockedOn===e&&(r.blockedOn=null);for(;0<ft.length&&null===(n=ft[0]).blockedOn;)vt(n),null===n.blockedOn&&ft.shift()}function St(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var Et={animationend:St("Animation","AnimationEnd"),animationiteration:St("Animation","AnimationIteration"),animationstart:St("Animation","AnimationStart"),transitionend:St("Transition","TransitionEnd")},xt={},_t={};function Ct(e){if(xt[e])return xt[e];if(!Et[e])return e;var t,n=Et[e];for(t in n)if(n.hasOwnProperty(t)&&t in _t)return xt[e]=n[t];return e}f&&(_t=document.createElement("div").style,"AnimationEvent"in window||(delete Et.animationend.animation,delete Et.animationiteration.animation,delete Et.animationstart.animation),"TransitionEvent"in window||delete Et.transitionend.transition);var Pt=Ct("animationend"),Nt=Ct("animationiteration"),Tt=Ct("animationstart"),zt=Ct("transitionend"),Lt=new Map,Ot=new Map,Rt=["abort","abort",Pt,"animationEnd",Nt,"animationIteration",Tt,"animationStart","canplay","canPlay","canplaythrough","canPlayThrough","durationchange","durationChange","emptied","emptied","encrypted","encrypted","ended","ended","error","error","gotpointercapture","gotPointerCapture","load","load","loadeddata","loadedData","loadedmetadata","loadedMetadata","loadstart","loadStart","lostpointercapture","lostPointerCapture","playing","playing","progress","progress","seeking","seeking","stalled","stalled","suspend","suspend","timeupdate","timeUpdate",zt,"transitionEnd","waiting","waiting"];function Mt(e,t){for(var n=0;n<e.length;n+=2){var r=e[n],l=e[n+1];l="on"+(l[0].toUpperCase()+l.slice(1)),Ot.set(r,t),Lt.set(r,l),s(l,[r])}}(0,a.unstable_now)();var It=8;function Dt(e){if(0!=(1&e))return It=15,1;if(0!=(2&e))return It=14,2;if(0!=(4&e))return It=13,4;var t=24&e;return 0!==t?(It=12,t):0!=(32&e)?(It=11,32):0!==(t=192&e)?(It=10,t):0!=(256&e)?(It=9,256):0!==(t=3584&e)?(It=8,t):0!=(4096&e)?(It=7,4096):0!==(t=4186112&e)?(It=6,t):0!==(t=62914560&e)?(It=5,t):67108864&e?(It=4,67108864):0!=(134217728&e)?(It=3,134217728):0!==(t=805306368&e)?(It=2,t):0!=(1073741824&e)?(It=1,1073741824):(It=8,e)}function Ft(e,t){var n=e.pendingLanes;if(0===n)return It=0;var r=0,l=0,a=e.expiredLanes,o=e.suspendedLanes,u=e.pingedLanes;if(0!==a)r=a,l=It=15;else if(0!==(a=134217727&n)){var i=a&~o;0!==i?(r=Dt(i),l=It):0!==(u&=a)&&(r=Dt(u),l=It)}else 0!==(a=n&~o)?(r=Dt(a),l=It):0!==u&&(r=Dt(u),l=It);if(0===r)return 0;if(r=n&((0>(r=31-Wt(r))?0:1<<r)<<1)-1,0!==t&&t!==r&&0==(t&o)){if(Dt(t),l<=It)return t;It=l}if(0!==(t=e.entangledLanes))for(e=e.entanglements,t&=r;0<t;)l=1<<(n=31-Wt(t)),r|=e[n],t&=~l;return r}function Ut(e){return 0!==(e=-1073741825&e.pendingLanes)?e:1073741824&e?1073741824:0}function At(e,t){switch(e){case 15:return 1;case 14:return 2;case 12:return 0===(e=Vt(24&~t))?At(10,t):e;case 10:return 0===(e=Vt(192&~t))?At(8,t):e;case 8:return 0===(e=Vt(3584&~t))&&(0===(e=Vt(4186112&~t))&&(e=512)),e;case 2:return 0===(t=Vt(805306368&~t))&&(t=268435456),t}throw Error(o(358,e))}function Vt(e){return e&-e}function Bt(e){for(var t=[],n=0;31>n;n++)t.push(e);return t}function jt(e,t,n){e.pendingLanes|=t;var r=t-1;e.suspendedLanes&=r,e.pingedLanes&=r,(e=e.eventTimes)[t=31-Wt(t)]=n}var Wt=Math.clz32?Math.clz32:function(e){return 0===e?32:31-($t(e)/Ht|0)|0},$t=Math.log,Ht=Math.LN2;var Qt=a.unstable_UserBlockingPriority,qt=a.unstable_runWithPriority,Kt=!0;function Yt(e,t,n,r){De||Me();var l=Gt,a=De;De=!0;try{Re(l,e,t,n,r)}finally{(De=a)||Ue()}}function Xt(e,t,n,r){qt(Qt,Gt.bind(null,e,t,n,r))}function Gt(e,t,n,r){var l;if(Kt)if((l=0==(4&t))&&0<at.length&&-1<dt.indexOf(e))e=pt(null,e,t,n,r),at.push(e);else{var a=Jt(e,t,n,r);if(null===a)l&&ht(e,r);else{if(l){if(-1<dt.indexOf(e))return e=pt(a,e,t,n,r),void at.push(e);if(function(e,t,n,r,l){switch(t){case"focusin":return ot=mt(ot,e,t,n,r,l),!0;case"dragenter":return ut=mt(ut,e,t,n,r,l),!0;case"mouseover":return it=mt(it,e,t,n,r,l),!0;case"pointerover":var a=l.pointerId;return st.set(a,mt(st.get(a)||null,e,t,n,r,l)),!0;case"gotpointercapture":return a=l.pointerId,ct.set(a,mt(ct.get(a)||null,e,t,n,r,l)),!0}return!1}(a,e,t,n,r))return;ht(e,r)}zr(e,t,r,null,n)}}}function Jt(e,t,n,r){var l=_e(r);if(null!==(l=Gr(l))){var a=Ye(l);if(null===a)l=null;else{var o=a.tag;if(13===o){if(null!==(l=Xe(a)))return l;l=null}else if(3===o){if(a.stateNode.hydrate)return 3===a.tag?a.stateNode.containerInfo:null;l=null}else a!==l&&(l=null)}}return zr(e,t,r,l,n),null}var Zt=null,en=null,tn=null;function nn(){if(tn)return tn;var e,t,n=en,r=n.length,l="value"in Zt?Zt.value:Zt.textContent,a=l.length;for(e=0;e<r&&n[e]===l[e];e++);var o=r-e;for(t=1;t<=o&&n[r-t]===l[a-t];t++);return tn=l.slice(e,1<t?1-t:void 0)}function rn(e){var t=e.keyCode;return"charCode"in e?0===(e=e.charCode)&&13===t&&(e=13):e=t,10===e&&(e=13),32<=e||13===e?e:0}function ln(){return!0}function an(){return!1}function on(e){function t(t,n,r,l,a){for(var o in this._reactName=t,this._targetInst=r,this.type=n,this.nativeEvent=l,this.target=a,this.currentTarget=null,e)e.hasOwnProperty(o)&&(t=e[o],this[o]=t?t(l):l[o]);return this.isDefaultPrevented=(null!=l.defaultPrevented?l.defaultPrevented:!1===l.returnValue)?ln:an,this.isPropagationStopped=an,this}return l(t.prototype,{preventDefault:function(){this.defaultPrevented=!0;var e=this.nativeEvent;e&&(e.preventDefault?e.preventDefault():"unknown"!=typeof e.returnValue&&(e.returnValue=!1),this.isDefaultPrevented=ln)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():"unknown"!=typeof e.cancelBubble&&(e.cancelBubble=!0),this.isPropagationStopped=ln)},persist:function(){},isPersistent:ln}),t}var un,sn,cn,fn={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},dn=on(fn),pn=l({},fn,{view:0,detail:0}),hn=on(pn),mn=l({},pn,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:Cn,button:0,buttons:0,relatedTarget:function(e){return void 0===e.relatedTarget?e.fromElement===e.srcElement?e.toElement:e.fromElement:e.relatedTarget},movementX:function(e){return"movementX"in e?e.movementX:(e!==cn&&(cn&&"mousemove"===e.type?(un=e.screenX-cn.screenX,sn=e.screenY-cn.screenY):sn=un=0,cn=e),un)},movementY:function(e){return"movementY"in e?e.movementY:sn}}),vn=on(mn),gn=on(l({},mn,{dataTransfer:0})),yn=on(l({},pn,{relatedTarget:0})),bn=on(l({},fn,{animationName:0,elapsedTime:0,pseudoElement:0})),wn=on(l({},fn,{clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}})),kn=on(l({},fn,{data:0})),Sn={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},En={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},xn={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function _n(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):!!(e=xn[e])&&!!t[e]}function Cn(){return _n}var Pn=on(l({},pn,{key:function(e){if(e.key){var t=Sn[e.key]||e.key;if("Unidentified"!==t)return t}return"keypress"===e.type?13===(e=rn(e))?"Enter":String.fromCharCode(e):"keydown"===e.type||"keyup"===e.type?En[e.keyCode]||"Unidentified":""},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:Cn,charCode:function(e){return"keypress"===e.type?rn(e):0},keyCode:function(e){return"keydown"===e.type||"keyup"===e.type?e.keyCode:0},which:function(e){return"keypress"===e.type?rn(e):"keydown"===e.type||"keyup"===e.type?e.keyCode:0}})),Nn=on(l({},mn,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0})),Tn=on(l({},pn,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:Cn})),zn=on(l({},fn,{propertyName:0,elapsedTime:0,pseudoElement:0})),Ln=on(l({},mn,{deltaX:function(e){return"deltaX"in e?e.deltaX:"wheelDeltaX"in e?-e.wheelDeltaX:0},deltaY:function(e){return"deltaY"in e?e.deltaY:"wheelDeltaY"in e?-e.wheelDeltaY:"wheelDelta"in e?-e.wheelDelta:0},deltaZ:0,deltaMode:0})),On=[9,13,27,32],Rn=f&&"CompositionEvent"in window,Mn=null;f&&"documentMode"in document&&(Mn=document.documentMode);var In=f&&"TextEvent"in window&&!Mn,Dn=f&&(!Rn||Mn&&8<Mn&&11>=Mn),Fn=String.fromCharCode(32),Un=!1;function An(e,t){switch(e){case"keyup":return-1!==On.indexOf(t.keyCode);case"keydown":return 229!==t.keyCode;case"keypress":case"mousedown":case"focusout":return!0;default:return!1}}function Vn(e){return"object"==typeof(e=e.detail)&&"data"in e?e.data:null}var Bn=!1;var jn={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function Wn(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return"input"===t?!!jn[e.type]:"textarea"===t}function $n(e,t,n,r){ze(r),0<(t=Or(t,"onChange")).length&&(n=new dn("onChange","change",null,n,r),e.push({event:n,listeners:t}))}var Hn=null,Qn=null;function qn(e){xr(e,0)}function Kn(e){if(G(Zr(e)))return e}function Yn(e,t){if("change"===e)return t}var Xn=!1;if(f){var Gn;if(f){var Jn="oninput"in document;if(!Jn){var Zn=document.createElement("div");Zn.setAttribute("oninput","return;"),Jn="function"==typeof Zn.oninput}Gn=Jn}else Gn=!1;Xn=Gn&&(!document.documentMode||9<document.documentMode)}function er(){Hn&&(Hn.detachEvent("onpropertychange",tr),Qn=Hn=null)}function tr(e){if("value"===e.propertyName&&Kn(Qn)){var t=[];if($n(t,Qn,e,_e(e)),e=qn,De)e(t);else{De=!0;try{Oe(e,t)}finally{De=!1,Ue()}}}}function nr(e,t,n){"focusin"===e?(er(),Qn=n,(Hn=t).attachEvent("onpropertychange",tr)):"focusout"===e&&er()}function rr(e){if("selectionchange"===e||"keyup"===e||"keydown"===e)return Kn(Qn)}function lr(e,t){if("click"===e)return Kn(t)}function ar(e,t){if("input"===e||"change"===e)return Kn(t)}var or="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},ur=Object.prototype.hasOwnProperty;function ir(e,t){if(or(e,t))return!0;if("object"!=typeof e||null===e||"object"!=typeof t||null===t)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(r=0;r<n.length;r++)if(!ur.call(t,n[r])||!or(e[n[r]],t[n[r]]))return!1;return!0}function sr(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function cr(e,t){var n,r=sr(e);for(e=0;r;){if(3===r.nodeType){if(n=e+r.textContent.length,e<=t&&n>=t)return{node:r,offset:t-e};e=n}e:{for(;r;){if(r.nextSibling){r=r.nextSibling;break e}r=r.parentNode}r=void 0}r=sr(r)}}function fr(){for(var e=window,t=J();t instanceof e.HTMLIFrameElement;){try{var n="string"==typeof t.contentWindow.location.href}catch(r){n=!1}if(!n)break;t=J((e=t.contentWindow).document)}return t}function dr(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&("input"===t&&("text"===e.type||"search"===e.type||"tel"===e.type||"url"===e.type||"password"===e.type)||"textarea"===t||"true"===e.contentEditable)}var pr=f&&"documentMode"in document&&11>=document.documentMode,hr=null,mr=null,vr=null,gr=!1;function yr(e,t,n){var r=n.window===n?n.document:9===n.nodeType?n:n.ownerDocument;gr||null==hr||hr!==J(r)||("selectionStart"in(r=hr)&&dr(r)?r={start:r.selectionStart,end:r.selectionEnd}:r={anchorNode:(r=(r.ownerDocument&&r.ownerDocument.defaultView||window).getSelection()).anchorNode,anchorOffset:r.anchorOffset,focusNode:r.focusNode,focusOffset:r.focusOffset},vr&&ir(vr,r)||(vr=r,0<(r=Or(mr,"onSelect")).length&&(t=new dn("onSelect","select",null,t,n),e.push({event:t,listeners:r}),t.target=hr)))}Mt("cancel cancel click click close close contextmenu contextMenu copy copy cut cut auxclick auxClick dblclick doubleClick dragend dragEnd dragstart dragStart drop drop focusin focus focusout blur input input invalid invalid keydown keyDown keypress keyPress keyup keyUp mousedown mouseDown mouseup mouseUp paste paste pause pause play play pointercancel pointerCancel pointerdown pointerDown pointerup pointerUp ratechange rateChange reset reset seeked seeked submit submit touchcancel touchCancel touchend touchEnd touchstart touchStart volumechange volumeChange".split(" "),0),Mt("drag drag dragenter dragEnter dragexit dragExit dragleave dragLeave dragover dragOver mousemove mouseMove mouseout mouseOut mouseover mouseOver pointermove pointerMove pointerout pointerOut pointerover pointerOver scroll scroll toggle toggle touchmove touchMove wheel wheel".split(" "),1),Mt(Rt,2);for(var br="change selectionchange textInput compositionstart compositionend compositionupdate".split(" "),wr=0;wr<br.length;wr++)Ot.set(br[wr],0);c("onMouseEnter",["mouseout","mouseover"]),c("onMouseLeave",["mouseout","mouseover"]),c("onPointerEnter",["pointerout","pointerover"]),c("onPointerLeave",["pointerout","pointerover"]),s("onChange","change click focusin focusout input keydown keyup selectionchange".split(" ")),s("onSelect","focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange".split(" ")),s("onBeforeInput",["compositionend","keypress","textInput","paste"]),s("onCompositionEnd","compositionend focusout keydown keypress keyup mousedown".split(" ")),s("onCompositionStart","compositionstart focusout keydown keypress keyup mousedown".split(" ")),s("onCompositionUpdate","compositionupdate focusout keydown keypress keyup mousedown".split(" "));var kr="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),Sr=new Set("cancel close invalid load scroll toggle".split(" ").concat(kr));function Er(e,t,n){var r=e.type||"unknown-event";e.currentTarget=n,function(e,t,n,r,l,a,u,i,s){if(Ke.apply(this,arguments),We){if(!We)throw Error(o(198));var c=$e;We=!1,$e=null,He||(He=!0,Qe=c)}}(r,t,void 0,e),e.currentTarget=null}function xr(e,t){t=0!=(4&t);for(var n=0;n<e.length;n++){var r=e[n],l=r.event;r=r.listeners;e:{var a=void 0;if(t)for(var o=r.length-1;0<=o;o--){var u=r[o],i=u.instance,s=u.currentTarget;if(u=u.listener,i!==a&&l.isPropagationStopped())break e;Er(l,u,s),a=i}else for(o=0;o<r.length;o++){if(i=(u=r[o]).instance,s=u.currentTarget,u=u.listener,i!==a&&l.isPropagationStopped())break e;Er(l,u,s),a=i}}}if(He)throw e=Qe,He=!1,Qe=null,e}function _r(e,t){var n=tl(t),r=e+"__bubble";n.has(r)||(Tr(t,e,2,!1),n.add(r))}var Cr="_reactListening"+Math.random().toString(36).slice(2);function Pr(e){e[Cr]||(e[Cr]=!0,u.forEach((function(t){Sr.has(t)||Nr(t,!1,e,null),Nr(t,!0,e,null)})))}function Nr(e,t,n,r){var l=4<arguments.length&&void 0!==arguments[4]?arguments[4]:0,a=n;if("selectionchange"===e&&9!==n.nodeType&&(a=n.ownerDocument),null!==r&&!t&&Sr.has(e)){if("scroll"!==e)return;l|=2,a=r}var o=tl(a),u=e+"__"+(t?"capture":"bubble");o.has(u)||(t&&(l|=4),Tr(a,e,l,t),o.add(u))}function Tr(e,t,n,r){var l=Ot.get(t);switch(void 0===l?2:l){case 0:l=Yt;break;case 1:l=Xt;break;default:l=Gt}n=l.bind(null,t,n,e),l=void 0,!Ve||"touchstart"!==t&&"touchmove"!==t&&"wheel"!==t||(l=!0),r?void 0!==l?e.addEventListener(t,n,{capture:!0,passive:l}):e.addEventListener(t,n,!0):void 0!==l?e.addEventListener(t,n,{passive:l}):e.addEventListener(t,n,!1)}function zr(e,t,n,r,l){var a=r;if(0==(1&t)&&0==(2&t)&&null!==r)e:for(;;){if(null===r)return;var o=r.tag;if(3===o||4===o){var u=r.stateNode.containerInfo;if(u===l||8===u.nodeType&&u.parentNode===l)break;if(4===o)for(o=r.return;null!==o;){var i=o.tag;if((3===i||4===i)&&((i=o.stateNode.containerInfo)===l||8===i.nodeType&&i.parentNode===l))return;o=o.return}for(;null!==u;){if(null===(o=Gr(u)))return;if(5===(i=o.tag)||6===i){r=a=o;continue e}u=u.parentNode}}r=r.return}!function(e,t,n){if(Fe)return e(t,n);Fe=!0;try{Ie(e,t,n)}finally{Fe=!1,Ue()}}((function(){var r=a,l=_e(n),o=[];e:{var u=Lt.get(e);if(void 0!==u){var i=dn,s=e;switch(e){case"keypress":if(0===rn(n))break e;case"keydown":case"keyup":i=Pn;break;case"focusin":s="focus",i=yn;break;case"focusout":s="blur",i=yn;break;case"beforeblur":case"afterblur":i=yn;break;case"click":if(2===n.button)break e;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":i=vn;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":i=gn;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":i=Tn;break;case Pt:case Nt:case Tt:i=bn;break;case zt:i=zn;break;case"scroll":i=hn;break;case"wheel":i=Ln;break;case"copy":case"cut":case"paste":i=wn;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":i=Nn}var c=0!=(4&t),f=!c&&"scroll"===e,d=c?null!==u?u+"Capture":null:u;c=[];for(var p,h=r;null!==h;){var m=(p=h).stateNode;if(5===p.tag&&null!==m&&(p=m,null!==d&&(null!=(m=Ae(h,d))&&c.push(Lr(h,m,p)))),f)break;h=h.return}0<c.length&&(u=new i(u,s,null,n,l),o.push({event:u,listeners:c}))}}if(0==(7&t)){if(i="mouseout"===e||"pointerout"===e,(!(u="mouseover"===e||"pointerover"===e)||0!=(16&t)||!(s=n.relatedTarget||n.fromElement)||!Gr(s)&&!s[Yr])&&(i||u)&&(u=l.window===l?l:(u=l.ownerDocument)?u.defaultView||u.parentWindow:window,i?(i=r,null!==(s=(s=n.relatedTarget||n.toElement)?Gr(s):null)&&(s!==(f=Ye(s))||5!==s.tag&&6!==s.tag)&&(s=null)):(i=null,s=r),i!==s)){if(c=vn,m="onMouseLeave",d="onMouseEnter",h="mouse","pointerout"!==e&&"pointerover"!==e||(c=Nn,m="onPointerLeave",d="onPointerEnter",h="pointer"),f=null==i?u:Zr(i),p=null==s?u:Zr(s),(u=new c(m,h+"leave",i,n,l)).target=f,u.relatedTarget=p,m=null,Gr(l)===r&&((c=new c(d,h+"enter",s,n,l)).target=p,c.relatedTarget=f,m=c),f=m,i&&s)e:{for(d=s,h=0,p=c=i;p;p=Rr(p))h++;for(p=0,m=d;m;m=Rr(m))p++;for(;0<h-p;)c=Rr(c),h--;for(;0<p-h;)d=Rr(d),p--;for(;h--;){if(c===d||null!==d&&c===d.alternate)break e;c=Rr(c),d=Rr(d)}c=null}else c=null;null!==i&&Mr(o,u,i,c,!1),null!==s&&null!==f&&Mr(o,f,s,c,!0)}if("select"===(i=(u=r?Zr(r):window).nodeName&&u.nodeName.toLowerCase())||"input"===i&&"file"===u.type)var v=Yn;else if(Wn(u))if(Xn)v=ar;else{v=rr;var g=nr}else(i=u.nodeName)&&"input"===i.toLowerCase()&&("checkbox"===u.type||"radio"===u.type)&&(v=lr);switch(v&&(v=v(e,r))?$n(o,v,n,l):(g&&g(e,u,r),"focusout"===e&&(g=u._wrapperState)&&g.controlled&&"number"===u.type&&le(u,"number",u.value)),g=r?Zr(r):window,e){case"focusin":(Wn(g)||"true"===g.contentEditable)&&(hr=g,mr=r,vr=null);break;case"focusout":vr=mr=hr=null;break;case"mousedown":gr=!0;break;case"contextmenu":case"mouseup":case"dragend":gr=!1,yr(o,n,l);break;case"selectionchange":if(pr)break;case"keydown":case"keyup":yr(o,n,l)}var y;if(Rn)e:{switch(e){case"compositionstart":var b="onCompositionStart";break e;case"compositionend":b="onCompositionEnd";break e;case"compositionupdate":b="onCompositionUpdate";break e}b=void 0}else Bn?An(e,n)&&(b="onCompositionEnd"):"keydown"===e&&229===n.keyCode&&(b="onCompositionStart");b&&(Dn&&"ko"!==n.locale&&(Bn||"onCompositionStart"!==b?"onCompositionEnd"===b&&Bn&&(y=nn()):(en="value"in(Zt=l)?Zt.value:Zt.textContent,Bn=!0)),0<(g=Or(r,b)).length&&(b=new kn(b,e,null,n,l),o.push({event:b,listeners:g}),y?b.data=y:null!==(y=Vn(n))&&(b.data=y))),(y=In?function(e,t){switch(e){case"compositionend":return Vn(t);case"keypress":return 32!==t.which?null:(Un=!0,Fn);case"textInput":return(e=t.data)===Fn&&Un?null:e;default:return null}}(e,n):function(e,t){if(Bn)return"compositionend"===e||!Rn&&An(e,t)?(e=nn(),tn=en=Zt=null,Bn=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case"compositionend":return Dn&&"ko"!==t.locale?null:t.data;default:return null}}(e,n))&&(0<(r=Or(r,"onBeforeInput")).length&&(l=new kn("onBeforeInput","beforeinput",null,n,l),o.push({event:l,listeners:r}),l.data=y))}xr(o,t)}))}function Lr(e,t,n){return{instance:e,listener:t,currentTarget:n}}function Or(e,t){for(var n=t+"Capture",r=[];null!==e;){var l=e,a=l.stateNode;5===l.tag&&null!==a&&(l=a,null!=(a=Ae(e,n))&&r.unshift(Lr(e,a,l)),null!=(a=Ae(e,t))&&r.push(Lr(e,a,l))),e=e.return}return r}function Rr(e){if(null===e)return null;do{e=e.return}while(e&&5!==e.tag);return e||null}function Mr(e,t,n,r,l){for(var a=t._reactName,o=[];null!==n&&n!==r;){var u=n,i=u.alternate,s=u.stateNode;if(null!==i&&i===r)break;5===u.tag&&null!==s&&(u=s,l?null!=(i=Ae(n,a))&&o.unshift(Lr(n,i,u)):l||null!=(i=Ae(n,a))&&o.push(Lr(n,i,u))),n=n.return}0!==o.length&&e.push({event:t,listeners:o})}function Ir(){}var Dr=null,Fr=null;function Ur(e,t){switch(e){case"button":case"input":case"select":case"textarea":return!!t.autoFocus}return!1}function Ar(e,t){return"textarea"===e||"option"===e||"noscript"===e||"string"==typeof t.children||"number"==typeof t.children||"object"==typeof t.dangerouslySetInnerHTML&&null!==t.dangerouslySetInnerHTML&&null!=t.dangerouslySetInnerHTML.__html}var Vr="function"==typeof setTimeout?setTimeout:void 0,Br="function"==typeof clearTimeout?clearTimeout:void 0;function jr(e){1===e.nodeType?e.textContent="":9===e.nodeType&&(null!=(e=e.body)&&(e.textContent=""))}function Wr(e){for(;null!=e;e=e.nextSibling){var t=e.nodeType;if(1===t||3===t)break}return e}function $r(e){e=e.previousSibling;for(var t=0;e;){if(8===e.nodeType){var n=e.data;if("$"===n||"$!"===n||"$?"===n){if(0===t)return e;t--}else"/$"===n&&t++}e=e.previousSibling}return null}var Hr=0;var Qr=Math.random().toString(36).slice(2),qr="__reactFiber$"+Qr,Kr="__reactProps$"+Qr,Yr="__reactContainer$"+Qr,Xr="__reactEvents$"+Qr;function Gr(e){var t=e[qr];if(t)return t;for(var n=e.parentNode;n;){if(t=n[Yr]||n[qr]){if(n=t.alternate,null!==t.child||null!==n&&null!==n.child)for(e=$r(e);null!==e;){if(n=e[qr])return n;e=$r(e)}return t}n=(e=n).parentNode}return null}function Jr(e){return!(e=e[qr]||e[Yr])||5!==e.tag&&6!==e.tag&&13!==e.tag&&3!==e.tag?null:e}function Zr(e){if(5===e.tag||6===e.tag)return e.stateNode;throw Error(o(33))}function el(e){return e[Kr]||null}function tl(e){var t=e[Xr];return void 0===t&&(t=e[Xr]=new Set),t}var nl=[],rl=-1;function ll(e){return{current:e}}function al(e){0>rl||(e.current=nl[rl],nl[rl]=null,rl--)}function ol(e,t){rl++,nl[rl]=e.current,e.current=t}var ul={},il=ll(ul),sl=ll(!1),cl=ul;function fl(e,t){var n=e.type.contextTypes;if(!n)return ul;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var l,a={};for(l in n)a[l]=t[l];return r&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=a),a}function dl(e){return null!=(e=e.childContextTypes)}function pl(){al(sl),al(il)}function hl(e,t,n){if(il.current!==ul)throw Error(o(168));ol(il,t),ol(sl,n)}function ml(e,t,n){var r=e.stateNode;if(e=t.childContextTypes,"function"!=typeof r.getChildContext)return n;for(var a in r=r.getChildContext())if(!(a in e))throw Error(o(108,q(t)||"Unknown",a));return l({},n,r)}function vl(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||ul,cl=il.current,ol(il,e),ol(sl,sl.current),!0}function gl(e,t,n){var r=e.stateNode;if(!r)throw Error(o(169));n?(e=ml(e,t,cl),r.__reactInternalMemoizedMergedChildContext=e,al(sl),al(il),ol(il,e)):al(sl),ol(sl,n)}var yl=null,bl=null,wl=a.unstable_runWithPriority,kl=a.unstable_scheduleCallback,Sl=a.unstable_cancelCallback,El=a.unstable_shouldYield,xl=a.unstable_requestPaint,_l=a.unstable_now,Cl=a.unstable_getCurrentPriorityLevel,Pl=a.unstable_ImmediatePriority,Nl=a.unstable_UserBlockingPriority,Tl=a.unstable_NormalPriority,zl=a.unstable_LowPriority,Ll=a.unstable_IdlePriority,Ol={},Rl=void 0!==xl?xl:function(){},Ml=null,Il=null,Dl=!1,Fl=_l(),Ul=1e4>Fl?_l:function(){return _l()-Fl};function Al(){switch(Cl()){case Pl:return 99;case Nl:return 98;case Tl:return 97;case zl:return 96;case Ll:return 95;default:throw Error(o(332))}}function Vl(e){switch(e){case 99:return Pl;case 98:return Nl;case 97:return Tl;case 96:return zl;case 95:return Ll;default:throw Error(o(332))}}function Bl(e,t){return e=Vl(e),wl(e,t)}function jl(e,t,n){return e=Vl(e),kl(e,t,n)}function Wl(){if(null!==Il){var e=Il;Il=null,Sl(e)}$l()}function $l(){if(!Dl&&null!==Ml){Dl=!0;var e=0;try{var t=Ml;Bl(99,(function(){for(;e<t.length;e++){var n=t[e];do{n=n(!0)}while(null!==n)}})),Ml=null}catch(n){throw null!==Ml&&(Ml=Ml.slice(e+1)),kl(Pl,Wl),n}finally{Dl=!1}}}var Hl=k.ReactCurrentBatchConfig;function Ql(e,t){if(e&&e.defaultProps){for(var n in t=l({},t),e=e.defaultProps)void 0===t[n]&&(t[n]=e[n]);return t}return t}var ql=ll(null),Kl=null,Yl=null,Xl=null;function Gl(){Xl=Yl=Kl=null}function Jl(e){var t=ql.current;al(ql),e.type._context._currentValue=t}function Zl(e,t){for(;null!==e;){var n=e.alternate;if((e.childLanes&t)===t){if(null===n||(n.childLanes&t)===t)break;n.childLanes|=t}else e.childLanes|=t,null!==n&&(n.childLanes|=t);e=e.return}}function ea(e,t){Kl=e,Xl=Yl=null,null!==(e=e.dependencies)&&null!==e.firstContext&&(0!=(e.lanes&t)&&(Oo=!0),e.firstContext=null)}function ta(e,t){if(Xl!==e&&!1!==t&&0!==t)if("number"==typeof t&&1073741823!==t||(Xl=e,t=1073741823),t={context:e,observedBits:t,next:null},null===Yl){if(null===Kl)throw Error(o(308));Yl=t,Kl.dependencies={lanes:0,firstContext:t,responders:null}}else Yl=Yl.next=t;return e._currentValue}var na=!1;function ra(e){e.updateQueue={baseState:e.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null},effects:null}}function la(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,firstBaseUpdate:e.firstBaseUpdate,lastBaseUpdate:e.lastBaseUpdate,shared:e.shared,effects:e.effects})}function aa(e,t){return{eventTime:e,lane:t,tag:0,payload:null,callback:null,next:null}}function oa(e,t){if(null!==(e=e.updateQueue)){var n=(e=e.shared).pending;null===n?t.next=t:(t.next=n.next,n.next=t),e.pending=t}}function ua(e,t){var n=e.updateQueue,r=e.alternate;if(null!==r&&n===(r=r.updateQueue)){var l=null,a=null;if(null!==(n=n.firstBaseUpdate)){do{var o={eventTime:n.eventTime,lane:n.lane,tag:n.tag,payload:n.payload,callback:n.callback,next:null};null===a?l=a=o:a=a.next=o,n=n.next}while(null!==n);null===a?l=a=t:a=a.next=t}else l=a=t;return n={baseState:r.baseState,firstBaseUpdate:l,lastBaseUpdate:a,shared:r.shared,effects:r.effects},void(e.updateQueue=n)}null===(e=n.lastBaseUpdate)?n.firstBaseUpdate=t:e.next=t,n.lastBaseUpdate=t}function ia(e,t,n,r){var a=e.updateQueue;na=!1;var o=a.firstBaseUpdate,u=a.lastBaseUpdate,i=a.shared.pending;if(null!==i){a.shared.pending=null;var s=i,c=s.next;s.next=null,null===u?o=c:u.next=c,u=s;var f=e.alternate;if(null!==f){var d=(f=f.updateQueue).lastBaseUpdate;d!==u&&(null===d?f.firstBaseUpdate=c:d.next=c,f.lastBaseUpdate=s)}}if(null!==o){for(d=a.baseState,u=0,f=c=s=null;;){i=o.lane;var p=o.eventTime;if((r&i)===i){null!==f&&(f=f.next={eventTime:p,lane:0,tag:o.tag,payload:o.payload,callback:o.callback,next:null});e:{var h=e,m=o;switch(i=t,p=n,m.tag){case 1:if("function"==typeof(h=m.payload)){d=h.call(p,d,i);break e}d=h;break e;case 3:h.flags=-4097&h.flags|64;case 0:if(null==(i="function"==typeof(h=m.payload)?h.call(p,d,i):h))break e;d=l({},d,i);break e;case 2:na=!0}}null!==o.callback&&(e.flags|=32,null===(i=a.effects)?a.effects=[o]:i.push(o))}else p={eventTime:p,lane:i,tag:o.tag,payload:o.payload,callback:o.callback,next:null},null===f?(c=f=p,s=d):f=f.next=p,u|=i;if(null===(o=o.next)){if(null===(i=a.shared.pending))break;o=i.next,i.next=null,a.lastBaseUpdate=i,a.shared.pending=null}}null===f&&(s=d),a.baseState=s,a.firstBaseUpdate=c,a.lastBaseUpdate=f,Mu|=u,e.lanes=u,e.memoizedState=d}}function sa(e,t,n){if(e=t.effects,t.effects=null,null!==e)for(t=0;t<e.length;t++){var r=e[t],l=r.callback;if(null!==l){if(r.callback=null,r=n,"function"!=typeof l)throw Error(o(191,l));l.call(r)}}}var ca=(new r.Component).refs;function fa(e,t,n,r){n=null==(n=n(r,t=e.memoizedState))?t:l({},t,n),e.memoizedState=n,0===e.lanes&&(e.updateQueue.baseState=n)}var da={isMounted:function(e){return!!(e=e._reactInternals)&&Ye(e)===e},enqueueSetState:function(e,t,n){e=e._reactInternals;var r=ai(),l=oi(e),a=aa(r,l);a.payload=t,null!=n&&(a.callback=n),oa(e,a),ui(e,l,r)},enqueueReplaceState:function(e,t,n){e=e._reactInternals;var r=ai(),l=oi(e),a=aa(r,l);a.tag=1,a.payload=t,null!=n&&(a.callback=n),oa(e,a),ui(e,l,r)},enqueueForceUpdate:function(e,t){e=e._reactInternals;var n=ai(),r=oi(e),l=aa(n,r);l.tag=2,null!=t&&(l.callback=t),oa(e,l),ui(e,r,n)}};function pa(e,t,n,r,l,a,o){return"function"==typeof(e=e.stateNode).shouldComponentUpdate?e.shouldComponentUpdate(r,a,o):!t.prototype||!t.prototype.isPureReactComponent||(!ir(n,r)||!ir(l,a))}function ha(e,t,n){var r=!1,l=ul,a=t.contextType;return"object"==typeof a&&null!==a?a=ta(a):(l=dl(t)?cl:il.current,a=(r=null!=(r=t.contextTypes))?fl(e,l):ul),t=new t(n,a),e.memoizedState=null!==t.state&&void 0!==t.state?t.state:null,t.updater=da,e.stateNode=t,t._reactInternals=e,r&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=l,e.__reactInternalMemoizedMaskedChildContext=a),t}function ma(e,t,n,r){e=t.state,"function"==typeof t.componentWillReceiveProps&&t.componentWillReceiveProps(n,r),"function"==typeof t.UNSAFE_componentWillReceiveProps&&t.UNSAFE_componentWillReceiveProps(n,r),t.state!==e&&da.enqueueReplaceState(t,t.state,null)}function va(e,t,n,r){var l=e.stateNode;l.props=n,l.state=e.memoizedState,l.refs=ca,ra(e);var a=t.contextType;"object"==typeof a&&null!==a?l.context=ta(a):(a=dl(t)?cl:il.current,l.context=fl(e,a)),ia(e,n,l,r),l.state=e.memoizedState,"function"==typeof(a=t.getDerivedStateFromProps)&&(fa(e,t,a,n),l.state=e.memoizedState),"function"==typeof t.getDerivedStateFromProps||"function"==typeof l.getSnapshotBeforeUpdate||"function"!=typeof l.UNSAFE_componentWillMount&&"function"!=typeof l.componentWillMount||(t=l.state,"function"==typeof l.componentWillMount&&l.componentWillMount(),"function"==typeof l.UNSAFE_componentWillMount&&l.UNSAFE_componentWillMount(),t!==l.state&&da.enqueueReplaceState(l,l.state,null),ia(e,n,l,r),l.state=e.memoizedState),"function"==typeof l.componentDidMount&&(e.flags|=4)}var ga=Array.isArray;function ya(e,t,n){if(null!==(e=n.ref)&&"function"!=typeof e&&"object"!=typeof e){if(n._owner){if(n=n._owner){if(1!==n.tag)throw Error(o(309));var r=n.stateNode}if(!r)throw Error(o(147,e));var l=""+e;return null!==t&&null!==t.ref&&"function"==typeof t.ref&&t.ref._stringRef===l?t.ref:((t=function(e){var t=r.refs;t===ca&&(t=r.refs={}),null===e?delete t[l]:t[l]=e})._stringRef=l,t)}if("string"!=typeof e)throw Error(o(284));if(!n._owner)throw Error(o(290,e))}return e}function ba(e,t){if("textarea"!==e.type)throw Error(o(31,"[object Object]"===Object.prototype.toString.call(t)?"object with keys {"+Object.keys(t).join(", ")+"}":t))}function wa(e){function t(t,n){if(e){var r=t.lastEffect;null!==r?(r.nextEffect=n,t.lastEffect=n):t.firstEffect=t.lastEffect=n,n.nextEffect=null,n.flags=8}}function n(n,r){if(!e)return null;for(;null!==r;)t(n,r),r=r.sibling;return null}function r(e,t){for(e=new Map;null!==t;)null!==t.key?e.set(t.key,t):e.set(t.index,t),t=t.sibling;return e}function l(e,t){return(e=Ai(e,t)).index=0,e.sibling=null,e}function a(t,n,r){return t.index=r,e?null!==(r=t.alternate)?(r=r.index)<n?(t.flags=2,n):r:(t.flags=2,n):n}function u(t){return e&&null===t.alternate&&(t.flags=2),t}function i(e,t,n,r){return null===t||6!==t.tag?((t=Wi(n,e.mode,r)).return=e,t):((t=l(t,n)).return=e,t)}function s(e,t,n,r){return null!==t&&t.elementType===n.type?((r=l(t,n.props)).ref=ya(e,t,n),r.return=e,r):((r=Vi(n.type,n.key,n.props,null,e.mode,r)).ref=ya(e,t,n),r.return=e,r)}function c(e,t,n,r){return null===t||4!==t.tag||t.stateNode.containerInfo!==n.containerInfo||t.stateNode.implementation!==n.implementation?((t=$i(n,e.mode,r)).return=e,t):((t=l(t,n.children||[])).return=e,t)}function f(e,t,n,r,a){return null===t||7!==t.tag?((t=Bi(n,e.mode,r,a)).return=e,t):((t=l(t,n)).return=e,t)}function d(e,t,n){if("string"==typeof t||"number"==typeof t)return(t=Wi(""+t,e.mode,n)).return=e,t;if("object"==typeof t&&null!==t){switch(t.$$typeof){case S:return(n=Vi(t.type,t.key,t.props,null,e.mode,n)).ref=ya(e,null,t),n.return=e,n;case E:return(t=$i(t,e.mode,n)).return=e,t}if(ga(t)||j(t))return(t=Bi(t,e.mode,n,null)).return=e,t;ba(e,t)}return null}function p(e,t,n,r){var l=null!==t?t.key:null;if("string"==typeof n||"number"==typeof n)return null!==l?null:i(e,t,""+n,r);if("object"==typeof n&&null!==n){switch(n.$$typeof){case S:return n.key===l?n.type===x?f(e,t,n.props.children,r,l):s(e,t,n,r):null;case E:return n.key===l?c(e,t,n,r):null}if(ga(n)||j(n))return null!==l?null:f(e,t,n,r,null);ba(e,n)}return null}function h(e,t,n,r,l){if("string"==typeof r||"number"==typeof r)return i(t,e=e.get(n)||null,""+r,l);if("object"==typeof r&&null!==r){switch(r.$$typeof){case S:return e=e.get(null===r.key?n:r.key)||null,r.type===x?f(t,e,r.props.children,l,r.key):s(t,e,r,l);case E:return c(t,e=e.get(null===r.key?n:r.key)||null,r,l)}if(ga(r)||j(r))return f(t,e=e.get(n)||null,r,l,null);ba(t,r)}return null}function m(l,o,u,i){for(var s=null,c=null,f=o,m=o=0,v=null;null!==f&&m<u.length;m++){f.index>m?(v=f,f=null):v=f.sibling;var g=p(l,f,u[m],i);if(null===g){null===f&&(f=v);break}e&&f&&null===g.alternate&&t(l,f),o=a(g,o,m),null===c?s=g:c.sibling=g,c=g,f=v}if(m===u.length)return n(l,f),s;if(null===f){for(;m<u.length;m++)null!==(f=d(l,u[m],i))&&(o=a(f,o,m),null===c?s=f:c.sibling=f,c=f);return s}for(f=r(l,f);m<u.length;m++)null!==(v=h(f,l,m,u[m],i))&&(e&&null!==v.alternate&&f.delete(null===v.key?m:v.key),o=a(v,o,m),null===c?s=v:c.sibling=v,c=v);return e&&f.forEach((function(e){return t(l,e)})),s}function v(l,u,i,s){var c=j(i);if("function"!=typeof c)throw Error(o(150));if(null==(i=c.call(i)))throw Error(o(151));for(var f=c=null,m=u,v=u=0,g=null,y=i.next();null!==m&&!y.done;v++,y=i.next()){m.index>v?(g=m,m=null):g=m.sibling;var b=p(l,m,y.value,s);if(null===b){null===m&&(m=g);break}e&&m&&null===b.alternate&&t(l,m),u=a(b,u,v),null===f?c=b:f.sibling=b,f=b,m=g}if(y.done)return n(l,m),c;if(null===m){for(;!y.done;v++,y=i.next())null!==(y=d(l,y.value,s))&&(u=a(y,u,v),null===f?c=y:f.sibling=y,f=y);return c}for(m=r(l,m);!y.done;v++,y=i.next())null!==(y=h(m,l,v,y.value,s))&&(e&&null!==y.alternate&&m.delete(null===y.key?v:y.key),u=a(y,u,v),null===f?c=y:f.sibling=y,f=y);return e&&m.forEach((function(e){return t(l,e)})),c}return function(e,r,a,i){var s="object"==typeof a&&null!==a&&a.type===x&&null===a.key;s&&(a=a.props.children);var c="object"==typeof a&&null!==a;if(c)switch(a.$$typeof){case S:e:{for(c=a.key,s=r;null!==s;){if(s.key===c){switch(s.tag){case 7:if(a.type===x){n(e,s.sibling),(r=l(s,a.props.children)).return=e,e=r;break e}break;default:if(s.elementType===a.type){n(e,s.sibling),(r=l(s,a.props)).ref=ya(e,s,a),r.return=e,e=r;break e}}n(e,s);break}t(e,s),s=s.sibling}a.type===x?((r=Bi(a.props.children,e.mode,i,a.key)).return=e,e=r):((i=Vi(a.type,a.key,a.props,null,e.mode,i)).ref=ya(e,r,a),i.return=e,e=i)}return u(e);case E:e:{for(s=a.key;null!==r;){if(r.key===s){if(4===r.tag&&r.stateNode.containerInfo===a.containerInfo&&r.stateNode.implementation===a.implementation){n(e,r.sibling),(r=l(r,a.children||[])).return=e,e=r;break e}n(e,r);break}t(e,r),r=r.sibling}(r=$i(a,e.mode,i)).return=e,e=r}return u(e)}if("string"==typeof a||"number"==typeof a)return a=""+a,null!==r&&6===r.tag?(n(e,r.sibling),(r=l(r,a)).return=e,e=r):(n(e,r),(r=Wi(a,e.mode,i)).return=e,e=r),u(e);if(ga(a))return m(e,r,a,i);if(j(a))return v(e,r,a,i);if(c&&ba(e,a),void 0===a&&!s)switch(e.tag){case 1:case 22:case 0:case 11:case 15:throw Error(o(152,q(e.type)||"Component"))}return n(e,r)}}var ka=wa(!0),Sa=wa(!1),Ea={},xa=ll(Ea),_a=ll(Ea),Ca=ll(Ea);function Pa(e){if(e===Ea)throw Error(o(174));return e}function Na(e,t){switch(ol(Ca,t),ol(_a,e),ol(xa,Ea),e=t.nodeType){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:he(null,"");break;default:t=he(t=(e=8===e?t.parentNode:t).namespaceURI||null,e=e.tagName)}al(xa),ol(xa,t)}function Ta(){al(xa),al(_a),al(Ca)}function za(e){Pa(Ca.current);var t=Pa(xa.current),n=he(t,e.type);t!==n&&(ol(_a,e),ol(xa,n))}function La(e){_a.current===e&&(al(xa),al(_a))}var Oa=ll(0);function Ra(e){for(var t=e;null!==t;){if(13===t.tag){var n=t.memoizedState;if(null!==n&&(null===(n=n.dehydrated)||"$?"===n.data||"$!"===n.data))return t}else if(19===t.tag&&void 0!==t.memoizedProps.revealOrder){if(0!=(64&t.flags))return t}else if(null!==t.child){t.child.return=t,t=t.child;continue}if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}var Ma=null,Ia=null,Da=!1;function Fa(e,t){var n=Fi(5,null,null,0);n.elementType="DELETED",n.type="DELETED",n.stateNode=t,n.return=e,n.flags=8,null!==e.lastEffect?(e.lastEffect.nextEffect=n,e.lastEffect=n):e.firstEffect=e.lastEffect=n}function Ua(e,t){switch(e.tag){case 5:var n=e.type;return null!==(t=1!==t.nodeType||n.toLowerCase()!==t.nodeName.toLowerCase()?null:t)&&(e.stateNode=t,!0);case 6:return null!==(t=""===e.pendingProps||3!==t.nodeType?null:t)&&(e.stateNode=t,!0);case 13:default:return!1}}function Aa(e){if(Da){var t=Ia;if(t){var n=t;if(!Ua(e,t)){if(!(t=Wr(n.nextSibling))||!Ua(e,t))return e.flags=-1025&e.flags|2,Da=!1,void(Ma=e);Fa(Ma,n)}Ma=e,Ia=Wr(t.firstChild)}else e.flags=-1025&e.flags|2,Da=!1,Ma=e}}function Va(e){for(e=e.return;null!==e&&5!==e.tag&&3!==e.tag&&13!==e.tag;)e=e.return;Ma=e}function Ba(e){if(e!==Ma)return!1;if(!Da)return Va(e),Da=!0,!1;var t=e.type;if(5!==e.tag||"head"!==t&&"body"!==t&&!Ar(t,e.memoizedProps))for(t=Ia;t;)Fa(e,t),t=Wr(t.nextSibling);if(Va(e),13===e.tag){if(!(e=null!==(e=e.memoizedState)?e.dehydrated:null))throw Error(o(317));e:{for(e=e.nextSibling,t=0;e;){if(8===e.nodeType){var n=e.data;if("/$"===n){if(0===t){Ia=Wr(e.nextSibling);break e}t--}else"$"!==n&&"$!"!==n&&"$?"!==n||t++}e=e.nextSibling}Ia=null}}else Ia=Ma?Wr(e.stateNode.nextSibling):null;return!0}function ja(){Ia=Ma=null,Da=!1}var Wa=[];function $a(){for(var e=0;e<Wa.length;e++)Wa[e]._workInProgressVersionPrimary=null;Wa.length=0}var Ha=k.ReactCurrentDispatcher,Qa=k.ReactCurrentBatchConfig,qa=0,Ka=null,Ya=null,Xa=null,Ga=!1,Ja=!1;function Za(){throw Error(o(321))}function eo(e,t){if(null===t)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!or(e[n],t[n]))return!1;return!0}function to(e,t,n,r,l,a){if(qa=a,Ka=t,t.memoizedState=null,t.updateQueue=null,t.lanes=0,Ha.current=null===e||null===e.memoizedState?No:To,e=n(r,l),Ja){a=0;do{if(Ja=!1,!(25>a))throw Error(o(301));a+=1,Xa=Ya=null,t.updateQueue=null,Ha.current=zo,e=n(r,l)}while(Ja)}if(Ha.current=Po,t=null!==Ya&&null!==Ya.next,qa=0,Xa=Ya=Ka=null,Ga=!1,t)throw Error(o(300));return e}function no(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return null===Xa?Ka.memoizedState=Xa=e:Xa=Xa.next=e,Xa}function ro(){if(null===Ya){var e=Ka.alternate;e=null!==e?e.memoizedState:null}else e=Ya.next;var t=null===Xa?Ka.memoizedState:Xa.next;if(null!==t)Xa=t,Ya=e;else{if(null===e)throw Error(o(310));e={memoizedState:(Ya=e).memoizedState,baseState:Ya.baseState,baseQueue:Ya.baseQueue,queue:Ya.queue,next:null},null===Xa?Ka.memoizedState=Xa=e:Xa=Xa.next=e}return Xa}function lo(e,t){return"function"==typeof t?t(e):t}function ao(e){var t=ro(),n=t.queue;if(null===n)throw Error(o(311));n.lastRenderedReducer=e;var r=Ya,l=r.baseQueue,a=n.pending;if(null!==a){if(null!==l){var u=l.next;l.next=a.next,a.next=u}r.baseQueue=l=a,n.pending=null}if(null!==l){l=l.next,r=r.baseState;var i=u=a=null,s=l;do{var c=s.lane;if((qa&c)===c)null!==i&&(i=i.next={lane:0,action:s.action,eagerReducer:s.eagerReducer,eagerState:s.eagerState,next:null}),r=s.eagerReducer===e?s.eagerState:e(r,s.action);else{var f={lane:c,action:s.action,eagerReducer:s.eagerReducer,eagerState:s.eagerState,next:null};null===i?(u=i=f,a=r):i=i.next=f,Ka.lanes|=c,Mu|=c}s=s.next}while(null!==s&&s!==l);null===i?a=r:i.next=u,or(r,t.memoizedState)||(Oo=!0),t.memoizedState=r,t.baseState=a,t.baseQueue=i,n.lastRenderedState=r}return[t.memoizedState,n.dispatch]}function oo(e){var t=ro(),n=t.queue;if(null===n)throw Error(o(311));n.lastRenderedReducer=e;var r=n.dispatch,l=n.pending,a=t.memoizedState;if(null!==l){n.pending=null;var u=l=l.next;do{a=e(a,u.action),u=u.next}while(u!==l);or(a,t.memoizedState)||(Oo=!0),t.memoizedState=a,null===t.baseQueue&&(t.baseState=a),n.lastRenderedState=a}return[a,r]}function uo(e,t,n){var r=t._getVersion;r=r(t._source);var l=t._workInProgressVersionPrimary;if(null!==l?e=l===r:(e=e.mutableReadLanes,(e=(qa&e)===e)&&(t._workInProgressVersionPrimary=r,Wa.push(t))),e)return n(t._source);throw Wa.push(t),Error(o(350))}function io(e,t,n,r){var l=Cu;if(null===l)throw Error(o(349));var a=t._getVersion,u=a(t._source),i=Ha.current,s=i.useState((function(){return uo(l,t,n)})),c=s[1],f=s[0];s=Xa;var d=e.memoizedState,p=d.refs,h=p.getSnapshot,m=d.source;d=d.subscribe;var v=Ka;return e.memoizedState={refs:p,source:t,subscribe:r},i.useEffect((function(){p.getSnapshot=n,p.setSnapshot=c;var e=a(t._source);if(!or(u,e)){e=n(t._source),or(f,e)||(c(e),e=oi(v),l.mutableReadLanes|=e&l.pendingLanes),e=l.mutableReadLanes,l.entangledLanes|=e;for(var r=l.entanglements,o=e;0<o;){var i=31-Wt(o),s=1<<i;r[i]|=e,o&=~s}}}),[n,t,r]),i.useEffect((function(){return r(t._source,(function(){var e=p.getSnapshot,n=p.setSnapshot;try{n(e(t._source));var r=oi(v);l.mutableReadLanes|=r&l.pendingLanes}catch(a){n((function(){throw a}))}}))}),[t,r]),or(h,n)&&or(m,t)&&or(d,r)||((e={pending:null,dispatch:null,lastRenderedReducer:lo,lastRenderedState:f}).dispatch=c=Co.bind(null,Ka,e),s.queue=e,s.baseQueue=null,f=uo(l,t,n),s.memoizedState=s.baseState=f),f}function so(e,t,n){return io(ro(),e,t,n)}function co(e){var t=no();return"function"==typeof e&&(e=e()),t.memoizedState=t.baseState=e,e=(e=t.queue={pending:null,dispatch:null,lastRenderedReducer:lo,lastRenderedState:e}).dispatch=Co.bind(null,Ka,e),[t.memoizedState,e]}function fo(e,t,n,r){return e={tag:e,create:t,destroy:n,deps:r,next:null},null===(t=Ka.updateQueue)?(t={lastEffect:null},Ka.updateQueue=t,t.lastEffect=e.next=e):null===(n=t.lastEffect)?t.lastEffect=e.next=e:(r=n.next,n.next=e,e.next=r,t.lastEffect=e),e}function po(e){return e={current:e},no().memoizedState=e}function ho(){return ro().memoizedState}function mo(e,t,n,r){var l=no();Ka.flags|=e,l.memoizedState=fo(1|t,n,void 0,void 0===r?null:r)}function vo(e,t,n,r){var l=ro();r=void 0===r?null:r;var a=void 0;if(null!==Ya){var o=Ya.memoizedState;if(a=o.destroy,null!==r&&eo(r,o.deps))return void fo(t,n,a,r)}Ka.flags|=e,l.memoizedState=fo(1|t,n,a,r)}function go(e,t){return mo(516,4,e,t)}function yo(e,t){return vo(516,4,e,t)}function bo(e,t){return vo(4,2,e,t)}function wo(e,t){return"function"==typeof t?(e=e(),t(e),function(){t(null)}):null!=t?(e=e(),t.current=e,function(){t.current=null}):void 0}function ko(e,t,n){return n=null!=n?n.concat([e]):null,vo(4,2,wo.bind(null,t,e),n)}function So(){}function Eo(e,t){var n=ro();t=void 0===t?null:t;var r=n.memoizedState;return null!==r&&null!==t&&eo(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function xo(e,t){var n=ro();t=void 0===t?null:t;var r=n.memoizedState;return null!==r&&null!==t&&eo(t,r[1])?r[0]:(e=e(),n.memoizedState=[e,t],e)}function _o(e,t){var n=Al();Bl(98>n?98:n,(function(){e(!0)})),Bl(97<n?97:n,(function(){var n=Qa.transition;Qa.transition=1;try{e(!1),t()}finally{Qa.transition=n}}))}function Co(e,t,n){var r=ai(),l=oi(e),a={lane:l,action:n,eagerReducer:null,eagerState:null,next:null},o=t.pending;if(null===o?a.next=a:(a.next=o.next,o.next=a),t.pending=a,o=e.alternate,e===Ka||null!==o&&o===Ka)Ja=Ga=!0;else{if(0===e.lanes&&(null===o||0===o.lanes)&&null!==(o=t.lastRenderedReducer))try{var u=t.lastRenderedState,i=o(u,n);if(a.eagerReducer=o,a.eagerState=i,or(i,u))return}catch(s){}ui(e,l,r)}}var Po={readContext:ta,useCallback:Za,useContext:Za,useEffect:Za,useImperativeHandle:Za,useLayoutEffect:Za,useMemo:Za,useReducer:Za,useRef:Za,useState:Za,useDebugValue:Za,useDeferredValue:Za,useTransition:Za,useMutableSource:Za,useOpaqueIdentifier:Za,unstable_isNewReconciler:!1},No={readContext:ta,useCallback:function(e,t){return no().memoizedState=[e,void 0===t?null:t],e},useContext:ta,useEffect:go,useImperativeHandle:function(e,t,n){return n=null!=n?n.concat([e]):null,mo(4,2,wo.bind(null,t,e),n)},useLayoutEffect:function(e,t){return mo(4,2,e,t)},useMemo:function(e,t){var n=no();return t=void 0===t?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=no();return t=void 0!==n?n(t):t,r.memoizedState=r.baseState=t,e=(e=r.queue={pending:null,dispatch:null,lastRenderedReducer:e,lastRenderedState:t}).dispatch=Co.bind(null,Ka,e),[r.memoizedState,e]},useRef:po,useState:co,useDebugValue:So,useDeferredValue:function(e){var t=co(e),n=t[0],r=t[1];return go((function(){var t=Qa.transition;Qa.transition=1;try{r(e)}finally{Qa.transition=t}}),[e]),n},useTransition:function(){var e=co(!1),t=e[0];return po(e=_o.bind(null,e[1])),[e,t]},useMutableSource:function(e,t,n){var r=no();return r.memoizedState={refs:{getSnapshot:t,setSnapshot:null},source:e,subscribe:n},io(r,e,t,n)},useOpaqueIdentifier:function(){if(Da){var e=!1,t=function(e){return{$$typeof:I,toString:e,valueOf:e}}((function(){throw e||(e=!0,n("r:"+(Hr++).toString(36))),Error(o(355))})),n=co(t)[1];return 0==(2&Ka.mode)&&(Ka.flags|=516,fo(5,(function(){n("r:"+(Hr++).toString(36))}),void 0,null)),t}return co(t="r:"+(Hr++).toString(36)),t},unstable_isNewReconciler:!1},To={readContext:ta,useCallback:Eo,useContext:ta,useEffect:yo,useImperativeHandle:ko,useLayoutEffect:bo,useMemo:xo,useReducer:ao,useRef:ho,useState:function(){return ao(lo)},useDebugValue:So,useDeferredValue:function(e){var t=ao(lo),n=t[0],r=t[1];return yo((function(){var t=Qa.transition;Qa.transition=1;try{r(e)}finally{Qa.transition=t}}),[e]),n},useTransition:function(){var e=ao(lo)[0];return[ho().current,e]},useMutableSource:so,useOpaqueIdentifier:function(){return ao(lo)[0]},unstable_isNewReconciler:!1},zo={readContext:ta,useCallback:Eo,useContext:ta,useEffect:yo,useImperativeHandle:ko,useLayoutEffect:bo,useMemo:xo,useReducer:oo,useRef:ho,useState:function(){return oo(lo)},useDebugValue:So,useDeferredValue:function(e){var t=oo(lo),n=t[0],r=t[1];return yo((function(){var t=Qa.transition;Qa.transition=1;try{r(e)}finally{Qa.transition=t}}),[e]),n},useTransition:function(){var e=oo(lo)[0];return[ho().current,e]},useMutableSource:so,useOpaqueIdentifier:function(){return oo(lo)[0]},unstable_isNewReconciler:!1},Lo=k.ReactCurrentOwner,Oo=!1;function Ro(e,t,n,r){t.child=null===e?Sa(t,null,n,r):ka(t,e.child,n,r)}function Mo(e,t,n,r,l){n=n.render;var a=t.ref;return ea(t,l),r=to(e,t,n,r,a,l),null===e||Oo?(t.flags|=1,Ro(e,t,r,l),t.child):(t.updateQueue=e.updateQueue,t.flags&=-517,e.lanes&=~l,eu(e,t,l))}function Io(e,t,n,r,l,a){if(null===e){var o=n.type;return"function"!=typeof o||Ui(o)||void 0!==o.defaultProps||null!==n.compare||void 0!==n.defaultProps?((e=Vi(n.type,null,r,t,t.mode,a)).ref=t.ref,e.return=t,t.child=e):(t.tag=15,t.type=o,Do(e,t,o,r,l,a))}return o=e.child,0==(l&a)&&(l=o.memoizedProps,(n=null!==(n=n.compare)?n:ir)(l,r)&&e.ref===t.ref)?eu(e,t,a):(t.flags|=1,(e=Ai(o,r)).ref=t.ref,e.return=t,t.child=e)}function Do(e,t,n,r,l,a){if(null!==e&&ir(e.memoizedProps,r)&&e.ref===t.ref){if(Oo=!1,0==(a&l))return t.lanes=e.lanes,eu(e,t,a);0!=(16384&e.flags)&&(Oo=!0)}return Ao(e,t,n,r,a)}function Fo(e,t,n){var r=t.pendingProps,l=r.children,a=null!==e?e.memoizedState:null;if("hidden"===r.mode||"unstable-defer-without-hiding"===r.mode)if(0==(4&t.mode))t.memoizedState={baseLanes:0},mi(t,n);else{if(0==(1073741824&n))return e=null!==a?a.baseLanes|n:n,t.lanes=t.childLanes=1073741824,t.memoizedState={baseLanes:e},mi(t,e),null;t.memoizedState={baseLanes:0},mi(t,null!==a?a.baseLanes:n)}else null!==a?(r=a.baseLanes|n,t.memoizedState=null):r=n,mi(t,r);return Ro(e,t,l,n),t.child}function Uo(e,t){var n=t.ref;(null===e&&null!==n||null!==e&&e.ref!==n)&&(t.flags|=128)}function Ao(e,t,n,r,l){var a=dl(n)?cl:il.current;return a=fl(t,a),ea(t,l),n=to(e,t,n,r,a,l),null===e||Oo?(t.flags|=1,Ro(e,t,n,l),t.child):(t.updateQueue=e.updateQueue,t.flags&=-517,e.lanes&=~l,eu(e,t,l))}function Vo(e,t,n,r,l){if(dl(n)){var a=!0;vl(t)}else a=!1;if(ea(t,l),null===t.stateNode)null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2),ha(t,n,r),va(t,n,r,l),r=!0;else if(null===e){var o=t.stateNode,u=t.memoizedProps;o.props=u;var i=o.context,s=n.contextType;"object"==typeof s&&null!==s?s=ta(s):s=fl(t,s=dl(n)?cl:il.current);var c=n.getDerivedStateFromProps,f="function"==typeof c||"function"==typeof o.getSnapshotBeforeUpdate;f||"function"!=typeof o.UNSAFE_componentWillReceiveProps&&"function"!=typeof o.componentWillReceiveProps||(u!==r||i!==s)&&ma(t,o,r,s),na=!1;var d=t.memoizedState;o.state=d,ia(t,r,o,l),i=t.memoizedState,u!==r||d!==i||sl.current||na?("function"==typeof c&&(fa(t,n,c,r),i=t.memoizedState),(u=na||pa(t,n,u,r,d,i,s))?(f||"function"!=typeof o.UNSAFE_componentWillMount&&"function"!=typeof o.componentWillMount||("function"==typeof o.componentWillMount&&o.componentWillMount(),"function"==typeof o.UNSAFE_componentWillMount&&o.UNSAFE_componentWillMount()),"function"==typeof o.componentDidMount&&(t.flags|=4)):("function"==typeof o.componentDidMount&&(t.flags|=4),t.memoizedProps=r,t.memoizedState=i),o.props=r,o.state=i,o.context=s,r=u):("function"==typeof o.componentDidMount&&(t.flags|=4),r=!1)}else{o=t.stateNode,la(e,t),u=t.memoizedProps,s=t.type===t.elementType?u:Ql(t.type,u),o.props=s,f=t.pendingProps,d=o.context,"object"==typeof(i=n.contextType)&&null!==i?i=ta(i):i=fl(t,i=dl(n)?cl:il.current);var p=n.getDerivedStateFromProps;(c="function"==typeof p||"function"==typeof o.getSnapshotBeforeUpdate)||"function"!=typeof o.UNSAFE_componentWillReceiveProps&&"function"!=typeof o.componentWillReceiveProps||(u!==f||d!==i)&&ma(t,o,r,i),na=!1,d=t.memoizedState,o.state=d,ia(t,r,o,l);var h=t.memoizedState;u!==f||d!==h||sl.current||na?("function"==typeof p&&(fa(t,n,p,r),h=t.memoizedState),(s=na||pa(t,n,s,r,d,h,i))?(c||"function"!=typeof o.UNSAFE_componentWillUpdate&&"function"!=typeof o.componentWillUpdate||("function"==typeof o.componentWillUpdate&&o.componentWillUpdate(r,h,i),"function"==typeof o.UNSAFE_componentWillUpdate&&o.UNSAFE_componentWillUpdate(r,h,i)),"function"==typeof o.componentDidUpdate&&(t.flags|=4),"function"==typeof o.getSnapshotBeforeUpdate&&(t.flags|=256)):("function"!=typeof o.componentDidUpdate||u===e.memoizedProps&&d===e.memoizedState||(t.flags|=4),"function"!=typeof o.getSnapshotBeforeUpdate||u===e.memoizedProps&&d===e.memoizedState||(t.flags|=256),t.memoizedProps=r,t.memoizedState=h),o.props=r,o.state=h,o.context=i,r=s):("function"!=typeof o.componentDidUpdate||u===e.memoizedProps&&d===e.memoizedState||(t.flags|=4),"function"!=typeof o.getSnapshotBeforeUpdate||u===e.memoizedProps&&d===e.memoizedState||(t.flags|=256),r=!1)}return Bo(e,t,n,r,a,l)}function Bo(e,t,n,r,l,a){Uo(e,t);var o=0!=(64&t.flags);if(!r&&!o)return l&&gl(t,n,!1),eu(e,t,a);r=t.stateNode,Lo.current=t;var u=o&&"function"!=typeof n.getDerivedStateFromError?null:r.render();return t.flags|=1,null!==e&&o?(t.child=ka(t,e.child,null,a),t.child=ka(t,null,u,a)):Ro(e,t,u,a),t.memoizedState=r.state,l&&gl(t,n,!0),t.child}function jo(e){var t=e.stateNode;t.pendingContext?hl(0,t.pendingContext,t.pendingContext!==t.context):t.context&&hl(0,t.context,!1),Na(e,t.containerInfo)}var Wo,$o,Ho,Qo={dehydrated:null,retryLane:0};function qo(e,t,n){var r,l=t.pendingProps,a=Oa.current,o=!1;return(r=0!=(64&t.flags))||(r=(null===e||null!==e.memoizedState)&&0!=(2&a)),r?(o=!0,t.flags&=-65):null!==e&&null===e.memoizedState||void 0===l.fallback||!0===l.unstable_avoidThisFallback||(a|=1),ol(Oa,1&a),null===e?(void 0!==l.fallback&&Aa(t),e=l.children,a=l.fallback,o?(e=Ko(t,e,a,n),t.child.memoizedState={baseLanes:n},t.memoizedState=Qo,e):"number"==typeof l.unstable_expectedLoadTime?(e=Ko(t,e,a,n),t.child.memoizedState={baseLanes:n},t.memoizedState=Qo,t.lanes=33554432,e):((n=ji({mode:"visible",children:e},t.mode,n,null)).return=t,t.child=n)):(e.memoizedState,o?(l=Xo(e,t,l.children,l.fallback,n),o=t.child,a=e.child.memoizedState,o.memoizedState=null===a?{baseLanes:n}:{baseLanes:a.baseLanes|n},o.childLanes=e.childLanes&~n,t.memoizedState=Qo,l):(n=Yo(e,t,l.children,n),t.memoizedState=null,n))}function Ko(e,t,n,r){var l=e.mode,a=e.child;return t={mode:"hidden",children:t},0==(2&l)&&null!==a?(a.childLanes=0,a.pendingProps=t):a=ji(t,l,0,null),n=Bi(n,l,r,null),a.return=e,n.return=e,a.sibling=n,e.child=a,n}function Yo(e,t,n,r){var l=e.child;return e=l.sibling,n=Ai(l,{mode:"visible",children:n}),0==(2&t.mode)&&(n.lanes=r),n.return=t,n.sibling=null,null!==e&&(e.nextEffect=null,e.flags=8,t.firstEffect=t.lastEffect=e),t.child=n}function Xo(e,t,n,r,l){var a=t.mode,o=e.child;e=o.sibling;var u={mode:"hidden",children:n};return 0==(2&a)&&t.child!==o?((n=t.child).childLanes=0,n.pendingProps=u,null!==(o=n.lastEffect)?(t.firstEffect=n.firstEffect,t.lastEffect=o,o.nextEffect=null):t.firstEffect=t.lastEffect=null):n=Ai(o,u),null!==e?r=Ai(e,r):(r=Bi(r,a,l,null)).flags|=2,r.return=t,n.return=t,n.sibling=r,t.child=n,r}function Go(e,t){e.lanes|=t;var n=e.alternate;null!==n&&(n.lanes|=t),Zl(e.return,t)}function Jo(e,t,n,r,l,a){var o=e.memoizedState;null===o?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailMode:l,lastEffect:a}:(o.isBackwards=t,o.rendering=null,o.renderingStartTime=0,o.last=r,o.tail=n,o.tailMode=l,o.lastEffect=a)}function Zo(e,t,n){var r=t.pendingProps,l=r.revealOrder,a=r.tail;if(Ro(e,t,r.children,n),0!=(2&(r=Oa.current)))r=1&r|2,t.flags|=64;else{if(null!==e&&0!=(64&e.flags))e:for(e=t.child;null!==e;){if(13===e.tag)null!==e.memoizedState&&Go(e,n);else if(19===e.tag)Go(e,n);else if(null!==e.child){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;null===e.sibling;){if(null===e.return||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}r&=1}if(ol(Oa,r),0==(2&t.mode))t.memoizedState=null;else switch(l){case"forwards":for(n=t.child,l=null;null!==n;)null!==(e=n.alternate)&&null===Ra(e)&&(l=n),n=n.sibling;null===(n=l)?(l=t.child,t.child=null):(l=n.sibling,n.sibling=null),Jo(t,!1,l,n,a,t.lastEffect);break;case"backwards":for(n=null,l=t.child,t.child=null;null!==l;){if(null!==(e=l.alternate)&&null===Ra(e)){t.child=l;break}e=l.sibling,l.sibling=n,n=l,l=e}Jo(t,!0,n,null,a,t.lastEffect);break;case"together":Jo(t,!1,null,null,void 0,t.lastEffect);break;default:t.memoizedState=null}return t.child}function eu(e,t,n){if(null!==e&&(t.dependencies=e.dependencies),Mu|=t.lanes,0!=(n&t.childLanes)){if(null!==e&&t.child!==e.child)throw Error(o(153));if(null!==t.child){for(n=Ai(e=t.child,e.pendingProps),t.child=n,n.return=t;null!==e.sibling;)e=e.sibling,(n=n.sibling=Ai(e,e.pendingProps)).return=t;n.sibling=null}return t.child}return null}function tu(e,t){if(!Da)switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;null!==t;)null!==t.alternate&&(n=t),t=t.sibling;null===n?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var r=null;null!==n;)null!==n.alternate&&(r=n),n=n.sibling;null===r?t||null===e.tail?e.tail=null:e.tail.sibling=null:r.sibling=null}}function nu(e,t,n){var r=t.pendingProps;switch(t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return null;case 1:return dl(t.type)&&pl(),null;case 3:return Ta(),al(sl),al(il),$a(),(r=t.stateNode).pendingContext&&(r.context=r.pendingContext,r.pendingContext=null),null!==e&&null!==e.child||(Ba(t)?t.flags|=4:r.hydrate||(t.flags|=256)),null;case 5:La(t);var a=Pa(Ca.current);if(n=t.type,null!==e&&null!=t.stateNode)$o(e,t,n,r),e.ref!==t.ref&&(t.flags|=128);else{if(!r){if(null===t.stateNode)throw Error(o(166));return null}if(e=Pa(xa.current),Ba(t)){r=t.stateNode,n=t.type;var u=t.memoizedProps;switch(r[qr]=t,r[Kr]=u,n){case"dialog":_r("cancel",r),_r("close",r);break;case"iframe":case"object":case"embed":_r("load",r);break;case"video":case"audio":for(e=0;e<kr.length;e++)_r(kr[e],r);break;case"source":_r("error",r);break;case"img":case"image":case"link":_r("error",r),_r("load",r);break;case"details":_r("toggle",r);break;case"input":ee(r,u),_r("invalid",r);break;case"select":r._wrapperState={wasMultiple:!!u.multiple},_r("invalid",r);break;case"textarea":ie(r,u),_r("invalid",r)}for(var s in Ee(n,u),e=null,u)u.hasOwnProperty(s)&&(a=u[s],"children"===s?"string"==typeof a?r.textContent!==a&&(e=["children",a]):"number"==typeof a&&r.textContent!==""+a&&(e=["children",""+a]):i.hasOwnProperty(s)&&null!=a&&"onScroll"===s&&_r("scroll",r));switch(n){case"input":X(r),re(r,u,!0);break;case"textarea":X(r),ce(r);break;case"select":case"option":break;default:"function"==typeof u.onClick&&(r.onclick=Ir)}r=e,t.updateQueue=r,null!==r&&(t.flags|=4)}else{switch(s=9===a.nodeType?a:a.ownerDocument,e===fe&&(e=pe(n)),e===fe?"script"===n?((e=s.createElement("div")).innerHTML="<script><\/script>",e=e.removeChild(e.firstChild)):"string"==typeof r.is?e=s.createElement(n,{is:r.is}):(e=s.createElement(n),"select"===n&&(s=e,r.multiple?s.multiple=!0:r.size&&(s.size=r.size))):e=s.createElementNS(e,n),e[qr]=t,e[Kr]=r,Wo(e,t),t.stateNode=e,s=xe(n,r),n){case"dialog":_r("cancel",e),_r("close",e),a=r;break;case"iframe":case"object":case"embed":_r("load",e),a=r;break;case"video":case"audio":for(a=0;a<kr.length;a++)_r(kr[a],e);a=r;break;case"source":_r("error",e),a=r;break;case"img":case"image":case"link":_r("error",e),_r("load",e),a=r;break;case"details":_r("toggle",e),a=r;break;case"input":ee(e,r),a=Z(e,r),_r("invalid",e);break;case"option":a=ae(e,r);break;case"select":e._wrapperState={wasMultiple:!!r.multiple},a=l({},r,{value:void 0}),_r("invalid",e);break;case"textarea":ie(e,r),a=ue(e,r),_r("invalid",e);break;default:a=r}Ee(n,a);var c=a;for(u in c)if(c.hasOwnProperty(u)){var f=c[u];"style"===u?ke(e,f):"dangerouslySetInnerHTML"===u?null!=(f=f?f.__html:void 0)&&ve(e,f):"children"===u?"string"==typeof f?("textarea"!==n||""!==f)&&ge(e,f):"number"==typeof f&&ge(e,""+f):"suppressContentEditableWarning"!==u&&"suppressHydrationWarning"!==u&&"autoFocus"!==u&&(i.hasOwnProperty(u)?null!=f&&"onScroll"===u&&_r("scroll",e):null!=f&&w(e,u,f,s))}switch(n){case"input":X(e),re(e,r,!1);break;case"textarea":X(e),ce(e);break;case"option":null!=r.value&&e.setAttribute("value",""+K(r.value));break;case"select":e.multiple=!!r.multiple,null!=(u=r.value)?oe(e,!!r.multiple,u,!1):null!=r.defaultValue&&oe(e,!!r.multiple,r.defaultValue,!0);break;default:"function"==typeof a.onClick&&(e.onclick=Ir)}Ur(n,r)&&(t.flags|=4)}null!==t.ref&&(t.flags|=128)}return null;case 6:if(e&&null!=t.stateNode)Ho(0,t,e.memoizedProps,r);else{if("string"!=typeof r&&null===t.stateNode)throw Error(o(166));n=Pa(Ca.current),Pa(xa.current),Ba(t)?(r=t.stateNode,n=t.memoizedProps,r[qr]=t,r.nodeValue!==n&&(t.flags|=4)):((r=(9===n.nodeType?n:n.ownerDocument).createTextNode(r))[qr]=t,t.stateNode=r)}return null;case 13:return al(Oa),r=t.memoizedState,0!=(64&t.flags)?(t.lanes=n,t):(r=null!==r,n=!1,null===e?void 0!==t.memoizedProps.fallback&&Ba(t):n=null!==e.memoizedState,r&&!n&&0!=(2&t.mode)&&(null===e&&!0!==t.memoizedProps.unstable_avoidThisFallback||0!=(1&Oa.current)?0===Lu&&(Lu=3):(0!==Lu&&3!==Lu||(Lu=4),null===Cu||0==(134217727&Mu)&&0==(134217727&Iu)||fi(Cu,Nu))),(r||n)&&(t.flags|=4),null);case 4:return Ta(),null===e&&Pr(t.stateNode.containerInfo),null;case 10:return Jl(t),null;case 17:return dl(t.type)&&pl(),null;case 19:if(al(Oa),null===(r=t.memoizedState))return null;if(u=0!=(64&t.flags),null===(s=r.rendering))if(u)tu(r,!1);else{if(0!==Lu||null!==e&&0!=(64&e.flags))for(e=t.child;null!==e;){if(null!==(s=Ra(e))){for(t.flags|=64,tu(r,!1),null!==(u=s.updateQueue)&&(t.updateQueue=u,t.flags|=4),null===r.lastEffect&&(t.firstEffect=null),t.lastEffect=r.lastEffect,r=n,n=t.child;null!==n;)e=r,(u=n).flags&=2,u.nextEffect=null,u.firstEffect=null,u.lastEffect=null,null===(s=u.alternate)?(u.childLanes=0,u.lanes=e,u.child=null,u.memoizedProps=null,u.memoizedState=null,u.updateQueue=null,u.dependencies=null,u.stateNode=null):(u.childLanes=s.childLanes,u.lanes=s.lanes,u.child=s.child,u.memoizedProps=s.memoizedProps,u.memoizedState=s.memoizedState,u.updateQueue=s.updateQueue,u.type=s.type,e=s.dependencies,u.dependencies=null===e?null:{lanes:e.lanes,firstContext:e.firstContext}),n=n.sibling;return ol(Oa,1&Oa.current|2),t.child}e=e.sibling}null!==r.tail&&Ul()>Au&&(t.flags|=64,u=!0,tu(r,!1),t.lanes=33554432)}else{if(!u)if(null!==(e=Ra(s))){if(t.flags|=64,u=!0,null!==(n=e.updateQueue)&&(t.updateQueue=n,t.flags|=4),tu(r,!0),null===r.tail&&"hidden"===r.tailMode&&!s.alternate&&!Da)return null!==(t=t.lastEffect=r.lastEffect)&&(t.nextEffect=null),null}else 2*Ul()-r.renderingStartTime>Au&&1073741824!==n&&(t.flags|=64,u=!0,tu(r,!1),t.lanes=33554432);r.isBackwards?(s.sibling=t.child,t.child=s):(null!==(n=r.last)?n.sibling=s:t.child=s,r.last=s)}return null!==r.tail?(n=r.tail,r.rendering=n,r.tail=n.sibling,r.lastEffect=t.lastEffect,r.renderingStartTime=Ul(),n.sibling=null,t=Oa.current,ol(Oa,u?1&t|2:1&t),n):null;case 23:case 24:return vi(),null!==e&&null!==e.memoizedState!=(null!==t.memoizedState)&&"unstable-defer-without-hiding"!==r.mode&&(t.flags|=4),null}throw Error(o(156,t.tag))}function ru(e){switch(e.tag){case 1:dl(e.type)&&pl();var t=e.flags;return 4096&t?(e.flags=-4097&t|64,e):null;case 3:if(Ta(),al(sl),al(il),$a(),0!=(64&(t=e.flags)))throw Error(o(285));return e.flags=-4097&t|64,e;case 5:return La(e),null;case 13:return al(Oa),4096&(t=e.flags)?(e.flags=-4097&t|64,e):null;case 19:return al(Oa),null;case 4:return Ta(),null;case 10:return Jl(e),null;case 23:case 24:return vi(),null;default:return null}}function lu(e,t){try{var n="",r=t;do{n+=Q(r),r=r.return}while(r);var l=n}catch(a){l="\nError generating stack: "+a.message+"\n"+a.stack}return{value:e,source:t,stack:l}}function au(e,t){try{console.error(t.value)}catch(n){setTimeout((function(){throw n}))}}Wo=function(e,t){for(var n=t.child;null!==n;){if(5===n.tag||6===n.tag)e.appendChild(n.stateNode);else if(4!==n.tag&&null!==n.child){n.child.return=n,n=n.child;continue}if(n===t)break;for(;null===n.sibling;){if(null===n.return||n.return===t)return;n=n.return}n.sibling.return=n.return,n=n.sibling}},$o=function(e,t,n,r){var a=e.memoizedProps;if(a!==r){e=t.stateNode,Pa(xa.current);var o,u=null;switch(n){case"input":a=Z(e,a),r=Z(e,r),u=[];break;case"option":a=ae(e,a),r=ae(e,r),u=[];break;case"select":a=l({},a,{value:void 0}),r=l({},r,{value:void 0}),u=[];break;case"textarea":a=ue(e,a),r=ue(e,r),u=[];break;default:"function"!=typeof a.onClick&&"function"==typeof r.onClick&&(e.onclick=Ir)}for(f in Ee(n,r),n=null,a)if(!r.hasOwnProperty(f)&&a.hasOwnProperty(f)&&null!=a[f])if("style"===f){var s=a[f];for(o in s)s.hasOwnProperty(o)&&(n||(n={}),n[o]="")}else"dangerouslySetInnerHTML"!==f&&"children"!==f&&"suppressContentEditableWarning"!==f&&"suppressHydrationWarning"!==f&&"autoFocus"!==f&&(i.hasOwnProperty(f)?u||(u=[]):(u=u||[]).push(f,null));for(f in r){var c=r[f];if(s=null!=a?a[f]:void 0,r.hasOwnProperty(f)&&c!==s&&(null!=c||null!=s))if("style"===f)if(s){for(o in s)!s.hasOwnProperty(o)||c&&c.hasOwnProperty(o)||(n||(n={}),n[o]="");for(o in c)c.hasOwnProperty(o)&&s[o]!==c[o]&&(n||(n={}),n[o]=c[o])}else n||(u||(u=[]),u.push(f,n)),n=c;else"dangerouslySetInnerHTML"===f?(c=c?c.__html:void 0,s=s?s.__html:void 0,null!=c&&s!==c&&(u=u||[]).push(f,c)):"children"===f?"string"!=typeof c&&"number"!=typeof c||(u=u||[]).push(f,""+c):"suppressContentEditableWarning"!==f&&"suppressHydrationWarning"!==f&&(i.hasOwnProperty(f)?(null!=c&&"onScroll"===f&&_r("scroll",e),u||s===c||(u=[])):"object"==typeof c&&null!==c&&c.$$typeof===I?c.toString():(u=u||[]).push(f,c))}n&&(u=u||[]).push("style",n);var f=u;(t.updateQueue=f)&&(t.flags|=4)}},Ho=function(e,t,n,r){n!==r&&(t.flags|=4)};var ou="function"==typeof WeakMap?WeakMap:Map;function uu(e,t,n){(n=aa(-1,n)).tag=3,n.payload={element:null};var r=t.value;return n.callback=function(){Wu||(Wu=!0,$u=r),au(0,t)},n}function iu(e,t,n){(n=aa(-1,n)).tag=3;var r=e.type.getDerivedStateFromError;if("function"==typeof r){var l=t.value;n.payload=function(){return au(0,t),r(l)}}var a=e.stateNode;return null!==a&&"function"==typeof a.componentDidCatch&&(n.callback=function(){"function"!=typeof r&&(null===Hu?Hu=new Set([this]):Hu.add(this),au(0,t));var e=t.stack;this.componentDidCatch(t.value,{componentStack:null!==e?e:""})}),n}var su="function"==typeof WeakSet?WeakSet:Set;function cu(e){var t=e.ref;if(null!==t)if("function"==typeof t)try{t(null)}catch(n){Ri(e,n)}else t.current=null}function fu(e,t){switch(t.tag){case 0:case 11:case 15:case 22:return;case 1:if(256&t.flags&&null!==e){var n=e.memoizedProps,r=e.memoizedState;t=(e=t.stateNode).getSnapshotBeforeUpdate(t.elementType===t.type?n:Ql(t.type,n),r),e.__reactInternalSnapshotBeforeUpdate=t}return;case 3:return void(256&t.flags&&jr(t.stateNode.containerInfo));case 5:case 6:case 4:case 17:return}throw Error(o(163))}function du(e,t,n){switch(n.tag){case 0:case 11:case 15:case 22:if(null!==(t=null!==(t=n.updateQueue)?t.lastEffect:null)){e=t=t.next;do{if(3==(3&e.tag)){var r=e.create;e.destroy=r()}e=e.next}while(e!==t)}if(null!==(t=null!==(t=n.updateQueue)?t.lastEffect:null)){e=t=t.next;do{var l=e;r=l.next,0!=(4&(l=l.tag))&&0!=(1&l)&&(zi(n,e),Ti(n,e)),e=r}while(e!==t)}return;case 1:return e=n.stateNode,4&n.flags&&(null===t?e.componentDidMount():(r=n.elementType===n.type?t.memoizedProps:Ql(n.type,t.memoizedProps),e.componentDidUpdate(r,t.memoizedState,e.__reactInternalSnapshotBeforeUpdate))),void(null!==(t=n.updateQueue)&&sa(n,t,e));case 3:if(null!==(t=n.updateQueue)){if(e=null,null!==n.child)switch(n.child.tag){case 5:e=n.child.stateNode;break;case 1:e=n.child.stateNode}sa(n,t,e)}return;case 5:return e=n.stateNode,void(null===t&&4&n.flags&&Ur(n.type,n.memoizedProps)&&e.focus());case 6:case 4:case 12:return;case 13:return void(null===n.memoizedState&&(n=n.alternate,null!==n&&(n=n.memoizedState,null!==n&&(n=n.dehydrated,null!==n&&kt(n)))));case 19:case 17:case 20:case 21:case 23:case 24:return}throw Error(o(163))}function pu(e,t){for(var n=e;;){if(5===n.tag){var r=n.stateNode;if(t)"function"==typeof(r=r.style).setProperty?r.setProperty("display","none","important"):r.display="none";else{r=n.stateNode;var l=n.memoizedProps.style;l=null!=l&&l.hasOwnProperty("display")?l.display:null,r.style.display=we("display",l)}}else if(6===n.tag)n.stateNode.nodeValue=t?"":n.memoizedProps;else if((23!==n.tag&&24!==n.tag||null===n.memoizedState||n===e)&&null!==n.child){n.child.return=n,n=n.child;continue}if(n===e)break;for(;null===n.sibling;){if(null===n.return||n.return===e)return;n=n.return}n.sibling.return=n.return,n=n.sibling}}function hu(e,t){if(bl&&"function"==typeof bl.onCommitFiberUnmount)try{bl.onCommitFiberUnmount(yl,t)}catch(a){}switch(t.tag){case 0:case 11:case 14:case 15:case 22:if(null!==(e=t.updateQueue)&&null!==(e=e.lastEffect)){var n=e=e.next;do{var r=n,l=r.destroy;if(r=r.tag,void 0!==l)if(0!=(4&r))zi(t,n);else{r=t;try{l()}catch(a){Ri(r,a)}}n=n.next}while(n!==e)}break;case 1:if(cu(t),"function"==typeof(e=t.stateNode).componentWillUnmount)try{e.props=t.memoizedProps,e.state=t.memoizedState,e.componentWillUnmount()}catch(a){Ri(t,a)}break;case 5:cu(t);break;case 4:yu(e,t)}}function mu(e){e.alternate=null,e.child=null,e.dependencies=null,e.firstEffect=null,e.lastEffect=null,e.memoizedProps=null,e.memoizedState=null,e.pendingProps=null,e.return=null,e.updateQueue=null}function vu(e){return 5===e.tag||3===e.tag||4===e.tag}function gu(e){e:{for(var t=e.return;null!==t;){if(vu(t))break e;t=t.return}throw Error(o(160))}var n=t;switch(t=n.stateNode,n.tag){case 5:var r=!1;break;case 3:case 4:t=t.containerInfo,r=!0;break;default:throw Error(o(161))}16&n.flags&&(ge(t,""),n.flags&=-17);e:t:for(n=e;;){for(;null===n.sibling;){if(null===n.return||vu(n.return)){n=null;break e}n=n.return}for(n.sibling.return=n.return,n=n.sibling;5!==n.tag&&6!==n.tag&&18!==n.tag;){if(2&n.flags)continue t;if(null===n.child||4===n.tag)continue t;n.child.return=n,n=n.child}if(!(2&n.flags)){n=n.stateNode;break e}}r?function e(t,n,r){var l=t.tag,a=5===l||6===l;if(a)t=a?t.stateNode:t.stateNode.instance,n?8===r.nodeType?r.parentNode.insertBefore(t,n):r.insertBefore(t,n):(8===r.nodeType?(n=r.parentNode).insertBefore(t,r):(n=r).appendChild(t),null!==(r=r._reactRootContainer)&&void 0!==r||null!==n.onclick||(n.onclick=Ir));else if(4!==l&&null!==(t=t.child))for(e(t,n,r),t=t.sibling;null!==t;)e(t,n,r),t=t.sibling}(e,n,t):function e(t,n,r){var l=t.tag,a=5===l||6===l;if(a)t=a?t.stateNode:t.stateNode.instance,n?r.insertBefore(t,n):r.appendChild(t);else if(4!==l&&null!==(t=t.child))for(e(t,n,r),t=t.sibling;null!==t;)e(t,n,r),t=t.sibling}(e,n,t)}function yu(e,t){for(var n,r,l=t,a=!1;;){if(!a){a=l.return;e:for(;;){if(null===a)throw Error(o(160));switch(n=a.stateNode,a.tag){case 5:r=!1;break e;case 3:case 4:n=n.containerInfo,r=!0;break e}a=a.return}a=!0}if(5===l.tag||6===l.tag){e:for(var u=e,i=l,s=i;;)if(hu(u,s),null!==s.child&&4!==s.tag)s.child.return=s,s=s.child;else{if(s===i)break e;for(;null===s.sibling;){if(null===s.return||s.return===i)break e;s=s.return}s.sibling.return=s.return,s=s.sibling}r?(u=n,i=l.stateNode,8===u.nodeType?u.parentNode.removeChild(i):u.removeChild(i)):n.removeChild(l.stateNode)}else if(4===l.tag){if(null!==l.child){n=l.stateNode.containerInfo,r=!0,l.child.return=l,l=l.child;continue}}else if(hu(e,l),null!==l.child){l.child.return=l,l=l.child;continue}if(l===t)break;for(;null===l.sibling;){if(null===l.return||l.return===t)return;4===(l=l.return).tag&&(a=!1)}l.sibling.return=l.return,l=l.sibling}}function bu(e,t){switch(t.tag){case 0:case 11:case 14:case 15:case 22:var n=t.updateQueue;if(null!==(n=null!==n?n.lastEffect:null)){var r=n=n.next;do{3==(3&r.tag)&&(e=r.destroy,r.destroy=void 0,void 0!==e&&e()),r=r.next}while(r!==n)}return;case 1:return;case 5:if(null!=(n=t.stateNode)){r=t.memoizedProps;var l=null!==e?e.memoizedProps:r;e=t.type;var a=t.updateQueue;if(t.updateQueue=null,null!==a){for(n[Kr]=r,"input"===e&&"radio"===r.type&&null!=r.name&&te(n,r),xe(e,l),t=xe(e,r),l=0;l<a.length;l+=2){var u=a[l],i=a[l+1];"style"===u?ke(n,i):"dangerouslySetInnerHTML"===u?ve(n,i):"children"===u?ge(n,i):w(n,u,i,t)}switch(e){case"input":ne(n,r);break;case"textarea":se(n,r);break;case"select":e=n._wrapperState.wasMultiple,n._wrapperState.wasMultiple=!!r.multiple,null!=(a=r.value)?oe(n,!!r.multiple,a,!1):e!==!!r.multiple&&(null!=r.defaultValue?oe(n,!!r.multiple,r.defaultValue,!0):oe(n,!!r.multiple,r.multiple?[]:"",!1))}}}return;case 6:if(null===t.stateNode)throw Error(o(162));return void(t.stateNode.nodeValue=t.memoizedProps);case 3:return void((n=t.stateNode).hydrate&&(n.hydrate=!1,kt(n.containerInfo)));case 12:return;case 13:return null!==t.memoizedState&&(Uu=Ul(),pu(t.child,!0)),void wu(t);case 19:return void wu(t);case 17:return;case 23:case 24:return void pu(t,null!==t.memoizedState)}throw Error(o(163))}function wu(e){var t=e.updateQueue;if(null!==t){e.updateQueue=null;var n=e.stateNode;null===n&&(n=e.stateNode=new su),t.forEach((function(t){var r=Ii.bind(null,e,t);n.has(t)||(n.add(t),t.then(r,r))}))}}function ku(e,t){return null!==e&&(null===(e=e.memoizedState)||null!==e.dehydrated)&&(null!==(t=t.memoizedState)&&null===t.dehydrated)}var Su=Math.ceil,Eu=k.ReactCurrentDispatcher,xu=k.ReactCurrentOwner,_u=0,Cu=null,Pu=null,Nu=0,Tu=0,zu=ll(0),Lu=0,Ou=null,Ru=0,Mu=0,Iu=0,Du=0,Fu=null,Uu=0,Au=1/0;function Vu(){Au=Ul()+500}var Bu,ju=null,Wu=!1,$u=null,Hu=null,Qu=!1,qu=null,Ku=90,Yu=[],Xu=[],Gu=null,Ju=0,Zu=null,ei=-1,ti=0,ni=0,ri=null,li=!1;function ai(){return 0!=(48&_u)?Ul():-1!==ei?ei:ei=Ul()}function oi(e){if(0==(2&(e=e.mode)))return 1;if(0==(4&e))return 99===Al()?1:2;if(0===ti&&(ti=Ru),0!==Hl.transition){0!==ni&&(ni=null!==Fu?Fu.pendingLanes:0),e=ti;var t=4186112&~ni;return 0===(t&=-t)&&(0===(t=(e=4186112&~e)&-e)&&(t=8192)),t}return e=Al(),0!=(4&_u)&&98===e?e=At(12,ti):e=At(e=function(e){switch(e){case 99:return 15;case 98:return 10;case 97:case 96:return 8;case 95:return 2;default:return 0}}(e),ti),e}function ui(e,t,n){if(50<Ju)throw Ju=0,Zu=null,Error(o(185));if(null===(e=ii(e,t)))return null;jt(e,t,n),e===Cu&&(Iu|=t,4===Lu&&fi(e,Nu));var r=Al();1===t?0!=(8&_u)&&0==(48&_u)?di(e):(si(e,n),0===_u&&(Vu(),Wl())):(0==(4&_u)||98!==r&&99!==r||(null===Gu?Gu=new Set([e]):Gu.add(e)),si(e,n)),Fu=e}function ii(e,t){e.lanes|=t;var n=e.alternate;for(null!==n&&(n.lanes|=t),n=e,e=e.return;null!==e;)e.childLanes|=t,null!==(n=e.alternate)&&(n.childLanes|=t),n=e,e=e.return;return 3===n.tag?n.stateNode:null}function si(e,t){for(var n=e.callbackNode,r=e.suspendedLanes,l=e.pingedLanes,a=e.expirationTimes,u=e.pendingLanes;0<u;){var i=31-Wt(u),s=1<<i,c=a[i];if(-1===c){if(0==(s&r)||0!=(s&l)){c=t,Dt(s);var f=It;a[i]=10<=f?c+250:6<=f?c+5e3:-1}}else c<=t&&(e.expiredLanes|=s);u&=~s}if(r=Ft(e,e===Cu?Nu:0),t=It,0===r)null!==n&&(n!==Ol&&Sl(n),e.callbackNode=null,e.callbackPriority=0);else{if(null!==n){if(e.callbackPriority===t)return;n!==Ol&&Sl(n)}15===t?(n=di.bind(null,e),null===Ml?(Ml=[n],Il=kl(Pl,$l)):Ml.push(n),n=Ol):14===t?n=jl(99,di.bind(null,e)):n=jl(n=function(e){switch(e){case 15:case 14:return 99;case 13:case 12:case 11:case 10:return 98;case 9:case 8:case 7:case 6:case 4:case 5:return 97;case 3:case 2:case 1:return 95;case 0:return 90;default:throw Error(o(358,e))}}(t),ci.bind(null,e)),e.callbackPriority=t,e.callbackNode=n}}function ci(e){if(ei=-1,ni=ti=0,0!=(48&_u))throw Error(o(327));var t=e.callbackNode;if(Ni()&&e.callbackNode!==t)return null;var n=Ft(e,e===Cu?Nu:0);if(0===n)return null;var r=n,l=_u;_u|=16;var a=bi();for(Cu===e&&Nu===r||(Vu(),gi(e,r));;)try{Si();break}catch(i){yi(e,i)}if(Gl(),Eu.current=a,_u=l,null!==Pu?r=0:(Cu=null,Nu=0,r=Lu),0!=(Ru&Iu))gi(e,0);else if(0!==r){if(2===r&&(_u|=64,e.hydrate&&(e.hydrate=!1,jr(e.containerInfo)),0!==(n=Ut(e))&&(r=wi(e,n))),1===r)throw t=Ou,gi(e,0),fi(e,n),si(e,Ul()),t;switch(e.finishedWork=e.current.alternate,e.finishedLanes=n,r){case 0:case 1:throw Error(o(345));case 2:_i(e);break;case 3:if(fi(e,n),(62914560&n)===n&&10<(r=Uu+500-Ul())){if(0!==Ft(e,0))break;if(((l=e.suspendedLanes)&n)!==n){ai(),e.pingedLanes|=e.suspendedLanes&l;break}e.timeoutHandle=Vr(_i.bind(null,e),r);break}_i(e);break;case 4:if(fi(e,n),(4186112&n)===n)break;for(r=e.eventTimes,l=-1;0<n;){var u=31-Wt(n);a=1<<u,(u=r[u])>l&&(l=u),n&=~a}if(n=l,10<(n=(120>(n=Ul()-n)?120:480>n?480:1080>n?1080:1920>n?1920:3e3>n?3e3:4320>n?4320:1960*Su(n/1960))-n)){e.timeoutHandle=Vr(_i.bind(null,e),n);break}_i(e);break;case 5:_i(e);break;default:throw Error(o(329))}}return si(e,Ul()),e.callbackNode===t?ci.bind(null,e):null}function fi(e,t){for(t&=~Du,t&=~Iu,e.suspendedLanes|=t,e.pingedLanes&=~t,e=e.expirationTimes;0<t;){var n=31-Wt(t),r=1<<n;e[n]=-1,t&=~r}}function di(e){if(0!=(48&_u))throw Error(o(327));if(Ni(),e===Cu&&0!=(e.expiredLanes&Nu)){var t=Nu,n=wi(e,t);0!=(Ru&Iu)&&(n=wi(e,t=Ft(e,t)))}else n=wi(e,t=Ft(e,0));if(0!==e.tag&&2===n&&(_u|=64,e.hydrate&&(e.hydrate=!1,jr(e.containerInfo)),0!==(t=Ut(e))&&(n=wi(e,t))),1===n)throw n=Ou,gi(e,0),fi(e,t),si(e,Ul()),n;return e.finishedWork=e.current.alternate,e.finishedLanes=t,_i(e),si(e,Ul()),null}function pi(e,t){var n=_u;_u|=1;try{return e(t)}finally{0===(_u=n)&&(Vu(),Wl())}}function hi(e,t){var n=_u;_u&=-2,_u|=8;try{return e(t)}finally{0===(_u=n)&&(Vu(),Wl())}}function mi(e,t){ol(zu,Tu),Tu|=t,Ru|=t}function vi(){Tu=zu.current,al(zu)}function gi(e,t){e.finishedWork=null,e.finishedLanes=0;var n=e.timeoutHandle;if(-1!==n&&(e.timeoutHandle=-1,Br(n)),null!==Pu)for(n=Pu.return;null!==n;){var r=n;switch(r.tag){case 1:null!=(r=r.type.childContextTypes)&&pl();break;case 3:Ta(),al(sl),al(il),$a();break;case 5:La(r);break;case 4:Ta();break;case 13:case 19:al(Oa);break;case 10:Jl(r);break;case 23:case 24:vi()}n=n.return}Cu=e,Pu=Ai(e.current,null),Nu=Tu=Ru=t,Lu=0,Ou=null,Du=Iu=Mu=0}function yi(e,t){for(;;){var n=Pu;try{if(Gl(),Ha.current=Po,Ga){for(var r=Ka.memoizedState;null!==r;){var l=r.queue;null!==l&&(l.pending=null),r=r.next}Ga=!1}if(qa=0,Xa=Ya=Ka=null,Ja=!1,xu.current=null,null===n||null===n.return){Lu=1,Ou=t,Pu=null;break}e:{var a=e,o=n.return,u=n,i=t;if(t=Nu,u.flags|=2048,u.firstEffect=u.lastEffect=null,null!==i&&"object"==typeof i&&"function"==typeof i.then){var s=i;if(0==(2&u.mode)){var c=u.alternate;c?(u.updateQueue=c.updateQueue,u.memoizedState=c.memoizedState,u.lanes=c.lanes):(u.updateQueue=null,u.memoizedState=null)}var f=0!=(1&Oa.current),d=o;do{var p;if(p=13===d.tag){var h=d.memoizedState;if(null!==h)p=null!==h.dehydrated;else{var m=d.memoizedProps;p=void 0!==m.fallback&&(!0!==m.unstable_avoidThisFallback||!f)}}if(p){var v=d.updateQueue;if(null===v){var g=new Set;g.add(s),d.updateQueue=g}else v.add(s);if(0==(2&d.mode)){if(d.flags|=64,u.flags|=16384,u.flags&=-2981,1===u.tag)if(null===u.alternate)u.tag=17;else{var y=aa(-1,1);y.tag=2,oa(u,y)}u.lanes|=1;break e}i=void 0,u=t;var b=a.pingCache;if(null===b?(b=a.pingCache=new ou,i=new Set,b.set(s,i)):void 0===(i=b.get(s))&&(i=new Set,b.set(s,i)),!i.has(u)){i.add(u);var w=Mi.bind(null,a,s,u);s.then(w,w)}d.flags|=4096,d.lanes=t;break e}d=d.return}while(null!==d);i=Error((q(u.type)||"A React component")+" suspended while rendering, but no fallback UI was specified.\n\nAdd a <Suspense fallback=...> component higher in the tree to provide a loading indicator or placeholder to display.")}5!==Lu&&(Lu=2),i=lu(i,u),d=o;do{switch(d.tag){case 3:a=i,d.flags|=4096,t&=-t,d.lanes|=t,ua(d,uu(0,a,t));break e;case 1:a=i;var k=d.type,S=d.stateNode;if(0==(64&d.flags)&&("function"==typeof k.getDerivedStateFromError||null!==S&&"function"==typeof S.componentDidCatch&&(null===Hu||!Hu.has(S)))){d.flags|=4096,t&=-t,d.lanes|=t,ua(d,iu(d,a,t));break e}}d=d.return}while(null!==d)}xi(n)}catch(E){t=E,Pu===n&&null!==n&&(Pu=n=n.return);continue}break}}function bi(){var e=Eu.current;return Eu.current=Po,null===e?Po:e}function wi(e,t){var n=_u;_u|=16;var r=bi();for(Cu===e&&Nu===t||gi(e,t);;)try{ki();break}catch(l){yi(e,l)}if(Gl(),_u=n,Eu.current=r,null!==Pu)throw Error(o(261));return Cu=null,Nu=0,Lu}function ki(){for(;null!==Pu;)Ei(Pu)}function Si(){for(;null!==Pu&&!El();)Ei(Pu)}function Ei(e){var t=Bu(e.alternate,e,Tu);e.memoizedProps=e.pendingProps,null===t?xi(e):Pu=t,xu.current=null}function xi(e){var t=e;do{var n=t.alternate;if(e=t.return,0==(2048&t.flags)){if(null!==(n=nu(n,t,Tu)))return void(Pu=n);if(24!==(n=t).tag&&23!==n.tag||null===n.memoizedState||0!=(1073741824&Tu)||0==(4&n.mode)){for(var r=0,l=n.child;null!==l;)r|=l.lanes|l.childLanes,l=l.sibling;n.childLanes=r}null!==e&&0==(2048&e.flags)&&(null===e.firstEffect&&(e.firstEffect=t.firstEffect),null!==t.lastEffect&&(null!==e.lastEffect&&(e.lastEffect.nextEffect=t.firstEffect),e.lastEffect=t.lastEffect),1<t.flags&&(null!==e.lastEffect?e.lastEffect.nextEffect=t:e.firstEffect=t,e.lastEffect=t))}else{if(null!==(n=ru(t)))return n.flags&=2047,void(Pu=n);null!==e&&(e.firstEffect=e.lastEffect=null,e.flags|=2048)}if(null!==(t=t.sibling))return void(Pu=t);Pu=t=e}while(null!==t);0===Lu&&(Lu=5)}function _i(e){var t=Al();return Bl(99,Ci.bind(null,e,t)),null}function Ci(e,t){do{Ni()}while(null!==qu);if(0!=(48&_u))throw Error(o(327));var n=e.finishedWork;if(null===n)return null;if(e.finishedWork=null,e.finishedLanes=0,n===e.current)throw Error(o(177));e.callbackNode=null;var r=n.lanes|n.childLanes,l=r,a=e.pendingLanes&~l;e.pendingLanes=l,e.suspendedLanes=0,e.pingedLanes=0,e.expiredLanes&=l,e.mutableReadLanes&=l,e.entangledLanes&=l,l=e.entanglements;for(var u=e.eventTimes,i=e.expirationTimes;0<a;){var s=31-Wt(a),c=1<<s;l[s]=0,u[s]=-1,i[s]=-1,a&=~c}if(null!==Gu&&0==(24&r)&&Gu.has(e)&&Gu.delete(e),e===Cu&&(Pu=Cu=null,Nu=0),1<n.flags?null!==n.lastEffect?(n.lastEffect.nextEffect=n,r=n.firstEffect):r=n:r=n.firstEffect,null!==r){if(l=_u,_u|=32,xu.current=null,Dr=Kt,dr(u=fr())){if("selectionStart"in u)i={start:u.selectionStart,end:u.selectionEnd};else e:if(i=(i=u.ownerDocument)&&i.defaultView||window,(c=i.getSelection&&i.getSelection())&&0!==c.rangeCount){i=c.anchorNode,a=c.anchorOffset,s=c.focusNode,c=c.focusOffset;try{i.nodeType,s.nodeType}catch(C){i=null;break e}var f=0,d=-1,p=-1,h=0,m=0,v=u,g=null;t:for(;;){for(var y;v!==i||0!==a&&3!==v.nodeType||(d=f+a),v!==s||0!==c&&3!==v.nodeType||(p=f+c),3===v.nodeType&&(f+=v.nodeValue.length),null!==(y=v.firstChild);)g=v,v=y;for(;;){if(v===u)break t;if(g===i&&++h===a&&(d=f),g===s&&++m===c&&(p=f),null!==(y=v.nextSibling))break;g=(v=g).parentNode}v=y}i=-1===d||-1===p?null:{start:d,end:p}}else i=null;i=i||{start:0,end:0}}else i=null;Fr={focusedElem:u,selectionRange:i},Kt=!1,ri=null,li=!1,ju=r;do{try{Pi()}catch(C){if(null===ju)throw Error(o(330));Ri(ju,C),ju=ju.nextEffect}}while(null!==ju);ri=null,ju=r;do{try{for(u=e;null!==ju;){var b=ju.flags;if(16&b&&ge(ju.stateNode,""),128&b){var w=ju.alternate;if(null!==w){var k=w.ref;null!==k&&("function"==typeof k?k(null):k.current=null)}}switch(1038&b){case 2:gu(ju),ju.flags&=-3;break;case 6:gu(ju),ju.flags&=-3,bu(ju.alternate,ju);break;case 1024:ju.flags&=-1025;break;case 1028:ju.flags&=-1025,bu(ju.alternate,ju);break;case 4:bu(ju.alternate,ju);break;case 8:yu(u,i=ju);var S=i.alternate;mu(i),null!==S&&mu(S)}ju=ju.nextEffect}}catch(C){if(null===ju)throw Error(o(330));Ri(ju,C),ju=ju.nextEffect}}while(null!==ju);if(k=Fr,w=fr(),b=k.focusedElem,u=k.selectionRange,w!==b&&b&&b.ownerDocument&&function e(t,n){return!(!t||!n)&&(t===n||(!t||3!==t.nodeType)&&(n&&3===n.nodeType?e(t,n.parentNode):"contains"in t?t.contains(n):!!t.compareDocumentPosition&&!!(16&t.compareDocumentPosition(n))))}(b.ownerDocument.documentElement,b)){null!==u&&dr(b)&&(w=u.start,void 0===(k=u.end)&&(k=w),"selectionStart"in b?(b.selectionStart=w,b.selectionEnd=Math.min(k,b.value.length)):(k=(w=b.ownerDocument||document)&&w.defaultView||window).getSelection&&(k=k.getSelection(),i=b.textContent.length,S=Math.min(u.start,i),u=void 0===u.end?S:Math.min(u.end,i),!k.extend&&S>u&&(i=u,u=S,S=i),i=cr(b,S),a=cr(b,u),i&&a&&(1!==k.rangeCount||k.anchorNode!==i.node||k.anchorOffset!==i.offset||k.focusNode!==a.node||k.focusOffset!==a.offset)&&((w=w.createRange()).setStart(i.node,i.offset),k.removeAllRanges(),S>u?(k.addRange(w),k.extend(a.node,a.offset)):(w.setEnd(a.node,a.offset),k.addRange(w))))),w=[];for(k=b;k=k.parentNode;)1===k.nodeType&&w.push({element:k,left:k.scrollLeft,top:k.scrollTop});for("function"==typeof b.focus&&b.focus(),b=0;b<w.length;b++)(k=w[b]).element.scrollLeft=k.left,k.element.scrollTop=k.top}Kt=!!Dr,Fr=Dr=null,e.current=n,ju=r;do{try{for(b=e;null!==ju;){var E=ju.flags;if(36&E&&du(b,ju.alternate,ju),128&E){w=void 0;var x=ju.ref;if(null!==x){var _=ju.stateNode;switch(ju.tag){case 5:w=_;break;default:w=_}"function"==typeof x?x(w):x.current=w}}ju=ju.nextEffect}}catch(C){if(null===ju)throw Error(o(330));Ri(ju,C),ju=ju.nextEffect}}while(null!==ju);ju=null,Rl(),_u=l}else e.current=n;if(Qu)Qu=!1,qu=e,Ku=t;else for(ju=r;null!==ju;)t=ju.nextEffect,ju.nextEffect=null,8&ju.flags&&((E=ju).sibling=null,E.stateNode=null),ju=t;if(0===(r=e.pendingLanes)&&(Hu=null),1===r?e===Zu?Ju++:(Ju=0,Zu=e):Ju=0,n=n.stateNode,bl&&"function"==typeof bl.onCommitFiberRoot)try{bl.onCommitFiberRoot(yl,n,void 0,64==(64&n.current.flags))}catch(C){}if(si(e,Ul()),Wu)throw Wu=!1,e=$u,$u=null,e;return 0!=(8&_u)||Wl(),null}function Pi(){for(;null!==ju;){var e=ju.alternate;li||null===ri||(0!=(8&ju.flags)?Ze(ju,ri)&&(li=!0):13===ju.tag&&ku(e,ju)&&Ze(ju,ri)&&(li=!0));var t=ju.flags;0!=(256&t)&&fu(e,ju),0==(512&t)||Qu||(Qu=!0,jl(97,(function(){return Ni(),null}))),ju=ju.nextEffect}}function Ni(){if(90!==Ku){var e=97<Ku?97:Ku;return Ku=90,Bl(e,Li)}return!1}function Ti(e,t){Yu.push(t,e),Qu||(Qu=!0,jl(97,(function(){return Ni(),null})))}function zi(e,t){Xu.push(t,e),Qu||(Qu=!0,jl(97,(function(){return Ni(),null})))}function Li(){if(null===qu)return!1;var e=qu;if(qu=null,0!=(48&_u))throw Error(o(331));var t=_u;_u|=32;var n=Xu;Xu=[];for(var r=0;r<n.length;r+=2){var l=n[r],a=n[r+1],u=l.destroy;if(l.destroy=void 0,"function"==typeof u)try{u()}catch(s){if(null===a)throw Error(o(330));Ri(a,s)}}for(n=Yu,Yu=[],r=0;r<n.length;r+=2){l=n[r],a=n[r+1];try{var i=l.create;l.destroy=i()}catch(s){if(null===a)throw Error(o(330));Ri(a,s)}}for(i=e.current.firstEffect;null!==i;)e=i.nextEffect,i.nextEffect=null,8&i.flags&&(i.sibling=null,i.stateNode=null),i=e;return _u=t,Wl(),!0}function Oi(e,t,n){oa(e,t=uu(0,t=lu(n,t),1)),t=ai(),null!==(e=ii(e,1))&&(jt(e,1,t),si(e,t))}function Ri(e,t){if(3===e.tag)Oi(e,e,t);else for(var n=e.return;null!==n;){if(3===n.tag){Oi(n,e,t);break}if(1===n.tag){var r=n.stateNode;if("function"==typeof n.type.getDerivedStateFromError||"function"==typeof r.componentDidCatch&&(null===Hu||!Hu.has(r))){var l=iu(n,e=lu(t,e),1);if(oa(n,l),l=ai(),null!==(n=ii(n,1)))jt(n,1,l),si(n,l);else if("function"==typeof r.componentDidCatch&&(null===Hu||!Hu.has(r)))try{r.componentDidCatch(t,e)}catch(a){}break}}n=n.return}}function Mi(e,t,n){var r=e.pingCache;null!==r&&r.delete(t),t=ai(),e.pingedLanes|=e.suspendedLanes&n,Cu===e&&(Nu&n)===n&&(4===Lu||3===Lu&&(62914560&Nu)===Nu&&500>Ul()-Uu?gi(e,0):Du|=n),si(e,t)}function Ii(e,t){var n=e.stateNode;null!==n&&n.delete(t),0===(t=0)&&(0==(2&(t=e.mode))?t=1:0==(4&t)?t=99===Al()?1:2:(0===ti&&(ti=Ru),0===(t=Vt(62914560&~ti))&&(t=4194304))),n=ai(),null!==(e=ii(e,t))&&(jt(e,t,n),si(e,n))}function Di(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.flags=0,this.lastEffect=this.firstEffect=this.nextEffect=null,this.childLanes=this.lanes=0,this.alternate=null}function Fi(e,t,n,r){return new Di(e,t,n,r)}function Ui(e){return!(!(e=e.prototype)||!e.isReactComponent)}function Ai(e,t){var n=e.alternate;return null===n?((n=Fi(e.tag,t,e.key,e.mode)).elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.type=e.type,n.flags=0,n.nextEffect=null,n.firstEffect=null,n.lastEffect=null),n.childLanes=e.childLanes,n.lanes=e.lanes,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=null===t?null:{lanes:t.lanes,firstContext:t.firstContext},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function Vi(e,t,n,r,l,a){var u=2;if(r=e,"function"==typeof e)Ui(e)&&(u=1);else if("string"==typeof e)u=5;else e:switch(e){case x:return Bi(n.children,l,a,t);case D:u=8,l|=16;break;case _:u=8,l|=1;break;case C:return(e=Fi(12,n,t,8|l)).elementType=C,e.type=C,e.lanes=a,e;case z:return(e=Fi(13,n,t,l)).type=z,e.elementType=z,e.lanes=a,e;case L:return(e=Fi(19,n,t,l)).elementType=L,e.lanes=a,e;case F:return ji(n,l,a,t);case U:return(e=Fi(24,n,t,l)).elementType=U,e.lanes=a,e;default:if("object"==typeof e&&null!==e)switch(e.$$typeof){case P:u=10;break e;case N:u=9;break e;case T:u=11;break e;case O:u=14;break e;case R:u=16,r=null;break e;case M:u=22;break e}throw Error(o(130,null==e?e:typeof e,""))}return(t=Fi(u,n,t,l)).elementType=e,t.type=r,t.lanes=a,t}function Bi(e,t,n,r){return(e=Fi(7,e,r,t)).lanes=n,e}function ji(e,t,n,r){return(e=Fi(23,e,r,t)).elementType=F,e.lanes=n,e}function Wi(e,t,n){return(e=Fi(6,e,null,t)).lanes=n,e}function $i(e,t,n){return(t=Fi(4,null!==e.children?e.children:[],e.key,t)).lanes=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function Hi(e,t,n){this.tag=t,this.containerInfo=e,this.finishedWork=this.pingCache=this.current=this.pendingChildren=null,this.timeoutHandle=-1,this.pendingContext=this.context=null,this.hydrate=n,this.callbackNode=null,this.callbackPriority=0,this.eventTimes=Bt(0),this.expirationTimes=Bt(-1),this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0,this.entanglements=Bt(0),this.mutableSourceEagerHydrationData=null}function Qi(e,t,n){var r=3<arguments.length&&void 0!==arguments[3]?arguments[3]:null;return{$$typeof:E,key:null==r?null:""+r,children:e,containerInfo:t,implementation:n}}function qi(e,t,n,r){var l=t.current,a=ai(),u=oi(l);e:if(n){t:{if(Ye(n=n._reactInternals)!==n||1!==n.tag)throw Error(o(170));var i=n;do{switch(i.tag){case 3:i=i.stateNode.context;break t;case 1:if(dl(i.type)){i=i.stateNode.__reactInternalMemoizedMergedChildContext;break t}}i=i.return}while(null!==i);throw Error(o(171))}if(1===n.tag){var s=n.type;if(dl(s)){n=ml(n,s,i);break e}}n=i}else n=ul;return null===t.context?t.context=n:t.pendingContext=n,(t=aa(a,u)).payload={element:e},null!==(r=void 0===r?null:r)&&(t.callback=r),oa(l,t),ui(l,u,a),u}function Ki(e){if(!(e=e.current).child)return null;switch(e.child.tag){case 5:default:return e.child.stateNode}}function Yi(e,t){if(null!==(e=e.memoizedState)&&null!==e.dehydrated){var n=e.retryLane;e.retryLane=0!==n&&n<t?n:t}}function Xi(e,t){Yi(e,t),(e=e.alternate)&&Yi(e,t)}function Gi(e,t,n){var r=null!=n&&null!=n.hydrationOptions&&n.hydrationOptions.mutableSources||null;if(n=new Hi(e,t,null!=n&&!0===n.hydrate),t=Fi(3,null,null,2===t?7:1===t?3:0),n.current=t,t.stateNode=n,ra(t),e[Yr]=n.current,Pr(8===e.nodeType?e.parentNode:e),r)for(e=0;e<r.length;e++){var l=(t=r[e])._getVersion;l=l(t._source),null==n.mutableSourceEagerHydrationData?n.mutableSourceEagerHydrationData=[t,l]:n.mutableSourceEagerHydrationData.push(t,l)}this._internalRoot=n}function Ji(e){return!(!e||1!==e.nodeType&&9!==e.nodeType&&11!==e.nodeType&&(8!==e.nodeType||" react-mount-point-unstable "!==e.nodeValue))}function Zi(e,t,n,r,l){var a=n._reactRootContainer;if(a){var o=a._internalRoot;if("function"==typeof l){var u=l;l=function(){var e=Ki(o);u.call(e)}}qi(t,o,e,l)}else{if(a=n._reactRootContainer=function(e,t){if(t||(t=!(!(t=e?9===e.nodeType?e.documentElement:e.firstChild:null)||1!==t.nodeType||!t.hasAttribute("data-reactroot"))),!t)for(var n;n=e.lastChild;)e.removeChild(n);return new Gi(e,0,t?{hydrate:!0}:void 0)}(n,r),o=a._internalRoot,"function"==typeof l){var i=l;l=function(){var e=Ki(o);i.call(e)}}hi((function(){qi(t,o,e,l)}))}return Ki(o)}function es(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null;if(!Ji(t))throw Error(o(200));return Qi(e,t,null,n)}Bu=function(e,t,n){var r=t.lanes;if(null!==e)if(e.memoizedProps!==t.pendingProps||sl.current)Oo=!0;else{if(0==(n&r)){switch(Oo=!1,t.tag){case 3:jo(t),ja();break;case 5:za(t);break;case 1:dl(t.type)&&vl(t);break;case 4:Na(t,t.stateNode.containerInfo);break;case 10:r=t.memoizedProps.value;var l=t.type._context;ol(ql,l._currentValue),l._currentValue=r;break;case 13:if(null!==t.memoizedState)return 0!=(n&t.child.childLanes)?qo(e,t,n):(ol(Oa,1&Oa.current),null!==(t=eu(e,t,n))?t.sibling:null);ol(Oa,1&Oa.current);break;case 19:if(r=0!=(n&t.childLanes),0!=(64&e.flags)){if(r)return Zo(e,t,n);t.flags|=64}if(null!==(l=t.memoizedState)&&(l.rendering=null,l.tail=null,l.lastEffect=null),ol(Oa,Oa.current),r)break;return null;case 23:case 24:return t.lanes=0,Fo(e,t,n)}return eu(e,t,n)}Oo=0!=(16384&e.flags)}else Oo=!1;switch(t.lanes=0,t.tag){case 2:if(r=t.type,null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2),e=t.pendingProps,l=fl(t,il.current),ea(t,n),l=to(null,t,r,e,l,n),t.flags|=1,"object"==typeof l&&null!==l&&"function"==typeof l.render&&void 0===l.$$typeof){if(t.tag=1,t.memoizedState=null,t.updateQueue=null,dl(r)){var a=!0;vl(t)}else a=!1;t.memoizedState=null!==l.state&&void 0!==l.state?l.state:null,ra(t);var u=r.getDerivedStateFromProps;"function"==typeof u&&fa(t,r,u,e),l.updater=da,t.stateNode=l,l._reactInternals=t,va(t,r,e,n),t=Bo(null,t,r,!0,a,n)}else t.tag=0,Ro(null,t,l,n),t=t.child;return t;case 16:l=t.elementType;e:{switch(null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2),e=t.pendingProps,l=(a=l._init)(l._payload),t.type=l,a=t.tag=function(e){if("function"==typeof e)return Ui(e)?1:0;if(null!=e){if((e=e.$$typeof)===T)return 11;if(e===O)return 14}return 2}(l),e=Ql(l,e),a){case 0:t=Ao(null,t,l,e,n);break e;case 1:t=Vo(null,t,l,e,n);break e;case 11:t=Mo(null,t,l,e,n);break e;case 14:t=Io(null,t,l,Ql(l.type,e),r,n);break e}throw Error(o(306,l,""))}return t;case 0:return r=t.type,l=t.pendingProps,Ao(e,t,r,l=t.elementType===r?l:Ql(r,l),n);case 1:return r=t.type,l=t.pendingProps,Vo(e,t,r,l=t.elementType===r?l:Ql(r,l),n);case 3:if(jo(t),r=t.updateQueue,null===e||null===r)throw Error(o(282));if(r=t.pendingProps,l=null!==(l=t.memoizedState)?l.element:null,la(e,t),ia(t,r,null,n),(r=t.memoizedState.element)===l)ja(),t=eu(e,t,n);else{if((a=(l=t.stateNode).hydrate)&&(Ia=Wr(t.stateNode.containerInfo.firstChild),Ma=t,a=Da=!0),a){if(null!=(e=l.mutableSourceEagerHydrationData))for(l=0;l<e.length;l+=2)(a=e[l])._workInProgressVersionPrimary=e[l+1],Wa.push(a);for(n=Sa(t,null,r,n),t.child=n;n;)n.flags=-3&n.flags|1024,n=n.sibling}else Ro(e,t,r,n),ja();t=t.child}return t;case 5:return za(t),null===e&&Aa(t),r=t.type,l=t.pendingProps,a=null!==e?e.memoizedProps:null,u=l.children,Ar(r,l)?u=null:null!==a&&Ar(r,a)&&(t.flags|=16),Uo(e,t),Ro(e,t,u,n),t.child;case 6:return null===e&&Aa(t),null;case 13:return qo(e,t,n);case 4:return Na(t,t.stateNode.containerInfo),r=t.pendingProps,null===e?t.child=ka(t,null,r,n):Ro(e,t,r,n),t.child;case 11:return r=t.type,l=t.pendingProps,Mo(e,t,r,l=t.elementType===r?l:Ql(r,l),n);case 7:return Ro(e,t,t.pendingProps,n),t.child;case 8:case 12:return Ro(e,t,t.pendingProps.children,n),t.child;case 10:e:{r=t.type._context,l=t.pendingProps,u=t.memoizedProps,a=l.value;var i=t.type._context;if(ol(ql,i._currentValue),i._currentValue=a,null!==u)if(i=u.value,0===(a=or(i,a)?0:0|("function"==typeof r._calculateChangedBits?r._calculateChangedBits(i,a):1073741823))){if(u.children===l.children&&!sl.current){t=eu(e,t,n);break e}}else for(null!==(i=t.child)&&(i.return=t);null!==i;){var s=i.dependencies;if(null!==s){u=i.child;for(var c=s.firstContext;null!==c;){if(c.context===r&&0!=(c.observedBits&a)){1===i.tag&&((c=aa(-1,n&-n)).tag=2,oa(i,c)),i.lanes|=n,null!==(c=i.alternate)&&(c.lanes|=n),Zl(i.return,n),s.lanes|=n;break}c=c.next}}else u=10===i.tag&&i.type===t.type?null:i.child;if(null!==u)u.return=i;else for(u=i;null!==u;){if(u===t){u=null;break}if(null!==(i=u.sibling)){i.return=u.return,u=i;break}u=u.return}i=u}Ro(e,t,l.children,n),t=t.child}return t;case 9:return l=t.type,r=(a=t.pendingProps).children,ea(t,n),r=r(l=ta(l,a.unstable_observedBits)),t.flags|=1,Ro(e,t,r,n),t.child;case 14:return a=Ql(l=t.type,t.pendingProps),Io(e,t,l,a=Ql(l.type,a),r,n);case 15:return Do(e,t,t.type,t.pendingProps,r,n);case 17:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:Ql(r,l),null!==e&&(e.alternate=null,t.alternate=null,t.flags|=2),t.tag=1,dl(r)?(e=!0,vl(t)):e=!1,ea(t,n),ha(t,r,l),va(t,r,l,n),Bo(null,t,r,!0,e,n);case 19:return Zo(e,t,n);case 23:case 24:return Fo(e,t,n)}throw Error(o(156,t.tag))},Gi.prototype.render=function(e){qi(e,this._internalRoot,null,null)},Gi.prototype.unmount=function(){var e=this._internalRoot,t=e.containerInfo;qi(null,e,null,(function(){t[Yr]=null}))},et=function(e){13===e.tag&&(ui(e,4,ai()),Xi(e,4))},tt=function(e){13===e.tag&&(ui(e,67108864,ai()),Xi(e,67108864))},nt=function(e){if(13===e.tag){var t=ai(),n=oi(e);ui(e,n,t),Xi(e,n)}},rt=function(e,t){return t()},Ce=function(e,t,n){switch(t){case"input":if(ne(e,n),t=n.name,"radio"===n.type&&null!=t){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll("input[name="+JSON.stringify(""+t)+'][type="radio"]'),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var l=el(r);if(!l)throw Error(o(90));G(r),ne(r,l)}}}break;case"textarea":se(e,n);break;case"select":null!=(t=n.value)&&oe(e,!!n.multiple,t,!1)}},Oe=pi,Re=function(e,t,n,r,l){var a=_u;_u|=4;try{return Bl(98,e.bind(null,t,n,r,l))}finally{0===(_u=a)&&(Vu(),Wl())}},Me=function(){0==(49&_u)&&(function(){if(null!==Gu){var e=Gu;Gu=null,e.forEach((function(e){e.expiredLanes|=24&e.pendingLanes,si(e,Ul())}))}Wl()}(),Ni())},Ie=function(e,t){var n=_u;_u|=2;try{return e(t)}finally{0===(_u=n)&&(Vu(),Wl())}};var ts={Events:[Jr,Zr,el,ze,Le,Ni,{current:!1}]},ns={findFiberByHostInstance:Gr,bundleType:0,version:"17.0.1",rendererPackageName:"react-dom"},rs={bundleType:ns.bundleType,version:ns.version,rendererPackageName:ns.rendererPackageName,rendererConfig:ns.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:k.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return null===(e=Je(e))?null:e.stateNode},findFiberByHostInstance:ns.findFiberByHostInstance||function(){return null},findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null};if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__){var ls=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!ls.isDisabled&&ls.supportsFiber)try{yl=ls.inject(rs),bl=ls}catch(as){}}t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=ts,t.createPortal=es,t.findDOMNode=function(e){if(null==e)return null;if(1===e.nodeType)return e;var t=e._reactInternals;if(void 0===t){if("function"==typeof e.render)throw Error(o(188));throw Error(o(268,Object.keys(e)))}return e=null===(e=Je(t))?null:e.stateNode},t.flushSync=function(e,t){var n=_u;if(0!=(48&n))return e(t);_u|=1;try{if(e)return Bl(99,e.bind(null,t))}finally{_u=n,Wl()}},t.hydrate=function(e,t,n){if(!Ji(t))throw Error(o(200));return Zi(null,e,t,!0,n)},t.render=function(e,t,n){if(!Ji(t))throw Error(o(200));return Zi(null,e,t,!1,n)},t.unmountComponentAtNode=function(e){if(!Ji(e))throw Error(o(40));return!!e._reactRootContainer&&(hi((function(){Zi(null,null,e,!1,(function(){e._reactRootContainer=null,e[Yr]=null}))})),!0)},t.unstable_batchedUpdates=pi,t.unstable_createPortal=function(e,t){return es(e,t,2<arguments.length&&void 0!==arguments[2]?arguments[2]:null)},t.unstable_renderSubtreeIntoContainer=function(e,t,n,r){if(!Ji(n))throw Error(o(200));if(null==e||void 0===e._reactInternals)throw Error(o(38));return Zi(e,t,n,!1,r)},t.version="17.0.1"}}]);
+//# sourceMappingURL=framework-5e01c8af6b1735c9eaa3.js.map
\ No newline at end of file
diff --git a/framework-5e01c8af6b1735c9eaa3.js.LICENSE.txt b/framework-5e01c8af6b1735c9eaa3.js.LICENSE.txt
new file mode 100644
index 0000000..2f519a0
--- /dev/null
+++ b/framework-5e01c8af6b1735c9eaa3.js.LICENSE.txt
@@ -0,0 +1,26 @@
+/** @license React v0.20.1
+ * scheduler.production.min.js
+ *
+ * Copyright (c) Facebook, Inc. and its affiliates.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */
+
+/** @license React v17.0.1
+ * react-dom.production.min.js
+ *
+ * Copyright (c) Facebook, Inc. and its affiliates.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */
+
+/** @license React v17.0.1
+ * react.production.min.js
+ *
+ * Copyright (c) Facebook, Inc. and its affiliates.
+ *
+ * This source code is licensed under the MIT license found in the
+ * LICENSE file in the root directory of this source tree.
+ */
diff --git a/framework-5e01c8af6b1735c9eaa3.js.map b/framework-5e01c8af6b1735c9eaa3.js.map
new file mode 100644
index 0000000..3d954b9
--- /dev/null
+++ b/framework-5e01c8af6b1735c9eaa3.js.map
@@ -0,0 +1 @@
+{"version":3,"sources":["webpack:///./node_modules/scheduler/cjs/scheduler.production.min.js","webpack:///./node_modules/prop-types/factoryWithThrowingShims.js","webpack:///./node_modules/prop-types/index.js","webpack:///./node_modules/scheduler/index.js","webpack:///./node_modules/prop-types/lib/ReactPropTypesSecret.js","webpack:///./node_modules/react-dom/index.js","webpack:///./node_modules/react/index.js","webpack:///./node_modules/react/cjs/react.production.min.js","webpack:///./node_modules/react-dom/cjs/react-dom.production.min.js"],"names":["f","g","h","k","performance","now","l","exports","unstable_now","p","Date","q","window","MessageChannel","t","u","w","a","b","setTimeout","clearTimeout","unstable_shouldYield","unstable_forceFrameRate","x","y","console","z","cancelAnimationFrame","requestAnimationFrame","error","A","B","C","D","E","Math","floor","F","G","port2","port1","onmessage","postMessage","H","c","length","push","d","e","I","J","K","pop","m","n","v","r","sortIndex","id","L","M","N","O","P","Q","R","S","T","callback","startTime","expirationTime","U","V","priorityLevel","W","unstable_IdlePriority","unstable_ImmediatePriority","unstable_LowPriority","unstable_NormalPriority","unstable_Profiling","unstable_UserBlockingPriority","unstable_cancelCallback","unstable_continueExecution","unstable_getCurrentPriorityLevel","unstable_getFirstCallbackNode","unstable_next","unstable_pauseExecution","unstable_requestPaint","unstable_runWithPriority","unstable_scheduleCallback","delay","unstable_wrapCallback","apply","this","arguments","ReactPropTypesSecret","emptyFunction","emptyFunctionWithReset","resetWarningCache","module","shim","props","propName","componentName","location","propFullName","secret","err","Error","name","getShim","isRequired","ReactPropTypes","array","bool","func","number","object","string","symbol","any","arrayOf","element","elementType","instanceOf","node","objectOf","oneOf","oneOfType","shape","exact","checkPropTypes","PropTypes","checkDCE","__REACT_DEVTOOLS_GLOBAL_HOOK__","Fragment","StrictMode","Profiler","Suspense","Symbol","for","iterator","encodeURIComponent","isMounted","enqueueForceUpdate","enqueueReplaceState","enqueueSetState","context","refs","updater","prototype","isReactComponent","setState","forceUpdate","constructor","isPureReactComponent","current","Object","hasOwnProperty","key","ref","__self","__source","call","children","Array","defaultProps","$$typeof","type","_owner","replace","escape","toString","isArray","next","done","value","keys","join","_status","_result","then","default","ReactCurrentDispatcher","ReactCurrentBatchConfig","transition","ReactCurrentOwner","IsSomeRendererActing","assign","Children","map","forEach","count","toArray","only","Component","PureComponent","__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED","cloneElement","createContext","_calculateChangedBits","_currentValue","_currentValue2","_threadCount","Provider","Consumer","_context","createElement","createFactory","bind","createRef","forwardRef","render","isValidElement","lazy","_payload","_init","memo","compare","useCallback","useContext","useDebugValue","useEffect","useImperativeHandle","useLayoutEffect","useMemo","useReducer","useRef","useState","version","aa","ba","Set","ca","da","ea","add","fa","document","ha","ia","ja","ka","acceptsBooleans","attributeName","attributeNamespace","mustUseProperty","propertyName","sanitizeURL","removeEmptyString","split","toLowerCase","oa","pa","toUpperCase","qa","slice","ma","isNaN","na","test","la","removeAttribute","setAttribute","setAttributeNS","xlinkHref","ra","sa","ta","ua","wa","xa","ya","za","Aa","Ba","Ca","Da","Ea","Fa","Ga","Ha","Ia","Ja","Ma","Ka","La","Na","stack","trim","match","Oa","Pa","prepareStackTrace","defineProperty","set","Reflect","construct","displayName","Qa","tag","_render","Ra","Sa","Ta","nodeName","Va","_valueTracker","getOwnPropertyDescriptor","get","configurable","enumerable","getValue","setValue","stopTracking","Ua","Wa","checked","Xa","activeElement","body","Ya","defaultChecked","defaultValue","_wrapperState","initialChecked","Za","initialValue","controlled","$a","ab","bb","cb","ownerDocument","eb","db","fb","options","selected","defaultSelected","disabled","gb","dangerouslySetInnerHTML","hb","ib","jb","textContent","kb","lb","mb","nb","ob","MSApp","execUnsafeLocalFunction","namespaceURI","innerHTML","valueOf","firstChild","removeChild","appendChild","pb","lastChild","nodeType","nodeValue","qb","animationIterationCount","borderImageOutset","borderImageSlice","borderImageWidth","boxFlex","boxFlexGroup","boxOrdinalGroup","columnCount","columns","flex","flexGrow","flexPositive","flexShrink","flexNegative","flexOrder","gridArea","gridRow","gridRowEnd","gridRowSpan","gridRowStart","gridColumn","gridColumnEnd","gridColumnSpan","gridColumnStart","fontWeight","lineClamp","lineHeight","opacity","order","orphans","tabSize","widows","zIndex","zoom","fillOpacity","floodOpacity","stopOpacity","strokeDasharray","strokeDashoffset","strokeMiterlimit","strokeOpacity","strokeWidth","rb","sb","tb","style","indexOf","setProperty","charAt","substring","ub","menuitem","area","base","br","col","embed","hr","img","input","keygen","link","meta","param","source","track","wbr","vb","wb","is","xb","target","srcElement","correspondingUseElement","parentNode","yb","zb","Ab","Bb","Cb","stateNode","Db","Eb","Fb","Gb","Hb","Ib","Jb","Kb","Lb","Mb","Ob","Pb","Qb","addEventListener","removeEventListener","Rb","onError","Sb","Tb","Ub","Vb","Wb","Xb","Zb","alternate","return","flags","$b","memoizedState","dehydrated","ac","cc","child","sibling","bc","dc","ec","fc","gc","hc","ic","jc","kc","lc","mc","nc","Map","oc","pc","qc","rc","blockedOn","domEventName","eventSystemFlags","nativeEvent","targetContainers","sc","delete","pointerId","tc","vc","wc","lanePriority","priority","hydrate","containerInfo","xc","yc","shift","zc","Ac","Bc","Cc","Dc","Ec","animationend","animationiteration","animationstart","transitionend","Fc","Gc","Hc","animation","Ic","Jc","Kc","Lc","Mc","Nc","Oc","Pc","Qc","Rc","Uc","pendingLanes","expiredLanes","suspendedLanes","pingedLanes","Vc","entangledLanes","entanglements","Wc","Xc","Yc","Zc","$c","eventTimes","clz32","bd","cd","log","LN2","dd","ed","fd","gd","hd","uc","jd","kd","ld","md","nd","od","keyCode","charCode","pd","qd","rd","_reactName","_targetInst","currentTarget","isDefaultPrevented","defaultPrevented","returnValue","isPropagationStopped","preventDefault","stopPropagation","cancelBubble","persist","isPersistent","wd","xd","yd","sd","eventPhase","bubbles","cancelable","timeStamp","isTrusted","td","ud","view","detail","vd","Ad","screenX","screenY","clientX","clientY","pageX","pageY","ctrlKey","shiftKey","altKey","metaKey","getModifierState","zd","button","buttons","relatedTarget","fromElement","toElement","movementX","movementY","Bd","Dd","dataTransfer","Fd","Hd","animationName","elapsedTime","pseudoElement","Jd","clipboardData","Ld","data","Md","Esc","Spacebar","Left","Up","Right","Down","Del","Win","Menu","Apps","Scroll","MozPrintableKey","Nd","8","9","12","13","16","17","18","19","20","27","32","33","34","35","36","37","38","39","40","45","46","112","113","114","115","116","117","118","119","120","121","122","123","144","145","224","Od","Alt","Control","Meta","Shift","Pd","Rd","String","fromCharCode","code","repeat","locale","which","Td","width","height","pressure","tangentialPressure","tiltX","tiltY","twist","pointerType","isPrimary","Vd","touches","targetTouches","changedTouches","Xd","Zd","deltaX","wheelDeltaX","deltaY","wheelDeltaY","wheelDelta","deltaZ","deltaMode","$d","ae","be","documentMode","ce","de","ee","fe","ge","he","ie","le","color","date","datetime","email","month","password","range","search","tel","text","time","url","week","me","ne","oe","event","listeners","pe","qe","re","se","te","ue","ve","we","xe","ye","ze","oninput","Ae","detachEvent","Be","Ce","attachEvent","De","Ee","Fe","He","Ie","Je","Ke","Le","offset","nextSibling","Ne","HTMLIFrameElement","contentWindow","href","Oe","contentEditable","Pe","Qe","Re","Se","Te","Ue","start","selectionStart","end","selectionEnd","anchorNode","defaultView","getSelection","anchorOffset","focusNode","focusOffset","Ve","We","Xe","Ye","concat","Ze","Yb","instance","listener","$e","has","af","bf","random","cf","df","capture","passive","Nb","ef","ff","parentWindow","gf","hf","je","char","ke","unshift","jf","kf","lf","mf","autoFocus","nf","__html","of","pf","qf","rf","sf","previousSibling","tf","vf","wf","xf","yf","zf","Af","Bf","Cf","Df","Ef","contextTypes","__reactInternalMemoizedUnmaskedChildContext","__reactInternalMemoizedMaskedChildContext","Ff","childContextTypes","Gf","Hf","If","getChildContext","Jf","__reactInternalMemoizedMergedChildContext","Kf","Lf","Mf","Nf","Of","Pf","Qf","Rf","Sf","Tf","Uf","Vf","Wf","Xf","Yf","Zf","$f","ag","bg","cg","dg","eg","fg","gg","hg","ig","jg","kg","lg","mg","ng","og","pg","qg","rg","sg","childLanes","tg","dependencies","firstContext","lanes","ug","vg","observedBits","responders","wg","xg","updateQueue","baseState","firstBaseUpdate","lastBaseUpdate","shared","pending","effects","yg","zg","eventTime","lane","payload","Ag","Bg","Cg","Dg","Eg","Fg","Gg","Kg","_reactInternals","Hg","Ig","Jg","Lg","shouldComponentUpdate","Mg","contextType","state","Ng","componentWillReceiveProps","UNSAFE_componentWillReceiveProps","Og","getDerivedStateFromProps","getSnapshotBeforeUpdate","UNSAFE_componentWillMount","componentWillMount","componentDidMount","Pg","Qg","_stringRef","Rg","Sg","lastEffect","nextEffect","firstEffect","index","Tg","Ug","mode","Vg","implementation","Wg","Xg","Yg","Zg","$g","ah","bh","ch","dh","eh","documentElement","tagName","fh","gh","hh","ih","memoizedProps","revealOrder","jh","kh","lh","mh","nh","oh","pendingProps","ph","qh","rh","sh","th","uh","_workInProgressVersionPrimary","vh","wh","xh","yh","zh","Ah","Bh","Ch","Dh","Eh","Fh","Gh","Hh","baseQueue","queue","Ih","Jh","Kh","lastRenderedReducer","action","eagerReducer","eagerState","lastRenderedState","dispatch","Lh","Mh","_getVersion","_source","mutableReadLanes","Nh","getSnapshot","subscribe","setSnapshot","Oh","Ph","Qh","Rh","create","destroy","deps","Sh","Th","Uh","Vh","Wh","Xh","Yh","Zh","$h","ai","bi","ci","di","readContext","useDeferredValue","useTransition","useMutableSource","useOpaqueIdentifier","unstable_isNewReconciler","uf","ei","fi","gi","hi","ii","ji","ki","li","mi","baseLanes","ni","oi","pi","UNSAFE_componentWillUpdate","componentWillUpdate","componentDidUpdate","qi","getDerivedStateFromError","ri","pendingContext","Bi","Di","Ei","si","retryLane","ti","fallback","unstable_avoidThisFallback","ui","unstable_expectedLoadTime","vi","wi","xi","yi","zi","isBackwards","rendering","renderingStartTime","last","tail","tailMode","Ai","Fi","Gi","wasMultiple","multiple","onClick","onclick","size","createElementNS","createTextNode","Hi","Ii","Ji","Ki","Li","Mi","message","Ni","Oi","WeakMap","Pi","Qi","Ri","Si","componentDidCatch","Ti","componentStack","Ui","WeakSet","Vi","Wi","Xi","__reactInternalSnapshotBeforeUpdate","Yi","Zi","$i","focus","aj","display","bj","onCommitFiberUnmount","componentWillUnmount","cj","dj","ej","fj","gj","insertBefore","_reactRootContainer","hj","ij","jj","kj","lj","mj","nj","ceil","oj","pj","X","Y","qj","rj","sj","tj","uj","vj","Infinity","wj","ck","Z","xj","yj","zj","Aj","Bj","Cj","Dj","Ej","Fj","Gj","Hj","Ij","Jj","Sc","Kj","Lj","Mj","callbackNode","expirationTimes","callbackPriority","Tc","Nj","Oj","Pj","Qj","Rj","Sj","Tj","finishedWork","finishedLanes","Uj","timeoutHandle","Wj","Xj","pingCache","Yj","Zj","va","ak","bk","dk","rangeCount","focusedElem","selectionRange","ek","Me","contains","compareDocumentPosition","min","extend","createRange","setStart","removeAllRanges","addRange","setEnd","left","scrollLeft","top","scrollTop","onCommitFiberRoot","fk","gk","ik","pendingChildren","jk","mutableSourceEagerHydrationData","kk","lk","mk","nk","ok","qk","hydrationOptions","mutableSources","_internalRoot","rk","tk","hasAttribute","sk","uk","hk","unstable_observedBits","unmount","querySelectorAll","JSON","stringify","form","Vj","vk","Events","wk","findFiberByHostInstance","bundleType","rendererPackageName","xk","rendererConfig","overrideHookState","overrideHookStateDeletePath","overrideHookStateRenamePath","overrideProps","overridePropsDeletePath","overridePropsRenamePath","setSuspenseHandler","scheduleUpdate","currentDispatcherRef","findHostInstanceByFiber","findHostInstancesForRefresh","scheduleRefresh","scheduleRoot","setRefreshHandler","getCurrentFiber","yk","isDisabled","supportsFiber","inject","createPortal","findDOMNode","flushSync","unmountComponentAtNode","unstable_batchedUpdates","unstable_createPortal","unstable_renderSubtreeIntoContainer"],"mappings":"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","file":"framework-5e01c8af6b1735c9eaa3.js","sourcesContent":["/** @license React v0.20.1\n * scheduler.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';var f,g,h,k;if(\"object\"===typeof performance&&\"function\"===typeof performance.now){var l=performance;exports.unstable_now=function(){return l.now()}}else{var p=Date,q=p.now();exports.unstable_now=function(){return p.now()-q}}\nif(\"undefined\"===typeof window||\"function\"!==typeof MessageChannel){var t=null,u=null,w=function(){if(null!==t)try{var a=exports.unstable_now();t(!0,a);t=null}catch(b){throw setTimeout(w,0),b;}};f=function(a){null!==t?setTimeout(f,0,a):(t=a,setTimeout(w,0))};g=function(a,b){u=setTimeout(a,b)};h=function(){clearTimeout(u)};exports.unstable_shouldYield=function(){return!1};k=exports.unstable_forceFrameRate=function(){}}else{var x=window.setTimeout,y=window.clearTimeout;if(\"undefined\"!==typeof console){var z=\nwindow.cancelAnimationFrame;\"function\"!==typeof window.requestAnimationFrame&&console.error(\"This browser doesn't support requestAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills\");\"function\"!==typeof z&&console.error(\"This browser doesn't support cancelAnimationFrame. Make sure that you load a polyfill in older browsers. https://reactjs.org/link/react-polyfills\")}var A=!1,B=null,C=-1,D=5,E=0;exports.unstable_shouldYield=function(){return exports.unstable_now()>=\nE};k=function(){};exports.unstable_forceFrameRate=function(a){0>a||125<a?console.error(\"forceFrameRate takes a positive int between 0 and 125, forcing frame rates higher than 125 fps is not supported\"):D=0<a?Math.floor(1E3/a):5};var F=new MessageChannel,G=F.port2;F.port1.onmessage=function(){if(null!==B){var a=exports.unstable_now();E=a+D;try{B(!0,a)?G.postMessage(null):(A=!1,B=null)}catch(b){throw G.postMessage(null),b;}}else A=!1};f=function(a){B=a;A||(A=!0,G.postMessage(null))};g=function(a,b){C=\nx(function(){a(exports.unstable_now())},b)};h=function(){y(C);C=-1}}function H(a,b){var c=a.length;a.push(b);a:for(;;){var d=c-1>>>1,e=a[d];if(void 0!==e&&0<I(e,b))a[d]=b,a[c]=e,c=d;else break a}}function J(a){a=a[0];return void 0===a?null:a}\nfunction K(a){var b=a[0];if(void 0!==b){var c=a.pop();if(c!==b){a[0]=c;a:for(var d=0,e=a.length;d<e;){var m=2*(d+1)-1,n=a[m],v=m+1,r=a[v];if(void 0!==n&&0>I(n,c))void 0!==r&&0>I(r,n)?(a[d]=r,a[v]=c,d=v):(a[d]=n,a[m]=c,d=m);else if(void 0!==r&&0>I(r,c))a[d]=r,a[v]=c,d=v;else break a}}return b}return null}function I(a,b){var c=a.sortIndex-b.sortIndex;return 0!==c?c:a.id-b.id}var L=[],M=[],N=1,O=null,P=3,Q=!1,R=!1,S=!1;\nfunction T(a){for(var b=J(M);null!==b;){if(null===b.callback)K(M);else if(b.startTime<=a)K(M),b.sortIndex=b.expirationTime,H(L,b);else break;b=J(M)}}function U(a){S=!1;T(a);if(!R)if(null!==J(L))R=!0,f(V);else{var b=J(M);null!==b&&g(U,b.startTime-a)}}\nfunction V(a,b){R=!1;S&&(S=!1,h());Q=!0;var c=P;try{T(b);for(O=J(L);null!==O&&(!(O.expirationTime>b)||a&&!exports.unstable_shouldYield());){var d=O.callback;if(\"function\"===typeof d){O.callback=null;P=O.priorityLevel;var e=d(O.expirationTime<=b);b=exports.unstable_now();\"function\"===typeof e?O.callback=e:O===J(L)&&K(L);T(b)}else K(L);O=J(L)}if(null!==O)var m=!0;else{var n=J(M);null!==n&&g(U,n.startTime-b);m=!1}return m}finally{O=null,P=c,Q=!1}}var W=k;exports.unstable_IdlePriority=5;\nexports.unstable_ImmediatePriority=1;exports.unstable_LowPriority=4;exports.unstable_NormalPriority=3;exports.unstable_Profiling=null;exports.unstable_UserBlockingPriority=2;exports.unstable_cancelCallback=function(a){a.callback=null};exports.unstable_continueExecution=function(){R||Q||(R=!0,f(V))};exports.unstable_getCurrentPriorityLevel=function(){return P};exports.unstable_getFirstCallbackNode=function(){return J(L)};\nexports.unstable_next=function(a){switch(P){case 1:case 2:case 3:var b=3;break;default:b=P}var c=P;P=b;try{return a()}finally{P=c}};exports.unstable_pauseExecution=function(){};exports.unstable_requestPaint=W;exports.unstable_runWithPriority=function(a,b){switch(a){case 1:case 2:case 3:case 4:case 5:break;default:a=3}var c=P;P=a;try{return b()}finally{P=c}};\nexports.unstable_scheduleCallback=function(a,b,c){var d=exports.unstable_now();\"object\"===typeof c&&null!==c?(c=c.delay,c=\"number\"===typeof c&&0<c?d+c:d):c=d;switch(a){case 1:var e=-1;break;case 2:e=250;break;case 5:e=1073741823;break;case 4:e=1E4;break;default:e=5E3}e=c+e;a={id:N++,callback:b,priorityLevel:a,startTime:c,expirationTime:e,sortIndex:-1};c>d?(a.sortIndex=c,H(M,a),null===J(L)&&a===J(M)&&(S?h():S=!0,g(U,c-d))):(a.sortIndex=e,H(L,a),R||Q||(R=!0,f(V)));return a};\nexports.unstable_wrapCallback=function(a){var b=P;return function(){var c=P;P=b;try{return a.apply(this,arguments)}finally{P=c}}};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n\nfunction emptyFunction() {}\nfunction emptyFunctionWithReset() {}\nemptyFunctionWithReset.resetWarningCache = emptyFunction;\n\nmodule.exports = function() {\n function shim(props, propName, componentName, location, propFullName, secret) {\n if (secret === ReactPropTypesSecret) {\n // It is still safe when called from React.\n return;\n }\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use PropTypes.checkPropTypes() to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n };\n shim.isRequired = shim;\n function getShim() {\n return shim;\n };\n // Important!\n // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n var ReactPropTypes = {\n array: shim,\n bool: shim,\n func: shim,\n number: shim,\n object: shim,\n string: shim,\n symbol: shim,\n\n any: shim,\n arrayOf: getShim,\n element: shim,\n elementType: shim,\n instanceOf: getShim,\n node: shim,\n objectOf: getShim,\n oneOf: getShim,\n oneOfType: getShim,\n shape: getShim,\n exact: getShim,\n\n checkPropTypes: emptyFunctionWithReset,\n resetWarningCache: emptyFunction\n };\n\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactIs = require('react-is');\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/scheduler.production.min.js');\n} else {\n module.exports = require('./cjs/scheduler.development.js');\n}\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n","'use strict';\n\nfunction checkDCE() {\n /* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */\n if (\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ === 'undefined' ||\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE !== 'function'\n ) {\n return;\n }\n if (process.env.NODE_ENV !== 'production') {\n // This branch is unreachable because this function is only called\n // in production, but the condition is true only in development.\n // Therefore if the branch is still here, dead code elimination wasn't\n // properly applied.\n // Don't change the message. React DevTools relies on it. Also make sure\n // this message doesn't occur elsewhere in this function, or it will cause\n // a false positive.\n throw new Error('^_^');\n }\n try {\n // Verify that the code above has been dead code eliminated (DCE'd).\n __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(checkDCE);\n } catch (err) {\n // DevTools shouldn't crash React, no matter what.\n // We should still report in case we break this code.\n console.error(err);\n }\n}\n\nif (process.env.NODE_ENV === 'production') {\n // DCE check should happen before ReactDOM bundle executes so that\n // DevTools can report bad minification during injection.\n checkDCE();\n module.exports = require('./cjs/react-dom.production.min.js');\n} else {\n module.exports = require('./cjs/react-dom.development.js');\n}\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react.production.min.js');\n} else {\n module.exports = require('./cjs/react.development.js');\n}\n","/** @license React v17.0.1\n * react.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n'use strict';var l=require(\"object-assign\"),n=60103,p=60106;exports.Fragment=60107;exports.StrictMode=60108;exports.Profiler=60114;var q=60109,r=60110,t=60112;exports.Suspense=60113;var u=60115,v=60116;\nif(\"function\"===typeof Symbol&&Symbol.for){var w=Symbol.for;n=w(\"react.element\");p=w(\"react.portal\");exports.Fragment=w(\"react.fragment\");exports.StrictMode=w(\"react.strict_mode\");exports.Profiler=w(\"react.profiler\");q=w(\"react.provider\");r=w(\"react.context\");t=w(\"react.forward_ref\");exports.Suspense=w(\"react.suspense\");u=w(\"react.memo\");v=w(\"react.lazy\")}var x=\"function\"===typeof Symbol&&Symbol.iterator;\nfunction y(a){if(null===a||\"object\"!==typeof a)return null;a=x&&a[x]||a[\"@@iterator\"];return\"function\"===typeof a?a:null}function z(a){for(var b=\"https://reactjs.org/docs/error-decoder.html?invariant=\"+a,c=1;c<arguments.length;c++)b+=\"&args[]=\"+encodeURIComponent(arguments[c]);return\"Minified React error #\"+a+\"; visit \"+b+\" for the full message or use the non-minified dev environment for full errors and additional helpful warnings.\"}\nvar A={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},B={};function C(a,b,c){this.props=a;this.context=b;this.refs=B;this.updater=c||A}C.prototype.isReactComponent={};C.prototype.setState=function(a,b){if(\"object\"!==typeof a&&\"function\"!==typeof a&&null!=a)throw Error(z(85));this.updater.enqueueSetState(this,a,b,\"setState\")};C.prototype.forceUpdate=function(a){this.updater.enqueueForceUpdate(this,a,\"forceUpdate\")};\nfunction D(){}D.prototype=C.prototype;function E(a,b,c){this.props=a;this.context=b;this.refs=B;this.updater=c||A}var F=E.prototype=new D;F.constructor=E;l(F,C.prototype);F.isPureReactComponent=!0;var G={current:null},H=Object.prototype.hasOwnProperty,I={key:!0,ref:!0,__self:!0,__source:!0};\nfunction J(a,b,c){var e,d={},k=null,h=null;if(null!=b)for(e in void 0!==b.ref&&(h=b.ref),void 0!==b.key&&(k=\"\"+b.key),b)H.call(b,e)&&!I.hasOwnProperty(e)&&(d[e]=b[e]);var g=arguments.length-2;if(1===g)d.children=c;else if(1<g){for(var f=Array(g),m=0;m<g;m++)f[m]=arguments[m+2];d.children=f}if(a&&a.defaultProps)for(e in g=a.defaultProps,g)void 0===d[e]&&(d[e]=g[e]);return{$$typeof:n,type:a,key:k,ref:h,props:d,_owner:G.current}}\nfunction K(a,b){return{$$typeof:n,type:a.type,key:b,ref:a.ref,props:a.props,_owner:a._owner}}function L(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===n}function escape(a){var b={\"=\":\"=0\",\":\":\"=2\"};return\"$\"+a.replace(/[=:]/g,function(a){return b[a]})}var M=/\\/+/g;function N(a,b){return\"object\"===typeof a&&null!==a&&null!=a.key?escape(\"\"+a.key):b.toString(36)}\nfunction O(a,b,c,e,d){var k=typeof a;if(\"undefined\"===k||\"boolean\"===k)a=null;var h=!1;if(null===a)h=!0;else switch(k){case \"string\":case \"number\":h=!0;break;case \"object\":switch(a.$$typeof){case n:case p:h=!0}}if(h)return h=a,d=d(h),a=\"\"===e?\".\"+N(h,0):e,Array.isArray(d)?(c=\"\",null!=a&&(c=a.replace(M,\"$&/\")+\"/\"),O(d,b,c,\"\",function(a){return a})):null!=d&&(L(d)&&(d=K(d,c+(!d.key||h&&h.key===d.key?\"\":(\"\"+d.key).replace(M,\"$&/\")+\"/\")+a)),b.push(d)),1;h=0;e=\"\"===e?\".\":e+\":\";if(Array.isArray(a))for(var g=\n0;g<a.length;g++){k=a[g];var f=e+N(k,g);h+=O(k,b,c,f,d)}else if(f=y(a),\"function\"===typeof f)for(a=f.call(a),g=0;!(k=a.next()).done;)k=k.value,f=e+N(k,g++),h+=O(k,b,c,f,d);else if(\"object\"===k)throw b=\"\"+a,Error(z(31,\"[object Object]\"===b?\"object with keys {\"+Object.keys(a).join(\", \")+\"}\":b));return h}function P(a,b,c){if(null==a)return a;var e=[],d=0;O(a,e,\"\",\"\",function(a){return b.call(c,a,d++)});return e}\nfunction Q(a){if(-1===a._status){var b=a._result;b=b();a._status=0;a._result=b;b.then(function(b){0===a._status&&(b=b.default,a._status=1,a._result=b)},function(b){0===a._status&&(a._status=2,a._result=b)})}if(1===a._status)return a._result;throw a._result;}var R={current:null};function S(){var a=R.current;if(null===a)throw Error(z(321));return a}var T={ReactCurrentDispatcher:R,ReactCurrentBatchConfig:{transition:0},ReactCurrentOwner:G,IsSomeRendererActing:{current:!1},assign:l};\nexports.Children={map:P,forEach:function(a,b,c){P(a,function(){b.apply(this,arguments)},c)},count:function(a){var b=0;P(a,function(){b++});return b},toArray:function(a){return P(a,function(a){return a})||[]},only:function(a){if(!L(a))throw Error(z(143));return a}};exports.Component=C;exports.PureComponent=E;exports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=T;\nexports.cloneElement=function(a,b,c){if(null===a||void 0===a)throw Error(z(267,a));var e=l({},a.props),d=a.key,k=a.ref,h=a._owner;if(null!=b){void 0!==b.ref&&(k=b.ref,h=G.current);void 0!==b.key&&(d=\"\"+b.key);if(a.type&&a.type.defaultProps)var g=a.type.defaultProps;for(f in b)H.call(b,f)&&!I.hasOwnProperty(f)&&(e[f]=void 0===b[f]&&void 0!==g?g[f]:b[f])}var f=arguments.length-2;if(1===f)e.children=c;else if(1<f){g=Array(f);for(var m=0;m<f;m++)g[m]=arguments[m+2];e.children=g}return{$$typeof:n,type:a.type,\nkey:d,ref:k,props:e,_owner:h}};exports.createContext=function(a,b){void 0===b&&(b=null);a={$$typeof:r,_calculateChangedBits:b,_currentValue:a,_currentValue2:a,_threadCount:0,Provider:null,Consumer:null};a.Provider={$$typeof:q,_context:a};return a.Consumer=a};exports.createElement=J;exports.createFactory=function(a){var b=J.bind(null,a);b.type=a;return b};exports.createRef=function(){return{current:null}};exports.forwardRef=function(a){return{$$typeof:t,render:a}};exports.isValidElement=L;\nexports.lazy=function(a){return{$$typeof:v,_payload:{_status:-1,_result:a},_init:Q}};exports.memo=function(a,b){return{$$typeof:u,type:a,compare:void 0===b?null:b}};exports.useCallback=function(a,b){return S().useCallback(a,b)};exports.useContext=function(a,b){return S().useContext(a,b)};exports.useDebugValue=function(){};exports.useEffect=function(a,b){return S().useEffect(a,b)};exports.useImperativeHandle=function(a,b,c){return S().useImperativeHandle(a,b,c)};\nexports.useLayoutEffect=function(a,b){return S().useLayoutEffect(a,b)};exports.useMemo=function(a,b){return S().useMemo(a,b)};exports.useReducer=function(a,b,c){return S().useReducer(a,b,c)};exports.useRef=function(a){return S().useRef(a)};exports.useState=function(a){return S().useState(a)};exports.version=\"17.0.1\";\n","/** @license React v17.0.1\n * react-dom.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n/*\n Modernizr 3.0.0pre (Custom Build) | MIT\n*/\n'use strict';var aa=require(\"react\"),m=require(\"object-assign\"),r=require(\"scheduler\");function y(a){for(var b=\"https://reactjs.org/docs/error-decoder.html?invariant=\"+a,c=1;c<arguments.length;c++)b+=\"&args[]=\"+encodeURIComponent(arguments[c]);return\"Minified React error #\"+a+\"; visit \"+b+\" for the full message or use the non-minified dev environment for full errors and additional helpful warnings.\"}if(!aa)throw Error(y(227));var ba=new Set,ca={};function da(a,b){ea(a,b);ea(a+\"Capture\",b)}\nfunction ea(a,b){ca[a]=b;for(a=0;a<b.length;a++)ba.add(b[a])}\nvar fa=!(\"undefined\"===typeof window||\"undefined\"===typeof window.document||\"undefined\"===typeof window.document.createElement),ha=/^[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$/,ia=Object.prototype.hasOwnProperty,\nja={},ka={};function la(a){if(ia.call(ka,a))return!0;if(ia.call(ja,a))return!1;if(ha.test(a))return ka[a]=!0;ja[a]=!0;return!1}function ma(a,b,c,d){if(null!==c&&0===c.type)return!1;switch(typeof b){case \"function\":case \"symbol\":return!0;case \"boolean\":if(d)return!1;if(null!==c)return!c.acceptsBooleans;a=a.toLowerCase().slice(0,5);return\"data-\"!==a&&\"aria-\"!==a;default:return!1}}\nfunction na(a,b,c,d){if(null===b||\"undefined\"===typeof b||ma(a,b,c,d))return!0;if(d)return!1;if(null!==c)switch(c.type){case 3:return!b;case 4:return!1===b;case 5:return isNaN(b);case 6:return isNaN(b)||1>b}return!1}function B(a,b,c,d,e,f,g){this.acceptsBooleans=2===b||3===b||4===b;this.attributeName=d;this.attributeNamespace=e;this.mustUseProperty=c;this.propertyName=a;this.type=b;this.sanitizeURL=f;this.removeEmptyString=g}var D={};\n\"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style\".split(\" \").forEach(function(a){D[a]=new B(a,0,!1,a,null,!1,!1)});[[\"acceptCharset\",\"accept-charset\"],[\"className\",\"class\"],[\"htmlFor\",\"for\"],[\"httpEquiv\",\"http-equiv\"]].forEach(function(a){var b=a[0];D[b]=new B(b,1,!1,a[1],null,!1,!1)});[\"contentEditable\",\"draggable\",\"spellCheck\",\"value\"].forEach(function(a){D[a]=new B(a,2,!1,a.toLowerCase(),null,!1,!1)});\n[\"autoReverse\",\"externalResourcesRequired\",\"focusable\",\"preserveAlpha\"].forEach(function(a){D[a]=new B(a,2,!1,a,null,!1,!1)});\"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture disableRemotePlayback formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope\".split(\" \").forEach(function(a){D[a]=new B(a,3,!1,a.toLowerCase(),null,!1,!1)});\n[\"checked\",\"multiple\",\"muted\",\"selected\"].forEach(function(a){D[a]=new B(a,3,!0,a,null,!1,!1)});[\"capture\",\"download\"].forEach(function(a){D[a]=new B(a,4,!1,a,null,!1,!1)});[\"cols\",\"rows\",\"size\",\"span\"].forEach(function(a){D[a]=new B(a,6,!1,a,null,!1,!1)});[\"rowSpan\",\"start\"].forEach(function(a){D[a]=new B(a,5,!1,a.toLowerCase(),null,!1,!1)});var oa=/[\\-:]([a-z])/g;function pa(a){return a[1].toUpperCase()}\n\"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height\".split(\" \").forEach(function(a){var b=a.replace(oa,\npa);D[b]=new B(b,1,!1,a,null,!1,!1)});\"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type\".split(\" \").forEach(function(a){var b=a.replace(oa,pa);D[b]=new B(b,1,!1,a,\"http://www.w3.org/1999/xlink\",!1,!1)});[\"xml:base\",\"xml:lang\",\"xml:space\"].forEach(function(a){var b=a.replace(oa,pa);D[b]=new B(b,1,!1,a,\"http://www.w3.org/XML/1998/namespace\",!1,!1)});[\"tabIndex\",\"crossOrigin\"].forEach(function(a){D[a]=new B(a,1,!1,a.toLowerCase(),null,!1,!1)});\nD.xlinkHref=new B(\"xlinkHref\",1,!1,\"xlink:href\",\"http://www.w3.org/1999/xlink\",!0,!1);[\"src\",\"href\",\"action\",\"formAction\"].forEach(function(a){D[a]=new B(a,1,!1,a.toLowerCase(),null,!0,!0)});\nfunction qa(a,b,c,d){var e=D.hasOwnProperty(b)?D[b]:null;var f=null!==e?0===e.type:d?!1:!(2<b.length)||\"o\"!==b[0]&&\"O\"!==b[0]||\"n\"!==b[1]&&\"N\"!==b[1]?!1:!0;f||(na(b,c,e,d)&&(c=null),d||null===e?la(b)&&(null===c?a.removeAttribute(b):a.setAttribute(b,\"\"+c)):e.mustUseProperty?a[e.propertyName]=null===c?3===e.type?!1:\"\":c:(b=e.attributeName,d=e.attributeNamespace,null===c?a.removeAttribute(b):(e=e.type,c=3===e||4===e&&!0===c?\"\":\"\"+c,d?a.setAttributeNS(d,b,c):a.setAttribute(b,c))))}\nvar ra=aa.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED,sa=60103,ta=60106,ua=60107,wa=60108,xa=60114,ya=60109,za=60110,Aa=60112,Ba=60113,Ca=60120,Da=60115,Ea=60116,Fa=60121,Ga=60128,Ha=60129,Ia=60130,Ja=60131;\nif(\"function\"===typeof Symbol&&Symbol.for){var E=Symbol.for;sa=E(\"react.element\");ta=E(\"react.portal\");ua=E(\"react.fragment\");wa=E(\"react.strict_mode\");xa=E(\"react.profiler\");ya=E(\"react.provider\");za=E(\"react.context\");Aa=E(\"react.forward_ref\");Ba=E(\"react.suspense\");Ca=E(\"react.suspense_list\");Da=E(\"react.memo\");Ea=E(\"react.lazy\");Fa=E(\"react.block\");E(\"react.scope\");Ga=E(\"react.opaque.id\");Ha=E(\"react.debug_trace_mode\");Ia=E(\"react.offscreen\");Ja=E(\"react.legacy_hidden\")}\nvar Ka=\"function\"===typeof Symbol&&Symbol.iterator;function La(a){if(null===a||\"object\"!==typeof a)return null;a=Ka&&a[Ka]||a[\"@@iterator\"];return\"function\"===typeof a?a:null}var Ma;function Na(a){if(void 0===Ma)try{throw Error();}catch(c){var b=c.stack.trim().match(/\\n( *(at )?)/);Ma=b&&b[1]||\"\"}return\"\\n\"+Ma+a}var Oa=!1;\nfunction Pa(a,b){if(!a||Oa)return\"\";Oa=!0;var c=Error.prepareStackTrace;Error.prepareStackTrace=void 0;try{if(b)if(b=function(){throw Error();},Object.defineProperty(b.prototype,\"props\",{set:function(){throw Error();}}),\"object\"===typeof Reflect&&Reflect.construct){try{Reflect.construct(b,[])}catch(k){var d=k}Reflect.construct(a,[],b)}else{try{b.call()}catch(k){d=k}a.call(b.prototype)}else{try{throw Error();}catch(k){d=k}a()}}catch(k){if(k&&d&&\"string\"===typeof k.stack){for(var e=k.stack.split(\"\\n\"),\nf=d.stack.split(\"\\n\"),g=e.length-1,h=f.length-1;1<=g&&0<=h&&e[g]!==f[h];)h--;for(;1<=g&&0<=h;g--,h--)if(e[g]!==f[h]){if(1!==g||1!==h){do if(g--,h--,0>h||e[g]!==f[h])return\"\\n\"+e[g].replace(\" at new \",\" at \");while(1<=g&&0<=h)}break}}}finally{Oa=!1,Error.prepareStackTrace=c}return(a=a?a.displayName||a.name:\"\")?Na(a):\"\"}\nfunction Qa(a){switch(a.tag){case 5:return Na(a.type);case 16:return Na(\"Lazy\");case 13:return Na(\"Suspense\");case 19:return Na(\"SuspenseList\");case 0:case 2:case 15:return a=Pa(a.type,!1),a;case 11:return a=Pa(a.type.render,!1),a;case 22:return a=Pa(a.type._render,!1),a;case 1:return a=Pa(a.type,!0),a;default:return\"\"}}\nfunction Ra(a){if(null==a)return null;if(\"function\"===typeof a)return a.displayName||a.name||null;if(\"string\"===typeof a)return a;switch(a){case ua:return\"Fragment\";case ta:return\"Portal\";case xa:return\"Profiler\";case wa:return\"StrictMode\";case Ba:return\"Suspense\";case Ca:return\"SuspenseList\"}if(\"object\"===typeof a)switch(a.$$typeof){case za:return(a.displayName||\"Context\")+\".Consumer\";case ya:return(a._context.displayName||\"Context\")+\".Provider\";case Aa:var b=a.render;b=b.displayName||b.name||\"\";\nreturn a.displayName||(\"\"!==b?\"ForwardRef(\"+b+\")\":\"ForwardRef\");case Da:return Ra(a.type);case Fa:return Ra(a._render);case Ea:b=a._payload;a=a._init;try{return Ra(a(b))}catch(c){}}return null}function Sa(a){switch(typeof a){case \"boolean\":case \"number\":case \"object\":case \"string\":case \"undefined\":return a;default:return\"\"}}function Ta(a){var b=a.type;return(a=a.nodeName)&&\"input\"===a.toLowerCase()&&(\"checkbox\"===b||\"radio\"===b)}\nfunction Ua(a){var b=Ta(a)?\"checked\":\"value\",c=Object.getOwnPropertyDescriptor(a.constructor.prototype,b),d=\"\"+a[b];if(!a.hasOwnProperty(b)&&\"undefined\"!==typeof c&&\"function\"===typeof c.get&&\"function\"===typeof c.set){var e=c.get,f=c.set;Object.defineProperty(a,b,{configurable:!0,get:function(){return e.call(this)},set:function(a){d=\"\"+a;f.call(this,a)}});Object.defineProperty(a,b,{enumerable:c.enumerable});return{getValue:function(){return d},setValue:function(a){d=\"\"+a},stopTracking:function(){a._valueTracker=\nnull;delete a[b]}}}}function Va(a){a._valueTracker||(a._valueTracker=Ua(a))}function Wa(a){if(!a)return!1;var b=a._valueTracker;if(!b)return!0;var c=b.getValue();var d=\"\";a&&(d=Ta(a)?a.checked?\"true\":\"false\":a.value);a=d;return a!==c?(b.setValue(a),!0):!1}function Xa(a){a=a||(\"undefined\"!==typeof document?document:void 0);if(\"undefined\"===typeof a)return null;try{return a.activeElement||a.body}catch(b){return a.body}}\nfunction Ya(a,b){var c=b.checked;return m({},b,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:null!=c?c:a._wrapperState.initialChecked})}function Za(a,b){var c=null==b.defaultValue?\"\":b.defaultValue,d=null!=b.checked?b.checked:b.defaultChecked;c=Sa(null!=b.value?b.value:c);a._wrapperState={initialChecked:d,initialValue:c,controlled:\"checkbox\"===b.type||\"radio\"===b.type?null!=b.checked:null!=b.value}}function $a(a,b){b=b.checked;null!=b&&qa(a,\"checked\",b,!1)}\nfunction ab(a,b){$a(a,b);var c=Sa(b.value),d=b.type;if(null!=c)if(\"number\"===d){if(0===c&&\"\"===a.value||a.value!=c)a.value=\"\"+c}else a.value!==\"\"+c&&(a.value=\"\"+c);else if(\"submit\"===d||\"reset\"===d){a.removeAttribute(\"value\");return}b.hasOwnProperty(\"value\")?bb(a,b.type,c):b.hasOwnProperty(\"defaultValue\")&&bb(a,b.type,Sa(b.defaultValue));null==b.checked&&null!=b.defaultChecked&&(a.defaultChecked=!!b.defaultChecked)}\nfunction cb(a,b,c){if(b.hasOwnProperty(\"value\")||b.hasOwnProperty(\"defaultValue\")){var d=b.type;if(!(\"submit\"!==d&&\"reset\"!==d||void 0!==b.value&&null!==b.value))return;b=\"\"+a._wrapperState.initialValue;c||b===a.value||(a.value=b);a.defaultValue=b}c=a.name;\"\"!==c&&(a.name=\"\");a.defaultChecked=!!a._wrapperState.initialChecked;\"\"!==c&&(a.name=c)}\nfunction bb(a,b,c){if(\"number\"!==b||Xa(a.ownerDocument)!==a)null==c?a.defaultValue=\"\"+a._wrapperState.initialValue:a.defaultValue!==\"\"+c&&(a.defaultValue=\"\"+c)}function db(a){var b=\"\";aa.Children.forEach(a,function(a){null!=a&&(b+=a)});return b}function eb(a,b){a=m({children:void 0},b);if(b=db(b.children))a.children=b;return a}\nfunction fb(a,b,c,d){a=a.options;if(b){b={};for(var e=0;e<c.length;e++)b[\"$\"+c[e]]=!0;for(c=0;c<a.length;c++)e=b.hasOwnProperty(\"$\"+a[c].value),a[c].selected!==e&&(a[c].selected=e),e&&d&&(a[c].defaultSelected=!0)}else{c=\"\"+Sa(c);b=null;for(e=0;e<a.length;e++){if(a[e].value===c){a[e].selected=!0;d&&(a[e].defaultSelected=!0);return}null!==b||a[e].disabled||(b=a[e])}null!==b&&(b.selected=!0)}}\nfunction gb(a,b){if(null!=b.dangerouslySetInnerHTML)throw Error(y(91));return m({},b,{value:void 0,defaultValue:void 0,children:\"\"+a._wrapperState.initialValue})}function hb(a,b){var c=b.value;if(null==c){c=b.children;b=b.defaultValue;if(null!=c){if(null!=b)throw Error(y(92));if(Array.isArray(c)){if(!(1>=c.length))throw Error(y(93));c=c[0]}b=c}null==b&&(b=\"\");c=b}a._wrapperState={initialValue:Sa(c)}}\nfunction ib(a,b){var c=Sa(b.value),d=Sa(b.defaultValue);null!=c&&(c=\"\"+c,c!==a.value&&(a.value=c),null==b.defaultValue&&a.defaultValue!==c&&(a.defaultValue=c));null!=d&&(a.defaultValue=\"\"+d)}function jb(a){var b=a.textContent;b===a._wrapperState.initialValue&&\"\"!==b&&null!==b&&(a.value=b)}var kb={html:\"http://www.w3.org/1999/xhtml\",mathml:\"http://www.w3.org/1998/Math/MathML\",svg:\"http://www.w3.org/2000/svg\"};\nfunction lb(a){switch(a){case \"svg\":return\"http://www.w3.org/2000/svg\";case \"math\":return\"http://www.w3.org/1998/Math/MathML\";default:return\"http://www.w3.org/1999/xhtml\"}}function mb(a,b){return null==a||\"http://www.w3.org/1999/xhtml\"===a?lb(b):\"http://www.w3.org/2000/svg\"===a&&\"foreignObject\"===b?\"http://www.w3.org/1999/xhtml\":a}\nvar nb,ob=function(a){return\"undefined\"!==typeof MSApp&&MSApp.execUnsafeLocalFunction?function(b,c,d,e){MSApp.execUnsafeLocalFunction(function(){return a(b,c,d,e)})}:a}(function(a,b){if(a.namespaceURI!==kb.svg||\"innerHTML\"in a)a.innerHTML=b;else{nb=nb||document.createElement(\"div\");nb.innerHTML=\"<svg>\"+b.valueOf().toString()+\"</svg>\";for(b=nb.firstChild;a.firstChild;)a.removeChild(a.firstChild);for(;b.firstChild;)a.appendChild(b.firstChild)}});\nfunction pb(a,b){if(b){var c=a.firstChild;if(c&&c===a.lastChild&&3===c.nodeType){c.nodeValue=b;return}}a.textContent=b}\nvar qb={animationIterationCount:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,\nfloodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},rb=[\"Webkit\",\"ms\",\"Moz\",\"O\"];Object.keys(qb).forEach(function(a){rb.forEach(function(b){b=b+a.charAt(0).toUpperCase()+a.substring(1);qb[b]=qb[a]})});function sb(a,b,c){return null==b||\"boolean\"===typeof b||\"\"===b?\"\":c||\"number\"!==typeof b||0===b||qb.hasOwnProperty(a)&&qb[a]?(\"\"+b).trim():b+\"px\"}\nfunction tb(a,b){a=a.style;for(var c in b)if(b.hasOwnProperty(c)){var d=0===c.indexOf(\"--\"),e=sb(c,b[c],d);\"float\"===c&&(c=\"cssFloat\");d?a.setProperty(c,e):a[c]=e}}var ub=m({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});\nfunction vb(a,b){if(b){if(ub[a]&&(null!=b.children||null!=b.dangerouslySetInnerHTML))throw Error(y(137,a));if(null!=b.dangerouslySetInnerHTML){if(null!=b.children)throw Error(y(60));if(!(\"object\"===typeof b.dangerouslySetInnerHTML&&\"__html\"in b.dangerouslySetInnerHTML))throw Error(y(61));}if(null!=b.style&&\"object\"!==typeof b.style)throw Error(y(62));}}\nfunction wb(a,b){if(-1===a.indexOf(\"-\"))return\"string\"===typeof b.is;switch(a){case \"annotation-xml\":case \"color-profile\":case \"font-face\":case \"font-face-src\":case \"font-face-uri\":case \"font-face-format\":case \"font-face-name\":case \"missing-glyph\":return!1;default:return!0}}function xb(a){a=a.target||a.srcElement||window;a.correspondingUseElement&&(a=a.correspondingUseElement);return 3===a.nodeType?a.parentNode:a}var yb=null,zb=null,Ab=null;\nfunction Bb(a){if(a=Cb(a)){if(\"function\"!==typeof yb)throw Error(y(280));var b=a.stateNode;b&&(b=Db(b),yb(a.stateNode,a.type,b))}}function Eb(a){zb?Ab?Ab.push(a):Ab=[a]:zb=a}function Fb(){if(zb){var a=zb,b=Ab;Ab=zb=null;Bb(a);if(b)for(a=0;a<b.length;a++)Bb(b[a])}}function Gb(a,b){return a(b)}function Hb(a,b,c,d,e){return a(b,c,d,e)}function Ib(){}var Jb=Gb,Kb=!1,Lb=!1;function Mb(){if(null!==zb||null!==Ab)Ib(),Fb()}\nfunction Nb(a,b,c){if(Lb)return a(b,c);Lb=!0;try{return Jb(a,b,c)}finally{Lb=!1,Mb()}}\nfunction Ob(a,b){var c=a.stateNode;if(null===c)return null;var d=Db(c);if(null===d)return null;c=d[b];a:switch(b){case \"onClick\":case \"onClickCapture\":case \"onDoubleClick\":case \"onDoubleClickCapture\":case \"onMouseDown\":case \"onMouseDownCapture\":case \"onMouseMove\":case \"onMouseMoveCapture\":case \"onMouseUp\":case \"onMouseUpCapture\":case \"onMouseEnter\":(d=!d.disabled)||(a=a.type,d=!(\"button\"===a||\"input\"===a||\"select\"===a||\"textarea\"===a));a=!d;break a;default:a=!1}if(a)return null;if(c&&\"function\"!==\ntypeof c)throw Error(y(231,b,typeof c));return c}var Pb=!1;if(fa)try{var Qb={};Object.defineProperty(Qb,\"passive\",{get:function(){Pb=!0}});window.addEventListener(\"test\",Qb,Qb);window.removeEventListener(\"test\",Qb,Qb)}catch(a){Pb=!1}function Rb(a,b,c,d,e,f,g,h,k){var l=Array.prototype.slice.call(arguments,3);try{b.apply(c,l)}catch(n){this.onError(n)}}var Sb=!1,Tb=null,Ub=!1,Vb=null,Wb={onError:function(a){Sb=!0;Tb=a}};function Xb(a,b,c,d,e,f,g,h,k){Sb=!1;Tb=null;Rb.apply(Wb,arguments)}\nfunction Yb(a,b,c,d,e,f,g,h,k){Xb.apply(this,arguments);if(Sb){if(Sb){var l=Tb;Sb=!1;Tb=null}else throw Error(y(198));Ub||(Ub=!0,Vb=l)}}function Zb(a){var b=a,c=a;if(a.alternate)for(;b.return;)b=b.return;else{a=b;do b=a,0!==(b.flags&1026)&&(c=b.return),a=b.return;while(a)}return 3===b.tag?c:null}function $b(a){if(13===a.tag){var b=a.memoizedState;null===b&&(a=a.alternate,null!==a&&(b=a.memoizedState));if(null!==b)return b.dehydrated}return null}function ac(a){if(Zb(a)!==a)throw Error(y(188));}\nfunction bc(a){var b=a.alternate;if(!b){b=Zb(a);if(null===b)throw Error(y(188));return b!==a?null:a}for(var c=a,d=b;;){var e=c.return;if(null===e)break;var f=e.alternate;if(null===f){d=e.return;if(null!==d){c=d;continue}break}if(e.child===f.child){for(f=e.child;f;){if(f===c)return ac(e),a;if(f===d)return ac(e),b;f=f.sibling}throw Error(y(188));}if(c.return!==d.return)c=e,d=f;else{for(var g=!1,h=e.child;h;){if(h===c){g=!0;c=e;d=f;break}if(h===d){g=!0;d=e;c=f;break}h=h.sibling}if(!g){for(h=f.child;h;){if(h===\nc){g=!0;c=f;d=e;break}if(h===d){g=!0;d=f;c=e;break}h=h.sibling}if(!g)throw Error(y(189));}}if(c.alternate!==d)throw Error(y(190));}if(3!==c.tag)throw Error(y(188));return c.stateNode.current===c?a:b}function cc(a){a=bc(a);if(!a)return null;for(var b=a;;){if(5===b.tag||6===b.tag)return b;if(b.child)b.child.return=b,b=b.child;else{if(b===a)break;for(;!b.sibling;){if(!b.return||b.return===a)return null;b=b.return}b.sibling.return=b.return;b=b.sibling}}return null}\nfunction dc(a,b){for(var c=a.alternate;null!==b;){if(b===a||b===c)return!0;b=b.return}return!1}var ec,fc,gc,hc,ic=!1,jc=[],kc=null,lc=null,mc=null,nc=new Map,oc=new Map,pc=[],qc=\"mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput copy cut paste click change contextmenu reset submit\".split(\" \");\nfunction rc(a,b,c,d,e){return{blockedOn:a,domEventName:b,eventSystemFlags:c|16,nativeEvent:e,targetContainers:[d]}}function sc(a,b){switch(a){case \"focusin\":case \"focusout\":kc=null;break;case \"dragenter\":case \"dragleave\":lc=null;break;case \"mouseover\":case \"mouseout\":mc=null;break;case \"pointerover\":case \"pointerout\":nc.delete(b.pointerId);break;case \"gotpointercapture\":case \"lostpointercapture\":oc.delete(b.pointerId)}}\nfunction tc(a,b,c,d,e,f){if(null===a||a.nativeEvent!==f)return a=rc(b,c,d,e,f),null!==b&&(b=Cb(b),null!==b&&fc(b)),a;a.eventSystemFlags|=d;b=a.targetContainers;null!==e&&-1===b.indexOf(e)&&b.push(e);return a}\nfunction uc(a,b,c,d,e){switch(b){case \"focusin\":return kc=tc(kc,a,b,c,d,e),!0;case \"dragenter\":return lc=tc(lc,a,b,c,d,e),!0;case \"mouseover\":return mc=tc(mc,a,b,c,d,e),!0;case \"pointerover\":var f=e.pointerId;nc.set(f,tc(nc.get(f)||null,a,b,c,d,e));return!0;case \"gotpointercapture\":return f=e.pointerId,oc.set(f,tc(oc.get(f)||null,a,b,c,d,e)),!0}return!1}\nfunction vc(a){var b=wc(a.target);if(null!==b){var c=Zb(b);if(null!==c)if(b=c.tag,13===b){if(b=$b(c),null!==b){a.blockedOn=b;hc(a.lanePriority,function(){r.unstable_runWithPriority(a.priority,function(){gc(c)})});return}}else if(3===b&&c.stateNode.hydrate){a.blockedOn=3===c.tag?c.stateNode.containerInfo:null;return}}a.blockedOn=null}\nfunction xc(a){if(null!==a.blockedOn)return!1;for(var b=a.targetContainers;0<b.length;){var c=yc(a.domEventName,a.eventSystemFlags,b[0],a.nativeEvent);if(null!==c)return b=Cb(c),null!==b&&fc(b),a.blockedOn=c,!1;b.shift()}return!0}function zc(a,b,c){xc(a)&&c.delete(b)}\nfunction Ac(){for(ic=!1;0<jc.length;){var a=jc[0];if(null!==a.blockedOn){a=Cb(a.blockedOn);null!==a&&ec(a);break}for(var b=a.targetContainers;0<b.length;){var c=yc(a.domEventName,a.eventSystemFlags,b[0],a.nativeEvent);if(null!==c){a.blockedOn=c;break}b.shift()}null===a.blockedOn&&jc.shift()}null!==kc&&xc(kc)&&(kc=null);null!==lc&&xc(lc)&&(lc=null);null!==mc&&xc(mc)&&(mc=null);nc.forEach(zc);oc.forEach(zc)}\nfunction Bc(a,b){a.blockedOn===b&&(a.blockedOn=null,ic||(ic=!0,r.unstable_scheduleCallback(r.unstable_NormalPriority,Ac)))}\nfunction Cc(a){function b(b){return Bc(b,a)}if(0<jc.length){Bc(jc[0],a);for(var c=1;c<jc.length;c++){var d=jc[c];d.blockedOn===a&&(d.blockedOn=null)}}null!==kc&&Bc(kc,a);null!==lc&&Bc(lc,a);null!==mc&&Bc(mc,a);nc.forEach(b);oc.forEach(b);for(c=0;c<pc.length;c++)d=pc[c],d.blockedOn===a&&(d.blockedOn=null);for(;0<pc.length&&(c=pc[0],null===c.blockedOn);)vc(c),null===c.blockedOn&&pc.shift()}\nfunction Dc(a,b){var c={};c[a.toLowerCase()]=b.toLowerCase();c[\"Webkit\"+a]=\"webkit\"+b;c[\"Moz\"+a]=\"moz\"+b;return c}var Ec={animationend:Dc(\"Animation\",\"AnimationEnd\"),animationiteration:Dc(\"Animation\",\"AnimationIteration\"),animationstart:Dc(\"Animation\",\"AnimationStart\"),transitionend:Dc(\"Transition\",\"TransitionEnd\")},Fc={},Gc={};\nfa&&(Gc=document.createElement(\"div\").style,\"AnimationEvent\"in window||(delete Ec.animationend.animation,delete Ec.animationiteration.animation,delete Ec.animationstart.animation),\"TransitionEvent\"in window||delete Ec.transitionend.transition);function Hc(a){if(Fc[a])return Fc[a];if(!Ec[a])return a;var b=Ec[a],c;for(c in b)if(b.hasOwnProperty(c)&&c in Gc)return Fc[a]=b[c];return a}\nvar Ic=Hc(\"animationend\"),Jc=Hc(\"animationiteration\"),Kc=Hc(\"animationstart\"),Lc=Hc(\"transitionend\"),Mc=new Map,Nc=new Map,Oc=[\"abort\",\"abort\",Ic,\"animationEnd\",Jc,\"animationIteration\",Kc,\"animationStart\",\"canplay\",\"canPlay\",\"canplaythrough\",\"canPlayThrough\",\"durationchange\",\"durationChange\",\"emptied\",\"emptied\",\"encrypted\",\"encrypted\",\"ended\",\"ended\",\"error\",\"error\",\"gotpointercapture\",\"gotPointerCapture\",\"load\",\"load\",\"loadeddata\",\"loadedData\",\"loadedmetadata\",\"loadedMetadata\",\"loadstart\",\"loadStart\",\n\"lostpointercapture\",\"lostPointerCapture\",\"playing\",\"playing\",\"progress\",\"progress\",\"seeking\",\"seeking\",\"stalled\",\"stalled\",\"suspend\",\"suspend\",\"timeupdate\",\"timeUpdate\",Lc,\"transitionEnd\",\"waiting\",\"waiting\"];function Pc(a,b){for(var c=0;c<a.length;c+=2){var d=a[c],e=a[c+1];e=\"on\"+(e[0].toUpperCase()+e.slice(1));Nc.set(d,b);Mc.set(d,e);da(e,[d])}}var Qc=r.unstable_now;Qc();var F=8;\nfunction Rc(a){if(0!==(1&a))return F=15,1;if(0!==(2&a))return F=14,2;if(0!==(4&a))return F=13,4;var b=24&a;if(0!==b)return F=12,b;if(0!==(a&32))return F=11,32;b=192&a;if(0!==b)return F=10,b;if(0!==(a&256))return F=9,256;b=3584&a;if(0!==b)return F=8,b;if(0!==(a&4096))return F=7,4096;b=4186112&a;if(0!==b)return F=6,b;b=62914560&a;if(0!==b)return F=5,b;if(a&67108864)return F=4,67108864;if(0!==(a&134217728))return F=3,134217728;b=805306368&a;if(0!==b)return F=2,b;if(0!==(1073741824&a))return F=1,1073741824;\nF=8;return a}function Sc(a){switch(a){case 99:return 15;case 98:return 10;case 97:case 96:return 8;case 95:return 2;default:return 0}}function Tc(a){switch(a){case 15:case 14:return 99;case 13:case 12:case 11:case 10:return 98;case 9:case 8:case 7:case 6:case 4:case 5:return 97;case 3:case 2:case 1:return 95;case 0:return 90;default:throw Error(y(358,a));}}\nfunction Uc(a,b){var c=a.pendingLanes;if(0===c)return F=0;var d=0,e=0,f=a.expiredLanes,g=a.suspendedLanes,h=a.pingedLanes;if(0!==f)d=f,e=F=15;else if(f=c&134217727,0!==f){var k=f&~g;0!==k?(d=Rc(k),e=F):(h&=f,0!==h&&(d=Rc(h),e=F))}else f=c&~g,0!==f?(d=Rc(f),e=F):0!==h&&(d=Rc(h),e=F);if(0===d)return 0;d=31-Vc(d);d=c&((0>d?0:1<<d)<<1)-1;if(0!==b&&b!==d&&0===(b&g)){Rc(b);if(e<=F)return b;F=e}b=a.entangledLanes;if(0!==b)for(a=a.entanglements,b&=d;0<b;)c=31-Vc(b),e=1<<c,d|=a[c],b&=~e;return d}\nfunction Wc(a){a=a.pendingLanes&-1073741825;return 0!==a?a:a&1073741824?1073741824:0}function Xc(a,b){switch(a){case 15:return 1;case 14:return 2;case 12:return a=Yc(24&~b),0===a?Xc(10,b):a;case 10:return a=Yc(192&~b),0===a?Xc(8,b):a;case 8:return a=Yc(3584&~b),0===a&&(a=Yc(4186112&~b),0===a&&(a=512)),a;case 2:return b=Yc(805306368&~b),0===b&&(b=268435456),b}throw Error(y(358,a));}function Yc(a){return a&-a}function Zc(a){for(var b=[],c=0;31>c;c++)b.push(a);return b}\nfunction $c(a,b,c){a.pendingLanes|=b;var d=b-1;a.suspendedLanes&=d;a.pingedLanes&=d;a=a.eventTimes;b=31-Vc(b);a[b]=c}var Vc=Math.clz32?Math.clz32:ad,bd=Math.log,cd=Math.LN2;function ad(a){return 0===a?32:31-(bd(a)/cd|0)|0}var dd=r.unstable_UserBlockingPriority,ed=r.unstable_runWithPriority,fd=!0;function gd(a,b,c,d){Kb||Ib();var e=hd,f=Kb;Kb=!0;try{Hb(e,a,b,c,d)}finally{(Kb=f)||Mb()}}function id(a,b,c,d){ed(dd,hd.bind(null,a,b,c,d))}\nfunction hd(a,b,c,d){if(fd){var e;if((e=0===(b&4))&&0<jc.length&&-1<qc.indexOf(a))a=rc(null,a,b,c,d),jc.push(a);else{var f=yc(a,b,c,d);if(null===f)e&&sc(a,d);else{if(e){if(-1<qc.indexOf(a)){a=rc(f,a,b,c,d);jc.push(a);return}if(uc(f,a,b,c,d))return;sc(a,d)}jd(a,b,d,null,c)}}}}\nfunction yc(a,b,c,d){var e=xb(d);e=wc(e);if(null!==e){var f=Zb(e);if(null===f)e=null;else{var g=f.tag;if(13===g){e=$b(f);if(null!==e)return e;e=null}else if(3===g){if(f.stateNode.hydrate)return 3===f.tag?f.stateNode.containerInfo:null;e=null}else f!==e&&(e=null)}}jd(a,b,d,e,c);return null}var kd=null,ld=null,md=null;\nfunction nd(){if(md)return md;var a,b=ld,c=b.length,d,e=\"value\"in kd?kd.value:kd.textContent,f=e.length;for(a=0;a<c&&b[a]===e[a];a++);var g=c-a;for(d=1;d<=g&&b[c-d]===e[f-d];d++);return md=e.slice(a,1<d?1-d:void 0)}function od(a){var b=a.keyCode;\"charCode\"in a?(a=a.charCode,0===a&&13===b&&(a=13)):a=b;10===a&&(a=13);return 32<=a||13===a?a:0}function pd(){return!0}function qd(){return!1}\nfunction rd(a){function b(b,d,e,f,g){this._reactName=b;this._targetInst=e;this.type=d;this.nativeEvent=f;this.target=g;this.currentTarget=null;for(var c in a)a.hasOwnProperty(c)&&(b=a[c],this[c]=b?b(f):f[c]);this.isDefaultPrevented=(null!=f.defaultPrevented?f.defaultPrevented:!1===f.returnValue)?pd:qd;this.isPropagationStopped=qd;return this}m(b.prototype,{preventDefault:function(){this.defaultPrevented=!0;var a=this.nativeEvent;a&&(a.preventDefault?a.preventDefault():\"unknown\"!==typeof a.returnValue&&\n(a.returnValue=!1),this.isDefaultPrevented=pd)},stopPropagation:function(){var a=this.nativeEvent;a&&(a.stopPropagation?a.stopPropagation():\"unknown\"!==typeof a.cancelBubble&&(a.cancelBubble=!0),this.isPropagationStopped=pd)},persist:function(){},isPersistent:pd});return b}\nvar sd={eventPhase:0,bubbles:0,cancelable:0,timeStamp:function(a){return a.timeStamp||Date.now()},defaultPrevented:0,isTrusted:0},td=rd(sd),ud=m({},sd,{view:0,detail:0}),vd=rd(ud),wd,xd,yd,Ad=m({},ud,{screenX:0,screenY:0,clientX:0,clientY:0,pageX:0,pageY:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,getModifierState:zd,button:0,buttons:0,relatedTarget:function(a){return void 0===a.relatedTarget?a.fromElement===a.srcElement?a.toElement:a.fromElement:a.relatedTarget},movementX:function(a){if(\"movementX\"in\na)return a.movementX;a!==yd&&(yd&&\"mousemove\"===a.type?(wd=a.screenX-yd.screenX,xd=a.screenY-yd.screenY):xd=wd=0,yd=a);return wd},movementY:function(a){return\"movementY\"in a?a.movementY:xd}}),Bd=rd(Ad),Cd=m({},Ad,{dataTransfer:0}),Dd=rd(Cd),Ed=m({},ud,{relatedTarget:0}),Fd=rd(Ed),Gd=m({},sd,{animationName:0,elapsedTime:0,pseudoElement:0}),Hd=rd(Gd),Id=m({},sd,{clipboardData:function(a){return\"clipboardData\"in a?a.clipboardData:window.clipboardData}}),Jd=rd(Id),Kd=m({},sd,{data:0}),Ld=rd(Kd),Md={Esc:\"Escape\",\nSpacebar:\" \",Left:\"ArrowLeft\",Up:\"ArrowUp\",Right:\"ArrowRight\",Down:\"ArrowDown\",Del:\"Delete\",Win:\"OS\",Menu:\"ContextMenu\",Apps:\"ContextMenu\",Scroll:\"ScrollLock\",MozPrintableKey:\"Unidentified\"},Nd={8:\"Backspace\",9:\"Tab\",12:\"Clear\",13:\"Enter\",16:\"Shift\",17:\"Control\",18:\"Alt\",19:\"Pause\",20:\"CapsLock\",27:\"Escape\",32:\" \",33:\"PageUp\",34:\"PageDown\",35:\"End\",36:\"Home\",37:\"ArrowLeft\",38:\"ArrowUp\",39:\"ArrowRight\",40:\"ArrowDown\",45:\"Insert\",46:\"Delete\",112:\"F1\",113:\"F2\",114:\"F3\",115:\"F4\",116:\"F5\",117:\"F6\",118:\"F7\",\n119:\"F8\",120:\"F9\",121:\"F10\",122:\"F11\",123:\"F12\",144:\"NumLock\",145:\"ScrollLock\",224:\"Meta\"},Od={Alt:\"altKey\",Control:\"ctrlKey\",Meta:\"metaKey\",Shift:\"shiftKey\"};function Pd(a){var b=this.nativeEvent;return b.getModifierState?b.getModifierState(a):(a=Od[a])?!!b[a]:!1}function zd(){return Pd}\nvar Qd=m({},ud,{key:function(a){if(a.key){var b=Md[a.key]||a.key;if(\"Unidentified\"!==b)return b}return\"keypress\"===a.type?(a=od(a),13===a?\"Enter\":String.fromCharCode(a)):\"keydown\"===a.type||\"keyup\"===a.type?Nd[a.keyCode]||\"Unidentified\":\"\"},code:0,location:0,ctrlKey:0,shiftKey:0,altKey:0,metaKey:0,repeat:0,locale:0,getModifierState:zd,charCode:function(a){return\"keypress\"===a.type?od(a):0},keyCode:function(a){return\"keydown\"===a.type||\"keyup\"===a.type?a.keyCode:0},which:function(a){return\"keypress\"===\na.type?od(a):\"keydown\"===a.type||\"keyup\"===a.type?a.keyCode:0}}),Rd=rd(Qd),Sd=m({},Ad,{pointerId:0,width:0,height:0,pressure:0,tangentialPressure:0,tiltX:0,tiltY:0,twist:0,pointerType:0,isPrimary:0}),Td=rd(Sd),Ud=m({},ud,{touches:0,targetTouches:0,changedTouches:0,altKey:0,metaKey:0,ctrlKey:0,shiftKey:0,getModifierState:zd}),Vd=rd(Ud),Wd=m({},sd,{propertyName:0,elapsedTime:0,pseudoElement:0}),Xd=rd(Wd),Yd=m({},Ad,{deltaX:function(a){return\"deltaX\"in a?a.deltaX:\"wheelDeltaX\"in a?-a.wheelDeltaX:0},\ndeltaY:function(a){return\"deltaY\"in a?a.deltaY:\"wheelDeltaY\"in a?-a.wheelDeltaY:\"wheelDelta\"in a?-a.wheelDelta:0},deltaZ:0,deltaMode:0}),Zd=rd(Yd),$d=[9,13,27,32],ae=fa&&\"CompositionEvent\"in window,be=null;fa&&\"documentMode\"in document&&(be=document.documentMode);var ce=fa&&\"TextEvent\"in window&&!be,de=fa&&(!ae||be&&8<be&&11>=be),ee=String.fromCharCode(32),fe=!1;\nfunction ge(a,b){switch(a){case \"keyup\":return-1!==$d.indexOf(b.keyCode);case \"keydown\":return 229!==b.keyCode;case \"keypress\":case \"mousedown\":case \"focusout\":return!0;default:return!1}}function he(a){a=a.detail;return\"object\"===typeof a&&\"data\"in a?a.data:null}var ie=!1;function je(a,b){switch(a){case \"compositionend\":return he(b);case \"keypress\":if(32!==b.which)return null;fe=!0;return ee;case \"textInput\":return a=b.data,a===ee&&fe?null:a;default:return null}}\nfunction ke(a,b){if(ie)return\"compositionend\"===a||!ae&&ge(a,b)?(a=nd(),md=ld=kd=null,ie=!1,a):null;switch(a){case \"paste\":return null;case \"keypress\":if(!(b.ctrlKey||b.altKey||b.metaKey)||b.ctrlKey&&b.altKey){if(b.char&&1<b.char.length)return b.char;if(b.which)return String.fromCharCode(b.which)}return null;case \"compositionend\":return de&&\"ko\"!==b.locale?null:b.data;default:return null}}\nvar le={color:!0,date:!0,datetime:!0,\"datetime-local\":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function me(a){var b=a&&a.nodeName&&a.nodeName.toLowerCase();return\"input\"===b?!!le[a.type]:\"textarea\"===b?!0:!1}function ne(a,b,c,d){Eb(d);b=oe(b,\"onChange\");0<b.length&&(c=new td(\"onChange\",\"change\",null,c,d),a.push({event:c,listeners:b}))}var pe=null,qe=null;function re(a){se(a,0)}function te(a){var b=ue(a);if(Wa(b))return a}\nfunction ve(a,b){if(\"change\"===a)return b}var we=!1;if(fa){var xe;if(fa){var ye=\"oninput\"in document;if(!ye){var ze=document.createElement(\"div\");ze.setAttribute(\"oninput\",\"return;\");ye=\"function\"===typeof ze.oninput}xe=ye}else xe=!1;we=xe&&(!document.documentMode||9<document.documentMode)}function Ae(){pe&&(pe.detachEvent(\"onpropertychange\",Be),qe=pe=null)}function Be(a){if(\"value\"===a.propertyName&&te(qe)){var b=[];ne(b,qe,a,xb(a));a=re;if(Kb)a(b);else{Kb=!0;try{Gb(a,b)}finally{Kb=!1,Mb()}}}}\nfunction Ce(a,b,c){\"focusin\"===a?(Ae(),pe=b,qe=c,pe.attachEvent(\"onpropertychange\",Be)):\"focusout\"===a&&Ae()}function De(a){if(\"selectionchange\"===a||\"keyup\"===a||\"keydown\"===a)return te(qe)}function Ee(a,b){if(\"click\"===a)return te(b)}function Fe(a,b){if(\"input\"===a||\"change\"===a)return te(b)}function Ge(a,b){return a===b&&(0!==a||1/a===1/b)||a!==a&&b!==b}var He=\"function\"===typeof Object.is?Object.is:Ge,Ie=Object.prototype.hasOwnProperty;\nfunction Je(a,b){if(He(a,b))return!0;if(\"object\"!==typeof a||null===a||\"object\"!==typeof b||null===b)return!1;var c=Object.keys(a),d=Object.keys(b);if(c.length!==d.length)return!1;for(d=0;d<c.length;d++)if(!Ie.call(b,c[d])||!He(a[c[d]],b[c[d]]))return!1;return!0}function Ke(a){for(;a&&a.firstChild;)a=a.firstChild;return a}\nfunction Le(a,b){var c=Ke(a);a=0;for(var d;c;){if(3===c.nodeType){d=a+c.textContent.length;if(a<=b&&d>=b)return{node:c,offset:b-a};a=d}a:{for(;c;){if(c.nextSibling){c=c.nextSibling;break a}c=c.parentNode}c=void 0}c=Ke(c)}}function Me(a,b){return a&&b?a===b?!0:a&&3===a.nodeType?!1:b&&3===b.nodeType?Me(a,b.parentNode):\"contains\"in a?a.contains(b):a.compareDocumentPosition?!!(a.compareDocumentPosition(b)&16):!1:!1}\nfunction Ne(){for(var a=window,b=Xa();b instanceof a.HTMLIFrameElement;){try{var c=\"string\"===typeof b.contentWindow.location.href}catch(d){c=!1}if(c)a=b.contentWindow;else break;b=Xa(a.document)}return b}function Oe(a){var b=a&&a.nodeName&&a.nodeName.toLowerCase();return b&&(\"input\"===b&&(\"text\"===a.type||\"search\"===a.type||\"tel\"===a.type||\"url\"===a.type||\"password\"===a.type)||\"textarea\"===b||\"true\"===a.contentEditable)}\nvar Pe=fa&&\"documentMode\"in document&&11>=document.documentMode,Qe=null,Re=null,Se=null,Te=!1;\nfunction Ue(a,b,c){var d=c.window===c?c.document:9===c.nodeType?c:c.ownerDocument;Te||null==Qe||Qe!==Xa(d)||(d=Qe,\"selectionStart\"in d&&Oe(d)?d={start:d.selectionStart,end:d.selectionEnd}:(d=(d.ownerDocument&&d.ownerDocument.defaultView||window).getSelection(),d={anchorNode:d.anchorNode,anchorOffset:d.anchorOffset,focusNode:d.focusNode,focusOffset:d.focusOffset}),Se&&Je(Se,d)||(Se=d,d=oe(Re,\"onSelect\"),0<d.length&&(b=new td(\"onSelect\",\"select\",null,b,c),a.push({event:b,listeners:d}),b.target=Qe)))}\nPc(\"cancel cancel click click close close contextmenu contextMenu copy copy cut cut auxclick auxClick dblclick doubleClick dragend dragEnd dragstart dragStart drop drop focusin focus focusout blur input input invalid invalid keydown keyDown keypress keyPress keyup keyUp mousedown mouseDown mouseup mouseUp paste paste pause pause play play pointercancel pointerCancel pointerdown pointerDown pointerup pointerUp ratechange rateChange reset reset seeked seeked submit submit touchcancel touchCancel touchend touchEnd touchstart touchStart volumechange volumeChange\".split(\" \"),\n0);Pc(\"drag drag dragenter dragEnter dragexit dragExit dragleave dragLeave dragover dragOver mousemove mouseMove mouseout mouseOut mouseover mouseOver pointermove pointerMove pointerout pointerOut pointerover pointerOver scroll scroll toggle toggle touchmove touchMove wheel wheel\".split(\" \"),1);Pc(Oc,2);for(var Ve=\"change selectionchange textInput compositionstart compositionend compositionupdate\".split(\" \"),We=0;We<Ve.length;We++)Nc.set(Ve[We],0);ea(\"onMouseEnter\",[\"mouseout\",\"mouseover\"]);\nea(\"onMouseLeave\",[\"mouseout\",\"mouseover\"]);ea(\"onPointerEnter\",[\"pointerout\",\"pointerover\"]);ea(\"onPointerLeave\",[\"pointerout\",\"pointerover\"]);da(\"onChange\",\"change click focusin focusout input keydown keyup selectionchange\".split(\" \"));da(\"onSelect\",\"focusout contextmenu dragend focusin keydown keyup mousedown mouseup selectionchange\".split(\" \"));da(\"onBeforeInput\",[\"compositionend\",\"keypress\",\"textInput\",\"paste\"]);da(\"onCompositionEnd\",\"compositionend focusout keydown keypress keyup mousedown\".split(\" \"));\nda(\"onCompositionStart\",\"compositionstart focusout keydown keypress keyup mousedown\".split(\" \"));da(\"onCompositionUpdate\",\"compositionupdate focusout keydown keypress keyup mousedown\".split(\" \"));var Xe=\"abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange seeked seeking stalled suspend timeupdate volumechange waiting\".split(\" \"),Ye=new Set(\"cancel close invalid load scroll toggle\".split(\" \").concat(Xe));\nfunction Ze(a,b,c){var d=a.type||\"unknown-event\";a.currentTarget=c;Yb(d,b,void 0,a);a.currentTarget=null}\nfunction se(a,b){b=0!==(b&4);for(var c=0;c<a.length;c++){var d=a[c],e=d.event;d=d.listeners;a:{var f=void 0;if(b)for(var g=d.length-1;0<=g;g--){var h=d[g],k=h.instance,l=h.currentTarget;h=h.listener;if(k!==f&&e.isPropagationStopped())break a;Ze(e,h,l);f=k}else for(g=0;g<d.length;g++){h=d[g];k=h.instance;l=h.currentTarget;h=h.listener;if(k!==f&&e.isPropagationStopped())break a;Ze(e,h,l);f=k}}}if(Ub)throw a=Vb,Ub=!1,Vb=null,a;}\nfunction G(a,b){var c=$e(b),d=a+\"__bubble\";c.has(d)||(af(b,a,2,!1),c.add(d))}var bf=\"_reactListening\"+Math.random().toString(36).slice(2);function cf(a){a[bf]||(a[bf]=!0,ba.forEach(function(b){Ye.has(b)||df(b,!1,a,null);df(b,!0,a,null)}))}\nfunction df(a,b,c,d){var e=4<arguments.length&&void 0!==arguments[4]?arguments[4]:0,f=c;\"selectionchange\"===a&&9!==c.nodeType&&(f=c.ownerDocument);if(null!==d&&!b&&Ye.has(a)){if(\"scroll\"!==a)return;e|=2;f=d}var g=$e(f),h=a+\"__\"+(b?\"capture\":\"bubble\");g.has(h)||(b&&(e|=4),af(f,a,e,b),g.add(h))}\nfunction af(a,b,c,d){var e=Nc.get(b);switch(void 0===e?2:e){case 0:e=gd;break;case 1:e=id;break;default:e=hd}c=e.bind(null,b,c,a);e=void 0;!Pb||\"touchstart\"!==b&&\"touchmove\"!==b&&\"wheel\"!==b||(e=!0);d?void 0!==e?a.addEventListener(b,c,{capture:!0,passive:e}):a.addEventListener(b,c,!0):void 0!==e?a.addEventListener(b,c,{passive:e}):a.addEventListener(b,c,!1)}\nfunction jd(a,b,c,d,e){var f=d;if(0===(b&1)&&0===(b&2)&&null!==d)a:for(;;){if(null===d)return;var g=d.tag;if(3===g||4===g){var h=d.stateNode.containerInfo;if(h===e||8===h.nodeType&&h.parentNode===e)break;if(4===g)for(g=d.return;null!==g;){var k=g.tag;if(3===k||4===k)if(k=g.stateNode.containerInfo,k===e||8===k.nodeType&&k.parentNode===e)return;g=g.return}for(;null!==h;){g=wc(h);if(null===g)return;k=g.tag;if(5===k||6===k){d=f=g;continue a}h=h.parentNode}}d=d.return}Nb(function(){var d=f,e=xb(c),g=[];\na:{var h=Mc.get(a);if(void 0!==h){var k=td,x=a;switch(a){case \"keypress\":if(0===od(c))break a;case \"keydown\":case \"keyup\":k=Rd;break;case \"focusin\":x=\"focus\";k=Fd;break;case \"focusout\":x=\"blur\";k=Fd;break;case \"beforeblur\":case \"afterblur\":k=Fd;break;case \"click\":if(2===c.button)break a;case \"auxclick\":case \"dblclick\":case \"mousedown\":case \"mousemove\":case \"mouseup\":case \"mouseout\":case \"mouseover\":case \"contextmenu\":k=Bd;break;case \"drag\":case \"dragend\":case \"dragenter\":case \"dragexit\":case \"dragleave\":case \"dragover\":case \"dragstart\":case \"drop\":k=\nDd;break;case \"touchcancel\":case \"touchend\":case \"touchmove\":case \"touchstart\":k=Vd;break;case Ic:case Jc:case Kc:k=Hd;break;case Lc:k=Xd;break;case \"scroll\":k=vd;break;case \"wheel\":k=Zd;break;case \"copy\":case \"cut\":case \"paste\":k=Jd;break;case \"gotpointercapture\":case \"lostpointercapture\":case \"pointercancel\":case \"pointerdown\":case \"pointermove\":case \"pointerout\":case \"pointerover\":case \"pointerup\":k=Td}var w=0!==(b&4),z=!w&&\"scroll\"===a,u=w?null!==h?h+\"Capture\":null:h;w=[];for(var t=d,q;null!==\nt;){q=t;var v=q.stateNode;5===q.tag&&null!==v&&(q=v,null!==u&&(v=Ob(t,u),null!=v&&w.push(ef(t,v,q))));if(z)break;t=t.return}0<w.length&&(h=new k(h,x,null,c,e),g.push({event:h,listeners:w}))}}if(0===(b&7)){a:{h=\"mouseover\"===a||\"pointerover\"===a;k=\"mouseout\"===a||\"pointerout\"===a;if(h&&0===(b&16)&&(x=c.relatedTarget||c.fromElement)&&(wc(x)||x[ff]))break a;if(k||h){h=e.window===e?e:(h=e.ownerDocument)?h.defaultView||h.parentWindow:window;if(k){if(x=c.relatedTarget||c.toElement,k=d,x=x?wc(x):null,null!==\nx&&(z=Zb(x),x!==z||5!==x.tag&&6!==x.tag))x=null}else k=null,x=d;if(k!==x){w=Bd;v=\"onMouseLeave\";u=\"onMouseEnter\";t=\"mouse\";if(\"pointerout\"===a||\"pointerover\"===a)w=Td,v=\"onPointerLeave\",u=\"onPointerEnter\",t=\"pointer\";z=null==k?h:ue(k);q=null==x?h:ue(x);h=new w(v,t+\"leave\",k,c,e);h.target=z;h.relatedTarget=q;v=null;wc(e)===d&&(w=new w(u,t+\"enter\",x,c,e),w.target=q,w.relatedTarget=z,v=w);z=v;if(k&&x)b:{w=k;u=x;t=0;for(q=w;q;q=gf(q))t++;q=0;for(v=u;v;v=gf(v))q++;for(;0<t-q;)w=gf(w),t--;for(;0<q-t;)u=\ngf(u),q--;for(;t--;){if(w===u||null!==u&&w===u.alternate)break b;w=gf(w);u=gf(u)}w=null}else w=null;null!==k&&hf(g,h,k,w,!1);null!==x&&null!==z&&hf(g,z,x,w,!0)}}}a:{h=d?ue(d):window;k=h.nodeName&&h.nodeName.toLowerCase();if(\"select\"===k||\"input\"===k&&\"file\"===h.type)var J=ve;else if(me(h))if(we)J=Fe;else{J=De;var K=Ce}else(k=h.nodeName)&&\"input\"===k.toLowerCase()&&(\"checkbox\"===h.type||\"radio\"===h.type)&&(J=Ee);if(J&&(J=J(a,d))){ne(g,J,c,e);break a}K&&K(a,h,d);\"focusout\"===a&&(K=h._wrapperState)&&\nK.controlled&&\"number\"===h.type&&bb(h,\"number\",h.value)}K=d?ue(d):window;switch(a){case \"focusin\":if(me(K)||\"true\"===K.contentEditable)Qe=K,Re=d,Se=null;break;case \"focusout\":Se=Re=Qe=null;break;case \"mousedown\":Te=!0;break;case \"contextmenu\":case \"mouseup\":case \"dragend\":Te=!1;Ue(g,c,e);break;case \"selectionchange\":if(Pe)break;case \"keydown\":case \"keyup\":Ue(g,c,e)}var Q;if(ae)b:{switch(a){case \"compositionstart\":var L=\"onCompositionStart\";break b;case \"compositionend\":L=\"onCompositionEnd\";break b;\ncase \"compositionupdate\":L=\"onCompositionUpdate\";break b}L=void 0}else ie?ge(a,c)&&(L=\"onCompositionEnd\"):\"keydown\"===a&&229===c.keyCode&&(L=\"onCompositionStart\");L&&(de&&\"ko\"!==c.locale&&(ie||\"onCompositionStart\"!==L?\"onCompositionEnd\"===L&&ie&&(Q=nd()):(kd=e,ld=\"value\"in kd?kd.value:kd.textContent,ie=!0)),K=oe(d,L),0<K.length&&(L=new Ld(L,a,null,c,e),g.push({event:L,listeners:K}),Q?L.data=Q:(Q=he(c),null!==Q&&(L.data=Q))));if(Q=ce?je(a,c):ke(a,c))d=oe(d,\"onBeforeInput\"),0<d.length&&(e=new Ld(\"onBeforeInput\",\n\"beforeinput\",null,c,e),g.push({event:e,listeners:d}),e.data=Q)}se(g,b)})}function ef(a,b,c){return{instance:a,listener:b,currentTarget:c}}function oe(a,b){for(var c=b+\"Capture\",d=[];null!==a;){var e=a,f=e.stateNode;5===e.tag&&null!==f&&(e=f,f=Ob(a,c),null!=f&&d.unshift(ef(a,f,e)),f=Ob(a,b),null!=f&&d.push(ef(a,f,e)));a=a.return}return d}function gf(a){if(null===a)return null;do a=a.return;while(a&&5!==a.tag);return a?a:null}\nfunction hf(a,b,c,d,e){for(var f=b._reactName,g=[];null!==c&&c!==d;){var h=c,k=h.alternate,l=h.stateNode;if(null!==k&&k===d)break;5===h.tag&&null!==l&&(h=l,e?(k=Ob(c,f),null!=k&&g.unshift(ef(c,k,h))):e||(k=Ob(c,f),null!=k&&g.push(ef(c,k,h))));c=c.return}0!==g.length&&a.push({event:b,listeners:g})}function jf(){}var kf=null,lf=null;function mf(a,b){switch(a){case \"button\":case \"input\":case \"select\":case \"textarea\":return!!b.autoFocus}return!1}\nfunction nf(a,b){return\"textarea\"===a||\"option\"===a||\"noscript\"===a||\"string\"===typeof b.children||\"number\"===typeof b.children||\"object\"===typeof b.dangerouslySetInnerHTML&&null!==b.dangerouslySetInnerHTML&&null!=b.dangerouslySetInnerHTML.__html}var of=\"function\"===typeof setTimeout?setTimeout:void 0,pf=\"function\"===typeof clearTimeout?clearTimeout:void 0;function qf(a){1===a.nodeType?a.textContent=\"\":9===a.nodeType&&(a=a.body,null!=a&&(a.textContent=\"\"))}\nfunction rf(a){for(;null!=a;a=a.nextSibling){var b=a.nodeType;if(1===b||3===b)break}return a}function sf(a){a=a.previousSibling;for(var b=0;a;){if(8===a.nodeType){var c=a.data;if(\"$\"===c||\"$!\"===c||\"$?\"===c){if(0===b)return a;b--}else\"/$\"===c&&b++}a=a.previousSibling}return null}var tf=0;function uf(a){return{$$typeof:Ga,toString:a,valueOf:a}}var vf=Math.random().toString(36).slice(2),wf=\"__reactFiber$\"+vf,xf=\"__reactProps$\"+vf,ff=\"__reactContainer$\"+vf,yf=\"__reactEvents$\"+vf;\nfunction wc(a){var b=a[wf];if(b)return b;for(var c=a.parentNode;c;){if(b=c[ff]||c[wf]){c=b.alternate;if(null!==b.child||null!==c&&null!==c.child)for(a=sf(a);null!==a;){if(c=a[wf])return c;a=sf(a)}return b}a=c;c=a.parentNode}return null}function Cb(a){a=a[wf]||a[ff];return!a||5!==a.tag&&6!==a.tag&&13!==a.tag&&3!==a.tag?null:a}function ue(a){if(5===a.tag||6===a.tag)return a.stateNode;throw Error(y(33));}function Db(a){return a[xf]||null}\nfunction $e(a){var b=a[yf];void 0===b&&(b=a[yf]=new Set);return b}var zf=[],Af=-1;function Bf(a){return{current:a}}function H(a){0>Af||(a.current=zf[Af],zf[Af]=null,Af--)}function I(a,b){Af++;zf[Af]=a.current;a.current=b}var Cf={},M=Bf(Cf),N=Bf(!1),Df=Cf;\nfunction Ef(a,b){var c=a.type.contextTypes;if(!c)return Cf;var d=a.stateNode;if(d&&d.__reactInternalMemoizedUnmaskedChildContext===b)return d.__reactInternalMemoizedMaskedChildContext;var e={},f;for(f in c)e[f]=b[f];d&&(a=a.stateNode,a.__reactInternalMemoizedUnmaskedChildContext=b,a.__reactInternalMemoizedMaskedChildContext=e);return e}function Ff(a){a=a.childContextTypes;return null!==a&&void 0!==a}function Gf(){H(N);H(M)}function Hf(a,b,c){if(M.current!==Cf)throw Error(y(168));I(M,b);I(N,c)}\nfunction If(a,b,c){var d=a.stateNode;a=b.childContextTypes;if(\"function\"!==typeof d.getChildContext)return c;d=d.getChildContext();for(var e in d)if(!(e in a))throw Error(y(108,Ra(b)||\"Unknown\",e));return m({},c,d)}function Jf(a){a=(a=a.stateNode)&&a.__reactInternalMemoizedMergedChildContext||Cf;Df=M.current;I(M,a);I(N,N.current);return!0}function Kf(a,b,c){var d=a.stateNode;if(!d)throw Error(y(169));c?(a=If(a,b,Df),d.__reactInternalMemoizedMergedChildContext=a,H(N),H(M),I(M,a)):H(N);I(N,c)}\nvar Lf=null,Mf=null,Nf=r.unstable_runWithPriority,Of=r.unstable_scheduleCallback,Pf=r.unstable_cancelCallback,Qf=r.unstable_shouldYield,Rf=r.unstable_requestPaint,Sf=r.unstable_now,Tf=r.unstable_getCurrentPriorityLevel,Uf=r.unstable_ImmediatePriority,Vf=r.unstable_UserBlockingPriority,Wf=r.unstable_NormalPriority,Xf=r.unstable_LowPriority,Yf=r.unstable_IdlePriority,Zf={},$f=void 0!==Rf?Rf:function(){},ag=null,bg=null,cg=!1,dg=Sf(),O=1E4>dg?Sf:function(){return Sf()-dg};\nfunction eg(){switch(Tf()){case Uf:return 99;case Vf:return 98;case Wf:return 97;case Xf:return 96;case Yf:return 95;default:throw Error(y(332));}}function fg(a){switch(a){case 99:return Uf;case 98:return Vf;case 97:return Wf;case 96:return Xf;case 95:return Yf;default:throw Error(y(332));}}function gg(a,b){a=fg(a);return Nf(a,b)}function hg(a,b,c){a=fg(a);return Of(a,b,c)}function ig(){if(null!==bg){var a=bg;bg=null;Pf(a)}jg()}\nfunction jg(){if(!cg&&null!==ag){cg=!0;var a=0;try{var b=ag;gg(99,function(){for(;a<b.length;a++){var c=b[a];do c=c(!0);while(null!==c)}});ag=null}catch(c){throw null!==ag&&(ag=ag.slice(a+1)),Of(Uf,ig),c;}finally{cg=!1}}}var kg=ra.ReactCurrentBatchConfig;function lg(a,b){if(a&&a.defaultProps){b=m({},b);a=a.defaultProps;for(var c in a)void 0===b[c]&&(b[c]=a[c]);return b}return b}var mg=Bf(null),ng=null,og=null,pg=null;function qg(){pg=og=ng=null}\nfunction rg(a){var b=mg.current;H(mg);a.type._context._currentValue=b}function sg(a,b){for(;null!==a;){var c=a.alternate;if((a.childLanes&b)===b)if(null===c||(c.childLanes&b)===b)break;else c.childLanes|=b;else a.childLanes|=b,null!==c&&(c.childLanes|=b);a=a.return}}function tg(a,b){ng=a;pg=og=null;a=a.dependencies;null!==a&&null!==a.firstContext&&(0!==(a.lanes&b)&&(ug=!0),a.firstContext=null)}\nfunction vg(a,b){if(pg!==a&&!1!==b&&0!==b){if(\"number\"!==typeof b||1073741823===b)pg=a,b=1073741823;b={context:a,observedBits:b,next:null};if(null===og){if(null===ng)throw Error(y(308));og=b;ng.dependencies={lanes:0,firstContext:b,responders:null}}else og=og.next=b}return a._currentValue}var wg=!1;function xg(a){a.updateQueue={baseState:a.memoizedState,firstBaseUpdate:null,lastBaseUpdate:null,shared:{pending:null},effects:null}}\nfunction yg(a,b){a=a.updateQueue;b.updateQueue===a&&(b.updateQueue={baseState:a.baseState,firstBaseUpdate:a.firstBaseUpdate,lastBaseUpdate:a.lastBaseUpdate,shared:a.shared,effects:a.effects})}function zg(a,b){return{eventTime:a,lane:b,tag:0,payload:null,callback:null,next:null}}function Ag(a,b){a=a.updateQueue;if(null!==a){a=a.shared;var c=a.pending;null===c?b.next=b:(b.next=c.next,c.next=b);a.pending=b}}\nfunction Bg(a,b){var c=a.updateQueue,d=a.alternate;if(null!==d&&(d=d.updateQueue,c===d)){var e=null,f=null;c=c.firstBaseUpdate;if(null!==c){do{var g={eventTime:c.eventTime,lane:c.lane,tag:c.tag,payload:c.payload,callback:c.callback,next:null};null===f?e=f=g:f=f.next=g;c=c.next}while(null!==c);null===f?e=f=b:f=f.next=b}else e=f=b;c={baseState:d.baseState,firstBaseUpdate:e,lastBaseUpdate:f,shared:d.shared,effects:d.effects};a.updateQueue=c;return}a=c.lastBaseUpdate;null===a?c.firstBaseUpdate=b:a.next=\nb;c.lastBaseUpdate=b}\nfunction Cg(a,b,c,d){var e=a.updateQueue;wg=!1;var f=e.firstBaseUpdate,g=e.lastBaseUpdate,h=e.shared.pending;if(null!==h){e.shared.pending=null;var k=h,l=k.next;k.next=null;null===g?f=l:g.next=l;g=k;var n=a.alternate;if(null!==n){n=n.updateQueue;var A=n.lastBaseUpdate;A!==g&&(null===A?n.firstBaseUpdate=l:A.next=l,n.lastBaseUpdate=k)}}if(null!==f){A=e.baseState;g=0;n=l=k=null;do{h=f.lane;var p=f.eventTime;if((d&h)===h){null!==n&&(n=n.next={eventTime:p,lane:0,tag:f.tag,payload:f.payload,callback:f.callback,\nnext:null});a:{var C=a,x=f;h=b;p=c;switch(x.tag){case 1:C=x.payload;if(\"function\"===typeof C){A=C.call(p,A,h);break a}A=C;break a;case 3:C.flags=C.flags&-4097|64;case 0:C=x.payload;h=\"function\"===typeof C?C.call(p,A,h):C;if(null===h||void 0===h)break a;A=m({},A,h);break a;case 2:wg=!0}}null!==f.callback&&(a.flags|=32,h=e.effects,null===h?e.effects=[f]:h.push(f))}else p={eventTime:p,lane:h,tag:f.tag,payload:f.payload,callback:f.callback,next:null},null===n?(l=n=p,k=A):n=n.next=p,g|=h;f=f.next;if(null===\nf)if(h=e.shared.pending,null===h)break;else f=h.next,h.next=null,e.lastBaseUpdate=h,e.shared.pending=null}while(1);null===n&&(k=A);e.baseState=k;e.firstBaseUpdate=l;e.lastBaseUpdate=n;Dg|=g;a.lanes=g;a.memoizedState=A}}function Eg(a,b,c){a=b.effects;b.effects=null;if(null!==a)for(b=0;b<a.length;b++){var d=a[b],e=d.callback;if(null!==e){d.callback=null;d=c;if(\"function\"!==typeof e)throw Error(y(191,e));e.call(d)}}}var Fg=(new aa.Component).refs;\nfunction Gg(a,b,c,d){b=a.memoizedState;c=c(d,b);c=null===c||void 0===c?b:m({},b,c);a.memoizedState=c;0===a.lanes&&(a.updateQueue.baseState=c)}\nvar Kg={isMounted:function(a){return(a=a._reactInternals)?Zb(a)===a:!1},enqueueSetState:function(a,b,c){a=a._reactInternals;var d=Hg(),e=Ig(a),f=zg(d,e);f.payload=b;void 0!==c&&null!==c&&(f.callback=c);Ag(a,f);Jg(a,e,d)},enqueueReplaceState:function(a,b,c){a=a._reactInternals;var d=Hg(),e=Ig(a),f=zg(d,e);f.tag=1;f.payload=b;void 0!==c&&null!==c&&(f.callback=c);Ag(a,f);Jg(a,e,d)},enqueueForceUpdate:function(a,b){a=a._reactInternals;var c=Hg(),d=Ig(a),e=zg(c,d);e.tag=2;void 0!==b&&null!==b&&(e.callback=\nb);Ag(a,e);Jg(a,d,c)}};function Lg(a,b,c,d,e,f,g){a=a.stateNode;return\"function\"===typeof a.shouldComponentUpdate?a.shouldComponentUpdate(d,f,g):b.prototype&&b.prototype.isPureReactComponent?!Je(c,d)||!Je(e,f):!0}\nfunction Mg(a,b,c){var d=!1,e=Cf;var f=b.contextType;\"object\"===typeof f&&null!==f?f=vg(f):(e=Ff(b)?Df:M.current,d=b.contextTypes,f=(d=null!==d&&void 0!==d)?Ef(a,e):Cf);b=new b(c,f);a.memoizedState=null!==b.state&&void 0!==b.state?b.state:null;b.updater=Kg;a.stateNode=b;b._reactInternals=a;d&&(a=a.stateNode,a.__reactInternalMemoizedUnmaskedChildContext=e,a.__reactInternalMemoizedMaskedChildContext=f);return b}\nfunction Ng(a,b,c,d){a=b.state;\"function\"===typeof b.componentWillReceiveProps&&b.componentWillReceiveProps(c,d);\"function\"===typeof b.UNSAFE_componentWillReceiveProps&&b.UNSAFE_componentWillReceiveProps(c,d);b.state!==a&&Kg.enqueueReplaceState(b,b.state,null)}\nfunction Og(a,b,c,d){var e=a.stateNode;e.props=c;e.state=a.memoizedState;e.refs=Fg;xg(a);var f=b.contextType;\"object\"===typeof f&&null!==f?e.context=vg(f):(f=Ff(b)?Df:M.current,e.context=Ef(a,f));Cg(a,c,e,d);e.state=a.memoizedState;f=b.getDerivedStateFromProps;\"function\"===typeof f&&(Gg(a,b,f,c),e.state=a.memoizedState);\"function\"===typeof b.getDerivedStateFromProps||\"function\"===typeof e.getSnapshotBeforeUpdate||\"function\"!==typeof e.UNSAFE_componentWillMount&&\"function\"!==typeof e.componentWillMount||\n(b=e.state,\"function\"===typeof e.componentWillMount&&e.componentWillMount(),\"function\"===typeof e.UNSAFE_componentWillMount&&e.UNSAFE_componentWillMount(),b!==e.state&&Kg.enqueueReplaceState(e,e.state,null),Cg(a,c,e,d),e.state=a.memoizedState);\"function\"===typeof e.componentDidMount&&(a.flags|=4)}var Pg=Array.isArray;\nfunction Qg(a,b,c){a=c.ref;if(null!==a&&\"function\"!==typeof a&&\"object\"!==typeof a){if(c._owner){c=c._owner;if(c){if(1!==c.tag)throw Error(y(309));var d=c.stateNode}if(!d)throw Error(y(147,a));var e=\"\"+a;if(null!==b&&null!==b.ref&&\"function\"===typeof b.ref&&b.ref._stringRef===e)return b.ref;b=function(a){var b=d.refs;b===Fg&&(b=d.refs={});null===a?delete b[e]:b[e]=a};b._stringRef=e;return b}if(\"string\"!==typeof a)throw Error(y(284));if(!c._owner)throw Error(y(290,a));}return a}\nfunction Rg(a,b){if(\"textarea\"!==a.type)throw Error(y(31,\"[object Object]\"===Object.prototype.toString.call(b)?\"object with keys {\"+Object.keys(b).join(\", \")+\"}\":b));}\nfunction Sg(a){function b(b,c){if(a){var d=b.lastEffect;null!==d?(d.nextEffect=c,b.lastEffect=c):b.firstEffect=b.lastEffect=c;c.nextEffect=null;c.flags=8}}function c(c,d){if(!a)return null;for(;null!==d;)b(c,d),d=d.sibling;return null}function d(a,b){for(a=new Map;null!==b;)null!==b.key?a.set(b.key,b):a.set(b.index,b),b=b.sibling;return a}function e(a,b){a=Tg(a,b);a.index=0;a.sibling=null;return a}function f(b,c,d){b.index=d;if(!a)return c;d=b.alternate;if(null!==d)return d=d.index,d<c?(b.flags=2,\nc):d;b.flags=2;return c}function g(b){a&&null===b.alternate&&(b.flags=2);return b}function h(a,b,c,d){if(null===b||6!==b.tag)return b=Ug(c,a.mode,d),b.return=a,b;b=e(b,c);b.return=a;return b}function k(a,b,c,d){if(null!==b&&b.elementType===c.type)return d=e(b,c.props),d.ref=Qg(a,b,c),d.return=a,d;d=Vg(c.type,c.key,c.props,null,a.mode,d);d.ref=Qg(a,b,c);d.return=a;return d}function l(a,b,c,d){if(null===b||4!==b.tag||b.stateNode.containerInfo!==c.containerInfo||b.stateNode.implementation!==c.implementation)return b=\nWg(c,a.mode,d),b.return=a,b;b=e(b,c.children||[]);b.return=a;return b}function n(a,b,c,d,f){if(null===b||7!==b.tag)return b=Xg(c,a.mode,d,f),b.return=a,b;b=e(b,c);b.return=a;return b}function A(a,b,c){if(\"string\"===typeof b||\"number\"===typeof b)return b=Ug(\"\"+b,a.mode,c),b.return=a,b;if(\"object\"===typeof b&&null!==b){switch(b.$$typeof){case sa:return c=Vg(b.type,b.key,b.props,null,a.mode,c),c.ref=Qg(a,null,b),c.return=a,c;case ta:return b=Wg(b,a.mode,c),b.return=a,b}if(Pg(b)||La(b))return b=Xg(b,\na.mode,c,null),b.return=a,b;Rg(a,b)}return null}function p(a,b,c,d){var e=null!==b?b.key:null;if(\"string\"===typeof c||\"number\"===typeof c)return null!==e?null:h(a,b,\"\"+c,d);if(\"object\"===typeof c&&null!==c){switch(c.$$typeof){case sa:return c.key===e?c.type===ua?n(a,b,c.props.children,d,e):k(a,b,c,d):null;case ta:return c.key===e?l(a,b,c,d):null}if(Pg(c)||La(c))return null!==e?null:n(a,b,c,d,null);Rg(a,c)}return null}function C(a,b,c,d,e){if(\"string\"===typeof d||\"number\"===typeof d)return a=a.get(c)||\nnull,h(b,a,\"\"+d,e);if(\"object\"===typeof d&&null!==d){switch(d.$$typeof){case sa:return a=a.get(null===d.key?c:d.key)||null,d.type===ua?n(b,a,d.props.children,e,d.key):k(b,a,d,e);case ta:return a=a.get(null===d.key?c:d.key)||null,l(b,a,d,e)}if(Pg(d)||La(d))return a=a.get(c)||null,n(b,a,d,e,null);Rg(b,d)}return null}function x(e,g,h,k){for(var l=null,t=null,u=g,z=g=0,q=null;null!==u&&z<h.length;z++){u.index>z?(q=u,u=null):q=u.sibling;var n=p(e,u,h[z],k);if(null===n){null===u&&(u=q);break}a&&u&&null===\nn.alternate&&b(e,u);g=f(n,g,z);null===t?l=n:t.sibling=n;t=n;u=q}if(z===h.length)return c(e,u),l;if(null===u){for(;z<h.length;z++)u=A(e,h[z],k),null!==u&&(g=f(u,g,z),null===t?l=u:t.sibling=u,t=u);return l}for(u=d(e,u);z<h.length;z++)q=C(u,e,z,h[z],k),null!==q&&(a&&null!==q.alternate&&u.delete(null===q.key?z:q.key),g=f(q,g,z),null===t?l=q:t.sibling=q,t=q);a&&u.forEach(function(a){return b(e,a)});return l}function w(e,g,h,k){var l=La(h);if(\"function\"!==typeof l)throw Error(y(150));h=l.call(h);if(null==\nh)throw Error(y(151));for(var t=l=null,u=g,z=g=0,q=null,n=h.next();null!==u&&!n.done;z++,n=h.next()){u.index>z?(q=u,u=null):q=u.sibling;var w=p(e,u,n.value,k);if(null===w){null===u&&(u=q);break}a&&u&&null===w.alternate&&b(e,u);g=f(w,g,z);null===t?l=w:t.sibling=w;t=w;u=q}if(n.done)return c(e,u),l;if(null===u){for(;!n.done;z++,n=h.next())n=A(e,n.value,k),null!==n&&(g=f(n,g,z),null===t?l=n:t.sibling=n,t=n);return l}for(u=d(e,u);!n.done;z++,n=h.next())n=C(u,e,z,n.value,k),null!==n&&(a&&null!==n.alternate&&\nu.delete(null===n.key?z:n.key),g=f(n,g,z),null===t?l=n:t.sibling=n,t=n);a&&u.forEach(function(a){return b(e,a)});return l}return function(a,d,f,h){var k=\"object\"===typeof f&&null!==f&&f.type===ua&&null===f.key;k&&(f=f.props.children);var l=\"object\"===typeof f&&null!==f;if(l)switch(f.$$typeof){case sa:a:{l=f.key;for(k=d;null!==k;){if(k.key===l){switch(k.tag){case 7:if(f.type===ua){c(a,k.sibling);d=e(k,f.props.children);d.return=a;a=d;break a}break;default:if(k.elementType===f.type){c(a,k.sibling);\nd=e(k,f.props);d.ref=Qg(a,k,f);d.return=a;a=d;break a}}c(a,k);break}else b(a,k);k=k.sibling}f.type===ua?(d=Xg(f.props.children,a.mode,h,f.key),d.return=a,a=d):(h=Vg(f.type,f.key,f.props,null,a.mode,h),h.ref=Qg(a,d,f),h.return=a,a=h)}return g(a);case ta:a:{for(k=f.key;null!==d;){if(d.key===k)if(4===d.tag&&d.stateNode.containerInfo===f.containerInfo&&d.stateNode.implementation===f.implementation){c(a,d.sibling);d=e(d,f.children||[]);d.return=a;a=d;break a}else{c(a,d);break}else b(a,d);d=d.sibling}d=\nWg(f,a.mode,h);d.return=a;a=d}return g(a)}if(\"string\"===typeof f||\"number\"===typeof f)return f=\"\"+f,null!==d&&6===d.tag?(c(a,d.sibling),d=e(d,f),d.return=a,a=d):(c(a,d),d=Ug(f,a.mode,h),d.return=a,a=d),g(a);if(Pg(f))return x(a,d,f,h);if(La(f))return w(a,d,f,h);l&&Rg(a,f);if(\"undefined\"===typeof f&&!k)switch(a.tag){case 1:case 22:case 0:case 11:case 15:throw Error(y(152,Ra(a.type)||\"Component\"));}return c(a,d)}}var Yg=Sg(!0),Zg=Sg(!1),$g={},ah=Bf($g),bh=Bf($g),ch=Bf($g);\nfunction dh(a){if(a===$g)throw Error(y(174));return a}function eh(a,b){I(ch,b);I(bh,a);I(ah,$g);a=b.nodeType;switch(a){case 9:case 11:b=(b=b.documentElement)?b.namespaceURI:mb(null,\"\");break;default:a=8===a?b.parentNode:b,b=a.namespaceURI||null,a=a.tagName,b=mb(b,a)}H(ah);I(ah,b)}function fh(){H(ah);H(bh);H(ch)}function gh(a){dh(ch.current);var b=dh(ah.current);var c=mb(b,a.type);b!==c&&(I(bh,a),I(ah,c))}function hh(a){bh.current===a&&(H(ah),H(bh))}var P=Bf(0);\nfunction ih(a){for(var b=a;null!==b;){if(13===b.tag){var c=b.memoizedState;if(null!==c&&(c=c.dehydrated,null===c||\"$?\"===c.data||\"$!\"===c.data))return b}else if(19===b.tag&&void 0!==b.memoizedProps.revealOrder){if(0!==(b.flags&64))return b}else if(null!==b.child){b.child.return=b;b=b.child;continue}if(b===a)break;for(;null===b.sibling;){if(null===b.return||b.return===a)return null;b=b.return}b.sibling.return=b.return;b=b.sibling}return null}var jh=null,kh=null,lh=!1;\nfunction mh(a,b){var c=nh(5,null,null,0);c.elementType=\"DELETED\";c.type=\"DELETED\";c.stateNode=b;c.return=a;c.flags=8;null!==a.lastEffect?(a.lastEffect.nextEffect=c,a.lastEffect=c):a.firstEffect=a.lastEffect=c}function oh(a,b){switch(a.tag){case 5:var c=a.type;b=1!==b.nodeType||c.toLowerCase()!==b.nodeName.toLowerCase()?null:b;return null!==b?(a.stateNode=b,!0):!1;case 6:return b=\"\"===a.pendingProps||3!==b.nodeType?null:b,null!==b?(a.stateNode=b,!0):!1;case 13:return!1;default:return!1}}\nfunction ph(a){if(lh){var b=kh;if(b){var c=b;if(!oh(a,b)){b=rf(c.nextSibling);if(!b||!oh(a,b)){a.flags=a.flags&-1025|2;lh=!1;jh=a;return}mh(jh,c)}jh=a;kh=rf(b.firstChild)}else a.flags=a.flags&-1025|2,lh=!1,jh=a}}function qh(a){for(a=a.return;null!==a&&5!==a.tag&&3!==a.tag&&13!==a.tag;)a=a.return;jh=a}\nfunction rh(a){if(a!==jh)return!1;if(!lh)return qh(a),lh=!0,!1;var b=a.type;if(5!==a.tag||\"head\"!==b&&\"body\"!==b&&!nf(b,a.memoizedProps))for(b=kh;b;)mh(a,b),b=rf(b.nextSibling);qh(a);if(13===a.tag){a=a.memoizedState;a=null!==a?a.dehydrated:null;if(!a)throw Error(y(317));a:{a=a.nextSibling;for(b=0;a;){if(8===a.nodeType){var c=a.data;if(\"/$\"===c){if(0===b){kh=rf(a.nextSibling);break a}b--}else\"$\"!==c&&\"$!\"!==c&&\"$?\"!==c||b++}a=a.nextSibling}kh=null}}else kh=jh?rf(a.stateNode.nextSibling):null;return!0}\nfunction sh(){kh=jh=null;lh=!1}var th=[];function uh(){for(var a=0;a<th.length;a++)th[a]._workInProgressVersionPrimary=null;th.length=0}var vh=ra.ReactCurrentDispatcher,wh=ra.ReactCurrentBatchConfig,xh=0,R=null,S=null,T=null,yh=!1,zh=!1;function Ah(){throw Error(y(321));}function Bh(a,b){if(null===b)return!1;for(var c=0;c<b.length&&c<a.length;c++)if(!He(a[c],b[c]))return!1;return!0}\nfunction Ch(a,b,c,d,e,f){xh=f;R=b;b.memoizedState=null;b.updateQueue=null;b.lanes=0;vh.current=null===a||null===a.memoizedState?Dh:Eh;a=c(d,e);if(zh){f=0;do{zh=!1;if(!(25>f))throw Error(y(301));f+=1;T=S=null;b.updateQueue=null;vh.current=Fh;a=c(d,e)}while(zh)}vh.current=Gh;b=null!==S&&null!==S.next;xh=0;T=S=R=null;yh=!1;if(b)throw Error(y(300));return a}function Hh(){var a={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};null===T?R.memoizedState=T=a:T=T.next=a;return T}\nfunction Ih(){if(null===S){var a=R.alternate;a=null!==a?a.memoizedState:null}else a=S.next;var b=null===T?R.memoizedState:T.next;if(null!==b)T=b,S=a;else{if(null===a)throw Error(y(310));S=a;a={memoizedState:S.memoizedState,baseState:S.baseState,baseQueue:S.baseQueue,queue:S.queue,next:null};null===T?R.memoizedState=T=a:T=T.next=a}return T}function Jh(a,b){return\"function\"===typeof b?b(a):b}\nfunction Kh(a){var b=Ih(),c=b.queue;if(null===c)throw Error(y(311));c.lastRenderedReducer=a;var d=S,e=d.baseQueue,f=c.pending;if(null!==f){if(null!==e){var g=e.next;e.next=f.next;f.next=g}d.baseQueue=e=f;c.pending=null}if(null!==e){e=e.next;d=d.baseState;var h=g=f=null,k=e;do{var l=k.lane;if((xh&l)===l)null!==h&&(h=h.next={lane:0,action:k.action,eagerReducer:k.eagerReducer,eagerState:k.eagerState,next:null}),d=k.eagerReducer===a?k.eagerState:a(d,k.action);else{var n={lane:l,action:k.action,eagerReducer:k.eagerReducer,\neagerState:k.eagerState,next:null};null===h?(g=h=n,f=d):h=h.next=n;R.lanes|=l;Dg|=l}k=k.next}while(null!==k&&k!==e);null===h?f=d:h.next=g;He(d,b.memoizedState)||(ug=!0);b.memoizedState=d;b.baseState=f;b.baseQueue=h;c.lastRenderedState=d}return[b.memoizedState,c.dispatch]}\nfunction Lh(a){var b=Ih(),c=b.queue;if(null===c)throw Error(y(311));c.lastRenderedReducer=a;var d=c.dispatch,e=c.pending,f=b.memoizedState;if(null!==e){c.pending=null;var g=e=e.next;do f=a(f,g.action),g=g.next;while(g!==e);He(f,b.memoizedState)||(ug=!0);b.memoizedState=f;null===b.baseQueue&&(b.baseState=f);c.lastRenderedState=f}return[f,d]}\nfunction Mh(a,b,c){var d=b._getVersion;d=d(b._source);var e=b._workInProgressVersionPrimary;if(null!==e)a=e===d;else if(a=a.mutableReadLanes,a=(xh&a)===a)b._workInProgressVersionPrimary=d,th.push(b);if(a)return c(b._source);th.push(b);throw Error(y(350));}\nfunction Nh(a,b,c,d){var e=U;if(null===e)throw Error(y(349));var f=b._getVersion,g=f(b._source),h=vh.current,k=h.useState(function(){return Mh(e,b,c)}),l=k[1],n=k[0];k=T;var A=a.memoizedState,p=A.refs,C=p.getSnapshot,x=A.source;A=A.subscribe;var w=R;a.memoizedState={refs:p,source:b,subscribe:d};h.useEffect(function(){p.getSnapshot=c;p.setSnapshot=l;var a=f(b._source);if(!He(g,a)){a=c(b._source);He(n,a)||(l(a),a=Ig(w),e.mutableReadLanes|=a&e.pendingLanes);a=e.mutableReadLanes;e.entangledLanes|=a;for(var d=\ne.entanglements,h=a;0<h;){var k=31-Vc(h),v=1<<k;d[k]|=a;h&=~v}}},[c,b,d]);h.useEffect(function(){return d(b._source,function(){var a=p.getSnapshot,c=p.setSnapshot;try{c(a(b._source));var d=Ig(w);e.mutableReadLanes|=d&e.pendingLanes}catch(q){c(function(){throw q;})}})},[b,d]);He(C,c)&&He(x,b)&&He(A,d)||(a={pending:null,dispatch:null,lastRenderedReducer:Jh,lastRenderedState:n},a.dispatch=l=Oh.bind(null,R,a),k.queue=a,k.baseQueue=null,n=Mh(e,b,c),k.memoizedState=k.baseState=n);return n}\nfunction Ph(a,b,c){var d=Ih();return Nh(d,a,b,c)}function Qh(a){var b=Hh();\"function\"===typeof a&&(a=a());b.memoizedState=b.baseState=a;a=b.queue={pending:null,dispatch:null,lastRenderedReducer:Jh,lastRenderedState:a};a=a.dispatch=Oh.bind(null,R,a);return[b.memoizedState,a]}\nfunction Rh(a,b,c,d){a={tag:a,create:b,destroy:c,deps:d,next:null};b=R.updateQueue;null===b?(b={lastEffect:null},R.updateQueue=b,b.lastEffect=a.next=a):(c=b.lastEffect,null===c?b.lastEffect=a.next=a:(d=c.next,c.next=a,a.next=d,b.lastEffect=a));return a}function Sh(a){var b=Hh();a={current:a};return b.memoizedState=a}function Th(){return Ih().memoizedState}function Uh(a,b,c,d){var e=Hh();R.flags|=a;e.memoizedState=Rh(1|b,c,void 0,void 0===d?null:d)}\nfunction Vh(a,b,c,d){var e=Ih();d=void 0===d?null:d;var f=void 0;if(null!==S){var g=S.memoizedState;f=g.destroy;if(null!==d&&Bh(d,g.deps)){Rh(b,c,f,d);return}}R.flags|=a;e.memoizedState=Rh(1|b,c,f,d)}function Wh(a,b){return Uh(516,4,a,b)}function Xh(a,b){return Vh(516,4,a,b)}function Yh(a,b){return Vh(4,2,a,b)}function Zh(a,b){if(\"function\"===typeof b)return a=a(),b(a),function(){b(null)};if(null!==b&&void 0!==b)return a=a(),b.current=a,function(){b.current=null}}\nfunction $h(a,b,c){c=null!==c&&void 0!==c?c.concat([a]):null;return Vh(4,2,Zh.bind(null,b,a),c)}function ai(){}function bi(a,b){var c=Ih();b=void 0===b?null:b;var d=c.memoizedState;if(null!==d&&null!==b&&Bh(b,d[1]))return d[0];c.memoizedState=[a,b];return a}function ci(a,b){var c=Ih();b=void 0===b?null:b;var d=c.memoizedState;if(null!==d&&null!==b&&Bh(b,d[1]))return d[0];a=a();c.memoizedState=[a,b];return a}\nfunction di(a,b){var c=eg();gg(98>c?98:c,function(){a(!0)});gg(97<c?97:c,function(){var c=wh.transition;wh.transition=1;try{a(!1),b()}finally{wh.transition=c}})}\nfunction Oh(a,b,c){var d=Hg(),e=Ig(a),f={lane:e,action:c,eagerReducer:null,eagerState:null,next:null},g=b.pending;null===g?f.next=f:(f.next=g.next,g.next=f);b.pending=f;g=a.alternate;if(a===R||null!==g&&g===R)zh=yh=!0;else{if(0===a.lanes&&(null===g||0===g.lanes)&&(g=b.lastRenderedReducer,null!==g))try{var h=b.lastRenderedState,k=g(h,c);f.eagerReducer=g;f.eagerState=k;if(He(k,h))return}catch(l){}finally{}Jg(a,e,d)}}\nvar Gh={readContext:vg,useCallback:Ah,useContext:Ah,useEffect:Ah,useImperativeHandle:Ah,useLayoutEffect:Ah,useMemo:Ah,useReducer:Ah,useRef:Ah,useState:Ah,useDebugValue:Ah,useDeferredValue:Ah,useTransition:Ah,useMutableSource:Ah,useOpaqueIdentifier:Ah,unstable_isNewReconciler:!1},Dh={readContext:vg,useCallback:function(a,b){Hh().memoizedState=[a,void 0===b?null:b];return a},useContext:vg,useEffect:Wh,useImperativeHandle:function(a,b,c){c=null!==c&&void 0!==c?c.concat([a]):null;return Uh(4,2,Zh.bind(null,\nb,a),c)},useLayoutEffect:function(a,b){return Uh(4,2,a,b)},useMemo:function(a,b){var c=Hh();b=void 0===b?null:b;a=a();c.memoizedState=[a,b];return a},useReducer:function(a,b,c){var d=Hh();b=void 0!==c?c(b):b;d.memoizedState=d.baseState=b;a=d.queue={pending:null,dispatch:null,lastRenderedReducer:a,lastRenderedState:b};a=a.dispatch=Oh.bind(null,R,a);return[d.memoizedState,a]},useRef:Sh,useState:Qh,useDebugValue:ai,useDeferredValue:function(a){var b=Qh(a),c=b[0],d=b[1];Wh(function(){var b=wh.transition;\nwh.transition=1;try{d(a)}finally{wh.transition=b}},[a]);return c},useTransition:function(){var a=Qh(!1),b=a[0];a=di.bind(null,a[1]);Sh(a);return[a,b]},useMutableSource:function(a,b,c){var d=Hh();d.memoizedState={refs:{getSnapshot:b,setSnapshot:null},source:a,subscribe:c};return Nh(d,a,b,c)},useOpaqueIdentifier:function(){if(lh){var a=!1,b=uf(function(){a||(a=!0,c(\"r:\"+(tf++).toString(36)));throw Error(y(355));}),c=Qh(b)[1];0===(R.mode&2)&&(R.flags|=516,Rh(5,function(){c(\"r:\"+(tf++).toString(36))},\nvoid 0,null));return b}b=\"r:\"+(tf++).toString(36);Qh(b);return b},unstable_isNewReconciler:!1},Eh={readContext:vg,useCallback:bi,useContext:vg,useEffect:Xh,useImperativeHandle:$h,useLayoutEffect:Yh,useMemo:ci,useReducer:Kh,useRef:Th,useState:function(){return Kh(Jh)},useDebugValue:ai,useDeferredValue:function(a){var b=Kh(Jh),c=b[0],d=b[1];Xh(function(){var b=wh.transition;wh.transition=1;try{d(a)}finally{wh.transition=b}},[a]);return c},useTransition:function(){var a=Kh(Jh)[0];return[Th().current,\na]},useMutableSource:Ph,useOpaqueIdentifier:function(){return Kh(Jh)[0]},unstable_isNewReconciler:!1},Fh={readContext:vg,useCallback:bi,useContext:vg,useEffect:Xh,useImperativeHandle:$h,useLayoutEffect:Yh,useMemo:ci,useReducer:Lh,useRef:Th,useState:function(){return Lh(Jh)},useDebugValue:ai,useDeferredValue:function(a){var b=Lh(Jh),c=b[0],d=b[1];Xh(function(){var b=wh.transition;wh.transition=1;try{d(a)}finally{wh.transition=b}},[a]);return c},useTransition:function(){var a=Lh(Jh)[0];return[Th().current,\na]},useMutableSource:Ph,useOpaqueIdentifier:function(){return Lh(Jh)[0]},unstable_isNewReconciler:!1},ei=ra.ReactCurrentOwner,ug=!1;function fi(a,b,c,d){b.child=null===a?Zg(b,null,c,d):Yg(b,a.child,c,d)}function gi(a,b,c,d,e){c=c.render;var f=b.ref;tg(b,e);d=Ch(a,b,c,d,f,e);if(null!==a&&!ug)return b.updateQueue=a.updateQueue,b.flags&=-517,a.lanes&=~e,hi(a,b,e);b.flags|=1;fi(a,b,d,e);return b.child}\nfunction ii(a,b,c,d,e,f){if(null===a){var g=c.type;if(\"function\"===typeof g&&!ji(g)&&void 0===g.defaultProps&&null===c.compare&&void 0===c.defaultProps)return b.tag=15,b.type=g,ki(a,b,g,d,e,f);a=Vg(c.type,null,d,b,b.mode,f);a.ref=b.ref;a.return=b;return b.child=a}g=a.child;if(0===(e&f)&&(e=g.memoizedProps,c=c.compare,c=null!==c?c:Je,c(e,d)&&a.ref===b.ref))return hi(a,b,f);b.flags|=1;a=Tg(g,d);a.ref=b.ref;a.return=b;return b.child=a}\nfunction ki(a,b,c,d,e,f){if(null!==a&&Je(a.memoizedProps,d)&&a.ref===b.ref)if(ug=!1,0!==(f&e))0!==(a.flags&16384)&&(ug=!0);else return b.lanes=a.lanes,hi(a,b,f);return li(a,b,c,d,f)}\nfunction mi(a,b,c){var d=b.pendingProps,e=d.children,f=null!==a?a.memoizedState:null;if(\"hidden\"===d.mode||\"unstable-defer-without-hiding\"===d.mode)if(0===(b.mode&4))b.memoizedState={baseLanes:0},ni(b,c);else if(0!==(c&1073741824))b.memoizedState={baseLanes:0},ni(b,null!==f?f.baseLanes:c);else return a=null!==f?f.baseLanes|c:c,b.lanes=b.childLanes=1073741824,b.memoizedState={baseLanes:a},ni(b,a),null;else null!==f?(d=f.baseLanes|c,b.memoizedState=null):d=c,ni(b,d);fi(a,b,e,c);return b.child}\nfunction oi(a,b){var c=b.ref;if(null===a&&null!==c||null!==a&&a.ref!==c)b.flags|=128}function li(a,b,c,d,e){var f=Ff(c)?Df:M.current;f=Ef(b,f);tg(b,e);c=Ch(a,b,c,d,f,e);if(null!==a&&!ug)return b.updateQueue=a.updateQueue,b.flags&=-517,a.lanes&=~e,hi(a,b,e);b.flags|=1;fi(a,b,c,e);return b.child}\nfunction pi(a,b,c,d,e){if(Ff(c)){var f=!0;Jf(b)}else f=!1;tg(b,e);if(null===b.stateNode)null!==a&&(a.alternate=null,b.alternate=null,b.flags|=2),Mg(b,c,d),Og(b,c,d,e),d=!0;else if(null===a){var g=b.stateNode,h=b.memoizedProps;g.props=h;var k=g.context,l=c.contextType;\"object\"===typeof l&&null!==l?l=vg(l):(l=Ff(c)?Df:M.current,l=Ef(b,l));var n=c.getDerivedStateFromProps,A=\"function\"===typeof n||\"function\"===typeof g.getSnapshotBeforeUpdate;A||\"function\"!==typeof g.UNSAFE_componentWillReceiveProps&&\n\"function\"!==typeof g.componentWillReceiveProps||(h!==d||k!==l)&&Ng(b,g,d,l);wg=!1;var p=b.memoizedState;g.state=p;Cg(b,d,g,e);k=b.memoizedState;h!==d||p!==k||N.current||wg?(\"function\"===typeof n&&(Gg(b,c,n,d),k=b.memoizedState),(h=wg||Lg(b,c,h,d,p,k,l))?(A||\"function\"!==typeof g.UNSAFE_componentWillMount&&\"function\"!==typeof g.componentWillMount||(\"function\"===typeof g.componentWillMount&&g.componentWillMount(),\"function\"===typeof g.UNSAFE_componentWillMount&&g.UNSAFE_componentWillMount()),\"function\"===\ntypeof g.componentDidMount&&(b.flags|=4)):(\"function\"===typeof g.componentDidMount&&(b.flags|=4),b.memoizedProps=d,b.memoizedState=k),g.props=d,g.state=k,g.context=l,d=h):(\"function\"===typeof g.componentDidMount&&(b.flags|=4),d=!1)}else{g=b.stateNode;yg(a,b);h=b.memoizedProps;l=b.type===b.elementType?h:lg(b.type,h);g.props=l;A=b.pendingProps;p=g.context;k=c.contextType;\"object\"===typeof k&&null!==k?k=vg(k):(k=Ff(c)?Df:M.current,k=Ef(b,k));var C=c.getDerivedStateFromProps;(n=\"function\"===typeof C||\n\"function\"===typeof g.getSnapshotBeforeUpdate)||\"function\"!==typeof g.UNSAFE_componentWillReceiveProps&&\"function\"!==typeof g.componentWillReceiveProps||(h!==A||p!==k)&&Ng(b,g,d,k);wg=!1;p=b.memoizedState;g.state=p;Cg(b,d,g,e);var x=b.memoizedState;h!==A||p!==x||N.current||wg?(\"function\"===typeof C&&(Gg(b,c,C,d),x=b.memoizedState),(l=wg||Lg(b,c,l,d,p,x,k))?(n||\"function\"!==typeof g.UNSAFE_componentWillUpdate&&\"function\"!==typeof g.componentWillUpdate||(\"function\"===typeof g.componentWillUpdate&&g.componentWillUpdate(d,\nx,k),\"function\"===typeof g.UNSAFE_componentWillUpdate&&g.UNSAFE_componentWillUpdate(d,x,k)),\"function\"===typeof g.componentDidUpdate&&(b.flags|=4),\"function\"===typeof g.getSnapshotBeforeUpdate&&(b.flags|=256)):(\"function\"!==typeof g.componentDidUpdate||h===a.memoizedProps&&p===a.memoizedState||(b.flags|=4),\"function\"!==typeof g.getSnapshotBeforeUpdate||h===a.memoizedProps&&p===a.memoizedState||(b.flags|=256),b.memoizedProps=d,b.memoizedState=x),g.props=d,g.state=x,g.context=k,d=l):(\"function\"!==typeof g.componentDidUpdate||\nh===a.memoizedProps&&p===a.memoizedState||(b.flags|=4),\"function\"!==typeof g.getSnapshotBeforeUpdate||h===a.memoizedProps&&p===a.memoizedState||(b.flags|=256),d=!1)}return qi(a,b,c,d,f,e)}\nfunction qi(a,b,c,d,e,f){oi(a,b);var g=0!==(b.flags&64);if(!d&&!g)return e&&Kf(b,c,!1),hi(a,b,f);d=b.stateNode;ei.current=b;var h=g&&\"function\"!==typeof c.getDerivedStateFromError?null:d.render();b.flags|=1;null!==a&&g?(b.child=Yg(b,a.child,null,f),b.child=Yg(b,null,h,f)):fi(a,b,h,f);b.memoizedState=d.state;e&&Kf(b,c,!0);return b.child}function ri(a){var b=a.stateNode;b.pendingContext?Hf(a,b.pendingContext,b.pendingContext!==b.context):b.context&&Hf(a,b.context,!1);eh(a,b.containerInfo)}\nvar si={dehydrated:null,retryLane:0};\nfunction ti(a,b,c){var d=b.pendingProps,e=P.current,f=!1,g;(g=0!==(b.flags&64))||(g=null!==a&&null===a.memoizedState?!1:0!==(e&2));g?(f=!0,b.flags&=-65):null!==a&&null===a.memoizedState||void 0===d.fallback||!0===d.unstable_avoidThisFallback||(e|=1);I(P,e&1);if(null===a){void 0!==d.fallback&&ph(b);a=d.children;e=d.fallback;if(f)return a=ui(b,a,e,c),b.child.memoizedState={baseLanes:c},b.memoizedState=si,a;if(\"number\"===typeof d.unstable_expectedLoadTime)return a=ui(b,a,e,c),b.child.memoizedState={baseLanes:c},\nb.memoizedState=si,b.lanes=33554432,a;c=vi({mode:\"visible\",children:a},b.mode,c,null);c.return=b;return b.child=c}if(null!==a.memoizedState){if(f)return d=wi(a,b,d.children,d.fallback,c),f=b.child,e=a.child.memoizedState,f.memoizedState=null===e?{baseLanes:c}:{baseLanes:e.baseLanes|c},f.childLanes=a.childLanes&~c,b.memoizedState=si,d;c=xi(a,b,d.children,c);b.memoizedState=null;return c}if(f)return d=wi(a,b,d.children,d.fallback,c),f=b.child,e=a.child.memoizedState,f.memoizedState=null===e?{baseLanes:c}:\n{baseLanes:e.baseLanes|c},f.childLanes=a.childLanes&~c,b.memoizedState=si,d;c=xi(a,b,d.children,c);b.memoizedState=null;return c}function ui(a,b,c,d){var e=a.mode,f=a.child;b={mode:\"hidden\",children:b};0===(e&2)&&null!==f?(f.childLanes=0,f.pendingProps=b):f=vi(b,e,0,null);c=Xg(c,e,d,null);f.return=a;c.return=a;f.sibling=c;a.child=f;return c}\nfunction xi(a,b,c,d){var e=a.child;a=e.sibling;c=Tg(e,{mode:\"visible\",children:c});0===(b.mode&2)&&(c.lanes=d);c.return=b;c.sibling=null;null!==a&&(a.nextEffect=null,a.flags=8,b.firstEffect=b.lastEffect=a);return b.child=c}\nfunction wi(a,b,c,d,e){var f=b.mode,g=a.child;a=g.sibling;var h={mode:\"hidden\",children:c};0===(f&2)&&b.child!==g?(c=b.child,c.childLanes=0,c.pendingProps=h,g=c.lastEffect,null!==g?(b.firstEffect=c.firstEffect,b.lastEffect=g,g.nextEffect=null):b.firstEffect=b.lastEffect=null):c=Tg(g,h);null!==a?d=Tg(a,d):(d=Xg(d,f,e,null),d.flags|=2);d.return=b;c.return=b;c.sibling=d;b.child=c;return d}function yi(a,b){a.lanes|=b;var c=a.alternate;null!==c&&(c.lanes|=b);sg(a.return,b)}\nfunction zi(a,b,c,d,e,f){var g=a.memoizedState;null===g?a.memoizedState={isBackwards:b,rendering:null,renderingStartTime:0,last:d,tail:c,tailMode:e,lastEffect:f}:(g.isBackwards=b,g.rendering=null,g.renderingStartTime=0,g.last=d,g.tail=c,g.tailMode=e,g.lastEffect=f)}\nfunction Ai(a,b,c){var d=b.pendingProps,e=d.revealOrder,f=d.tail;fi(a,b,d.children,c);d=P.current;if(0!==(d&2))d=d&1|2,b.flags|=64;else{if(null!==a&&0!==(a.flags&64))a:for(a=b.child;null!==a;){if(13===a.tag)null!==a.memoizedState&&yi(a,c);else if(19===a.tag)yi(a,c);else if(null!==a.child){a.child.return=a;a=a.child;continue}if(a===b)break a;for(;null===a.sibling;){if(null===a.return||a.return===b)break a;a=a.return}a.sibling.return=a.return;a=a.sibling}d&=1}I(P,d);if(0===(b.mode&2))b.memoizedState=\nnull;else switch(e){case \"forwards\":c=b.child;for(e=null;null!==c;)a=c.alternate,null!==a&&null===ih(a)&&(e=c),c=c.sibling;c=e;null===c?(e=b.child,b.child=null):(e=c.sibling,c.sibling=null);zi(b,!1,e,c,f,b.lastEffect);break;case \"backwards\":c=null;e=b.child;for(b.child=null;null!==e;){a=e.alternate;if(null!==a&&null===ih(a)){b.child=e;break}a=e.sibling;e.sibling=c;c=e;e=a}zi(b,!0,c,null,f,b.lastEffect);break;case \"together\":zi(b,!1,null,null,void 0,b.lastEffect);break;default:b.memoizedState=null}return b.child}\nfunction hi(a,b,c){null!==a&&(b.dependencies=a.dependencies);Dg|=b.lanes;if(0!==(c&b.childLanes)){if(null!==a&&b.child!==a.child)throw Error(y(153));if(null!==b.child){a=b.child;c=Tg(a,a.pendingProps);b.child=c;for(c.return=b;null!==a.sibling;)a=a.sibling,c=c.sibling=Tg(a,a.pendingProps),c.return=b;c.sibling=null}return b.child}return null}var Bi,Ci,Di,Ei;\nBi=function(a,b){for(var c=b.child;null!==c;){if(5===c.tag||6===c.tag)a.appendChild(c.stateNode);else if(4!==c.tag&&null!==c.child){c.child.return=c;c=c.child;continue}if(c===b)break;for(;null===c.sibling;){if(null===c.return||c.return===b)return;c=c.return}c.sibling.return=c.return;c=c.sibling}};Ci=function(){};\nDi=function(a,b,c,d){var e=a.memoizedProps;if(e!==d){a=b.stateNode;dh(ah.current);var f=null;switch(c){case \"input\":e=Ya(a,e);d=Ya(a,d);f=[];break;case \"option\":e=eb(a,e);d=eb(a,d);f=[];break;case \"select\":e=m({},e,{value:void 0});d=m({},d,{value:void 0});f=[];break;case \"textarea\":e=gb(a,e);d=gb(a,d);f=[];break;default:\"function\"!==typeof e.onClick&&\"function\"===typeof d.onClick&&(a.onclick=jf)}vb(c,d);var g;c=null;for(l in e)if(!d.hasOwnProperty(l)&&e.hasOwnProperty(l)&&null!=e[l])if(\"style\"===\nl){var h=e[l];for(g in h)h.hasOwnProperty(g)&&(c||(c={}),c[g]=\"\")}else\"dangerouslySetInnerHTML\"!==l&&\"children\"!==l&&\"suppressContentEditableWarning\"!==l&&\"suppressHydrationWarning\"!==l&&\"autoFocus\"!==l&&(ca.hasOwnProperty(l)?f||(f=[]):(f=f||[]).push(l,null));for(l in d){var k=d[l];h=null!=e?e[l]:void 0;if(d.hasOwnProperty(l)&&k!==h&&(null!=k||null!=h))if(\"style\"===l)if(h){for(g in h)!h.hasOwnProperty(g)||k&&k.hasOwnProperty(g)||(c||(c={}),c[g]=\"\");for(g in k)k.hasOwnProperty(g)&&h[g]!==k[g]&&(c||\n(c={}),c[g]=k[g])}else c||(f||(f=[]),f.push(l,c)),c=k;else\"dangerouslySetInnerHTML\"===l?(k=k?k.__html:void 0,h=h?h.__html:void 0,null!=k&&h!==k&&(f=f||[]).push(l,k)):\"children\"===l?\"string\"!==typeof k&&\"number\"!==typeof k||(f=f||[]).push(l,\"\"+k):\"suppressContentEditableWarning\"!==l&&\"suppressHydrationWarning\"!==l&&(ca.hasOwnProperty(l)?(null!=k&&\"onScroll\"===l&&G(\"scroll\",a),f||h===k||(f=[])):\"object\"===typeof k&&null!==k&&k.$$typeof===Ga?k.toString():(f=f||[]).push(l,k))}c&&(f=f||[]).push(\"style\",\nc);var l=f;if(b.updateQueue=l)b.flags|=4}};Ei=function(a,b,c,d){c!==d&&(b.flags|=4)};function Fi(a,b){if(!lh)switch(a.tailMode){case \"hidden\":b=a.tail;for(var c=null;null!==b;)null!==b.alternate&&(c=b),b=b.sibling;null===c?a.tail=null:c.sibling=null;break;case \"collapsed\":c=a.tail;for(var d=null;null!==c;)null!==c.alternate&&(d=c),c=c.sibling;null===d?b||null===a.tail?a.tail=null:a.tail.sibling=null:d.sibling=null}}\nfunction Gi(a,b,c){var d=b.pendingProps;switch(b.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return null;case 1:return Ff(b.type)&&Gf(),null;case 3:fh();H(N);H(M);uh();d=b.stateNode;d.pendingContext&&(d.context=d.pendingContext,d.pendingContext=null);if(null===a||null===a.child)rh(b)?b.flags|=4:d.hydrate||(b.flags|=256);Ci(b);return null;case 5:hh(b);var e=dh(ch.current);c=b.type;if(null!==a&&null!=b.stateNode)Di(a,b,c,d,e),a.ref!==b.ref&&(b.flags|=128);else{if(!d){if(null===\nb.stateNode)throw Error(y(166));return null}a=dh(ah.current);if(rh(b)){d=b.stateNode;c=b.type;var f=b.memoizedProps;d[wf]=b;d[xf]=f;switch(c){case \"dialog\":G(\"cancel\",d);G(\"close\",d);break;case \"iframe\":case \"object\":case \"embed\":G(\"load\",d);break;case \"video\":case \"audio\":for(a=0;a<Xe.length;a++)G(Xe[a],d);break;case \"source\":G(\"error\",d);break;case \"img\":case \"image\":case \"link\":G(\"error\",d);G(\"load\",d);break;case \"details\":G(\"toggle\",d);break;case \"input\":Za(d,f);G(\"invalid\",d);break;case \"select\":d._wrapperState=\n{wasMultiple:!!f.multiple};G(\"invalid\",d);break;case \"textarea\":hb(d,f),G(\"invalid\",d)}vb(c,f);a=null;for(var g in f)f.hasOwnProperty(g)&&(e=f[g],\"children\"===g?\"string\"===typeof e?d.textContent!==e&&(a=[\"children\",e]):\"number\"===typeof e&&d.textContent!==\"\"+e&&(a=[\"children\",\"\"+e]):ca.hasOwnProperty(g)&&null!=e&&\"onScroll\"===g&&G(\"scroll\",d));switch(c){case \"input\":Va(d);cb(d,f,!0);break;case \"textarea\":Va(d);jb(d);break;case \"select\":case \"option\":break;default:\"function\"===typeof f.onClick&&(d.onclick=\njf)}d=a;b.updateQueue=d;null!==d&&(b.flags|=4)}else{g=9===e.nodeType?e:e.ownerDocument;a===kb.html&&(a=lb(c));a===kb.html?\"script\"===c?(a=g.createElement(\"div\"),a.innerHTML=\"<script>\\x3c/script>\",a=a.removeChild(a.firstChild)):\"string\"===typeof d.is?a=g.createElement(c,{is:d.is}):(a=g.createElement(c),\"select\"===c&&(g=a,d.multiple?g.multiple=!0:d.size&&(g.size=d.size))):a=g.createElementNS(a,c);a[wf]=b;a[xf]=d;Bi(a,b,!1,!1);b.stateNode=a;g=wb(c,d);switch(c){case \"dialog\":G(\"cancel\",a);G(\"close\",a);\ne=d;break;case \"iframe\":case \"object\":case \"embed\":G(\"load\",a);e=d;break;case \"video\":case \"audio\":for(e=0;e<Xe.length;e++)G(Xe[e],a);e=d;break;case \"source\":G(\"error\",a);e=d;break;case \"img\":case \"image\":case \"link\":G(\"error\",a);G(\"load\",a);e=d;break;case \"details\":G(\"toggle\",a);e=d;break;case \"input\":Za(a,d);e=Ya(a,d);G(\"invalid\",a);break;case \"option\":e=eb(a,d);break;case \"select\":a._wrapperState={wasMultiple:!!d.multiple};e=m({},d,{value:void 0});G(\"invalid\",a);break;case \"textarea\":hb(a,d);e=\ngb(a,d);G(\"invalid\",a);break;default:e=d}vb(c,e);var h=e;for(f in h)if(h.hasOwnProperty(f)){var k=h[f];\"style\"===f?tb(a,k):\"dangerouslySetInnerHTML\"===f?(k=k?k.__html:void 0,null!=k&&ob(a,k)):\"children\"===f?\"string\"===typeof k?(\"textarea\"!==c||\"\"!==k)&&pb(a,k):\"number\"===typeof k&&pb(a,\"\"+k):\"suppressContentEditableWarning\"!==f&&\"suppressHydrationWarning\"!==f&&\"autoFocus\"!==f&&(ca.hasOwnProperty(f)?null!=k&&\"onScroll\"===f&&G(\"scroll\",a):null!=k&&qa(a,f,k,g))}switch(c){case \"input\":Va(a);cb(a,d,!1);\nbreak;case \"textarea\":Va(a);jb(a);break;case \"option\":null!=d.value&&a.setAttribute(\"value\",\"\"+Sa(d.value));break;case \"select\":a.multiple=!!d.multiple;f=d.value;null!=f?fb(a,!!d.multiple,f,!1):null!=d.defaultValue&&fb(a,!!d.multiple,d.defaultValue,!0);break;default:\"function\"===typeof e.onClick&&(a.onclick=jf)}mf(c,d)&&(b.flags|=4)}null!==b.ref&&(b.flags|=128)}return null;case 6:if(a&&null!=b.stateNode)Ei(a,b,a.memoizedProps,d);else{if(\"string\"!==typeof d&&null===b.stateNode)throw Error(y(166));\nc=dh(ch.current);dh(ah.current);rh(b)?(d=b.stateNode,c=b.memoizedProps,d[wf]=b,d.nodeValue!==c&&(b.flags|=4)):(d=(9===c.nodeType?c:c.ownerDocument).createTextNode(d),d[wf]=b,b.stateNode=d)}return null;case 13:H(P);d=b.memoizedState;if(0!==(b.flags&64))return b.lanes=c,b;d=null!==d;c=!1;null===a?void 0!==b.memoizedProps.fallback&&rh(b):c=null!==a.memoizedState;if(d&&!c&&0!==(b.mode&2))if(null===a&&!0!==b.memoizedProps.unstable_avoidThisFallback||0!==(P.current&1))0===V&&(V=3);else{if(0===V||3===V)V=\n4;null===U||0===(Dg&134217727)&&0===(Hi&134217727)||Ii(U,W)}if(d||c)b.flags|=4;return null;case 4:return fh(),Ci(b),null===a&&cf(b.stateNode.containerInfo),null;case 10:return rg(b),null;case 17:return Ff(b.type)&&Gf(),null;case 19:H(P);d=b.memoizedState;if(null===d)return null;f=0!==(b.flags&64);g=d.rendering;if(null===g)if(f)Fi(d,!1);else{if(0!==V||null!==a&&0!==(a.flags&64))for(a=b.child;null!==a;){g=ih(a);if(null!==g){b.flags|=64;Fi(d,!1);f=g.updateQueue;null!==f&&(b.updateQueue=f,b.flags|=4);\nnull===d.lastEffect&&(b.firstEffect=null);b.lastEffect=d.lastEffect;d=c;for(c=b.child;null!==c;)f=c,a=d,f.flags&=2,f.nextEffect=null,f.firstEffect=null,f.lastEffect=null,g=f.alternate,null===g?(f.childLanes=0,f.lanes=a,f.child=null,f.memoizedProps=null,f.memoizedState=null,f.updateQueue=null,f.dependencies=null,f.stateNode=null):(f.childLanes=g.childLanes,f.lanes=g.lanes,f.child=g.child,f.memoizedProps=g.memoizedProps,f.memoizedState=g.memoizedState,f.updateQueue=g.updateQueue,f.type=g.type,a=g.dependencies,\nf.dependencies=null===a?null:{lanes:a.lanes,firstContext:a.firstContext}),c=c.sibling;I(P,P.current&1|2);return b.child}a=a.sibling}null!==d.tail&&O()>Ji&&(b.flags|=64,f=!0,Fi(d,!1),b.lanes=33554432)}else{if(!f)if(a=ih(g),null!==a){if(b.flags|=64,f=!0,c=a.updateQueue,null!==c&&(b.updateQueue=c,b.flags|=4),Fi(d,!0),null===d.tail&&\"hidden\"===d.tailMode&&!g.alternate&&!lh)return b=b.lastEffect=d.lastEffect,null!==b&&(b.nextEffect=null),null}else 2*O()-d.renderingStartTime>Ji&&1073741824!==c&&(b.flags|=\n64,f=!0,Fi(d,!1),b.lanes=33554432);d.isBackwards?(g.sibling=b.child,b.child=g):(c=d.last,null!==c?c.sibling=g:b.child=g,d.last=g)}return null!==d.tail?(c=d.tail,d.rendering=c,d.tail=c.sibling,d.lastEffect=b.lastEffect,d.renderingStartTime=O(),c.sibling=null,b=P.current,I(P,f?b&1|2:b&1),c):null;case 23:case 24:return Ki(),null!==a&&null!==a.memoizedState!==(null!==b.memoizedState)&&\"unstable-defer-without-hiding\"!==d.mode&&(b.flags|=4),null}throw Error(y(156,b.tag));}\nfunction Li(a){switch(a.tag){case 1:Ff(a.type)&&Gf();var b=a.flags;return b&4096?(a.flags=b&-4097|64,a):null;case 3:fh();H(N);H(M);uh();b=a.flags;if(0!==(b&64))throw Error(y(285));a.flags=b&-4097|64;return a;case 5:return hh(a),null;case 13:return H(P),b=a.flags,b&4096?(a.flags=b&-4097|64,a):null;case 19:return H(P),null;case 4:return fh(),null;case 10:return rg(a),null;case 23:case 24:return Ki(),null;default:return null}}\nfunction Mi(a,b){try{var c=\"\",d=b;do c+=Qa(d),d=d.return;while(d);var e=c}catch(f){e=\"\\nError generating stack: \"+f.message+\"\\n\"+f.stack}return{value:a,source:b,stack:e}}function Ni(a,b){try{console.error(b.value)}catch(c){setTimeout(function(){throw c;})}}var Oi=\"function\"===typeof WeakMap?WeakMap:Map;function Pi(a,b,c){c=zg(-1,c);c.tag=3;c.payload={element:null};var d=b.value;c.callback=function(){Qi||(Qi=!0,Ri=d);Ni(a,b)};return c}\nfunction Si(a,b,c){c=zg(-1,c);c.tag=3;var d=a.type.getDerivedStateFromError;if(\"function\"===typeof d){var e=b.value;c.payload=function(){Ni(a,b);return d(e)}}var f=a.stateNode;null!==f&&\"function\"===typeof f.componentDidCatch&&(c.callback=function(){\"function\"!==typeof d&&(null===Ti?Ti=new Set([this]):Ti.add(this),Ni(a,b));var c=b.stack;this.componentDidCatch(b.value,{componentStack:null!==c?c:\"\"})});return c}var Ui=\"function\"===typeof WeakSet?WeakSet:Set;\nfunction Vi(a){var b=a.ref;if(null!==b)if(\"function\"===typeof b)try{b(null)}catch(c){Wi(a,c)}else b.current=null}function Xi(a,b){switch(b.tag){case 0:case 11:case 15:case 22:return;case 1:if(b.flags&256&&null!==a){var c=a.memoizedProps,d=a.memoizedState;a=b.stateNode;b=a.getSnapshotBeforeUpdate(b.elementType===b.type?c:lg(b.type,c),d);a.__reactInternalSnapshotBeforeUpdate=b}return;case 3:b.flags&256&&qf(b.stateNode.containerInfo);return;case 5:case 6:case 4:case 17:return}throw Error(y(163));}\nfunction Yi(a,b,c){switch(c.tag){case 0:case 11:case 15:case 22:b=c.updateQueue;b=null!==b?b.lastEffect:null;if(null!==b){a=b=b.next;do{if(3===(a.tag&3)){var d=a.create;a.destroy=d()}a=a.next}while(a!==b)}b=c.updateQueue;b=null!==b?b.lastEffect:null;if(null!==b){a=b=b.next;do{var e=a;d=e.next;e=e.tag;0!==(e&4)&&0!==(e&1)&&(Zi(c,a),$i(c,a));a=d}while(a!==b)}return;case 1:a=c.stateNode;c.flags&4&&(null===b?a.componentDidMount():(d=c.elementType===c.type?b.memoizedProps:lg(c.type,b.memoizedProps),a.componentDidUpdate(d,\nb.memoizedState,a.__reactInternalSnapshotBeforeUpdate)));b=c.updateQueue;null!==b&&Eg(c,b,a);return;case 3:b=c.updateQueue;if(null!==b){a=null;if(null!==c.child)switch(c.child.tag){case 5:a=c.child.stateNode;break;case 1:a=c.child.stateNode}Eg(c,b,a)}return;case 5:a=c.stateNode;null===b&&c.flags&4&&mf(c.type,c.memoizedProps)&&a.focus();return;case 6:return;case 4:return;case 12:return;case 13:null===c.memoizedState&&(c=c.alternate,null!==c&&(c=c.memoizedState,null!==c&&(c=c.dehydrated,null!==c&&Cc(c))));\nreturn;case 19:case 17:case 20:case 21:case 23:case 24:return}throw Error(y(163));}\nfunction aj(a,b){for(var c=a;;){if(5===c.tag){var d=c.stateNode;if(b)d=d.style,\"function\"===typeof d.setProperty?d.setProperty(\"display\",\"none\",\"important\"):d.display=\"none\";else{d=c.stateNode;var e=c.memoizedProps.style;e=void 0!==e&&null!==e&&e.hasOwnProperty(\"display\")?e.display:null;d.style.display=sb(\"display\",e)}}else if(6===c.tag)c.stateNode.nodeValue=b?\"\":c.memoizedProps;else if((23!==c.tag&&24!==c.tag||null===c.memoizedState||c===a)&&null!==c.child){c.child.return=c;c=c.child;continue}if(c===\na)break;for(;null===c.sibling;){if(null===c.return||c.return===a)return;c=c.return}c.sibling.return=c.return;c=c.sibling}}\nfunction bj(a,b){if(Mf&&\"function\"===typeof Mf.onCommitFiberUnmount)try{Mf.onCommitFiberUnmount(Lf,b)}catch(f){}switch(b.tag){case 0:case 11:case 14:case 15:case 22:a=b.updateQueue;if(null!==a&&(a=a.lastEffect,null!==a)){var c=a=a.next;do{var d=c,e=d.destroy;d=d.tag;if(void 0!==e)if(0!==(d&4))Zi(b,c);else{d=b;try{e()}catch(f){Wi(d,f)}}c=c.next}while(c!==a)}break;case 1:Vi(b);a=b.stateNode;if(\"function\"===typeof a.componentWillUnmount)try{a.props=b.memoizedProps,a.state=b.memoizedState,a.componentWillUnmount()}catch(f){Wi(b,\nf)}break;case 5:Vi(b);break;case 4:cj(a,b)}}function dj(a){a.alternate=null;a.child=null;a.dependencies=null;a.firstEffect=null;a.lastEffect=null;a.memoizedProps=null;a.memoizedState=null;a.pendingProps=null;a.return=null;a.updateQueue=null}function ej(a){return 5===a.tag||3===a.tag||4===a.tag}\nfunction fj(a){a:{for(var b=a.return;null!==b;){if(ej(b))break a;b=b.return}throw Error(y(160));}var c=b;b=c.stateNode;switch(c.tag){case 5:var d=!1;break;case 3:b=b.containerInfo;d=!0;break;case 4:b=b.containerInfo;d=!0;break;default:throw Error(y(161));}c.flags&16&&(pb(b,\"\"),c.flags&=-17);a:b:for(c=a;;){for(;null===c.sibling;){if(null===c.return||ej(c.return)){c=null;break a}c=c.return}c.sibling.return=c.return;for(c=c.sibling;5!==c.tag&&6!==c.tag&&18!==c.tag;){if(c.flags&2)continue b;if(null===\nc.child||4===c.tag)continue b;else c.child.return=c,c=c.child}if(!(c.flags&2)){c=c.stateNode;break a}}d?gj(a,c,b):hj(a,c,b)}\nfunction gj(a,b,c){var d=a.tag,e=5===d||6===d;if(e)a=e?a.stateNode:a.stateNode.instance,b?8===c.nodeType?c.parentNode.insertBefore(a,b):c.insertBefore(a,b):(8===c.nodeType?(b=c.parentNode,b.insertBefore(a,c)):(b=c,b.appendChild(a)),c=c._reactRootContainer,null!==c&&void 0!==c||null!==b.onclick||(b.onclick=jf));else if(4!==d&&(a=a.child,null!==a))for(gj(a,b,c),a=a.sibling;null!==a;)gj(a,b,c),a=a.sibling}\nfunction hj(a,b,c){var d=a.tag,e=5===d||6===d;if(e)a=e?a.stateNode:a.stateNode.instance,b?c.insertBefore(a,b):c.appendChild(a);else if(4!==d&&(a=a.child,null!==a))for(hj(a,b,c),a=a.sibling;null!==a;)hj(a,b,c),a=a.sibling}\nfunction cj(a,b){for(var c=b,d=!1,e,f;;){if(!d){d=c.return;a:for(;;){if(null===d)throw Error(y(160));e=d.stateNode;switch(d.tag){case 5:f=!1;break a;case 3:e=e.containerInfo;f=!0;break a;case 4:e=e.containerInfo;f=!0;break a}d=d.return}d=!0}if(5===c.tag||6===c.tag){a:for(var g=a,h=c,k=h;;)if(bj(g,k),null!==k.child&&4!==k.tag)k.child.return=k,k=k.child;else{if(k===h)break a;for(;null===k.sibling;){if(null===k.return||k.return===h)break a;k=k.return}k.sibling.return=k.return;k=k.sibling}f?(g=e,h=c.stateNode,\n8===g.nodeType?g.parentNode.removeChild(h):g.removeChild(h)):e.removeChild(c.stateNode)}else if(4===c.tag){if(null!==c.child){e=c.stateNode.containerInfo;f=!0;c.child.return=c;c=c.child;continue}}else if(bj(a,c),null!==c.child){c.child.return=c;c=c.child;continue}if(c===b)break;for(;null===c.sibling;){if(null===c.return||c.return===b)return;c=c.return;4===c.tag&&(d=!1)}c.sibling.return=c.return;c=c.sibling}}\nfunction ij(a,b){switch(b.tag){case 0:case 11:case 14:case 15:case 22:var c=b.updateQueue;c=null!==c?c.lastEffect:null;if(null!==c){var d=c=c.next;do 3===(d.tag&3)&&(a=d.destroy,d.destroy=void 0,void 0!==a&&a()),d=d.next;while(d!==c)}return;case 1:return;case 5:c=b.stateNode;if(null!=c){d=b.memoizedProps;var e=null!==a?a.memoizedProps:d;a=b.type;var f=b.updateQueue;b.updateQueue=null;if(null!==f){c[xf]=d;\"input\"===a&&\"radio\"===d.type&&null!=d.name&&$a(c,d);wb(a,e);b=wb(a,d);for(e=0;e<f.length;e+=\n2){var g=f[e],h=f[e+1];\"style\"===g?tb(c,h):\"dangerouslySetInnerHTML\"===g?ob(c,h):\"children\"===g?pb(c,h):qa(c,g,h,b)}switch(a){case \"input\":ab(c,d);break;case \"textarea\":ib(c,d);break;case \"select\":a=c._wrapperState.wasMultiple,c._wrapperState.wasMultiple=!!d.multiple,f=d.value,null!=f?fb(c,!!d.multiple,f,!1):a!==!!d.multiple&&(null!=d.defaultValue?fb(c,!!d.multiple,d.defaultValue,!0):fb(c,!!d.multiple,d.multiple?[]:\"\",!1))}}}return;case 6:if(null===b.stateNode)throw Error(y(162));b.stateNode.nodeValue=\nb.memoizedProps;return;case 3:c=b.stateNode;c.hydrate&&(c.hydrate=!1,Cc(c.containerInfo));return;case 12:return;case 13:null!==b.memoizedState&&(jj=O(),aj(b.child,!0));kj(b);return;case 19:kj(b);return;case 17:return;case 23:case 24:aj(b,null!==b.memoizedState);return}throw Error(y(163));}function kj(a){var b=a.updateQueue;if(null!==b){a.updateQueue=null;var c=a.stateNode;null===c&&(c=a.stateNode=new Ui);b.forEach(function(b){var d=lj.bind(null,a,b);c.has(b)||(c.add(b),b.then(d,d))})}}\nfunction mj(a,b){return null!==a&&(a=a.memoizedState,null===a||null!==a.dehydrated)?(b=b.memoizedState,null!==b&&null===b.dehydrated):!1}var nj=Math.ceil,oj=ra.ReactCurrentDispatcher,pj=ra.ReactCurrentOwner,X=0,U=null,Y=null,W=0,qj=0,rj=Bf(0),V=0,sj=null,tj=0,Dg=0,Hi=0,uj=0,vj=null,jj=0,Ji=Infinity;function wj(){Ji=O()+500}var Z=null,Qi=!1,Ri=null,Ti=null,xj=!1,yj=null,zj=90,Aj=[],Bj=[],Cj=null,Dj=0,Ej=null,Fj=-1,Gj=0,Hj=0,Ij=null,Jj=!1;function Hg(){return 0!==(X&48)?O():-1!==Fj?Fj:Fj=O()}\nfunction Ig(a){a=a.mode;if(0===(a&2))return 1;if(0===(a&4))return 99===eg()?1:2;0===Gj&&(Gj=tj);if(0!==kg.transition){0!==Hj&&(Hj=null!==vj?vj.pendingLanes:0);a=Gj;var b=4186112&~Hj;b&=-b;0===b&&(a=4186112&~a,b=a&-a,0===b&&(b=8192));return b}a=eg();0!==(X&4)&&98===a?a=Xc(12,Gj):(a=Sc(a),a=Xc(a,Gj));return a}\nfunction Jg(a,b,c){if(50<Dj)throw Dj=0,Ej=null,Error(y(185));a=Kj(a,b);if(null===a)return null;$c(a,b,c);a===U&&(Hi|=b,4===V&&Ii(a,W));var d=eg();1===b?0!==(X&8)&&0===(X&48)?Lj(a):(Mj(a,c),0===X&&(wj(),ig())):(0===(X&4)||98!==d&&99!==d||(null===Cj?Cj=new Set([a]):Cj.add(a)),Mj(a,c));vj=a}function Kj(a,b){a.lanes|=b;var c=a.alternate;null!==c&&(c.lanes|=b);c=a;for(a=a.return;null!==a;)a.childLanes|=b,c=a.alternate,null!==c&&(c.childLanes|=b),c=a,a=a.return;return 3===c.tag?c.stateNode:null}\nfunction Mj(a,b){for(var c=a.callbackNode,d=a.suspendedLanes,e=a.pingedLanes,f=a.expirationTimes,g=a.pendingLanes;0<g;){var h=31-Vc(g),k=1<<h,l=f[h];if(-1===l){if(0===(k&d)||0!==(k&e)){l=b;Rc(k);var n=F;f[h]=10<=n?l+250:6<=n?l+5E3:-1}}else l<=b&&(a.expiredLanes|=k);g&=~k}d=Uc(a,a===U?W:0);b=F;if(0===d)null!==c&&(c!==Zf&&Pf(c),a.callbackNode=null,a.callbackPriority=0);else{if(null!==c){if(a.callbackPriority===b)return;c!==Zf&&Pf(c)}15===b?(c=Lj.bind(null,a),null===ag?(ag=[c],bg=Of(Uf,jg)):ag.push(c),\nc=Zf):14===b?c=hg(99,Lj.bind(null,a)):(c=Tc(b),c=hg(c,Nj.bind(null,a)));a.callbackPriority=b;a.callbackNode=c}}\nfunction Nj(a){Fj=-1;Hj=Gj=0;if(0!==(X&48))throw Error(y(327));var b=a.callbackNode;if(Oj()&&a.callbackNode!==b)return null;var c=Uc(a,a===U?W:0);if(0===c)return null;var d=c;var e=X;X|=16;var f=Pj();if(U!==a||W!==d)wj(),Qj(a,d);do try{Rj();break}catch(h){Sj(a,h)}while(1);qg();oj.current=f;X=e;null!==Y?d=0:(U=null,W=0,d=V);if(0!==(tj&Hi))Qj(a,0);else if(0!==d){2===d&&(X|=64,a.hydrate&&(a.hydrate=!1,qf(a.containerInfo)),c=Wc(a),0!==c&&(d=Tj(a,c)));if(1===d)throw b=sj,Qj(a,0),Ii(a,c),Mj(a,O()),b;a.finishedWork=\na.current.alternate;a.finishedLanes=c;switch(d){case 0:case 1:throw Error(y(345));case 2:Uj(a);break;case 3:Ii(a,c);if((c&62914560)===c&&(d=jj+500-O(),10<d)){if(0!==Uc(a,0))break;e=a.suspendedLanes;if((e&c)!==c){Hg();a.pingedLanes|=a.suspendedLanes&e;break}a.timeoutHandle=of(Uj.bind(null,a),d);break}Uj(a);break;case 4:Ii(a,c);if((c&4186112)===c)break;d=a.eventTimes;for(e=-1;0<c;){var g=31-Vc(c);f=1<<g;g=d[g];g>e&&(e=g);c&=~f}c=e;c=O()-c;c=(120>c?120:480>c?480:1080>c?1080:1920>c?1920:3E3>c?3E3:4320>\nc?4320:1960*nj(c/1960))-c;if(10<c){a.timeoutHandle=of(Uj.bind(null,a),c);break}Uj(a);break;case 5:Uj(a);break;default:throw Error(y(329));}}Mj(a,O());return a.callbackNode===b?Nj.bind(null,a):null}function Ii(a,b){b&=~uj;b&=~Hi;a.suspendedLanes|=b;a.pingedLanes&=~b;for(a=a.expirationTimes;0<b;){var c=31-Vc(b),d=1<<c;a[c]=-1;b&=~d}}\nfunction Lj(a){if(0!==(X&48))throw Error(y(327));Oj();if(a===U&&0!==(a.expiredLanes&W)){var b=W;var c=Tj(a,b);0!==(tj&Hi)&&(b=Uc(a,b),c=Tj(a,b))}else b=Uc(a,0),c=Tj(a,b);0!==a.tag&&2===c&&(X|=64,a.hydrate&&(a.hydrate=!1,qf(a.containerInfo)),b=Wc(a),0!==b&&(c=Tj(a,b)));if(1===c)throw c=sj,Qj(a,0),Ii(a,b),Mj(a,O()),c;a.finishedWork=a.current.alternate;a.finishedLanes=b;Uj(a);Mj(a,O());return null}\nfunction Vj(){if(null!==Cj){var a=Cj;Cj=null;a.forEach(function(a){a.expiredLanes|=24&a.pendingLanes;Mj(a,O())})}ig()}function Wj(a,b){var c=X;X|=1;try{return a(b)}finally{X=c,0===X&&(wj(),ig())}}function Xj(a,b){var c=X;X&=-2;X|=8;try{return a(b)}finally{X=c,0===X&&(wj(),ig())}}function ni(a,b){I(rj,qj);qj|=b;tj|=b}function Ki(){qj=rj.current;H(rj)}\nfunction Qj(a,b){a.finishedWork=null;a.finishedLanes=0;var c=a.timeoutHandle;-1!==c&&(a.timeoutHandle=-1,pf(c));if(null!==Y)for(c=Y.return;null!==c;){var d=c;switch(d.tag){case 1:d=d.type.childContextTypes;null!==d&&void 0!==d&&Gf();break;case 3:fh();H(N);H(M);uh();break;case 5:hh(d);break;case 4:fh();break;case 13:H(P);break;case 19:H(P);break;case 10:rg(d);break;case 23:case 24:Ki()}c=c.return}U=a;Y=Tg(a.current,null);W=qj=tj=b;V=0;sj=null;uj=Hi=Dg=0}\nfunction Sj(a,b){do{var c=Y;try{qg();vh.current=Gh;if(yh){for(var d=R.memoizedState;null!==d;){var e=d.queue;null!==e&&(e.pending=null);d=d.next}yh=!1}xh=0;T=S=R=null;zh=!1;pj.current=null;if(null===c||null===c.return){V=1;sj=b;Y=null;break}a:{var f=a,g=c.return,h=c,k=b;b=W;h.flags|=2048;h.firstEffect=h.lastEffect=null;if(null!==k&&\"object\"===typeof k&&\"function\"===typeof k.then){var l=k;if(0===(h.mode&2)){var n=h.alternate;n?(h.updateQueue=n.updateQueue,h.memoizedState=n.memoizedState,h.lanes=n.lanes):\n(h.updateQueue=null,h.memoizedState=null)}var A=0!==(P.current&1),p=g;do{var C;if(C=13===p.tag){var x=p.memoizedState;if(null!==x)C=null!==x.dehydrated?!0:!1;else{var w=p.memoizedProps;C=void 0===w.fallback?!1:!0!==w.unstable_avoidThisFallback?!0:A?!1:!0}}if(C){var z=p.updateQueue;if(null===z){var u=new Set;u.add(l);p.updateQueue=u}else z.add(l);if(0===(p.mode&2)){p.flags|=64;h.flags|=16384;h.flags&=-2981;if(1===h.tag)if(null===h.alternate)h.tag=17;else{var t=zg(-1,1);t.tag=2;Ag(h,t)}h.lanes|=1;break a}k=\nvoid 0;h=b;var q=f.pingCache;null===q?(q=f.pingCache=new Oi,k=new Set,q.set(l,k)):(k=q.get(l),void 0===k&&(k=new Set,q.set(l,k)));if(!k.has(h)){k.add(h);var v=Yj.bind(null,f,l,h);l.then(v,v)}p.flags|=4096;p.lanes=b;break a}p=p.return}while(null!==p);k=Error((Ra(h.type)||\"A React component\")+\" suspended while rendering, but no fallback UI was specified.\\n\\nAdd a <Suspense fallback=...> component higher in the tree to provide a loading indicator or placeholder to display.\")}5!==V&&(V=2);k=Mi(k,h);p=\ng;do{switch(p.tag){case 3:f=k;p.flags|=4096;b&=-b;p.lanes|=b;var J=Pi(p,f,b);Bg(p,J);break a;case 1:f=k;var K=p.type,Q=p.stateNode;if(0===(p.flags&64)&&(\"function\"===typeof K.getDerivedStateFromError||null!==Q&&\"function\"===typeof Q.componentDidCatch&&(null===Ti||!Ti.has(Q)))){p.flags|=4096;b&=-b;p.lanes|=b;var L=Si(p,f,b);Bg(p,L);break a}}p=p.return}while(null!==p)}Zj(c)}catch(va){b=va;Y===c&&null!==c&&(Y=c=c.return);continue}break}while(1)}\nfunction Pj(){var a=oj.current;oj.current=Gh;return null===a?Gh:a}function Tj(a,b){var c=X;X|=16;var d=Pj();U===a&&W===b||Qj(a,b);do try{ak();break}catch(e){Sj(a,e)}while(1);qg();X=c;oj.current=d;if(null!==Y)throw Error(y(261));U=null;W=0;return V}function ak(){for(;null!==Y;)bk(Y)}function Rj(){for(;null!==Y&&!Qf();)bk(Y)}function bk(a){var b=ck(a.alternate,a,qj);a.memoizedProps=a.pendingProps;null===b?Zj(a):Y=b;pj.current=null}\nfunction Zj(a){var b=a;do{var c=b.alternate;a=b.return;if(0===(b.flags&2048)){c=Gi(c,b,qj);if(null!==c){Y=c;return}c=b;if(24!==c.tag&&23!==c.tag||null===c.memoizedState||0!==(qj&1073741824)||0===(c.mode&4)){for(var d=0,e=c.child;null!==e;)d|=e.lanes|e.childLanes,e=e.sibling;c.childLanes=d}null!==a&&0===(a.flags&2048)&&(null===a.firstEffect&&(a.firstEffect=b.firstEffect),null!==b.lastEffect&&(null!==a.lastEffect&&(a.lastEffect.nextEffect=b.firstEffect),a.lastEffect=b.lastEffect),1<b.flags&&(null!==\na.lastEffect?a.lastEffect.nextEffect=b:a.firstEffect=b,a.lastEffect=b))}else{c=Li(b);if(null!==c){c.flags&=2047;Y=c;return}null!==a&&(a.firstEffect=a.lastEffect=null,a.flags|=2048)}b=b.sibling;if(null!==b){Y=b;return}Y=b=a}while(null!==b);0===V&&(V=5)}function Uj(a){var b=eg();gg(99,dk.bind(null,a,b));return null}\nfunction dk(a,b){do Oj();while(null!==yj);if(0!==(X&48))throw Error(y(327));var c=a.finishedWork;if(null===c)return null;a.finishedWork=null;a.finishedLanes=0;if(c===a.current)throw Error(y(177));a.callbackNode=null;var d=c.lanes|c.childLanes,e=d,f=a.pendingLanes&~e;a.pendingLanes=e;a.suspendedLanes=0;a.pingedLanes=0;a.expiredLanes&=e;a.mutableReadLanes&=e;a.entangledLanes&=e;e=a.entanglements;for(var g=a.eventTimes,h=a.expirationTimes;0<f;){var k=31-Vc(f),l=1<<k;e[k]=0;g[k]=-1;h[k]=-1;f&=~l}null!==\nCj&&0===(d&24)&&Cj.has(a)&&Cj.delete(a);a===U&&(Y=U=null,W=0);1<c.flags?null!==c.lastEffect?(c.lastEffect.nextEffect=c,d=c.firstEffect):d=c:d=c.firstEffect;if(null!==d){e=X;X|=32;pj.current=null;kf=fd;g=Ne();if(Oe(g)){if(\"selectionStart\"in g)h={start:g.selectionStart,end:g.selectionEnd};else a:if(h=(h=g.ownerDocument)&&h.defaultView||window,(l=h.getSelection&&h.getSelection())&&0!==l.rangeCount){h=l.anchorNode;f=l.anchorOffset;k=l.focusNode;l=l.focusOffset;try{h.nodeType,k.nodeType}catch(va){h=null;\nbreak a}var n=0,A=-1,p=-1,C=0,x=0,w=g,z=null;b:for(;;){for(var u;;){w!==h||0!==f&&3!==w.nodeType||(A=n+f);w!==k||0!==l&&3!==w.nodeType||(p=n+l);3===w.nodeType&&(n+=w.nodeValue.length);if(null===(u=w.firstChild))break;z=w;w=u}for(;;){if(w===g)break b;z===h&&++C===f&&(A=n);z===k&&++x===l&&(p=n);if(null!==(u=w.nextSibling))break;w=z;z=w.parentNode}w=u}h=-1===A||-1===p?null:{start:A,end:p}}else h=null;h=h||{start:0,end:0}}else h=null;lf={focusedElem:g,selectionRange:h};fd=!1;Ij=null;Jj=!1;Z=d;do try{ek()}catch(va){if(null===\nZ)throw Error(y(330));Wi(Z,va);Z=Z.nextEffect}while(null!==Z);Ij=null;Z=d;do try{for(g=a;null!==Z;){var t=Z.flags;t&16&&pb(Z.stateNode,\"\");if(t&128){var q=Z.alternate;if(null!==q){var v=q.ref;null!==v&&(\"function\"===typeof v?v(null):v.current=null)}}switch(t&1038){case 2:fj(Z);Z.flags&=-3;break;case 6:fj(Z);Z.flags&=-3;ij(Z.alternate,Z);break;case 1024:Z.flags&=-1025;break;case 1028:Z.flags&=-1025;ij(Z.alternate,Z);break;case 4:ij(Z.alternate,Z);break;case 8:h=Z;cj(g,h);var J=h.alternate;dj(h);null!==\nJ&&dj(J)}Z=Z.nextEffect}}catch(va){if(null===Z)throw Error(y(330));Wi(Z,va);Z=Z.nextEffect}while(null!==Z);v=lf;q=Ne();t=v.focusedElem;g=v.selectionRange;if(q!==t&&t&&t.ownerDocument&&Me(t.ownerDocument.documentElement,t)){null!==g&&Oe(t)&&(q=g.start,v=g.end,void 0===v&&(v=q),\"selectionStart\"in t?(t.selectionStart=q,t.selectionEnd=Math.min(v,t.value.length)):(v=(q=t.ownerDocument||document)&&q.defaultView||window,v.getSelection&&(v=v.getSelection(),h=t.textContent.length,J=Math.min(g.start,h),g=void 0===\ng.end?J:Math.min(g.end,h),!v.extend&&J>g&&(h=g,g=J,J=h),h=Le(t,J),f=Le(t,g),h&&f&&(1!==v.rangeCount||v.anchorNode!==h.node||v.anchorOffset!==h.offset||v.focusNode!==f.node||v.focusOffset!==f.offset)&&(q=q.createRange(),q.setStart(h.node,h.offset),v.removeAllRanges(),J>g?(v.addRange(q),v.extend(f.node,f.offset)):(q.setEnd(f.node,f.offset),v.addRange(q))))));q=[];for(v=t;v=v.parentNode;)1===v.nodeType&&q.push({element:v,left:v.scrollLeft,top:v.scrollTop});\"function\"===typeof t.focus&&t.focus();for(t=\n0;t<q.length;t++)v=q[t],v.element.scrollLeft=v.left,v.element.scrollTop=v.top}fd=!!kf;lf=kf=null;a.current=c;Z=d;do try{for(t=a;null!==Z;){var K=Z.flags;K&36&&Yi(t,Z.alternate,Z);if(K&128){q=void 0;var Q=Z.ref;if(null!==Q){var L=Z.stateNode;switch(Z.tag){case 5:q=L;break;default:q=L}\"function\"===typeof Q?Q(q):Q.current=q}}Z=Z.nextEffect}}catch(va){if(null===Z)throw Error(y(330));Wi(Z,va);Z=Z.nextEffect}while(null!==Z);Z=null;$f();X=e}else a.current=c;if(xj)xj=!1,yj=a,zj=b;else for(Z=d;null!==Z;)b=\nZ.nextEffect,Z.nextEffect=null,Z.flags&8&&(K=Z,K.sibling=null,K.stateNode=null),Z=b;d=a.pendingLanes;0===d&&(Ti=null);1===d?a===Ej?Dj++:(Dj=0,Ej=a):Dj=0;c=c.stateNode;if(Mf&&\"function\"===typeof Mf.onCommitFiberRoot)try{Mf.onCommitFiberRoot(Lf,c,void 0,64===(c.current.flags&64))}catch(va){}Mj(a,O());if(Qi)throw Qi=!1,a=Ri,Ri=null,a;if(0!==(X&8))return null;ig();return null}\nfunction ek(){for(;null!==Z;){var a=Z.alternate;Jj||null===Ij||(0!==(Z.flags&8)?dc(Z,Ij)&&(Jj=!0):13===Z.tag&&mj(a,Z)&&dc(Z,Ij)&&(Jj=!0));var b=Z.flags;0!==(b&256)&&Xi(a,Z);0===(b&512)||xj||(xj=!0,hg(97,function(){Oj();return null}));Z=Z.nextEffect}}function Oj(){if(90!==zj){var a=97<zj?97:zj;zj=90;return gg(a,fk)}return!1}function $i(a,b){Aj.push(b,a);xj||(xj=!0,hg(97,function(){Oj();return null}))}function Zi(a,b){Bj.push(b,a);xj||(xj=!0,hg(97,function(){Oj();return null}))}\nfunction fk(){if(null===yj)return!1;var a=yj;yj=null;if(0!==(X&48))throw Error(y(331));var b=X;X|=32;var c=Bj;Bj=[];for(var d=0;d<c.length;d+=2){var e=c[d],f=c[d+1],g=e.destroy;e.destroy=void 0;if(\"function\"===typeof g)try{g()}catch(k){if(null===f)throw Error(y(330));Wi(f,k)}}c=Aj;Aj=[];for(d=0;d<c.length;d+=2){e=c[d];f=c[d+1];try{var h=e.create;e.destroy=h()}catch(k){if(null===f)throw Error(y(330));Wi(f,k)}}for(h=a.current.firstEffect;null!==h;)a=h.nextEffect,h.nextEffect=null,h.flags&8&&(h.sibling=\nnull,h.stateNode=null),h=a;X=b;ig();return!0}function gk(a,b,c){b=Mi(c,b);b=Pi(a,b,1);Ag(a,b);b=Hg();a=Kj(a,1);null!==a&&($c(a,1,b),Mj(a,b))}\nfunction Wi(a,b){if(3===a.tag)gk(a,a,b);else for(var c=a.return;null!==c;){if(3===c.tag){gk(c,a,b);break}else if(1===c.tag){var d=c.stateNode;if(\"function\"===typeof c.type.getDerivedStateFromError||\"function\"===typeof d.componentDidCatch&&(null===Ti||!Ti.has(d))){a=Mi(b,a);var e=Si(c,a,1);Ag(c,e);e=Hg();c=Kj(c,1);if(null!==c)$c(c,1,e),Mj(c,e);else if(\"function\"===typeof d.componentDidCatch&&(null===Ti||!Ti.has(d)))try{d.componentDidCatch(b,a)}catch(f){}break}}c=c.return}}\nfunction Yj(a,b,c){var d=a.pingCache;null!==d&&d.delete(b);b=Hg();a.pingedLanes|=a.suspendedLanes&c;U===a&&(W&c)===c&&(4===V||3===V&&(W&62914560)===W&&500>O()-jj?Qj(a,0):uj|=c);Mj(a,b)}function lj(a,b){var c=a.stateNode;null!==c&&c.delete(b);b=0;0===b&&(b=a.mode,0===(b&2)?b=1:0===(b&4)?b=99===eg()?1:2:(0===Gj&&(Gj=tj),b=Yc(62914560&~Gj),0===b&&(b=4194304)));c=Hg();a=Kj(a,b);null!==a&&($c(a,b,c),Mj(a,c))}var ck;\nck=function(a,b,c){var d=b.lanes;if(null!==a)if(a.memoizedProps!==b.pendingProps||N.current)ug=!0;else if(0!==(c&d))ug=0!==(a.flags&16384)?!0:!1;else{ug=!1;switch(b.tag){case 3:ri(b);sh();break;case 5:gh(b);break;case 1:Ff(b.type)&&Jf(b);break;case 4:eh(b,b.stateNode.containerInfo);break;case 10:d=b.memoizedProps.value;var e=b.type._context;I(mg,e._currentValue);e._currentValue=d;break;case 13:if(null!==b.memoizedState){if(0!==(c&b.child.childLanes))return ti(a,b,c);I(P,P.current&1);b=hi(a,b,c);return null!==\nb?b.sibling:null}I(P,P.current&1);break;case 19:d=0!==(c&b.childLanes);if(0!==(a.flags&64)){if(d)return Ai(a,b,c);b.flags|=64}e=b.memoizedState;null!==e&&(e.rendering=null,e.tail=null,e.lastEffect=null);I(P,P.current);if(d)break;else return null;case 23:case 24:return b.lanes=0,mi(a,b,c)}return hi(a,b,c)}else ug=!1;b.lanes=0;switch(b.tag){case 2:d=b.type;null!==a&&(a.alternate=null,b.alternate=null,b.flags|=2);a=b.pendingProps;e=Ef(b,M.current);tg(b,c);e=Ch(null,b,d,a,e,c);b.flags|=1;if(\"object\"===\ntypeof e&&null!==e&&\"function\"===typeof e.render&&void 0===e.$$typeof){b.tag=1;b.memoizedState=null;b.updateQueue=null;if(Ff(d)){var f=!0;Jf(b)}else f=!1;b.memoizedState=null!==e.state&&void 0!==e.state?e.state:null;xg(b);var g=d.getDerivedStateFromProps;\"function\"===typeof g&&Gg(b,d,g,a);e.updater=Kg;b.stateNode=e;e._reactInternals=b;Og(b,d,a,c);b=qi(null,b,d,!0,f,c)}else b.tag=0,fi(null,b,e,c),b=b.child;return b;case 16:e=b.elementType;a:{null!==a&&(a.alternate=null,b.alternate=null,b.flags|=2);\na=b.pendingProps;f=e._init;e=f(e._payload);b.type=e;f=b.tag=hk(e);a=lg(e,a);switch(f){case 0:b=li(null,b,e,a,c);break a;case 1:b=pi(null,b,e,a,c);break a;case 11:b=gi(null,b,e,a,c);break a;case 14:b=ii(null,b,e,lg(e.type,a),d,c);break a}throw Error(y(306,e,\"\"));}return b;case 0:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:lg(d,e),li(a,b,d,e,c);case 1:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:lg(d,e),pi(a,b,d,e,c);case 3:ri(b);d=b.updateQueue;if(null===a||null===d)throw Error(y(282));\nd=b.pendingProps;e=b.memoizedState;e=null!==e?e.element:null;yg(a,b);Cg(b,d,null,c);d=b.memoizedState.element;if(d===e)sh(),b=hi(a,b,c);else{e=b.stateNode;if(f=e.hydrate)kh=rf(b.stateNode.containerInfo.firstChild),jh=b,f=lh=!0;if(f){a=e.mutableSourceEagerHydrationData;if(null!=a)for(e=0;e<a.length;e+=2)f=a[e],f._workInProgressVersionPrimary=a[e+1],th.push(f);c=Zg(b,null,d,c);for(b.child=c;c;)c.flags=c.flags&-3|1024,c=c.sibling}else fi(a,b,d,c),sh();b=b.child}return b;case 5:return gh(b),null===a&&\nph(b),d=b.type,e=b.pendingProps,f=null!==a?a.memoizedProps:null,g=e.children,nf(d,e)?g=null:null!==f&&nf(d,f)&&(b.flags|=16),oi(a,b),fi(a,b,g,c),b.child;case 6:return null===a&&ph(b),null;case 13:return ti(a,b,c);case 4:return eh(b,b.stateNode.containerInfo),d=b.pendingProps,null===a?b.child=Yg(b,null,d,c):fi(a,b,d,c),b.child;case 11:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:lg(d,e),gi(a,b,d,e,c);case 7:return fi(a,b,b.pendingProps,c),b.child;case 8:return fi(a,b,b.pendingProps.children,\nc),b.child;case 12:return fi(a,b,b.pendingProps.children,c),b.child;case 10:a:{d=b.type._context;e=b.pendingProps;g=b.memoizedProps;f=e.value;var h=b.type._context;I(mg,h._currentValue);h._currentValue=f;if(null!==g)if(h=g.value,f=He(h,f)?0:(\"function\"===typeof d._calculateChangedBits?d._calculateChangedBits(h,f):1073741823)|0,0===f){if(g.children===e.children&&!N.current){b=hi(a,b,c);break a}}else for(h=b.child,null!==h&&(h.return=b);null!==h;){var k=h.dependencies;if(null!==k){g=h.child;for(var l=\nk.firstContext;null!==l;){if(l.context===d&&0!==(l.observedBits&f)){1===h.tag&&(l=zg(-1,c&-c),l.tag=2,Ag(h,l));h.lanes|=c;l=h.alternate;null!==l&&(l.lanes|=c);sg(h.return,c);k.lanes|=c;break}l=l.next}}else g=10===h.tag?h.type===b.type?null:h.child:h.child;if(null!==g)g.return=h;else for(g=h;null!==g;){if(g===b){g=null;break}h=g.sibling;if(null!==h){h.return=g.return;g=h;break}g=g.return}h=g}fi(a,b,e.children,c);b=b.child}return b;case 9:return e=b.type,f=b.pendingProps,d=f.children,tg(b,c),e=vg(e,\nf.unstable_observedBits),d=d(e),b.flags|=1,fi(a,b,d,c),b.child;case 14:return e=b.type,f=lg(e,b.pendingProps),f=lg(e.type,f),ii(a,b,e,f,d,c);case 15:return ki(a,b,b.type,b.pendingProps,d,c);case 17:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:lg(d,e),null!==a&&(a.alternate=null,b.alternate=null,b.flags|=2),b.tag=1,Ff(d)?(a=!0,Jf(b)):a=!1,tg(b,c),Mg(b,d,e),Og(b,d,e,c),qi(null,b,d,!0,a,c);case 19:return Ai(a,b,c);case 23:return mi(a,b,c);case 24:return mi(a,b,c)}throw Error(y(156,b.tag));\n};function ik(a,b,c,d){this.tag=a;this.key=c;this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null;this.index=0;this.ref=null;this.pendingProps=b;this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null;this.mode=d;this.flags=0;this.lastEffect=this.firstEffect=this.nextEffect=null;this.childLanes=this.lanes=0;this.alternate=null}function nh(a,b,c,d){return new ik(a,b,c,d)}function ji(a){a=a.prototype;return!(!a||!a.isReactComponent)}\nfunction hk(a){if(\"function\"===typeof a)return ji(a)?1:0;if(void 0!==a&&null!==a){a=a.$$typeof;if(a===Aa)return 11;if(a===Da)return 14}return 2}\nfunction Tg(a,b){var c=a.alternate;null===c?(c=nh(a.tag,b,a.key,a.mode),c.elementType=a.elementType,c.type=a.type,c.stateNode=a.stateNode,c.alternate=a,a.alternate=c):(c.pendingProps=b,c.type=a.type,c.flags=0,c.nextEffect=null,c.firstEffect=null,c.lastEffect=null);c.childLanes=a.childLanes;c.lanes=a.lanes;c.child=a.child;c.memoizedProps=a.memoizedProps;c.memoizedState=a.memoizedState;c.updateQueue=a.updateQueue;b=a.dependencies;c.dependencies=null===b?null:{lanes:b.lanes,firstContext:b.firstContext};\nc.sibling=a.sibling;c.index=a.index;c.ref=a.ref;return c}\nfunction Vg(a,b,c,d,e,f){var g=2;d=a;if(\"function\"===typeof a)ji(a)&&(g=1);else if(\"string\"===typeof a)g=5;else a:switch(a){case ua:return Xg(c.children,e,f,b);case Ha:g=8;e|=16;break;case wa:g=8;e|=1;break;case xa:return a=nh(12,c,b,e|8),a.elementType=xa,a.type=xa,a.lanes=f,a;case Ba:return a=nh(13,c,b,e),a.type=Ba,a.elementType=Ba,a.lanes=f,a;case Ca:return a=nh(19,c,b,e),a.elementType=Ca,a.lanes=f,a;case Ia:return vi(c,e,f,b);case Ja:return a=nh(24,c,b,e),a.elementType=Ja,a.lanes=f,a;default:if(\"object\"===\ntypeof a&&null!==a)switch(a.$$typeof){case ya:g=10;break a;case za:g=9;break a;case Aa:g=11;break a;case Da:g=14;break a;case Ea:g=16;d=null;break a;case Fa:g=22;break a}throw Error(y(130,null==a?a:typeof a,\"\"));}b=nh(g,c,b,e);b.elementType=a;b.type=d;b.lanes=f;return b}function Xg(a,b,c,d){a=nh(7,a,d,b);a.lanes=c;return a}function vi(a,b,c,d){a=nh(23,a,d,b);a.elementType=Ia;a.lanes=c;return a}function Ug(a,b,c){a=nh(6,a,null,b);a.lanes=c;return a}\nfunction Wg(a,b,c){b=nh(4,null!==a.children?a.children:[],a.key,b);b.lanes=c;b.stateNode={containerInfo:a.containerInfo,pendingChildren:null,implementation:a.implementation};return b}\nfunction jk(a,b,c){this.tag=b;this.containerInfo=a;this.finishedWork=this.pingCache=this.current=this.pendingChildren=null;this.timeoutHandle=-1;this.pendingContext=this.context=null;this.hydrate=c;this.callbackNode=null;this.callbackPriority=0;this.eventTimes=Zc(0);this.expirationTimes=Zc(-1);this.entangledLanes=this.finishedLanes=this.mutableReadLanes=this.expiredLanes=this.pingedLanes=this.suspendedLanes=this.pendingLanes=0;this.entanglements=Zc(0);this.mutableSourceEagerHydrationData=null}\nfunction kk(a,b,c){var d=3<arguments.length&&void 0!==arguments[3]?arguments[3]:null;return{$$typeof:ta,key:null==d?null:\"\"+d,children:a,containerInfo:b,implementation:c}}\nfunction lk(a,b,c,d){var e=b.current,f=Hg(),g=Ig(e);a:if(c){c=c._reactInternals;b:{if(Zb(c)!==c||1!==c.tag)throw Error(y(170));var h=c;do{switch(h.tag){case 3:h=h.stateNode.context;break b;case 1:if(Ff(h.type)){h=h.stateNode.__reactInternalMemoizedMergedChildContext;break b}}h=h.return}while(null!==h);throw Error(y(171));}if(1===c.tag){var k=c.type;if(Ff(k)){c=If(c,k,h);break a}}c=h}else c=Cf;null===b.context?b.context=c:b.pendingContext=c;b=zg(f,g);b.payload={element:a};d=void 0===d?null:d;null!==\nd&&(b.callback=d);Ag(e,b);Jg(e,g,f);return g}function mk(a){a=a.current;if(!a.child)return null;switch(a.child.tag){case 5:return a.child.stateNode;default:return a.child.stateNode}}function nk(a,b){a=a.memoizedState;if(null!==a&&null!==a.dehydrated){var c=a.retryLane;a.retryLane=0!==c&&c<b?c:b}}function ok(a,b){nk(a,b);(a=a.alternate)&&nk(a,b)}function pk(){return null}\nfunction qk(a,b,c){var d=null!=c&&null!=c.hydrationOptions&&c.hydrationOptions.mutableSources||null;c=new jk(a,b,null!=c&&!0===c.hydrate);b=nh(3,null,null,2===b?7:1===b?3:0);c.current=b;b.stateNode=c;xg(b);a[ff]=c.current;cf(8===a.nodeType?a.parentNode:a);if(d)for(a=0;a<d.length;a++){b=d[a];var e=b._getVersion;e=e(b._source);null==c.mutableSourceEagerHydrationData?c.mutableSourceEagerHydrationData=[b,e]:c.mutableSourceEagerHydrationData.push(b,e)}this._internalRoot=c}\nqk.prototype.render=function(a){lk(a,this._internalRoot,null,null)};qk.prototype.unmount=function(){var a=this._internalRoot,b=a.containerInfo;lk(null,a,null,function(){b[ff]=null})};function rk(a){return!(!a||1!==a.nodeType&&9!==a.nodeType&&11!==a.nodeType&&(8!==a.nodeType||\" react-mount-point-unstable \"!==a.nodeValue))}\nfunction sk(a,b){b||(b=a?9===a.nodeType?a.documentElement:a.firstChild:null,b=!(!b||1!==b.nodeType||!b.hasAttribute(\"data-reactroot\")));if(!b)for(var c;c=a.lastChild;)a.removeChild(c);return new qk(a,0,b?{hydrate:!0}:void 0)}\nfunction tk(a,b,c,d,e){var f=c._reactRootContainer;if(f){var g=f._internalRoot;if(\"function\"===typeof e){var h=e;e=function(){var a=mk(g);h.call(a)}}lk(b,g,a,e)}else{f=c._reactRootContainer=sk(c,d);g=f._internalRoot;if(\"function\"===typeof e){var k=e;e=function(){var a=mk(g);k.call(a)}}Xj(function(){lk(b,g,a,e)})}return mk(g)}ec=function(a){if(13===a.tag){var b=Hg();Jg(a,4,b);ok(a,4)}};fc=function(a){if(13===a.tag){var b=Hg();Jg(a,67108864,b);ok(a,67108864)}};\ngc=function(a){if(13===a.tag){var b=Hg(),c=Ig(a);Jg(a,c,b);ok(a,c)}};hc=function(a,b){return b()};\nyb=function(a,b,c){switch(b){case \"input\":ab(a,c);b=c.name;if(\"radio\"===c.type&&null!=b){for(c=a;c.parentNode;)c=c.parentNode;c=c.querySelectorAll(\"input[name=\"+JSON.stringify(\"\"+b)+'][type=\"radio\"]');for(b=0;b<c.length;b++){var d=c[b];if(d!==a&&d.form===a.form){var e=Db(d);if(!e)throw Error(y(90));Wa(d);ab(d,e)}}}break;case \"textarea\":ib(a,c);break;case \"select\":b=c.value,null!=b&&fb(a,!!c.multiple,b,!1)}};Gb=Wj;\nHb=function(a,b,c,d,e){var f=X;X|=4;try{return gg(98,a.bind(null,b,c,d,e))}finally{X=f,0===X&&(wj(),ig())}};Ib=function(){0===(X&49)&&(Vj(),Oj())};Jb=function(a,b){var c=X;X|=2;try{return a(b)}finally{X=c,0===X&&(wj(),ig())}};function uk(a,b){var c=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null;if(!rk(b))throw Error(y(200));return kk(a,b,null,c)}var vk={Events:[Cb,ue,Db,Eb,Fb,Oj,{current:!1}]},wk={findFiberByHostInstance:wc,bundleType:0,version:\"17.0.1\",rendererPackageName:\"react-dom\"};\nvar xk={bundleType:wk.bundleType,version:wk.version,rendererPackageName:wk.rendererPackageName,rendererConfig:wk.rendererConfig,overrideHookState:null,overrideHookStateDeletePath:null,overrideHookStateRenamePath:null,overrideProps:null,overridePropsDeletePath:null,overridePropsRenamePath:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:ra.ReactCurrentDispatcher,findHostInstanceByFiber:function(a){a=cc(a);return null===a?null:a.stateNode},findFiberByHostInstance:wk.findFiberByHostInstance||\npk,findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null};if(\"undefined\"!==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__){var yk=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(!yk.isDisabled&&yk.supportsFiber)try{Lf=yk.inject(xk),Mf=yk}catch(a){}}exports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=vk;exports.createPortal=uk;\nexports.findDOMNode=function(a){if(null==a)return null;if(1===a.nodeType)return a;var b=a._reactInternals;if(void 0===b){if(\"function\"===typeof a.render)throw Error(y(188));throw Error(y(268,Object.keys(a)));}a=cc(b);a=null===a?null:a.stateNode;return a};exports.flushSync=function(a,b){var c=X;if(0!==(c&48))return a(b);X|=1;try{if(a)return gg(99,a.bind(null,b))}finally{X=c,ig()}};exports.hydrate=function(a,b,c){if(!rk(b))throw Error(y(200));return tk(null,a,b,!0,c)};\nexports.render=function(a,b,c){if(!rk(b))throw Error(y(200));return tk(null,a,b,!1,c)};exports.unmountComponentAtNode=function(a){if(!rk(a))throw Error(y(40));return a._reactRootContainer?(Xj(function(){tk(null,null,a,!1,function(){a._reactRootContainer=null;a[ff]=null})}),!0):!1};exports.unstable_batchedUpdates=Wj;exports.unstable_createPortal=function(a,b){return uk(a,b,2<arguments.length&&void 0!==arguments[2]?arguments[2]:null)};\nexports.unstable_renderSubtreeIntoContainer=function(a,b,c,d){if(!rk(c))throw Error(y(200));if(null==a||void 0===a._reactInternals)throw Error(y(38));return tk(a,b,c,!1,d)};exports.version=\"17.0.1\";\n"],"sourceRoot":""}
\ No newline at end of file
diff --git a/framework-fd2b85530eec85104a39.js b/framework-fd2b85530eec85104a39.js
deleted file mode 100644
index 038f62f..0000000
--- a/framework-fd2b85530eec85104a39.js
+++ /dev/null
@@ -1,2 +0,0 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[7],{"16Al":function(e,t,n){"use strict";var r=n("WbBG");function l(){}function i(){}i.resetWarningCache=l,e.exports=function(){function e(e,t,n,l,i,a){if(a!==r){var o=new Error("Calling PropTypes validators directly is not supported by the `prop-types` package. Use PropTypes.checkPropTypes() to call them. Read more at http://fb.me/use-check-prop-types");throw o.name="Invariant Violation",o}}function t(){return e}e.isRequired=e;var n={array:e,bool:e,func:e,number:e,object:e,string:e,symbol:e,any:e,arrayOf:t,element:e,elementType:e,instanceOf:t,node:e,objectOf:t,oneOf:t,oneOfType:t,shape:t,exact:t,checkPropTypes:i,resetWarningCache:l};return n.PropTypes=n,n}},"17x9":function(e,t,n){e.exports=n("16Al")()},JhMR:function(e,t,n){"use strict";e.exports=n("KqkS")},KqkS:function(e,t,n){"use strict";var r,l,i,a,o;if("undefined"==typeof window||"function"!=typeof MessageChannel){var u=null,c=null,s=function(){if(null!==u)try{var e=t.unstable_now();u(!0,e),u=null}catch(n){throw setTimeout(s,0),n}},f=Date.now();t.unstable_now=function(){return Date.now()-f},r=function(e){null!==u?setTimeout(r,0,e):(u=e,setTimeout(s,0))},l=function(e,t){c=setTimeout(e,t)},i=function(){clearTimeout(c)},a=function(){return!1},o=t.unstable_forceFrameRate=function(){}}else{var d=window.performance,p=window.Date,m=window.setTimeout,h=window.clearTimeout;if("undefined"!=typeof console){var v=window.cancelAnimationFrame;"function"!=typeof window.requestAnimationFrame&&console.error("This browser doesn't support requestAnimationFrame. Make sure that you load a polyfill in older browsers. https://fb.me/react-polyfills"),"function"!=typeof v&&console.error("This browser doesn't support cancelAnimationFrame. Make sure that you load a polyfill in older browsers. https://fb.me/react-polyfills")}if("object"==typeof d&&"function"==typeof d.now)t.unstable_now=function(){return d.now()};else{var g=p.now();t.unstable_now=function(){return p.now()-g}}var y=!1,b=null,w=-1,k=5,x=0;a=function(){return t.unstable_now()>=x},o=function(){},t.unstable_forceFrameRate=function(e){0>e||125<e?console.error("forceFrameRate takes a positive int between 0 and 125, forcing framerates higher than 125 fps is not unsupported"):k=0<e?Math.floor(1e3/e):5};var T=new MessageChannel,E=T.port2;T.port1.onmessage=function(){if(null!==b){var e=t.unstable_now();x=e+k;try{b(!0,e)?E.postMessage(null):(y=!1,b=null)}catch(n){throw E.postMessage(null),n}}else y=!1},r=function(e){b=e,y||(y=!0,E.postMessage(null))},l=function(e,n){w=m((function(){e(t.unstable_now())}),n)},i=function(){h(w),w=-1}}function S(e,t){var n=e.length;e.push(t);e:for(;;){var r=n-1>>>1,l=e[r];if(!(void 0!==l&&0<P(l,t)))break e;e[r]=t,e[n]=l,n=r}}function C(e){return void 0===(e=e[0])?null:e}function _(e){var t=e[0];if(void 0!==t){var n=e.pop();if(n!==t){e[0]=n;e:for(var r=0,l=e.length;r<l;){var i=2*(r+1)-1,a=e[i],o=i+1,u=e[o];if(void 0!==a&&0>P(a,n))void 0!==u&&0>P(u,a)?(e[r]=u,e[o]=n,r=o):(e[r]=a,e[i]=n,r=i);else{if(!(void 0!==u&&0>P(u,n)))break e;e[r]=u,e[o]=n,r=o}}}return t}return null}function P(e,t){var n=e.sortIndex-t.sortIndex;return 0!==n?n:e.id-t.id}var N=[],z=[],O=1,R=null,M=3,I=!1,F=!1,D=!1;function L(e){for(var t=C(z);null!==t;){if(null===t.callback)_(z);else{if(!(t.startTime<=e))break;_(z),t.sortIndex=t.expirationTime,S(N,t)}t=C(z)}}function A(e){if(D=!1,L(e),!F)if(null!==C(N))F=!0,r(U);else{var t=C(z);null!==t&&l(A,t.startTime-e)}}function U(e,n){F=!1,D&&(D=!1,i()),I=!0;var r=M;try{for(L(n),R=C(N);null!==R&&(!(R.expirationTime>n)||e&&!a());){var o=R.callback;if(null!==o){R.callback=null,M=R.priorityLevel;var u=o(R.expirationTime<=n);n=t.unstable_now(),"function"==typeof u?R.callback=u:R===C(N)&&_(N),L(n)}else _(N);R=C(N)}if(null!==R)var c=!0;else{var s=C(z);null!==s&&l(A,s.startTime-n),c=!1}return c}finally{R=null,M=r,I=!1}}function V(e){switch(e){case 1:return-1;case 2:return 250;case 5:return 1073741823;case 4:return 1e4;default:return 5e3}}var W=o;t.unstable_IdlePriority=5,t.unstable_ImmediatePriority=1,t.unstable_LowPriority=4,t.unstable_NormalPriority=3,t.unstable_Profiling=null,t.unstable_UserBlockingPriority=2,t.unstable_cancelCallback=function(e){e.callback=null},t.unstable_continueExecution=function(){F||I||(F=!0,r(U))},t.unstable_getCurrentPriorityLevel=function(){return M},t.unstable_getFirstCallbackNode=function(){return C(N)},t.unstable_next=function(e){switch(M){case 1:case 2:case 3:var t=3;break;default:t=M}var n=M;M=t;try{return e()}finally{M=n}},t.unstable_pauseExecution=function(){},t.unstable_requestPaint=W,t.unstable_runWithPriority=function(e,t){switch(e){case 1:case 2:case 3:case 4:case 5:break;default:e=3}var n=M;M=e;try{return t()}finally{M=n}},t.unstable_scheduleCallback=function(e,n,a){var o=t.unstable_now();if("object"==typeof a&&null!==a){var u=a.delay;u="number"==typeof u&&0<u?o+u:o,a="number"==typeof a.timeout?a.timeout:V(e)}else a=V(e),u=o;return e={id:O++,callback:n,priorityLevel:e,startTime:u,expirationTime:a=u+a,sortIndex:-1},u>o?(e.sortIndex=u,S(z,e),null===C(N)&&e===C(z)&&(D?i():D=!0,l(A,u-o))):(e.sortIndex=a,S(N,e),F||I||(F=!0,r(U))),e},t.unstable_shouldYield=function(){var e=t.unstable_now();L(e);var n=C(N);return n!==R&&null!==R&&null!==n&&null!==n.callback&&n.startTime<=e&&n.expirationTime<R.expirationTime||a()},t.unstable_wrapCallback=function(e){var t=M;return function(){var n=M;M=t;try{return e.apply(this,arguments)}finally{M=n}}}},WbBG:function(e,t,n){"use strict";e.exports="SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED"},i8i4:function(e,t,n){"use strict";!function e(){if("undefined"!=typeof __REACT_DEVTOOLS_GLOBAL_HOOK__&&"function"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE){0;try{__REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(e)}catch(t){console.error(t)}}}(),e.exports=n("yl30")},q1tI:function(e,t,n){"use strict";e.exports=n("viRO")},viRO:function(e,t,n){"use strict";var r=n("6qGY"),l="function"==typeof Symbol&&Symbol.for,i=l?Symbol.for("react.element"):60103,a=l?Symbol.for("react.portal"):60106,o=l?Symbol.for("react.fragment"):60107,u=l?Symbol.for("react.strict_mode"):60108,c=l?Symbol.for("react.profiler"):60114,s=l?Symbol.for("react.provider"):60109,f=l?Symbol.for("react.context"):60110,d=l?Symbol.for("react.forward_ref"):60112,p=l?Symbol.for("react.suspense"):60113,m=l?Symbol.for("react.memo"):60115,h=l?Symbol.for("react.lazy"):60116,v="function"==typeof Symbol&&Symbol.iterator;function g(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}var y={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},b={};function w(e,t,n){this.props=e,this.context=t,this.refs=b,this.updater=n||y}function k(){}function x(e,t,n){this.props=e,this.context=t,this.refs=b,this.updater=n||y}w.prototype.isReactComponent={},w.prototype.setState=function(e,t){if("object"!=typeof e&&"function"!=typeof e&&null!=e)throw Error(g(85));this.updater.enqueueSetState(this,e,t,"setState")},w.prototype.forceUpdate=function(e){this.updater.enqueueForceUpdate(this,e,"forceUpdate")},k.prototype=w.prototype;var T=x.prototype=new k;T.constructor=x,r(T,w.prototype),T.isPureReactComponent=!0;var E={current:null},S=Object.prototype.hasOwnProperty,C={key:!0,ref:!0,__self:!0,__source:!0};function _(e,t,n){var r,l={},a=null,o=null;if(null!=t)for(r in void 0!==t.ref&&(o=t.ref),void 0!==t.key&&(a=""+t.key),t)S.call(t,r)&&!C.hasOwnProperty(r)&&(l[r]=t[r]);var u=arguments.length-2;if(1===u)l.children=n;else if(1<u){for(var c=Array(u),s=0;s<u;s++)c[s]=arguments[s+2];l.children=c}if(e&&e.defaultProps)for(r in u=e.defaultProps)void 0===l[r]&&(l[r]=u[r]);return{$$typeof:i,type:e,key:a,ref:o,props:l,_owner:E.current}}function P(e){return"object"==typeof e&&null!==e&&e.$$typeof===i}var N=/\/+/g,z=[];function O(e,t,n,r){if(z.length){var l=z.pop();return l.result=e,l.keyPrefix=t,l.func=n,l.context=r,l.count=0,l}return{result:e,keyPrefix:t,func:n,context:r,count:0}}function R(e){e.result=null,e.keyPrefix=null,e.func=null,e.context=null,e.count=0,10>z.length&&z.push(e)}function M(e,t,n){return null==e?0:function e(t,n,r,l){var o=typeof t;"undefined"!==o&&"boolean"!==o||(t=null);var u=!1;if(null===t)u=!0;else switch(o){case"string":case"number":u=!0;break;case"object":switch(t.$$typeof){case i:case a:u=!0}}if(u)return r(l,t,""===n?"."+I(t,0):n),1;if(u=0,n=""===n?".":n+":",Array.isArray(t))for(var c=0;c<t.length;c++){var s=n+I(o=t[c],c);u+=e(o,s,r,l)}else if(null===t||"object"!=typeof t?s=null:s="function"==typeof(s=v&&t[v]||t["@@iterator"])?s:null,"function"==typeof s)for(t=s.call(t),c=0;!(o=t.next()).done;)u+=e(o=o.value,s=n+I(o,c++),r,l);else if("object"===o)throw r=""+t,Error(g(31,"[object Object]"===r?"object with keys {"+Object.keys(t).join(", ")+"}":r,""));return u}(e,"",t,n)}function I(e,t){return"object"==typeof e&&null!==e&&null!=e.key?function(e){var t={"=":"=0",":":"=2"};return"$"+(""+e).replace(/[=:]/g,(function(e){return t[e]}))}(e.key):t.toString(36)}function F(e,t){e.func.call(e.context,t,e.count++)}function D(e,t,n){var r=e.result,l=e.keyPrefix;e=e.func.call(e.context,t,e.count++),Array.isArray(e)?L(e,r,n,(function(e){return e})):null!=e&&(P(e)&&(e=function(e,t){return{$$typeof:i,type:e.type,key:t,ref:e.ref,props:e.props,_owner:e._owner}}(e,l+(!e.key||t&&t.key===e.key?"":(""+e.key).replace(N,"$&/")+"/")+n)),r.push(e))}function L(e,t,n,r,l){var i="";null!=n&&(i=(""+n).replace(N,"$&/")+"/"),M(e,D,t=O(t,i,r,l)),R(t)}var A={current:null};function U(){var e=A.current;if(null===e)throw Error(g(321));return e}var V={ReactCurrentDispatcher:A,ReactCurrentBatchConfig:{suspense:null},ReactCurrentOwner:E,IsSomeRendererActing:{current:!1},assign:r};t.Children={map:function(e,t,n){if(null==e)return e;var r=[];return L(e,r,null,t,n),r},forEach:function(e,t,n){if(null==e)return e;M(e,F,t=O(null,null,t,n)),R(t)},count:function(e){return M(e,(function(){return null}),null)},toArray:function(e){var t=[];return L(e,t,null,(function(e){return e})),t},only:function(e){if(!P(e))throw Error(g(143));return e}},t.Component=w,t.Fragment=o,t.Profiler=c,t.PureComponent=x,t.StrictMode=u,t.Suspense=p,t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=V,t.cloneElement=function(e,t,n){if(null==e)throw Error(g(267,e));var l=r({},e.props),a=e.key,o=e.ref,u=e._owner;if(null!=t){if(void 0!==t.ref&&(o=t.ref,u=E.current),void 0!==t.key&&(a=""+t.key),e.type&&e.type.defaultProps)var c=e.type.defaultProps;for(s in t)S.call(t,s)&&!C.hasOwnProperty(s)&&(l[s]=void 0===t[s]&&void 0!==c?c[s]:t[s])}var s=arguments.length-2;if(1===s)l.children=n;else if(1<s){c=Array(s);for(var f=0;f<s;f++)c[f]=arguments[f+2];l.children=c}return{$$typeof:i,type:e.type,key:a,ref:o,props:l,_owner:u}},t.createContext=function(e,t){return void 0===t&&(t=null),(e={$$typeof:f,_calculateChangedBits:t,_currentValue:e,_currentValue2:e,_threadCount:0,Provider:null,Consumer:null}).Provider={$$typeof:s,_context:e},e.Consumer=e},t.createElement=_,t.createFactory=function(e){var t=_.bind(null,e);return t.type=e,t},t.createRef=function(){return{current:null}},t.forwardRef=function(e){return{$$typeof:d,render:e}},t.isValidElement=P,t.lazy=function(e){return{$$typeof:h,_ctor:e,_status:-1,_result:null}},t.memo=function(e,t){return{$$typeof:m,type:e,compare:void 0===t?null:t}},t.useCallback=function(e,t){return U().useCallback(e,t)},t.useContext=function(e,t){return U().useContext(e,t)},t.useDebugValue=function(){},t.useEffect=function(e,t){return U().useEffect(e,t)},t.useImperativeHandle=function(e,t,n){return U().useImperativeHandle(e,t,n)},t.useLayoutEffect=function(e,t){return U().useLayoutEffect(e,t)},t.useMemo=function(e,t){return U().useMemo(e,t)},t.useReducer=function(e,t,n){return U().useReducer(e,t,n)},t.useRef=function(e){return U().useRef(e)},t.useState=function(e){return U().useState(e)},t.version="16.13.1"},yl30:function(e,t,n){"use strict";var r=n("q1tI"),l=n("6qGY"),i=n("JhMR");function a(e){for(var t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);return"Minified React error #"+e+"; visit "+t+" for the full message or use the non-minified dev environment for full errors and additional helpful warnings."}if(!r)throw Error(a(227));function o(e,t,n,r,l,i,a,o,u){var c=Array.prototype.slice.call(arguments,3);try{t.apply(n,c)}catch(s){this.onError(s)}}var u=!1,c=null,s=!1,f=null,d={onError:function(e){u=!0,c=e}};function p(e,t,n,r,l,i,a,s,f){u=!1,c=null,o.apply(d,arguments)}var m=null,h=null,v=null;function g(e,t,n){var r=e.type||"unknown-event";e.currentTarget=v(n),function(e,t,n,r,l,i,o,d,m){if(p.apply(this,arguments),u){if(!u)throw Error(a(198));var h=c;u=!1,c=null,s||(s=!0,f=h)}}(r,t,void 0,e),e.currentTarget=null}var y=null,b={};function w(){if(y)for(var e in b){var t=b[e],n=y.indexOf(e);if(!(-1<n))throw Error(a(96,e));if(!x[n]){if(!t.extractEvents)throw Error(a(97,e));for(var r in x[n]=t,n=t.eventTypes){var l=void 0,i=n[r],o=t,u=r;if(T.hasOwnProperty(u))throw Error(a(99,u));T[u]=i;var c=i.phasedRegistrationNames;if(c){for(l in c)c.hasOwnProperty(l)&&k(c[l],o,u);l=!0}else i.registrationName?(k(i.registrationName,o,u),l=!0):l=!1;if(!l)throw Error(a(98,r,e))}}}}function k(e,t,n){if(E[e])throw Error(a(100,e));E[e]=t,S[e]=t.eventTypes[n].dependencies}var x=[],T={},E={},S={};function C(e){var t,n=!1;for(t in e)if(e.hasOwnProperty(t)){var r=e[t];if(!b.hasOwnProperty(t)||b[t]!==r){if(b[t])throw Error(a(102,t));b[t]=r,n=!0}}n&&w()}var _=!("undefined"==typeof window||void 0===window.document||void 0===window.document.createElement),P=null,N=null,z=null;function O(e){if(e=h(e)){if("function"!=typeof P)throw Error(a(280));var t=e.stateNode;t&&(t=m(t),P(e.stateNode,e.type,t))}}function R(e){N?z?z.push(e):z=[e]:N=e}function M(){if(N){var e=N,t=z;if(z=N=null,O(e),t)for(e=0;e<t.length;e++)O(t[e])}}function I(e,t){return e(t)}function F(e,t,n,r,l){return e(t,n,r,l)}function D(){}var L=I,A=!1,U=!1;function V(){null===N&&null===z||(D(),M())}function W(e,t,n){if(U)return e(t,n);U=!0;try{return L(e,t,n)}finally{U=!1,V()}}var j=/^[:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD][:A-Z_a-z\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02FF\u0370-\u037D\u037F-\u1FFF\u200C-\u200D\u2070-\u218F\u2C00-\u2FEF\u3001-\uD7FF\uF900-\uFDCF\uFDF0-\uFFFD\-.0-9\u00B7\u0300-\u036F\u203F-\u2040]*$/,Q=Object.prototype.hasOwnProperty,$={},B={};function H(e,t,n,r,l,i){this.acceptsBooleans=2===t||3===t||4===t,this.attributeName=r,this.attributeNamespace=l,this.mustUseProperty=n,this.propertyName=e,this.type=t,this.sanitizeURL=i}var K={};"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style".split(" ").forEach((function(e){K[e]=new H(e,0,!1,e,null,!1)})),[["acceptCharset","accept-charset"],["className","class"],["htmlFor","for"],["httpEquiv","http-equiv"]].forEach((function(e){var t=e[0];K[t]=new H(t,1,!1,e[1],null,!1)})),["contentEditable","draggable","spellCheck","value"].forEach((function(e){K[e]=new H(e,2,!1,e.toLowerCase(),null,!1)})),["autoReverse","externalResourcesRequired","focusable","preserveAlpha"].forEach((function(e){K[e]=new H(e,2,!1,e,null,!1)})),"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope".split(" ").forEach((function(e){K[e]=new H(e,3,!1,e.toLowerCase(),null,!1)})),["checked","multiple","muted","selected"].forEach((function(e){K[e]=new H(e,3,!0,e,null,!1)})),["capture","download"].forEach((function(e){K[e]=new H(e,4,!1,e,null,!1)})),["cols","rows","size","span"].forEach((function(e){K[e]=new H(e,6,!1,e,null,!1)})),["rowSpan","start"].forEach((function(e){K[e]=new H(e,5,!1,e.toLowerCase(),null,!1)}));var q=/[\-:]([a-z])/g;function Y(e){return e[1].toUpperCase()}"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height".split(" ").forEach((function(e){var t=e.replace(q,Y);K[t]=new H(t,1,!1,e,null,!1)})),"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type".split(" ").forEach((function(e){var t=e.replace(q,Y);K[t]=new H(t,1,!1,e,"http://www.w3.org/1999/xlink",!1)})),["xml:base","xml:lang","xml:space"].forEach((function(e){var t=e.replace(q,Y);K[t]=new H(t,1,!1,e,"http://www.w3.org/XML/1998/namespace",!1)})),["tabIndex","crossOrigin"].forEach((function(e){K[e]=new H(e,1,!1,e.toLowerCase(),null,!1)})),K.xlinkHref=new H("xlinkHref",1,!1,"xlink:href","http://www.w3.org/1999/xlink",!0),["src","href","action","formAction"].forEach((function(e){K[e]=new H(e,1,!1,e.toLowerCase(),null,!0)}));var X=r.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;function G(e,t,n,r){var l=K.hasOwnProperty(t)?K[t]:null;(null!==l?0===l.type:!r&&(2<t.length&&("o"===t[0]||"O"===t[0])&&("n"===t[1]||"N"===t[1])))||(function(e,t,n,r){if(null==t||function(e,t,n,r){if(null!==n&&0===n.type)return!1;switch(typeof t){case"function":case"symbol":return!0;case"boolean":return!r&&(null!==n?!n.acceptsBooleans:"data-"!==(e=e.toLowerCase().slice(0,5))&&"aria-"!==e);default:return!1}}(e,t,n,r))return!0;if(r)return!1;if(null!==n)switch(n.type){case 3:return!t;case 4:return!1===t;case 5:return isNaN(t);case 6:return isNaN(t)||1>t}return!1}(t,n,l,r)&&(n=null),r||null===l?function(e){return!!Q.call(B,e)||!Q.call($,e)&&(j.test(e)?B[e]=!0:($[e]=!0,!1))}(t)&&(null===n?e.removeAttribute(t):e.setAttribute(t,""+n)):l.mustUseProperty?e[l.propertyName]=null===n?3!==l.type&&"":n:(t=l.attributeName,r=l.attributeNamespace,null===n?e.removeAttribute(t):(n=3===(l=l.type)||4===l&&!0===n?"":""+n,r?e.setAttributeNS(r,t,n):e.setAttribute(t,n))))}X.hasOwnProperty("ReactCurrentDispatcher")||(X.ReactCurrentDispatcher={current:null}),X.hasOwnProperty("ReactCurrentBatchConfig")||(X.ReactCurrentBatchConfig={suspense:null});var J=/^(.*)[\\\/]/,Z="function"==typeof Symbol&&Symbol.for,ee=Z?Symbol.for("react.element"):60103,te=Z?Symbol.for("react.portal"):60106,ne=Z?Symbol.for("react.fragment"):60107,re=Z?Symbol.for("react.strict_mode"):60108,le=Z?Symbol.for("react.profiler"):60114,ie=Z?Symbol.for("react.provider"):60109,ae=Z?Symbol.for("react.context"):60110,oe=Z?Symbol.for("react.concurrent_mode"):60111,ue=Z?Symbol.for("react.forward_ref"):60112,ce=Z?Symbol.for("react.suspense"):60113,se=Z?Symbol.for("react.suspense_list"):60120,fe=Z?Symbol.for("react.memo"):60115,de=Z?Symbol.for("react.lazy"):60116,pe=Z?Symbol.for("react.block"):60121,me="function"==typeof Symbol&&Symbol.iterator;function he(e){return null===e||"object"!=typeof e?null:"function"==typeof(e=me&&e[me]||e["@@iterator"])?e:null}function ve(e){if(null==e)return null;if("function"==typeof e)return e.displayName||e.name||null;if("string"==typeof e)return e;switch(e){case ne:return"Fragment";case te:return"Portal";case le:return"Profiler";case re:return"StrictMode";case ce:return"Suspense";case se:return"SuspenseList"}if("object"==typeof e)switch(e.$$typeof){case ae:return"Context.Consumer";case ie:return"Context.Provider";case ue:var t=e.render;return t=t.displayName||t.name||"",e.displayName||(""!==t?"ForwardRef("+t+")":"ForwardRef");case fe:return ve(e.type);case pe:return ve(e.render);case de:if(e=1===e._status?e._result:null)return ve(e)}return null}function ge(e){var t="";do{e:switch(e.tag){case 3:case 4:case 6:case 7:case 10:case 9:var n="";break e;default:var r=e._debugOwner,l=e._debugSource,i=ve(e.type);n=null,r&&(n=ve(r.type)),r=i,i="",l?i=" (at "+l.fileName.replace(J,"")+":"+l.lineNumber+")":n&&(i=" (created by "+n+")"),n="\n in "+(r||"Unknown")+i}t+=n,e=e.return}while(e);return t}function ye(e){switch(typeof e){case"boolean":case"number":case"object":case"string":case"undefined":return e;default:return""}}function be(e){var t=e.type;return(e=e.nodeName)&&"input"===e.toLowerCase()&&("checkbox"===t||"radio"===t)}function we(e){e._valueTracker||(e._valueTracker=function(e){var t=be(e)?"checked":"value",n=Object.getOwnPropertyDescriptor(e.constructor.prototype,t),r=""+e[t];if(!e.hasOwnProperty(t)&&void 0!==n&&"function"==typeof n.get&&"function"==typeof n.set){var l=n.get,i=n.set;return Object.defineProperty(e,t,{configurable:!0,get:function(){return l.call(this)},set:function(e){r=""+e,i.call(this,e)}}),Object.defineProperty(e,t,{enumerable:n.enumerable}),{getValue:function(){return r},setValue:function(e){r=""+e},stopTracking:function(){e._valueTracker=null,delete e[t]}}}}(e))}function ke(e){if(!e)return!1;var t=e._valueTracker;if(!t)return!0;var n=t.getValue(),r="";return e&&(r=be(e)?e.checked?"true":"false":e.value),(e=r)!==n&&(t.setValue(e),!0)}function xe(e,t){var n=t.checked;return l({},t,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:null!=n?n:e._wrapperState.initialChecked})}function Te(e,t){var n=null==t.defaultValue?"":t.defaultValue,r=null!=t.checked?t.checked:t.defaultChecked;n=ye(null!=t.value?t.value:n),e._wrapperState={initialChecked:r,initialValue:n,controlled:"checkbox"===t.type||"radio"===t.type?null!=t.checked:null!=t.value}}function Ee(e,t){null!=(t=t.checked)&&G(e,"checked",t,!1)}function Se(e,t){Ee(e,t);var n=ye(t.value),r=t.type;if(null!=n)"number"===r?(0===n&&""===e.value||e.value!=n)&&(e.value=""+n):e.value!==""+n&&(e.value=""+n);else if("submit"===r||"reset"===r)return void e.removeAttribute("value");t.hasOwnProperty("value")?_e(e,t.type,n):t.hasOwnProperty("defaultValue")&&_e(e,t.type,ye(t.defaultValue)),null==t.checked&&null!=t.defaultChecked&&(e.defaultChecked=!!t.defaultChecked)}function Ce(e,t,n){if(t.hasOwnProperty("value")||t.hasOwnProperty("defaultValue")){var r=t.type;if(!("submit"!==r&&"reset"!==r||void 0!==t.value&&null!==t.value))return;t=""+e._wrapperState.initialValue,n||t===e.value||(e.value=t),e.defaultValue=t}""!==(n=e.name)&&(e.name=""),e.defaultChecked=!!e._wrapperState.initialChecked,""!==n&&(e.name=n)}function _e(e,t,n){"number"===t&&e.ownerDocument.activeElement===e||(null==n?e.defaultValue=""+e._wrapperState.initialValue:e.defaultValue!==""+n&&(e.defaultValue=""+n))}function Pe(e,t){return e=l({children:void 0},t),(t=function(e){var t="";return r.Children.forEach(e,(function(e){null!=e&&(t+=e)})),t}(t.children))&&(e.children=t),e}function Ne(e,t,n,r){if(e=e.options,t){t={};for(var l=0;l<n.length;l++)t["$"+n[l]]=!0;for(n=0;n<e.length;n++)l=t.hasOwnProperty("$"+e[n].value),e[n].selected!==l&&(e[n].selected=l),l&&r&&(e[n].defaultSelected=!0)}else{for(n=""+ye(n),t=null,l=0;l<e.length;l++){if(e[l].value===n)return e[l].selected=!0,void(r&&(e[l].defaultSelected=!0));null!==t||e[l].disabled||(t=e[l])}null!==t&&(t.selected=!0)}}function ze(e,t){if(null!=t.dangerouslySetInnerHTML)throw Error(a(91));return l({},t,{value:void 0,defaultValue:void 0,children:""+e._wrapperState.initialValue})}function Oe(e,t){var n=t.value;if(null==n){if(n=t.children,t=t.defaultValue,null!=n){if(null!=t)throw Error(a(92));if(Array.isArray(n)){if(!(1>=n.length))throw Error(a(93));n=n[0]}t=n}null==t&&(t=""),n=t}e._wrapperState={initialValue:ye(n)}}function Re(e,t){var n=ye(t.value),r=ye(t.defaultValue);null!=n&&((n=""+n)!==e.value&&(e.value=n),null==t.defaultValue&&e.defaultValue!==n&&(e.defaultValue=n)),null!=r&&(e.defaultValue=""+r)}function Me(e){var t=e.textContent;t===e._wrapperState.initialValue&&""!==t&&null!==t&&(e.value=t)}var Ie="http://www.w3.org/1999/xhtml",Fe="http://www.w3.org/2000/svg";function De(e){switch(e){case"svg":return"http://www.w3.org/2000/svg";case"math":return"http://www.w3.org/1998/Math/MathML";default:return"http://www.w3.org/1999/xhtml"}}function Le(e,t){return null==e||"http://www.w3.org/1999/xhtml"===e?De(t):"http://www.w3.org/2000/svg"===e&&"foreignObject"===t?"http://www.w3.org/1999/xhtml":e}var Ae,Ue=function(e){return"undefined"!=typeof MSApp&&MSApp.execUnsafeLocalFunction?function(t,n,r,l){MSApp.execUnsafeLocalFunction((function(){return e(t,n)}))}:e}((function(e,t){if(e.namespaceURI!==Fe||"innerHTML"in e)e.innerHTML=t;else{for((Ae=Ae||document.createElement("div")).innerHTML="<svg>"+t.valueOf().toString()+"</svg>",t=Ae.firstChild;e.firstChild;)e.removeChild(e.firstChild);for(;t.firstChild;)e.appendChild(t.firstChild)}}));function Ve(e,t){if(t){var n=e.firstChild;if(n&&n===e.lastChild&&3===n.nodeType)return void(n.nodeValue=t)}e.textContent=t}function We(e,t){var n={};return n[e.toLowerCase()]=t.toLowerCase(),n["Webkit"+e]="webkit"+t,n["Moz"+e]="moz"+t,n}var je={animationend:We("Animation","AnimationEnd"),animationiteration:We("Animation","AnimationIteration"),animationstart:We("Animation","AnimationStart"),transitionend:We("Transition","TransitionEnd")},Qe={},$e={};function Be(e){if(Qe[e])return Qe[e];if(!je[e])return e;var t,n=je[e];for(t in n)if(n.hasOwnProperty(t)&&t in $e)return Qe[e]=n[t];return e}_&&($e=document.createElement("div").style,"AnimationEvent"in window||(delete je.animationend.animation,delete je.animationiteration.animation,delete je.animationstart.animation),"TransitionEvent"in window||delete je.transitionend.transition);var He=Be("animationend"),Ke=Be("animationiteration"),qe=Be("animationstart"),Ye=Be("transitionend"),Xe="abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange seeked seeking stalled suspend timeupdate volumechange waiting".split(" "),Ge=new("function"==typeof WeakMap?WeakMap:Map);function Je(e){var t=Ge.get(e);return void 0===t&&(t=new Map,Ge.set(e,t)),t}function Ze(e){var t=e,n=e;if(e.alternate)for(;t.return;)t=t.return;else{e=t;do{0!=(1026&(t=e).effectTag)&&(n=t.return),e=t.return}while(e)}return 3===t.tag?n:null}function et(e){if(13===e.tag){var t=e.memoizedState;if(null===t&&(null!==(e=e.alternate)&&(t=e.memoizedState)),null!==t)return t.dehydrated}return null}function tt(e){if(Ze(e)!==e)throw Error(a(188))}function nt(e){if(!(e=function(e){var t=e.alternate;if(!t){if(null===(t=Ze(e)))throw Error(a(188));return t!==e?null:e}for(var n=e,r=t;;){var l=n.return;if(null===l)break;var i=l.alternate;if(null===i){if(null!==(r=l.return)){n=r;continue}break}if(l.child===i.child){for(i=l.child;i;){if(i===n)return tt(l),e;if(i===r)return tt(l),t;i=i.sibling}throw Error(a(188))}if(n.return!==r.return)n=l,r=i;else{for(var o=!1,u=l.child;u;){if(u===n){o=!0,n=l,r=i;break}if(u===r){o=!0,r=l,n=i;break}u=u.sibling}if(!o){for(u=i.child;u;){if(u===n){o=!0,n=i,r=l;break}if(u===r){o=!0,r=i,n=l;break}u=u.sibling}if(!o)throw Error(a(189))}}if(n.alternate!==r)throw Error(a(190))}if(3!==n.tag)throw Error(a(188));return n.stateNode.current===n?e:t}(e)))return null;for(var t=e;;){if(5===t.tag||6===t.tag)return t;if(t.child)t.child.return=t,t=t.child;else{if(t===e)break;for(;!t.sibling;){if(!t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}}return null}function rt(e,t){if(null==t)throw Error(a(30));return null==e?t:Array.isArray(e)?Array.isArray(t)?(e.push.apply(e,t),e):(e.push(t),e):Array.isArray(t)?[e].concat(t):[e,t]}function lt(e,t,n){Array.isArray(e)?e.forEach(t,n):e&&t.call(n,e)}var it=null;function at(e){if(e){var t=e._dispatchListeners,n=e._dispatchInstances;if(Array.isArray(t))for(var r=0;r<t.length&&!e.isPropagationStopped();r++)g(e,t[r],n[r]);else t&&g(e,t,n);e._dispatchListeners=null,e._dispatchInstances=null,e.isPersistent()||e.constructor.release(e)}}function ot(e){if(null!==e&&(it=rt(it,e)),e=it,it=null,e){if(lt(e,at),it)throw Error(a(95));if(s)throw e=f,s=!1,f=null,e}}function ut(e){return(e=e.target||e.srcElement||window).correspondingUseElement&&(e=e.correspondingUseElement),3===e.nodeType?e.parentNode:e}function ct(e){if(!_)return!1;var t=(e="on"+e)in document;return t||((t=document.createElement("div")).setAttribute(e,"return;"),t="function"==typeof t[e]),t}var st=[];function ft(e){e.topLevelType=null,e.nativeEvent=null,e.targetInst=null,e.ancestors.length=0,10>st.length&&st.push(e)}function dt(e,t,n,r){if(st.length){var l=st.pop();return l.topLevelType=e,l.eventSystemFlags=r,l.nativeEvent=t,l.targetInst=n,l}return{topLevelType:e,eventSystemFlags:r,nativeEvent:t,targetInst:n,ancestors:[]}}function pt(e){var t=e.targetInst,n=t;do{if(!n){e.ancestors.push(n);break}var r=n;if(3===r.tag)r=r.stateNode.containerInfo;else{for(;r.return;)r=r.return;r=3!==r.tag?null:r.stateNode.containerInfo}if(!r)break;5!==(t=n.tag)&&6!==t||e.ancestors.push(n),n=_n(r)}while(n);for(n=0;n<e.ancestors.length;n++){t=e.ancestors[n];var l=ut(e.nativeEvent);r=e.topLevelType;var i=e.nativeEvent,a=e.eventSystemFlags;0===n&&(a|=64);for(var o=null,u=0;u<x.length;u++){var c=x[u];c&&(c=c.extractEvents(r,t,i,l,a))&&(o=rt(o,c))}ot(o)}}function mt(e,t,n){if(!n.has(e)){switch(e){case"scroll":qt(t,"scroll",!0);break;case"focus":case"blur":qt(t,"focus",!0),qt(t,"blur",!0),n.set("blur",null),n.set("focus",null);break;case"cancel":case"close":ct(e)&&qt(t,e,!0);break;case"invalid":case"submit":case"reset":break;default:-1===Xe.indexOf(e)&&Kt(e,t)}n.set(e,null)}}var ht,vt,gt,yt=!1,bt=[],wt=null,kt=null,xt=null,Tt=new Map,Et=new Map,St=[],Ct="mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput close cancel copy cut paste click change contextmenu reset submit".split(" "),_t="focus blur dragenter dragleave mouseover mouseout pointerover pointerout gotpointercapture lostpointercapture".split(" ");function Pt(e,t,n,r,l){return{blockedOn:e,topLevelType:t,eventSystemFlags:32|n,nativeEvent:l,container:r}}function Nt(e,t){switch(e){case"focus":case"blur":wt=null;break;case"dragenter":case"dragleave":kt=null;break;case"mouseover":case"mouseout":xt=null;break;case"pointerover":case"pointerout":Tt.delete(t.pointerId);break;case"gotpointercapture":case"lostpointercapture":Et.delete(t.pointerId)}}function zt(e,t,n,r,l,i){return null===e||e.nativeEvent!==i?(e=Pt(t,n,r,l,i),null!==t&&(null!==(t=Pn(t))&&vt(t)),e):(e.eventSystemFlags|=r,e)}function Ot(e){var t=_n(e.target);if(null!==t){var n=Ze(t);if(null!==n)if(13===(t=n.tag)){if(null!==(t=et(n)))return e.blockedOn=t,void i.unstable_runWithPriority(e.priority,(function(){gt(n)}))}else if(3===t&&n.stateNode.hydrate)return void(e.blockedOn=3===n.tag?n.stateNode.containerInfo:null)}e.blockedOn=null}function Rt(e){if(null!==e.blockedOn)return!1;var t=Jt(e.topLevelType,e.eventSystemFlags,e.container,e.nativeEvent);if(null!==t){var n=Pn(t);return null!==n&&vt(n),e.blockedOn=t,!1}return!0}function Mt(e,t,n){Rt(e)&&n.delete(t)}function It(){for(yt=!1;0<bt.length;){var e=bt[0];if(null!==e.blockedOn){null!==(e=Pn(e.blockedOn))&&ht(e);break}var t=Jt(e.topLevelType,e.eventSystemFlags,e.container,e.nativeEvent);null!==t?e.blockedOn=t:bt.shift()}null!==wt&&Rt(wt)&&(wt=null),null!==kt&&Rt(kt)&&(kt=null),null!==xt&&Rt(xt)&&(xt=null),Tt.forEach(Mt),Et.forEach(Mt)}function Ft(e,t){e.blockedOn===t&&(e.blockedOn=null,yt||(yt=!0,i.unstable_scheduleCallback(i.unstable_NormalPriority,It)))}function Dt(e){function t(t){return Ft(t,e)}if(0<bt.length){Ft(bt[0],e);for(var n=1;n<bt.length;n++){var r=bt[n];r.blockedOn===e&&(r.blockedOn=null)}}for(null!==wt&&Ft(wt,e),null!==kt&&Ft(kt,e),null!==xt&&Ft(xt,e),Tt.forEach(t),Et.forEach(t),n=0;n<St.length;n++)(r=St[n]).blockedOn===e&&(r.blockedOn=null);for(;0<St.length&&null===(n=St[0]).blockedOn;)Ot(n),null===n.blockedOn&&St.shift()}var Lt={},At=new Map,Ut=new Map,Vt=["abort","abort",He,"animationEnd",Ke,"animationIteration",qe,"animationStart","canplay","canPlay","canplaythrough","canPlayThrough","durationchange","durationChange","emptied","emptied","encrypted","encrypted","ended","ended","error","error","gotpointercapture","gotPointerCapture","load","load","loadeddata","loadedData","loadedmetadata","loadedMetadata","loadstart","loadStart","lostpointercapture","lostPointerCapture","playing","playing","progress","progress","seeking","seeking","stalled","stalled","suspend","suspend","timeupdate","timeUpdate",Ye,"transitionEnd","waiting","waiting"];function Wt(e,t){for(var n=0;n<e.length;n+=2){var r=e[n],l=e[n+1],i="on"+(l[0].toUpperCase()+l.slice(1));i={phasedRegistrationNames:{bubbled:i,captured:i+"Capture"},dependencies:[r],eventPriority:t},Ut.set(r,t),At.set(r,i),Lt[l]=i}}Wt("blur blur cancel cancel click click close close contextmenu contextMenu copy copy cut cut auxclick auxClick dblclick doubleClick dragend dragEnd dragstart dragStart drop drop focus focus input input invalid invalid keydown keyDown keypress keyPress keyup keyUp mousedown mouseDown mouseup mouseUp paste paste pause pause play play pointercancel pointerCancel pointerdown pointerDown pointerup pointerUp ratechange rateChange reset reset seeked seeked submit submit touchcancel touchCancel touchend touchEnd touchstart touchStart volumechange volumeChange".split(" "),0),Wt("drag drag dragenter dragEnter dragexit dragExit dragleave dragLeave dragover dragOver mousemove mouseMove mouseout mouseOut mouseover mouseOver pointermove pointerMove pointerout pointerOut pointerover pointerOver scroll scroll toggle toggle touchmove touchMove wheel wheel".split(" "),1),Wt(Vt,2);for(var jt="change selectionchange textInput compositionstart compositionend compositionupdate".split(" "),Qt=0;Qt<jt.length;Qt++)Ut.set(jt[Qt],0);var $t=i.unstable_UserBlockingPriority,Bt=i.unstable_runWithPriority,Ht=!0;function Kt(e,t){qt(t,e,!1)}function qt(e,t,n){var r=Ut.get(t);switch(void 0===r?2:r){case 0:r=Yt.bind(null,t,1,e);break;case 1:r=Xt.bind(null,t,1,e);break;default:r=Gt.bind(null,t,1,e)}n?e.addEventListener(t,r,!0):e.addEventListener(t,r,!1)}function Yt(e,t,n,r){A||D();var l=Gt,i=A;A=!0;try{F(l,e,t,n,r)}finally{(A=i)||V()}}function Xt(e,t,n,r){Bt($t,Gt.bind(null,e,t,n,r))}function Gt(e,t,n,r){if(Ht)if(0<bt.length&&-1<Ct.indexOf(e))e=Pt(null,e,t,n,r),bt.push(e);else{var l=Jt(e,t,n,r);if(null===l)Nt(e,r);else if(-1<Ct.indexOf(e))e=Pt(l,e,t,n,r),bt.push(e);else if(!function(e,t,n,r,l){switch(t){case"focus":return wt=zt(wt,e,t,n,r,l),!0;case"dragenter":return kt=zt(kt,e,t,n,r,l),!0;case"mouseover":return xt=zt(xt,e,t,n,r,l),!0;case"pointerover":var i=l.pointerId;return Tt.set(i,zt(Tt.get(i)||null,e,t,n,r,l)),!0;case"gotpointercapture":return i=l.pointerId,Et.set(i,zt(Et.get(i)||null,e,t,n,r,l)),!0}return!1}(l,e,t,n,r)){Nt(e,r),e=dt(e,r,null,t);try{W(pt,e)}finally{ft(e)}}}}function Jt(e,t,n,r){if(null!==(n=_n(n=ut(r)))){var l=Ze(n);if(null===l)n=null;else{var i=l.tag;if(13===i){if(null!==(n=et(l)))return n;n=null}else if(3===i){if(l.stateNode.hydrate)return 3===l.tag?l.stateNode.containerInfo:null;n=null}else l!==n&&(n=null)}}e=dt(e,r,n,t);try{W(pt,e)}finally{ft(e)}return null}var Zt={animationIterationCount:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,floodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},en=["Webkit","ms","Moz","O"];function tn(e,t,n){return null==t||"boolean"==typeof t||""===t?"":n||"number"!=typeof t||0===t||Zt.hasOwnProperty(e)&&Zt[e]?(""+t).trim():t+"px"}function nn(e,t){for(var n in e=e.style,t)if(t.hasOwnProperty(n)){var r=0===n.indexOf("--"),l=tn(n,t[n],r);"float"===n&&(n="cssFloat"),r?e.setProperty(n,l):e[n]=l}}Object.keys(Zt).forEach((function(e){en.forEach((function(t){t=t+e.charAt(0).toUpperCase()+e.substring(1),Zt[t]=Zt[e]}))}));var rn=l({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});function ln(e,t){if(t){if(rn[e]&&(null!=t.children||null!=t.dangerouslySetInnerHTML))throw Error(a(137,e,""));if(null!=t.dangerouslySetInnerHTML){if(null!=t.children)throw Error(a(60));if("object"!=typeof t.dangerouslySetInnerHTML||!("__html"in t.dangerouslySetInnerHTML))throw Error(a(61))}if(null!=t.style&&"object"!=typeof t.style)throw Error(a(62,""))}}function an(e,t){if(-1===e.indexOf("-"))return"string"==typeof t.is;switch(e){case"annotation-xml":case"color-profile":case"font-face":case"font-face-src":case"font-face-uri":case"font-face-format":case"font-face-name":case"missing-glyph":return!1;default:return!0}}var on=Ie;function un(e,t){var n=Je(e=9===e.nodeType||11===e.nodeType?e:e.ownerDocument);t=S[t];for(var r=0;r<t.length;r++)mt(t[r],e,n)}function cn(){}function sn(e){if(void 0===(e=e||("undefined"!=typeof document?document:void 0)))return null;try{return e.activeElement||e.body}catch(Hu){return e.body}}function fn(e){for(;e&&e.firstChild;)e=e.firstChild;return e}function dn(e,t){var n,r=fn(e);for(e=0;r;){if(3===r.nodeType){if(n=e+r.textContent.length,e<=t&&n>=t)return{node:r,offset:t-e};e=n}e:{for(;r;){if(r.nextSibling){r=r.nextSibling;break e}r=r.parentNode}r=void 0}r=fn(r)}}function pn(){for(var e=window,t=sn();t instanceof e.HTMLIFrameElement;){try{var n="string"==typeof t.contentWindow.location.href}catch(r){n=!1}if(!n)break;t=sn((e=t.contentWindow).document)}return t}function mn(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return t&&("input"===t&&("text"===e.type||"search"===e.type||"tel"===e.type||"url"===e.type||"password"===e.type)||"textarea"===t||"true"===e.contentEditable)}var hn=null,vn=null;function gn(e,t){switch(e){case"button":case"input":case"select":case"textarea":return!!t.autoFocus}return!1}function yn(e,t){return"textarea"===e||"option"===e||"noscript"===e||"string"==typeof t.children||"number"==typeof t.children||"object"==typeof t.dangerouslySetInnerHTML&&null!==t.dangerouslySetInnerHTML&&null!=t.dangerouslySetInnerHTML.__html}var bn="function"==typeof setTimeout?setTimeout:void 0,wn="function"==typeof clearTimeout?clearTimeout:void 0;function kn(e){for(;null!=e;e=e.nextSibling){var t=e.nodeType;if(1===t||3===t)break}return e}function xn(e){e=e.previousSibling;for(var t=0;e;){if(8===e.nodeType){var n=e.data;if("$"===n||"$!"===n||"$?"===n){if(0===t)return e;t--}else"/$"===n&&t++}e=e.previousSibling}return null}var Tn=Math.random().toString(36).slice(2),En="__reactInternalInstance$"+Tn,Sn="__reactEventHandlers$"+Tn,Cn="__reactContainere$"+Tn;function _n(e){var t=e[En];if(t)return t;for(var n=e.parentNode;n;){if(t=n[Cn]||n[En]){if(n=t.alternate,null!==t.child||null!==n&&null!==n.child)for(e=xn(e);null!==e;){if(n=e[En])return n;e=xn(e)}return t}n=(e=n).parentNode}return null}function Pn(e){return!(e=e[En]||e[Cn])||5!==e.tag&&6!==e.tag&&13!==e.tag&&3!==e.tag?null:e}function Nn(e){if(5===e.tag||6===e.tag)return e.stateNode;throw Error(a(33))}function zn(e){return e[Sn]||null}function On(e){do{e=e.return}while(e&&5!==e.tag);return e||null}function Rn(e,t){var n=e.stateNode;if(!n)return null;var r=m(n);if(!r)return null;n=r[t];e:switch(t){case"onClick":case"onClickCapture":case"onDoubleClick":case"onDoubleClickCapture":case"onMouseDown":case"onMouseDownCapture":case"onMouseMove":case"onMouseMoveCapture":case"onMouseUp":case"onMouseUpCapture":case"onMouseEnter":(r=!r.disabled)||(r=!("button"===(e=e.type)||"input"===e||"select"===e||"textarea"===e)),e=!r;break e;default:e=!1}if(e)return null;if(n&&"function"!=typeof n)throw Error(a(231,t,typeof n));return n}function Mn(e,t,n){(t=Rn(e,n.dispatchConfig.phasedRegistrationNames[t]))&&(n._dispatchListeners=rt(n._dispatchListeners,t),n._dispatchInstances=rt(n._dispatchInstances,e))}function In(e){if(e&&e.dispatchConfig.phasedRegistrationNames){for(var t=e._targetInst,n=[];t;)n.push(t),t=On(t);for(t=n.length;0<t--;)Mn(n[t],"captured",e);for(t=0;t<n.length;t++)Mn(n[t],"bubbled",e)}}function Fn(e,t,n){e&&n&&n.dispatchConfig.registrationName&&(t=Rn(e,n.dispatchConfig.registrationName))&&(n._dispatchListeners=rt(n._dispatchListeners,t),n._dispatchInstances=rt(n._dispatchInstances,e))}function Dn(e){e&&e.dispatchConfig.registrationName&&Fn(e._targetInst,null,e)}function Ln(e){lt(e,In)}var An=null,Un=null,Vn=null;function Wn(){if(Vn)return Vn;var e,t,n=Un,r=n.length,l="value"in An?An.value:An.textContent,i=l.length;for(e=0;e<r&&n[e]===l[e];e++);var a=r-e;for(t=1;t<=a&&n[r-t]===l[i-t];t++);return Vn=l.slice(e,1<t?1-t:void 0)}function jn(){return!0}function Qn(){return!1}function $n(e,t,n,r){for(var l in this.dispatchConfig=e,this._targetInst=t,this.nativeEvent=n,e=this.constructor.Interface)e.hasOwnProperty(l)&&((t=e[l])?this[l]=t(n):"target"===l?this.target=r:this[l]=n[l]);return this.isDefaultPrevented=(null!=n.defaultPrevented?n.defaultPrevented:!1===n.returnValue)?jn:Qn,this.isPropagationStopped=Qn,this}function Bn(e,t,n,r){if(this.eventPool.length){var l=this.eventPool.pop();return this.call(l,e,t,n,r),l}return new this(e,t,n,r)}function Hn(e){if(!(e instanceof this))throw Error(a(279));e.destructor(),10>this.eventPool.length&&this.eventPool.push(e)}function Kn(e){e.eventPool=[],e.getPooled=Bn,e.release=Hn}l($n.prototype,{preventDefault:function(){this.defaultPrevented=!0;var e=this.nativeEvent;e&&(e.preventDefault?e.preventDefault():"unknown"!=typeof e.returnValue&&(e.returnValue=!1),this.isDefaultPrevented=jn)},stopPropagation:function(){var e=this.nativeEvent;e&&(e.stopPropagation?e.stopPropagation():"unknown"!=typeof e.cancelBubble&&(e.cancelBubble=!0),this.isPropagationStopped=jn)},persist:function(){this.isPersistent=jn},isPersistent:Qn,destructor:function(){var e,t=this.constructor.Interface;for(e in t)this[e]=null;this.nativeEvent=this._targetInst=this.dispatchConfig=null,this.isPropagationStopped=this.isDefaultPrevented=Qn,this._dispatchInstances=this._dispatchListeners=null}}),$n.Interface={type:null,target:null,currentTarget:function(){return null},eventPhase:null,bubbles:null,cancelable:null,timeStamp:function(e){return e.timeStamp||Date.now()},defaultPrevented:null,isTrusted:null},$n.extend=function(e){function t(){}function n(){return r.apply(this,arguments)}var r=this;t.prototype=r.prototype;var i=new t;return l(i,n.prototype),n.prototype=i,n.prototype.constructor=n,n.Interface=l({},r.Interface,e),n.extend=r.extend,Kn(n),n},Kn($n);var qn=$n.extend({data:null}),Yn=$n.extend({data:null}),Xn=[9,13,27,32],Gn=_&&"CompositionEvent"in window,Jn=null;_&&"documentMode"in document&&(Jn=document.documentMode);var Zn=_&&"TextEvent"in window&&!Jn,er=_&&(!Gn||Jn&&8<Jn&&11>=Jn),tr=String.fromCharCode(32),nr={beforeInput:{phasedRegistrationNames:{bubbled:"onBeforeInput",captured:"onBeforeInputCapture"},dependencies:["compositionend","keypress","textInput","paste"]},compositionEnd:{phasedRegistrationNames:{bubbled:"onCompositionEnd",captured:"onCompositionEndCapture"},dependencies:"blur compositionend keydown keypress keyup mousedown".split(" ")},compositionStart:{phasedRegistrationNames:{bubbled:"onCompositionStart",captured:"onCompositionStartCapture"},dependencies:"blur compositionstart keydown keypress keyup mousedown".split(" ")},compositionUpdate:{phasedRegistrationNames:{bubbled:"onCompositionUpdate",captured:"onCompositionUpdateCapture"},dependencies:"blur compositionupdate keydown keypress keyup mousedown".split(" ")}},rr=!1;function lr(e,t){switch(e){case"keyup":return-1!==Xn.indexOf(t.keyCode);case"keydown":return 229!==t.keyCode;case"keypress":case"mousedown":case"blur":return!0;default:return!1}}function ir(e){return"object"==typeof(e=e.detail)&&"data"in e?e.data:null}var ar=!1;var or={eventTypes:nr,extractEvents:function(e,t,n,r){var l;if(Gn)e:{switch(e){case"compositionstart":var i=nr.compositionStart;break e;case"compositionend":i=nr.compositionEnd;break e;case"compositionupdate":i=nr.compositionUpdate;break e}i=void 0}else ar?lr(e,n)&&(i=nr.compositionEnd):"keydown"===e&&229===n.keyCode&&(i=nr.compositionStart);return i?(er&&"ko"!==n.locale&&(ar||i!==nr.compositionStart?i===nr.compositionEnd&&ar&&(l=Wn()):(Un="value"in(An=r)?An.value:An.textContent,ar=!0)),i=qn.getPooled(i,t,n,r),l?i.data=l:null!==(l=ir(n))&&(i.data=l),Ln(i),l=i):l=null,(e=Zn?function(e,t){switch(e){case"compositionend":return ir(t);case"keypress":return 32!==t.which?null:(rr=!0,tr);case"textInput":return(e=t.data)===tr&&rr?null:e;default:return null}}(e,n):function(e,t){if(ar)return"compositionend"===e||!Gn&&lr(e,t)?(e=Wn(),Vn=Un=An=null,ar=!1,e):null;switch(e){case"paste":return null;case"keypress":if(!(t.ctrlKey||t.altKey||t.metaKey)||t.ctrlKey&&t.altKey){if(t.char&&1<t.char.length)return t.char;if(t.which)return String.fromCharCode(t.which)}return null;case"compositionend":return er&&"ko"!==t.locale?null:t.data;default:return null}}(e,n))?((t=Yn.getPooled(nr.beforeInput,t,n,r)).data=e,Ln(t)):t=null,null===l?t:null===t?l:[l,t]}},ur={color:!0,date:!0,datetime:!0,"datetime-local":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function cr(e){var t=e&&e.nodeName&&e.nodeName.toLowerCase();return"input"===t?!!ur[e.type]:"textarea"===t}var sr={change:{phasedRegistrationNames:{bubbled:"onChange",captured:"onChangeCapture"},dependencies:"blur change click focus input keydown keyup selectionchange".split(" ")}};function fr(e,t,n){return(e=$n.getPooled(sr.change,e,t,n)).type="change",R(n),Ln(e),e}var dr=null,pr=null;function mr(e){ot(e)}function hr(e){if(ke(Nn(e)))return e}function vr(e,t){if("change"===e)return t}var gr=!1;function yr(){dr&&(dr.detachEvent("onpropertychange",br),pr=dr=null)}function br(e){if("value"===e.propertyName&&hr(pr))if(e=fr(pr,e,ut(e)),A)ot(e);else{A=!0;try{I(mr,e)}finally{A=!1,V()}}}function wr(e,t,n){"focus"===e?(yr(),pr=n,(dr=t).attachEvent("onpropertychange",br)):"blur"===e&&yr()}function kr(e){if("selectionchange"===e||"keyup"===e||"keydown"===e)return hr(pr)}function xr(e,t){if("click"===e)return hr(t)}function Tr(e,t){if("input"===e||"change"===e)return hr(t)}_&&(gr=ct("input")&&(!document.documentMode||9<document.documentMode));var Er={eventTypes:sr,_isInputEventSupported:gr,extractEvents:function(e,t,n,r){var l=t?Nn(t):window,i=l.nodeName&&l.nodeName.toLowerCase();if("select"===i||"input"===i&&"file"===l.type)var a=vr;else if(cr(l))if(gr)a=Tr;else{a=kr;var o=wr}else(i=l.nodeName)&&"input"===i.toLowerCase()&&("checkbox"===l.type||"radio"===l.type)&&(a=xr);if(a&&(a=a(e,t)))return fr(a,n,r);o&&o(e,l,t),"blur"===e&&(e=l._wrapperState)&&e.controlled&&"number"===l.type&&_e(l,"number",l.value)}},Sr=$n.extend({view:null,detail:null}),Cr={Alt:"altKey",Control:"ctrlKey",Meta:"metaKey",Shift:"shiftKey"};function _r(e){var t=this.nativeEvent;return t.getModifierState?t.getModifierState(e):!!(e=Cr[e])&&!!t[e]}function Pr(){return _r}var Nr=0,zr=0,Or=!1,Rr=!1,Mr=Sr.extend({screenX:null,screenY:null,clientX:null,clientY:null,pageX:null,pageY:null,ctrlKey:null,shiftKey:null,altKey:null,metaKey:null,getModifierState:Pr,button:null,buttons:null,relatedTarget:function(e){return e.relatedTarget||(e.fromElement===e.srcElement?e.toElement:e.fromElement)},movementX:function(e){if("movementX"in e)return e.movementX;var t=Nr;return Nr=e.screenX,Or?"mousemove"===e.type?e.screenX-t:0:(Or=!0,0)},movementY:function(e){if("movementY"in e)return e.movementY;var t=zr;return zr=e.screenY,Rr?"mousemove"===e.type?e.screenY-t:0:(Rr=!0,0)}}),Ir=Mr.extend({pointerId:null,width:null,height:null,pressure:null,tangentialPressure:null,tiltX:null,tiltY:null,twist:null,pointerType:null,isPrimary:null}),Fr={mouseEnter:{registrationName:"onMouseEnter",dependencies:["mouseout","mouseover"]},mouseLeave:{registrationName:"onMouseLeave",dependencies:["mouseout","mouseover"]},pointerEnter:{registrationName:"onPointerEnter",dependencies:["pointerout","pointerover"]},pointerLeave:{registrationName:"onPointerLeave",dependencies:["pointerout","pointerover"]}},Dr={eventTypes:Fr,extractEvents:function(e,t,n,r,l){var i="mouseover"===e||"pointerover"===e,a="mouseout"===e||"pointerout"===e;if(i&&0==(32&l)&&(n.relatedTarget||n.fromElement)||!a&&!i)return null;(i=r.window===r?r:(i=r.ownerDocument)?i.defaultView||i.parentWindow:window,a)?(a=t,null!==(t=(t=n.relatedTarget||n.toElement)?_n(t):null)&&(t!==Ze(t)||5!==t.tag&&6!==t.tag)&&(t=null)):a=null;if(a===t)return null;if("mouseout"===e||"mouseover"===e)var o=Mr,u=Fr.mouseLeave,c=Fr.mouseEnter,s="mouse";else"pointerout"!==e&&"pointerover"!==e||(o=Ir,u=Fr.pointerLeave,c=Fr.pointerEnter,s="pointer");if(e=null==a?i:Nn(a),i=null==t?i:Nn(t),(u=o.getPooled(u,a,n,r)).type=s+"leave",u.target=e,u.relatedTarget=i,(n=o.getPooled(c,t,n,r)).type=s+"enter",n.target=i,n.relatedTarget=e,s=t,(r=a)&&s)e:{for(c=s,a=0,e=o=r;e;e=On(e))a++;for(e=0,t=c;t;t=On(t))e++;for(;0<a-e;)o=On(o),a--;for(;0<e-a;)c=On(c),e--;for(;a--;){if(o===c||o===c.alternate)break e;o=On(o),c=On(c)}o=null}else o=null;for(c=o,o=[];r&&r!==c&&(null===(a=r.alternate)||a!==c);)o.push(r),r=On(r);for(r=[];s&&s!==c&&(null===(a=s.alternate)||a!==c);)r.push(s),s=On(s);for(s=0;s<o.length;s++)Fn(o[s],"bubbled",u);for(s=r.length;0<s--;)Fn(r[s],"captured",n);return 0==(64&l)?[u]:[u,n]}};var Lr="function"==typeof Object.is?Object.is:function(e,t){return e===t&&(0!==e||1/e==1/t)||e!=e&&t!=t},Ar=Object.prototype.hasOwnProperty;function Ur(e,t){if(Lr(e,t))return!0;if("object"!=typeof e||null===e||"object"!=typeof t||null===t)return!1;var n=Object.keys(e),r=Object.keys(t);if(n.length!==r.length)return!1;for(r=0;r<n.length;r++)if(!Ar.call(t,n[r])||!Lr(e[n[r]],t[n[r]]))return!1;return!0}var Vr=_&&"documentMode"in document&&11>=document.documentMode,Wr={select:{phasedRegistrationNames:{bubbled:"onSelect",captured:"onSelectCapture"},dependencies:"blur contextmenu dragend focus keydown keyup mousedown mouseup selectionchange".split(" ")}},jr=null,Qr=null,$r=null,Br=!1;function Hr(e,t){var n=t.window===t?t.document:9===t.nodeType?t:t.ownerDocument;return Br||null==jr||jr!==sn(n)?null:("selectionStart"in(n=jr)&&mn(n)?n={start:n.selectionStart,end:n.selectionEnd}:n={anchorNode:(n=(n.ownerDocument&&n.ownerDocument.defaultView||window).getSelection()).anchorNode,anchorOffset:n.anchorOffset,focusNode:n.focusNode,focusOffset:n.focusOffset},$r&&Ur($r,n)?null:($r=n,(e=$n.getPooled(Wr.select,Qr,e,t)).type="select",e.target=jr,Ln(e),e))}var Kr={eventTypes:Wr,extractEvents:function(e,t,n,r,l,i){if(!(i=!(l=i||(r.window===r?r.document:9===r.nodeType?r:r.ownerDocument)))){e:{l=Je(l),i=S.onSelect;for(var a=0;a<i.length;a++)if(!l.has(i[a])){l=!1;break e}l=!0}i=!l}if(i)return null;switch(l=t?Nn(t):window,e){case"focus":(cr(l)||"true"===l.contentEditable)&&(jr=l,Qr=t,$r=null);break;case"blur":$r=Qr=jr=null;break;case"mousedown":Br=!0;break;case"contextmenu":case"mouseup":case"dragend":return Br=!1,Hr(n,r);case"selectionchange":if(Vr)break;case"keydown":case"keyup":return Hr(n,r)}return null}},qr=$n.extend({animationName:null,elapsedTime:null,pseudoElement:null}),Yr=$n.extend({clipboardData:function(e){return"clipboardData"in e?e.clipboardData:window.clipboardData}}),Xr=Sr.extend({relatedTarget:null});function Gr(e){var t=e.keyCode;return"charCode"in e?0===(e=e.charCode)&&13===t&&(e=13):e=t,10===e&&(e=13),32<=e||13===e?e:0}var Jr={Esc:"Escape",Spacebar:" ",Left:"ArrowLeft",Up:"ArrowUp",Right:"ArrowRight",Down:"ArrowDown",Del:"Delete",Win:"OS",Menu:"ContextMenu",Apps:"ContextMenu",Scroll:"ScrollLock",MozPrintableKey:"Unidentified"},Zr={8:"Backspace",9:"Tab",12:"Clear",13:"Enter",16:"Shift",17:"Control",18:"Alt",19:"Pause",20:"CapsLock",27:"Escape",32:" ",33:"PageUp",34:"PageDown",35:"End",36:"Home",37:"ArrowLeft",38:"ArrowUp",39:"ArrowRight",40:"ArrowDown",45:"Insert",46:"Delete",112:"F1",113:"F2",114:"F3",115:"F4",116:"F5",117:"F6",118:"F7",119:"F8",120:"F9",121:"F10",122:"F11",123:"F12",144:"NumLock",145:"ScrollLock",224:"Meta"},el=Sr.extend({key:function(e){if(e.key){var t=Jr[e.key]||e.key;if("Unidentified"!==t)return t}return"keypress"===e.type?13===(e=Gr(e))?"Enter":String.fromCharCode(e):"keydown"===e.type||"keyup"===e.type?Zr[e.keyCode]||"Unidentified":""},location:null,ctrlKey:null,shiftKey:null,altKey:null,metaKey:null,repeat:null,locale:null,getModifierState:Pr,charCode:function(e){return"keypress"===e.type?Gr(e):0},keyCode:function(e){return"keydown"===e.type||"keyup"===e.type?e.keyCode:0},which:function(e){return"keypress"===e.type?Gr(e):"keydown"===e.type||"keyup"===e.type?e.keyCode:0}}),tl=Mr.extend({dataTransfer:null}),nl=Sr.extend({touches:null,targetTouches:null,changedTouches:null,altKey:null,metaKey:null,ctrlKey:null,shiftKey:null,getModifierState:Pr}),rl=$n.extend({propertyName:null,elapsedTime:null,pseudoElement:null}),ll=Mr.extend({deltaX:function(e){return"deltaX"in e?e.deltaX:"wheelDeltaX"in e?-e.wheelDeltaX:0},deltaY:function(e){return"deltaY"in e?e.deltaY:"wheelDeltaY"in e?-e.wheelDeltaY:"wheelDelta"in e?-e.wheelDelta:0},deltaZ:null,deltaMode:null}),il={eventTypes:Lt,extractEvents:function(e,t,n,r){var l=At.get(e);if(!l)return null;switch(e){case"keypress":if(0===Gr(n))return null;case"keydown":case"keyup":e=el;break;case"blur":case"focus":e=Xr;break;case"click":if(2===n.button)return null;case"auxclick":case"dblclick":case"mousedown":case"mousemove":case"mouseup":case"mouseout":case"mouseover":case"contextmenu":e=Mr;break;case"drag":case"dragend":case"dragenter":case"dragexit":case"dragleave":case"dragover":case"dragstart":case"drop":e=tl;break;case"touchcancel":case"touchend":case"touchmove":case"touchstart":e=nl;break;case He:case Ke:case qe:e=qr;break;case Ye:e=rl;break;case"scroll":e=Sr;break;case"wheel":e=ll;break;case"copy":case"cut":case"paste":e=Yr;break;case"gotpointercapture":case"lostpointercapture":case"pointercancel":case"pointerdown":case"pointermove":case"pointerout":case"pointerover":case"pointerup":e=Ir;break;default:e=$n}return Ln(t=e.getPooled(l,t,n,r)),t}};if(y)throw Error(a(101));y=Array.prototype.slice.call("ResponderEventPlugin SimpleEventPlugin EnterLeaveEventPlugin ChangeEventPlugin SelectEventPlugin BeforeInputEventPlugin".split(" ")),w(),m=zn,h=Pn,v=Nn,C({SimpleEventPlugin:il,EnterLeaveEventPlugin:Dr,ChangeEventPlugin:Er,SelectEventPlugin:Kr,BeforeInputEventPlugin:or});var al=[],ol=-1;function ul(e){0>ol||(e.current=al[ol],al[ol]=null,ol--)}function cl(e,t){ol++,al[ol]=e.current,e.current=t}var sl={},fl={current:sl},dl={current:!1},pl=sl;function ml(e,t){var n=e.type.contextTypes;if(!n)return sl;var r=e.stateNode;if(r&&r.__reactInternalMemoizedUnmaskedChildContext===t)return r.__reactInternalMemoizedMaskedChildContext;var l,i={};for(l in n)i[l]=t[l];return r&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=t,e.__reactInternalMemoizedMaskedChildContext=i),i}function hl(e){return null!=(e=e.childContextTypes)}function vl(){ul(dl),ul(fl)}function gl(e,t,n){if(fl.current!==sl)throw Error(a(168));cl(fl,t),cl(dl,n)}function yl(e,t,n){var r=e.stateNode;if(e=t.childContextTypes,"function"!=typeof r.getChildContext)return n;for(var i in r=r.getChildContext())if(!(i in e))throw Error(a(108,ve(t)||"Unknown",i));return l({},n,{},r)}function bl(e){return e=(e=e.stateNode)&&e.__reactInternalMemoizedMergedChildContext||sl,pl=fl.current,cl(fl,e),cl(dl,dl.current),!0}function wl(e,t,n){var r=e.stateNode;if(!r)throw Error(a(169));n?(e=yl(e,t,pl),r.__reactInternalMemoizedMergedChildContext=e,ul(dl),ul(fl),cl(fl,e)):ul(dl),cl(dl,n)}var kl=i.unstable_runWithPriority,xl=i.unstable_scheduleCallback,Tl=i.unstable_cancelCallback,El=i.unstable_requestPaint,Sl=i.unstable_now,Cl=i.unstable_getCurrentPriorityLevel,_l=i.unstable_ImmediatePriority,Pl=i.unstable_UserBlockingPriority,Nl=i.unstable_NormalPriority,zl=i.unstable_LowPriority,Ol=i.unstable_IdlePriority,Rl={},Ml=i.unstable_shouldYield,Il=void 0!==El?El:function(){},Fl=null,Dl=null,Ll=!1,Al=Sl(),Ul=1e4>Al?Sl:function(){return Sl()-Al};function Vl(){switch(Cl()){case _l:return 99;case Pl:return 98;case Nl:return 97;case zl:return 96;case Ol:return 95;default:throw Error(a(332))}}function Wl(e){switch(e){case 99:return _l;case 98:return Pl;case 97:return Nl;case 96:return zl;case 95:return Ol;default:throw Error(a(332))}}function jl(e,t){return e=Wl(e),kl(e,t)}function Ql(e,t,n){return e=Wl(e),xl(e,t,n)}function $l(e){return null===Fl?(Fl=[e],Dl=xl(_l,Hl)):Fl.push(e),Rl}function Bl(){if(null!==Dl){var e=Dl;Dl=null,Tl(e)}Hl()}function Hl(){if(!Ll&&null!==Fl){Ll=!0;var e=0;try{var t=Fl;jl(99,(function(){for(;e<t.length;e++){var n=t[e];do{n=n(!0)}while(null!==n)}})),Fl=null}catch(n){throw null!==Fl&&(Fl=Fl.slice(e+1)),xl(_l,Bl),n}finally{Ll=!1}}}function Kl(e,t,n){return 1073741821-(1+((1073741821-e+t/10)/(n/=10)|0))*n}function ql(e,t){if(e&&e.defaultProps)for(var n in t=l({},t),e=e.defaultProps)void 0===t[n]&&(t[n]=e[n]);return t}var Yl={current:null},Xl=null,Gl=null,Jl=null;function Zl(){Jl=Gl=Xl=null}function ei(e){var t=Yl.current;ul(Yl),e.type._context._currentValue=t}function ti(e,t){for(;null!==e;){var n=e.alternate;if(e.childExpirationTime<t)e.childExpirationTime=t,null!==n&&n.childExpirationTime<t&&(n.childExpirationTime=t);else{if(!(null!==n&&n.childExpirationTime<t))break;n.childExpirationTime=t}e=e.return}}function ni(e,t){Xl=e,Jl=Gl=null,null!==(e=e.dependencies)&&null!==e.firstContext&&(e.expirationTime>=t&&(Na=!0),e.firstContext=null)}function ri(e,t){if(Jl!==e&&!1!==t&&0!==t)if("number"==typeof t&&1073741823!==t||(Jl=e,t=1073741823),t={context:e,observedBits:t,next:null},null===Gl){if(null===Xl)throw Error(a(308));Gl=t,Xl.dependencies={expirationTime:0,firstContext:t,responders:null}}else Gl=Gl.next=t;return e._currentValue}var li=!1;function ii(e){e.updateQueue={baseState:e.memoizedState,baseQueue:null,shared:{pending:null},effects:null}}function ai(e,t){e=e.updateQueue,t.updateQueue===e&&(t.updateQueue={baseState:e.baseState,baseQueue:e.baseQueue,shared:e.shared,effects:e.effects})}function oi(e,t){return(e={expirationTime:e,suspenseConfig:t,tag:0,payload:null,callback:null,next:null}).next=e}function ui(e,t){if(null!==(e=e.updateQueue)){var n=(e=e.shared).pending;null===n?t.next=t:(t.next=n.next,n.next=t),e.pending=t}}function ci(e,t){var n=e.alternate;null!==n&&ai(n,e),null===(n=(e=e.updateQueue).baseQueue)?(e.baseQueue=t.next=t,t.next=t):(t.next=n.next,n.next=t)}function si(e,t,n,r){var i=e.updateQueue;li=!1;var a=i.baseQueue,o=i.shared.pending;if(null!==o){if(null!==a){var u=a.next;a.next=o.next,o.next=u}a=o,i.shared.pending=null,null!==(u=e.alternate)&&(null!==(u=u.updateQueue)&&(u.baseQueue=o))}if(null!==a){u=a.next;var c=i.baseState,s=0,f=null,d=null,p=null;if(null!==u)for(var m=u;;){if((o=m.expirationTime)<r){var h={expirationTime:m.expirationTime,suspenseConfig:m.suspenseConfig,tag:m.tag,payload:m.payload,callback:m.callback,next:null};null===p?(d=p=h,f=c):p=p.next=h,o>s&&(s=o)}else{null!==p&&(p=p.next={expirationTime:1073741823,suspenseConfig:m.suspenseConfig,tag:m.tag,payload:m.payload,callback:m.callback,next:null}),iu(o,m.suspenseConfig);e:{var v=e,g=m;switch(o=t,h=n,g.tag){case 1:if("function"==typeof(v=g.payload)){c=v.call(h,c,o);break e}c=v;break e;case 3:v.effectTag=-4097&v.effectTag|64;case 0:if(null==(o="function"==typeof(v=g.payload)?v.call(h,c,o):v))break e;c=l({},c,o);break e;case 2:li=!0}}null!==m.callback&&(e.effectTag|=32,null===(o=i.effects)?i.effects=[m]:o.push(m))}if(null===(m=m.next)||m===u){if(null===(o=i.shared.pending))break;m=a.next=o.next,o.next=u,i.baseQueue=a=o,i.shared.pending=null}}null===p?f=c:p.next=d,i.baseState=f,i.baseQueue=p,au(s),e.expirationTime=s,e.memoizedState=c}}function fi(e,t,n){if(e=t.effects,t.effects=null,null!==e)for(t=0;t<e.length;t++){var r=e[t],l=r.callback;if(null!==l){if(r.callback=null,r=l,l=n,"function"!=typeof r)throw Error(a(191,r));r.call(l)}}}var di=X.ReactCurrentBatchConfig,pi=(new r.Component).refs;function mi(e,t,n,r){n=null==(n=n(r,t=e.memoizedState))?t:l({},t,n),e.memoizedState=n,0===e.expirationTime&&(e.updateQueue.baseState=n)}var hi={isMounted:function(e){return!!(e=e._reactInternalFiber)&&Ze(e)===e},enqueueSetState:function(e,t,n){e=e._reactInternalFiber;var r=Ho(),l=di.suspense;(l=oi(r=Ko(r,e,l),l)).payload=t,null!=n&&(l.callback=n),ui(e,l),qo(e,r)},enqueueReplaceState:function(e,t,n){e=e._reactInternalFiber;var r=Ho(),l=di.suspense;(l=oi(r=Ko(r,e,l),l)).tag=1,l.payload=t,null!=n&&(l.callback=n),ui(e,l),qo(e,r)},enqueueForceUpdate:function(e,t){e=e._reactInternalFiber;var n=Ho(),r=di.suspense;(r=oi(n=Ko(n,e,r),r)).tag=2,null!=t&&(r.callback=t),ui(e,r),qo(e,n)}};function vi(e,t,n,r,l,i,a){return"function"==typeof(e=e.stateNode).shouldComponentUpdate?e.shouldComponentUpdate(r,i,a):!t.prototype||!t.prototype.isPureReactComponent||(!Ur(n,r)||!Ur(l,i))}function gi(e,t,n){var r=!1,l=sl,i=t.contextType;return"object"==typeof i&&null!==i?i=ri(i):(l=hl(t)?pl:fl.current,i=(r=null!=(r=t.contextTypes))?ml(e,l):sl),t=new t(n,i),e.memoizedState=null!==t.state&&void 0!==t.state?t.state:null,t.updater=hi,e.stateNode=t,t._reactInternalFiber=e,r&&((e=e.stateNode).__reactInternalMemoizedUnmaskedChildContext=l,e.__reactInternalMemoizedMaskedChildContext=i),t}function yi(e,t,n,r){e=t.state,"function"==typeof t.componentWillReceiveProps&&t.componentWillReceiveProps(n,r),"function"==typeof t.UNSAFE_componentWillReceiveProps&&t.UNSAFE_componentWillReceiveProps(n,r),t.state!==e&&hi.enqueueReplaceState(t,t.state,null)}function bi(e,t,n,r){var l=e.stateNode;l.props=n,l.state=e.memoizedState,l.refs=pi,ii(e);var i=t.contextType;"object"==typeof i&&null!==i?l.context=ri(i):(i=hl(t)?pl:fl.current,l.context=ml(e,i)),si(e,n,l,r),l.state=e.memoizedState,"function"==typeof(i=t.getDerivedStateFromProps)&&(mi(e,t,i,n),l.state=e.memoizedState),"function"==typeof t.getDerivedStateFromProps||"function"==typeof l.getSnapshotBeforeUpdate||"function"!=typeof l.UNSAFE_componentWillMount&&"function"!=typeof l.componentWillMount||(t=l.state,"function"==typeof l.componentWillMount&&l.componentWillMount(),"function"==typeof l.UNSAFE_componentWillMount&&l.UNSAFE_componentWillMount(),t!==l.state&&hi.enqueueReplaceState(l,l.state,null),si(e,n,l,r),l.state=e.memoizedState),"function"==typeof l.componentDidMount&&(e.effectTag|=4)}var wi=Array.isArray;function ki(e,t,n){if(null!==(e=n.ref)&&"function"!=typeof e&&"object"!=typeof e){if(n._owner){if(n=n._owner){if(1!==n.tag)throw Error(a(309));var r=n.stateNode}if(!r)throw Error(a(147,e));var l=""+e;return null!==t&&null!==t.ref&&"function"==typeof t.ref&&t.ref._stringRef===l?t.ref:((t=function(e){var t=r.refs;t===pi&&(t=r.refs={}),null===e?delete t[l]:t[l]=e})._stringRef=l,t)}if("string"!=typeof e)throw Error(a(284));if(!n._owner)throw Error(a(290,e))}return e}function xi(e,t){if("textarea"!==e.type)throw Error(a(31,"[object Object]"===Object.prototype.toString.call(t)?"object with keys {"+Object.keys(t).join(", ")+"}":t,""))}function Ti(e){function t(t,n){if(e){var r=t.lastEffect;null!==r?(r.nextEffect=n,t.lastEffect=n):t.firstEffect=t.lastEffect=n,n.nextEffect=null,n.effectTag=8}}function n(n,r){if(!e)return null;for(;null!==r;)t(n,r),r=r.sibling;return null}function r(e,t){for(e=new Map;null!==t;)null!==t.key?e.set(t.key,t):e.set(t.index,t),t=t.sibling;return e}function l(e,t){return(e=Cu(e,t)).index=0,e.sibling=null,e}function i(t,n,r){return t.index=r,e?null!==(r=t.alternate)?(r=r.index)<n?(t.effectTag=2,n):r:(t.effectTag=2,n):n}function o(t){return e&&null===t.alternate&&(t.effectTag=2),t}function u(e,t,n,r){return null===t||6!==t.tag?((t=Nu(n,e.mode,r)).return=e,t):((t=l(t,n)).return=e,t)}function c(e,t,n,r){return null!==t&&t.elementType===n.type?((r=l(t,n.props)).ref=ki(e,t,n),r.return=e,r):((r=_u(n.type,n.key,n.props,null,e.mode,r)).ref=ki(e,t,n),r.return=e,r)}function s(e,t,n,r){return null===t||4!==t.tag||t.stateNode.containerInfo!==n.containerInfo||t.stateNode.implementation!==n.implementation?((t=zu(n,e.mode,r)).return=e,t):((t=l(t,n.children||[])).return=e,t)}function f(e,t,n,r,i){return null===t||7!==t.tag?((t=Pu(n,e.mode,r,i)).return=e,t):((t=l(t,n)).return=e,t)}function d(e,t,n){if("string"==typeof t||"number"==typeof t)return(t=Nu(""+t,e.mode,n)).return=e,t;if("object"==typeof t&&null!==t){switch(t.$$typeof){case ee:return(n=_u(t.type,t.key,t.props,null,e.mode,n)).ref=ki(e,null,t),n.return=e,n;case te:return(t=zu(t,e.mode,n)).return=e,t}if(wi(t)||he(t))return(t=Pu(t,e.mode,n,null)).return=e,t;xi(e,t)}return null}function p(e,t,n,r){var l=null!==t?t.key:null;if("string"==typeof n||"number"==typeof n)return null!==l?null:u(e,t,""+n,r);if("object"==typeof n&&null!==n){switch(n.$$typeof){case ee:return n.key===l?n.type===ne?f(e,t,n.props.children,r,l):c(e,t,n,r):null;case te:return n.key===l?s(e,t,n,r):null}if(wi(n)||he(n))return null!==l?null:f(e,t,n,r,null);xi(e,n)}return null}function m(e,t,n,r,l){if("string"==typeof r||"number"==typeof r)return u(t,e=e.get(n)||null,""+r,l);if("object"==typeof r&&null!==r){switch(r.$$typeof){case ee:return e=e.get(null===r.key?n:r.key)||null,r.type===ne?f(t,e,r.props.children,l,r.key):c(t,e,r,l);case te:return s(t,e=e.get(null===r.key?n:r.key)||null,r,l)}if(wi(r)||he(r))return f(t,e=e.get(n)||null,r,l,null);xi(t,r)}return null}function h(l,a,o,u){for(var c=null,s=null,f=a,h=a=0,v=null;null!==f&&h<o.length;h++){f.index>h?(v=f,f=null):v=f.sibling;var g=p(l,f,o[h],u);if(null===g){null===f&&(f=v);break}e&&f&&null===g.alternate&&t(l,f),a=i(g,a,h),null===s?c=g:s.sibling=g,s=g,f=v}if(h===o.length)return n(l,f),c;if(null===f){for(;h<o.length;h++)null!==(f=d(l,o[h],u))&&(a=i(f,a,h),null===s?c=f:s.sibling=f,s=f);return c}for(f=r(l,f);h<o.length;h++)null!==(v=m(f,l,h,o[h],u))&&(e&&null!==v.alternate&&f.delete(null===v.key?h:v.key),a=i(v,a,h),null===s?c=v:s.sibling=v,s=v);return e&&f.forEach((function(e){return t(l,e)})),c}function v(l,o,u,c){var s=he(u);if("function"!=typeof s)throw Error(a(150));if(null==(u=s.call(u)))throw Error(a(151));for(var f=s=null,h=o,v=o=0,g=null,y=u.next();null!==h&&!y.done;v++,y=u.next()){h.index>v?(g=h,h=null):g=h.sibling;var b=p(l,h,y.value,c);if(null===b){null===h&&(h=g);break}e&&h&&null===b.alternate&&t(l,h),o=i(b,o,v),null===f?s=b:f.sibling=b,f=b,h=g}if(y.done)return n(l,h),s;if(null===h){for(;!y.done;v++,y=u.next())null!==(y=d(l,y.value,c))&&(o=i(y,o,v),null===f?s=y:f.sibling=y,f=y);return s}for(h=r(l,h);!y.done;v++,y=u.next())null!==(y=m(h,l,v,y.value,c))&&(e&&null!==y.alternate&&h.delete(null===y.key?v:y.key),o=i(y,o,v),null===f?s=y:f.sibling=y,f=y);return e&&h.forEach((function(e){return t(l,e)})),s}return function(e,r,i,u){var c="object"==typeof i&&null!==i&&i.type===ne&&null===i.key;c&&(i=i.props.children);var s="object"==typeof i&&null!==i;if(s)switch(i.$$typeof){case ee:e:{for(s=i.key,c=r;null!==c;){if(c.key===s){switch(c.tag){case 7:if(i.type===ne){n(e,c.sibling),(r=l(c,i.props.children)).return=e,e=r;break e}break;default:if(c.elementType===i.type){n(e,c.sibling),(r=l(c,i.props)).ref=ki(e,c,i),r.return=e,e=r;break e}}n(e,c);break}t(e,c),c=c.sibling}i.type===ne?((r=Pu(i.props.children,e.mode,u,i.key)).return=e,e=r):((u=_u(i.type,i.key,i.props,null,e.mode,u)).ref=ki(e,r,i),u.return=e,e=u)}return o(e);case te:e:{for(c=i.key;null!==r;){if(r.key===c){if(4===r.tag&&r.stateNode.containerInfo===i.containerInfo&&r.stateNode.implementation===i.implementation){n(e,r.sibling),(r=l(r,i.children||[])).return=e,e=r;break e}n(e,r);break}t(e,r),r=r.sibling}(r=zu(i,e.mode,u)).return=e,e=r}return o(e)}if("string"==typeof i||"number"==typeof i)return i=""+i,null!==r&&6===r.tag?(n(e,r.sibling),(r=l(r,i)).return=e,e=r):(n(e,r),(r=Nu(i,e.mode,u)).return=e,e=r),o(e);if(wi(i))return h(e,r,i,u);if(he(i))return v(e,r,i,u);if(s&&xi(e,i),void 0===i&&!c)switch(e.tag){case 1:case 0:throw e=e.type,Error(a(152,e.displayName||e.name||"Component"))}return n(e,r)}}var Ei=Ti(!0),Si=Ti(!1),Ci={},_i={current:Ci},Pi={current:Ci},Ni={current:Ci};function zi(e){if(e===Ci)throw Error(a(174));return e}function Oi(e,t){switch(cl(Ni,t),cl(Pi,e),cl(_i,Ci),e=t.nodeType){case 9:case 11:t=(t=t.documentElement)?t.namespaceURI:Le(null,"");break;default:t=Le(t=(e=8===e?t.parentNode:t).namespaceURI||null,e=e.tagName)}ul(_i),cl(_i,t)}function Ri(){ul(_i),ul(Pi),ul(Ni)}function Mi(e){zi(Ni.current);var t=zi(_i.current),n=Le(t,e.type);t!==n&&(cl(Pi,e),cl(_i,n))}function Ii(e){Pi.current===e&&(ul(_i),ul(Pi))}var Fi={current:0};function Di(e){for(var t=e;null!==t;){if(13===t.tag){var n=t.memoizedState;if(null!==n&&(null===(n=n.dehydrated)||"$?"===n.data||"$!"===n.data))return t}else if(19===t.tag&&void 0!==t.memoizedProps.revealOrder){if(0!=(64&t.effectTag))return t}else if(null!==t.child){t.child.return=t,t=t.child;continue}if(t===e)break;for(;null===t.sibling;){if(null===t.return||t.return===e)return null;t=t.return}t.sibling.return=t.return,t=t.sibling}return null}function Li(e,t){return{responder:e,props:t}}var Ai=X.ReactCurrentDispatcher,Ui=X.ReactCurrentBatchConfig,Vi=0,Wi=null,ji=null,Qi=null,$i=!1;function Bi(){throw Error(a(321))}function Hi(e,t){if(null===t)return!1;for(var n=0;n<t.length&&n<e.length;n++)if(!Lr(e[n],t[n]))return!1;return!0}function Ki(e,t,n,r,l,i){if(Vi=i,Wi=t,t.memoizedState=null,t.updateQueue=null,t.expirationTime=0,Ai.current=null===e||null===e.memoizedState?va:ga,e=n(r,l),t.expirationTime===Vi){i=0;do{if(t.expirationTime=0,!(25>i))throw Error(a(301));i+=1,Qi=ji=null,t.updateQueue=null,Ai.current=ya,e=n(r,l)}while(t.expirationTime===Vi)}if(Ai.current=ha,t=null!==ji&&null!==ji.next,Vi=0,Qi=ji=Wi=null,$i=!1,t)throw Error(a(300));return e}function qi(){var e={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};return null===Qi?Wi.memoizedState=Qi=e:Qi=Qi.next=e,Qi}function Yi(){if(null===ji){var e=Wi.alternate;e=null!==e?e.memoizedState:null}else e=ji.next;var t=null===Qi?Wi.memoizedState:Qi.next;if(null!==t)Qi=t,ji=e;else{if(null===e)throw Error(a(310));e={memoizedState:(ji=e).memoizedState,baseState:ji.baseState,baseQueue:ji.baseQueue,queue:ji.queue,next:null},null===Qi?Wi.memoizedState=Qi=e:Qi=Qi.next=e}return Qi}function Xi(e,t){return"function"==typeof t?t(e):t}function Gi(e){var t=Yi(),n=t.queue;if(null===n)throw Error(a(311));n.lastRenderedReducer=e;var r=ji,l=r.baseQueue,i=n.pending;if(null!==i){if(null!==l){var o=l.next;l.next=i.next,i.next=o}r.baseQueue=l=i,n.pending=null}if(null!==l){l=l.next,r=r.baseState;var u=o=i=null,c=l;do{var s=c.expirationTime;if(s<Vi){var f={expirationTime:c.expirationTime,suspenseConfig:c.suspenseConfig,action:c.action,eagerReducer:c.eagerReducer,eagerState:c.eagerState,next:null};null===u?(o=u=f,i=r):u=u.next=f,s>Wi.expirationTime&&(Wi.expirationTime=s,au(s))}else null!==u&&(u=u.next={expirationTime:1073741823,suspenseConfig:c.suspenseConfig,action:c.action,eagerReducer:c.eagerReducer,eagerState:c.eagerState,next:null}),iu(s,c.suspenseConfig),r=c.eagerReducer===e?c.eagerState:e(r,c.action);c=c.next}while(null!==c&&c!==l);null===u?i=r:u.next=o,Lr(r,t.memoizedState)||(Na=!0),t.memoizedState=r,t.baseState=i,t.baseQueue=u,n.lastRenderedState=r}return[t.memoizedState,n.dispatch]}function Ji(e){var t=Yi(),n=t.queue;if(null===n)throw Error(a(311));n.lastRenderedReducer=e;var r=n.dispatch,l=n.pending,i=t.memoizedState;if(null!==l){n.pending=null;var o=l=l.next;do{i=e(i,o.action),o=o.next}while(o!==l);Lr(i,t.memoizedState)||(Na=!0),t.memoizedState=i,null===t.baseQueue&&(t.baseState=i),n.lastRenderedState=i}return[i,r]}function Zi(e){var t=qi();return"function"==typeof e&&(e=e()),t.memoizedState=t.baseState=e,e=(e=t.queue={pending:null,dispatch:null,lastRenderedReducer:Xi,lastRenderedState:e}).dispatch=ma.bind(null,Wi,e),[t.memoizedState,e]}function ea(e,t,n,r){return e={tag:e,create:t,destroy:n,deps:r,next:null},null===(t=Wi.updateQueue)?(t={lastEffect:null},Wi.updateQueue=t,t.lastEffect=e.next=e):null===(n=t.lastEffect)?t.lastEffect=e.next=e:(r=n.next,n.next=e,e.next=r,t.lastEffect=e),e}function ta(){return Yi().memoizedState}function na(e,t,n,r){var l=qi();Wi.effectTag|=e,l.memoizedState=ea(1|t,n,void 0,void 0===r?null:r)}function ra(e,t,n,r){var l=Yi();r=void 0===r?null:r;var i=void 0;if(null!==ji){var a=ji.memoizedState;if(i=a.destroy,null!==r&&Hi(r,a.deps))return void ea(t,n,i,r)}Wi.effectTag|=e,l.memoizedState=ea(1|t,n,i,r)}function la(e,t){return na(516,4,e,t)}function ia(e,t){return ra(516,4,e,t)}function aa(e,t){return ra(4,2,e,t)}function oa(e,t){return"function"==typeof t?(e=e(),t(e),function(){t(null)}):null!=t?(e=e(),t.current=e,function(){t.current=null}):void 0}function ua(e,t,n){return n=null!=n?n.concat([e]):null,ra(4,2,oa.bind(null,t,e),n)}function ca(){}function sa(e,t){return qi().memoizedState=[e,void 0===t?null:t],e}function fa(e,t){var n=Yi();t=void 0===t?null:t;var r=n.memoizedState;return null!==r&&null!==t&&Hi(t,r[1])?r[0]:(n.memoizedState=[e,t],e)}function da(e,t){var n=Yi();t=void 0===t?null:t;var r=n.memoizedState;return null!==r&&null!==t&&Hi(t,r[1])?r[0]:(e=e(),n.memoizedState=[e,t],e)}function pa(e,t,n){var r=Vl();jl(98>r?98:r,(function(){e(!0)})),jl(97<r?97:r,(function(){var r=Ui.suspense;Ui.suspense=void 0===t?null:t;try{e(!1),n()}finally{Ui.suspense=r}}))}function ma(e,t,n){var r=Ho(),l=di.suspense;l={expirationTime:r=Ko(r,e,l),suspenseConfig:l,action:n,eagerReducer:null,eagerState:null,next:null};var i=t.pending;if(null===i?l.next=l:(l.next=i.next,i.next=l),t.pending=l,i=e.alternate,e===Wi||null!==i&&i===Wi)$i=!0,l.expirationTime=Vi,Wi.expirationTime=Vi;else{if(0===e.expirationTime&&(null===i||0===i.expirationTime)&&null!==(i=t.lastRenderedReducer))try{var a=t.lastRenderedState,o=i(a,n);if(l.eagerReducer=i,l.eagerState=o,Lr(o,a))return}catch(u){}qo(e,r)}}var ha={readContext:ri,useCallback:Bi,useContext:Bi,useEffect:Bi,useImperativeHandle:Bi,useLayoutEffect:Bi,useMemo:Bi,useReducer:Bi,useRef:Bi,useState:Bi,useDebugValue:Bi,useResponder:Bi,useDeferredValue:Bi,useTransition:Bi},va={readContext:ri,useCallback:sa,useContext:ri,useEffect:la,useImperativeHandle:function(e,t,n){return n=null!=n?n.concat([e]):null,na(4,2,oa.bind(null,t,e),n)},useLayoutEffect:function(e,t){return na(4,2,e,t)},useMemo:function(e,t){var n=qi();return t=void 0===t?null:t,e=e(),n.memoizedState=[e,t],e},useReducer:function(e,t,n){var r=qi();return t=void 0!==n?n(t):t,r.memoizedState=r.baseState=t,e=(e=r.queue={pending:null,dispatch:null,lastRenderedReducer:e,lastRenderedState:t}).dispatch=ma.bind(null,Wi,e),[r.memoizedState,e]},useRef:function(e){return e={current:e},qi().memoizedState=e},useState:Zi,useDebugValue:ca,useResponder:Li,useDeferredValue:function(e,t){var n=Zi(e),r=n[0],l=n[1];return la((function(){var n=Ui.suspense;Ui.suspense=void 0===t?null:t;try{l(e)}finally{Ui.suspense=n}}),[e,t]),r},useTransition:function(e){var t=Zi(!1),n=t[0];return t=t[1],[sa(pa.bind(null,t,e),[t,e]),n]}},ga={readContext:ri,useCallback:fa,useContext:ri,useEffect:ia,useImperativeHandle:ua,useLayoutEffect:aa,useMemo:da,useReducer:Gi,useRef:ta,useState:function(){return Gi(Xi)},useDebugValue:ca,useResponder:Li,useDeferredValue:function(e,t){var n=Gi(Xi),r=n[0],l=n[1];return ia((function(){var n=Ui.suspense;Ui.suspense=void 0===t?null:t;try{l(e)}finally{Ui.suspense=n}}),[e,t]),r},useTransition:function(e){var t=Gi(Xi),n=t[0];return t=t[1],[fa(pa.bind(null,t,e),[t,e]),n]}},ya={readContext:ri,useCallback:fa,useContext:ri,useEffect:ia,useImperativeHandle:ua,useLayoutEffect:aa,useMemo:da,useReducer:Ji,useRef:ta,useState:function(){return Ji(Xi)},useDebugValue:ca,useResponder:Li,useDeferredValue:function(e,t){var n=Ji(Xi),r=n[0],l=n[1];return ia((function(){var n=Ui.suspense;Ui.suspense=void 0===t?null:t;try{l(e)}finally{Ui.suspense=n}}),[e,t]),r},useTransition:function(e){var t=Ji(Xi),n=t[0];return t=t[1],[fa(pa.bind(null,t,e),[t,e]),n]}},ba=null,wa=null,ka=!1;function xa(e,t){var n=Eu(5,null,null,0);n.elementType="DELETED",n.type="DELETED",n.stateNode=t,n.return=e,n.effectTag=8,null!==e.lastEffect?(e.lastEffect.nextEffect=n,e.lastEffect=n):e.firstEffect=e.lastEffect=n}function Ta(e,t){switch(e.tag){case 5:var n=e.type;return null!==(t=1!==t.nodeType||n.toLowerCase()!==t.nodeName.toLowerCase()?null:t)&&(e.stateNode=t,!0);case 6:return null!==(t=""===e.pendingProps||3!==t.nodeType?null:t)&&(e.stateNode=t,!0);case 13:default:return!1}}function Ea(e){if(ka){var t=wa;if(t){var n=t;if(!Ta(e,t)){if(!(t=kn(n.nextSibling))||!Ta(e,t))return e.effectTag=-1025&e.effectTag|2,ka=!1,void(ba=e);xa(ba,n)}ba=e,wa=kn(t.firstChild)}else e.effectTag=-1025&e.effectTag|2,ka=!1,ba=e}}function Sa(e){for(e=e.return;null!==e&&5!==e.tag&&3!==e.tag&&13!==e.tag;)e=e.return;ba=e}function Ca(e){if(e!==ba)return!1;if(!ka)return Sa(e),ka=!0,!1;var t=e.type;if(5!==e.tag||"head"!==t&&"body"!==t&&!yn(t,e.memoizedProps))for(t=wa;t;)xa(e,t),t=kn(t.nextSibling);if(Sa(e),13===e.tag){if(!(e=null!==(e=e.memoizedState)?e.dehydrated:null))throw Error(a(317));e:{for(e=e.nextSibling,t=0;e;){if(8===e.nodeType){var n=e.data;if("/$"===n){if(0===t){wa=kn(e.nextSibling);break e}t--}else"$"!==n&&"$!"!==n&&"$?"!==n||t++}e=e.nextSibling}wa=null}}else wa=ba?kn(e.stateNode.nextSibling):null;return!0}function _a(){wa=ba=null,ka=!1}var Pa=X.ReactCurrentOwner,Na=!1;function za(e,t,n,r){t.child=null===e?Si(t,null,n,r):Ei(t,e.child,n,r)}function Oa(e,t,n,r,l){n=n.render;var i=t.ref;return ni(t,l),r=Ki(e,t,n,r,i,l),null===e||Na?(t.effectTag|=1,za(e,t,r,l),t.child):(t.updateQueue=e.updateQueue,t.effectTag&=-517,e.expirationTime<=l&&(e.expirationTime=0),Ka(e,t,l))}function Ra(e,t,n,r,l,i){if(null===e){var a=n.type;return"function"!=typeof a||Su(a)||void 0!==a.defaultProps||null!==n.compare||void 0!==n.defaultProps?((e=_u(n.type,null,r,null,t.mode,i)).ref=t.ref,e.return=t,t.child=e):(t.tag=15,t.type=a,Ma(e,t,a,r,l,i))}return a=e.child,l<i&&(l=a.memoizedProps,(n=null!==(n=n.compare)?n:Ur)(l,r)&&e.ref===t.ref)?Ka(e,t,i):(t.effectTag|=1,(e=Cu(a,r)).ref=t.ref,e.return=t,t.child=e)}function Ma(e,t,n,r,l,i){return null!==e&&Ur(e.memoizedProps,r)&&e.ref===t.ref&&(Na=!1,l<i)?(t.expirationTime=e.expirationTime,Ka(e,t,i)):Fa(e,t,n,r,i)}function Ia(e,t){var n=t.ref;(null===e&&null!==n||null!==e&&e.ref!==n)&&(t.effectTag|=128)}function Fa(e,t,n,r,l){var i=hl(n)?pl:fl.current;return i=ml(t,i),ni(t,l),n=Ki(e,t,n,r,i,l),null===e||Na?(t.effectTag|=1,za(e,t,n,l),t.child):(t.updateQueue=e.updateQueue,t.effectTag&=-517,e.expirationTime<=l&&(e.expirationTime=0),Ka(e,t,l))}function Da(e,t,n,r,l){if(hl(n)){var i=!0;bl(t)}else i=!1;if(ni(t,l),null===t.stateNode)null!==e&&(e.alternate=null,t.alternate=null,t.effectTag|=2),gi(t,n,r),bi(t,n,r,l),r=!0;else if(null===e){var a=t.stateNode,o=t.memoizedProps;a.props=o;var u=a.context,c=n.contextType;"object"==typeof c&&null!==c?c=ri(c):c=ml(t,c=hl(n)?pl:fl.current);var s=n.getDerivedStateFromProps,f="function"==typeof s||"function"==typeof a.getSnapshotBeforeUpdate;f||"function"!=typeof a.UNSAFE_componentWillReceiveProps&&"function"!=typeof a.componentWillReceiveProps||(o!==r||u!==c)&&yi(t,a,r,c),li=!1;var d=t.memoizedState;a.state=d,si(t,r,a,l),u=t.memoizedState,o!==r||d!==u||dl.current||li?("function"==typeof s&&(mi(t,n,s,r),u=t.memoizedState),(o=li||vi(t,n,o,r,d,u,c))?(f||"function"!=typeof a.UNSAFE_componentWillMount&&"function"!=typeof a.componentWillMount||("function"==typeof a.componentWillMount&&a.componentWillMount(),"function"==typeof a.UNSAFE_componentWillMount&&a.UNSAFE_componentWillMount()),"function"==typeof a.componentDidMount&&(t.effectTag|=4)):("function"==typeof a.componentDidMount&&(t.effectTag|=4),t.memoizedProps=r,t.memoizedState=u),a.props=r,a.state=u,a.context=c,r=o):("function"==typeof a.componentDidMount&&(t.effectTag|=4),r=!1)}else a=t.stateNode,ai(e,t),o=t.memoizedProps,a.props=t.type===t.elementType?o:ql(t.type,o),u=a.context,"object"==typeof(c=n.contextType)&&null!==c?c=ri(c):c=ml(t,c=hl(n)?pl:fl.current),(f="function"==typeof(s=n.getDerivedStateFromProps)||"function"==typeof a.getSnapshotBeforeUpdate)||"function"!=typeof a.UNSAFE_componentWillReceiveProps&&"function"!=typeof a.componentWillReceiveProps||(o!==r||u!==c)&&yi(t,a,r,c),li=!1,u=t.memoizedState,a.state=u,si(t,r,a,l),d=t.memoizedState,o!==r||u!==d||dl.current||li?("function"==typeof s&&(mi(t,n,s,r),d=t.memoizedState),(s=li||vi(t,n,o,r,u,d,c))?(f||"function"!=typeof a.UNSAFE_componentWillUpdate&&"function"!=typeof a.componentWillUpdate||("function"==typeof a.componentWillUpdate&&a.componentWillUpdate(r,d,c),"function"==typeof a.UNSAFE_componentWillUpdate&&a.UNSAFE_componentWillUpdate(r,d,c)),"function"==typeof a.componentDidUpdate&&(t.effectTag|=4),"function"==typeof a.getSnapshotBeforeUpdate&&(t.effectTag|=256)):("function"!=typeof a.componentDidUpdate||o===e.memoizedProps&&u===e.memoizedState||(t.effectTag|=4),"function"!=typeof a.getSnapshotBeforeUpdate||o===e.memoizedProps&&u===e.memoizedState||(t.effectTag|=256),t.memoizedProps=r,t.memoizedState=d),a.props=r,a.state=d,a.context=c,r=s):("function"!=typeof a.componentDidUpdate||o===e.memoizedProps&&u===e.memoizedState||(t.effectTag|=4),"function"!=typeof a.getSnapshotBeforeUpdate||o===e.memoizedProps&&u===e.memoizedState||(t.effectTag|=256),r=!1);return La(e,t,n,r,i,l)}function La(e,t,n,r,l,i){Ia(e,t);var a=0!=(64&t.effectTag);if(!r&&!a)return l&&wl(t,n,!1),Ka(e,t,i);r=t.stateNode,Pa.current=t;var o=a&&"function"!=typeof n.getDerivedStateFromError?null:r.render();return t.effectTag|=1,null!==e&&a?(t.child=Ei(t,e.child,null,i),t.child=Ei(t,null,o,i)):za(e,t,o,i),t.memoizedState=r.state,l&&wl(t,n,!0),t.child}function Aa(e){var t=e.stateNode;t.pendingContext?gl(0,t.pendingContext,t.pendingContext!==t.context):t.context&&gl(0,t.context,!1),Oi(e,t.containerInfo)}var Ua,Va,Wa,ja={dehydrated:null,retryTime:0};function Qa(e,t,n){var r,l=t.mode,i=t.pendingProps,a=Fi.current,o=!1;if((r=0!=(64&t.effectTag))||(r=0!=(2&a)&&(null===e||null!==e.memoizedState)),r?(o=!0,t.effectTag&=-65):null!==e&&null===e.memoizedState||void 0===i.fallback||!0===i.unstable_avoidThisFallback||(a|=1),cl(Fi,1&a),null===e){if(void 0!==i.fallback&&Ea(t),o){if(o=i.fallback,(i=Pu(null,l,0,null)).return=t,0==(2&t.mode))for(e=null!==t.memoizedState?t.child.child:t.child,i.child=e;null!==e;)e.return=i,e=e.sibling;return(n=Pu(o,l,n,null)).return=t,i.sibling=n,t.memoizedState=ja,t.child=i,n}return l=i.children,t.memoizedState=null,t.child=Si(t,null,l,n)}if(null!==e.memoizedState){if(l=(e=e.child).sibling,o){if(i=i.fallback,(n=Cu(e,e.pendingProps)).return=t,0==(2&t.mode)&&(o=null!==t.memoizedState?t.child.child:t.child)!==e.child)for(n.child=o;null!==o;)o.return=n,o=o.sibling;return(l=Cu(l,i)).return=t,n.sibling=l,n.childExpirationTime=0,t.memoizedState=ja,t.child=n,l}return n=Ei(t,e.child,i.children,n),t.memoizedState=null,t.child=n}if(e=e.child,o){if(o=i.fallback,(i=Pu(null,l,0,null)).return=t,i.child=e,null!==e&&(e.return=i),0==(2&t.mode))for(e=null!==t.memoizedState?t.child.child:t.child,i.child=e;null!==e;)e.return=i,e=e.sibling;return(n=Pu(o,l,n,null)).return=t,i.sibling=n,n.effectTag|=2,i.childExpirationTime=0,t.memoizedState=ja,t.child=i,n}return t.memoizedState=null,t.child=Ei(t,e,i.children,n)}function $a(e,t){e.expirationTime<t&&(e.expirationTime=t);var n=e.alternate;null!==n&&n.expirationTime<t&&(n.expirationTime=t),ti(e.return,t)}function Ba(e,t,n,r,l,i){var a=e.memoizedState;null===a?e.memoizedState={isBackwards:t,rendering:null,renderingStartTime:0,last:r,tail:n,tailExpiration:0,tailMode:l,lastEffect:i}:(a.isBackwards=t,a.rendering=null,a.renderingStartTime=0,a.last=r,a.tail=n,a.tailExpiration=0,a.tailMode=l,a.lastEffect=i)}function Ha(e,t,n){var r=t.pendingProps,l=r.revealOrder,i=r.tail;if(za(e,t,r.children,n),0!=(2&(r=Fi.current)))r=1&r|2,t.effectTag|=64;else{if(null!==e&&0!=(64&e.effectTag))e:for(e=t.child;null!==e;){if(13===e.tag)null!==e.memoizedState&&$a(e,n);else if(19===e.tag)$a(e,n);else if(null!==e.child){e.child.return=e,e=e.child;continue}if(e===t)break e;for(;null===e.sibling;){if(null===e.return||e.return===t)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}r&=1}if(cl(Fi,r),0==(2&t.mode))t.memoizedState=null;else switch(l){case"forwards":for(n=t.child,l=null;null!==n;)null!==(e=n.alternate)&&null===Di(e)&&(l=n),n=n.sibling;null===(n=l)?(l=t.child,t.child=null):(l=n.sibling,n.sibling=null),Ba(t,!1,l,n,i,t.lastEffect);break;case"backwards":for(n=null,l=t.child,t.child=null;null!==l;){if(null!==(e=l.alternate)&&null===Di(e)){t.child=l;break}e=l.sibling,l.sibling=n,n=l,l=e}Ba(t,!0,n,null,i,t.lastEffect);break;case"together":Ba(t,!1,null,null,void 0,t.lastEffect);break;default:t.memoizedState=null}return t.child}function Ka(e,t,n){null!==e&&(t.dependencies=e.dependencies);var r=t.expirationTime;if(0!==r&&au(r),t.childExpirationTime<n)return null;if(null!==e&&t.child!==e.child)throw Error(a(153));if(null!==t.child){for(n=Cu(e=t.child,e.pendingProps),t.child=n,n.return=t;null!==e.sibling;)e=e.sibling,(n=n.sibling=Cu(e,e.pendingProps)).return=t;n.sibling=null}return t.child}function qa(e,t){switch(e.tailMode){case"hidden":t=e.tail;for(var n=null;null!==t;)null!==t.alternate&&(n=t),t=t.sibling;null===n?e.tail=null:n.sibling=null;break;case"collapsed":n=e.tail;for(var r=null;null!==n;)null!==n.alternate&&(r=n),n=n.sibling;null===r?t||null===e.tail?e.tail=null:e.tail.sibling=null:r.sibling=null}}function Ya(e,t,n){var r=t.pendingProps;switch(t.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return null;case 1:return hl(t.type)&&vl(),null;case 3:return Ri(),ul(dl),ul(fl),(n=t.stateNode).pendingContext&&(n.context=n.pendingContext,n.pendingContext=null),null!==e&&null!==e.child||!Ca(t)||(t.effectTag|=4),null;case 5:Ii(t),n=zi(Ni.current);var i=t.type;if(null!==e&&null!=t.stateNode)Va(e,t,i,r,n),e.ref!==t.ref&&(t.effectTag|=128);else{if(!r){if(null===t.stateNode)throw Error(a(166));return null}if(e=zi(_i.current),Ca(t)){r=t.stateNode,i=t.type;var o=t.memoizedProps;switch(r[En]=t,r[Sn]=o,i){case"iframe":case"object":case"embed":Kt("load",r);break;case"video":case"audio":for(e=0;e<Xe.length;e++)Kt(Xe[e],r);break;case"source":Kt("error",r);break;case"img":case"image":case"link":Kt("error",r),Kt("load",r);break;case"form":Kt("reset",r),Kt("submit",r);break;case"details":Kt("toggle",r);break;case"input":Te(r,o),Kt("invalid",r),un(n,"onChange");break;case"select":r._wrapperState={wasMultiple:!!o.multiple},Kt("invalid",r),un(n,"onChange");break;case"textarea":Oe(r,o),Kt("invalid",r),un(n,"onChange")}for(var u in ln(i,o),e=null,o)if(o.hasOwnProperty(u)){var c=o[u];"children"===u?"string"==typeof c?r.textContent!==c&&(e=["children",c]):"number"==typeof c&&r.textContent!==""+c&&(e=["children",""+c]):E.hasOwnProperty(u)&&null!=c&&un(n,u)}switch(i){case"input":we(r),Ce(r,o,!0);break;case"textarea":we(r),Me(r);break;case"select":case"option":break;default:"function"==typeof o.onClick&&(r.onclick=cn)}n=e,t.updateQueue=n,null!==n&&(t.effectTag|=4)}else{switch(u=9===n.nodeType?n:n.ownerDocument,e===on&&(e=De(i)),e===on?"script"===i?((e=u.createElement("div")).innerHTML="<script><\/script>",e=e.removeChild(e.firstChild)):"string"==typeof r.is?e=u.createElement(i,{is:r.is}):(e=u.createElement(i),"select"===i&&(u=e,r.multiple?u.multiple=!0:r.size&&(u.size=r.size))):e=u.createElementNS(e,i),e[En]=t,e[Sn]=r,Ua(e,t),t.stateNode=e,u=an(i,r),i){case"iframe":case"object":case"embed":Kt("load",e),c=r;break;case"video":case"audio":for(c=0;c<Xe.length;c++)Kt(Xe[c],e);c=r;break;case"source":Kt("error",e),c=r;break;case"img":case"image":case"link":Kt("error",e),Kt("load",e),c=r;break;case"form":Kt("reset",e),Kt("submit",e),c=r;break;case"details":Kt("toggle",e),c=r;break;case"input":Te(e,r),c=xe(e,r),Kt("invalid",e),un(n,"onChange");break;case"option":c=Pe(e,r);break;case"select":e._wrapperState={wasMultiple:!!r.multiple},c=l({},r,{value:void 0}),Kt("invalid",e),un(n,"onChange");break;case"textarea":Oe(e,r),c=ze(e,r),Kt("invalid",e),un(n,"onChange");break;default:c=r}ln(i,c);var s=c;for(o in s)if(s.hasOwnProperty(o)){var f=s[o];"style"===o?nn(e,f):"dangerouslySetInnerHTML"===o?null!=(f=f?f.__html:void 0)&&Ue(e,f):"children"===o?"string"==typeof f?("textarea"!==i||""!==f)&&Ve(e,f):"number"==typeof f&&Ve(e,""+f):"suppressContentEditableWarning"!==o&&"suppressHydrationWarning"!==o&&"autoFocus"!==o&&(E.hasOwnProperty(o)?null!=f&&un(n,o):null!=f&&G(e,o,f,u))}switch(i){case"input":we(e),Ce(e,r,!1);break;case"textarea":we(e),Me(e);break;case"option":null!=r.value&&e.setAttribute("value",""+ye(r.value));break;case"select":e.multiple=!!r.multiple,null!=(n=r.value)?Ne(e,!!r.multiple,n,!1):null!=r.defaultValue&&Ne(e,!!r.multiple,r.defaultValue,!0);break;default:"function"==typeof c.onClick&&(e.onclick=cn)}gn(i,r)&&(t.effectTag|=4)}null!==t.ref&&(t.effectTag|=128)}return null;case 6:if(e&&null!=t.stateNode)Wa(0,t,e.memoizedProps,r);else{if("string"!=typeof r&&null===t.stateNode)throw Error(a(166));n=zi(Ni.current),zi(_i.current),Ca(t)?(n=t.stateNode,r=t.memoizedProps,n[En]=t,n.nodeValue!==r&&(t.effectTag|=4)):((n=(9===n.nodeType?n:n.ownerDocument).createTextNode(r))[En]=t,t.stateNode=n)}return null;case 13:return ul(Fi),r=t.memoizedState,0!=(64&t.effectTag)?(t.expirationTime=n,t):(n=null!==r,r=!1,null===e?void 0!==t.memoizedProps.fallback&&Ca(t):(r=null!==(i=e.memoizedState),n||null===i||null!==(i=e.child.sibling)&&(null!==(o=t.firstEffect)?(t.firstEffect=i,i.nextEffect=o):(t.firstEffect=t.lastEffect=i,i.nextEffect=null),i.effectTag=8)),n&&!r&&0!=(2&t.mode)&&(null===e&&!0!==t.memoizedProps.unstable_avoidThisFallback||0!=(1&Fi.current)?_o===wo&&(_o=ko):(_o!==wo&&_o!==ko||(_o=xo),0!==Ro&&null!==Eo&&(Mu(Eo,Co),Iu(Eo,Ro)))),(n||r)&&(t.effectTag|=4),null);case 4:return Ri(),null;case 10:return ei(t),null;case 17:return hl(t.type)&&vl(),null;case 19:if(ul(Fi),null===(r=t.memoizedState))return null;if(i=0!=(64&t.effectTag),null===(o=r.rendering)){if(i)qa(r,!1);else if(_o!==wo||null!==e&&0!=(64&e.effectTag))for(o=t.child;null!==o;){if(null!==(e=Di(o))){for(t.effectTag|=64,qa(r,!1),null!==(i=e.updateQueue)&&(t.updateQueue=i,t.effectTag|=4),null===r.lastEffect&&(t.firstEffect=null),t.lastEffect=r.lastEffect,r=t.child;null!==r;)o=n,(i=r).effectTag&=2,i.nextEffect=null,i.firstEffect=null,i.lastEffect=null,null===(e=i.alternate)?(i.childExpirationTime=0,i.expirationTime=o,i.child=null,i.memoizedProps=null,i.memoizedState=null,i.updateQueue=null,i.dependencies=null):(i.childExpirationTime=e.childExpirationTime,i.expirationTime=e.expirationTime,i.child=e.child,i.memoizedProps=e.memoizedProps,i.memoizedState=e.memoizedState,i.updateQueue=e.updateQueue,o=e.dependencies,i.dependencies=null===o?null:{expirationTime:o.expirationTime,firstContext:o.firstContext,responders:o.responders}),r=r.sibling;return cl(Fi,1&Fi.current|2),t.child}o=o.sibling}}else{if(!i)if(null!==(e=Di(o))){if(t.effectTag|=64,i=!0,null!==(n=e.updateQueue)&&(t.updateQueue=n,t.effectTag|=4),qa(r,!0),null===r.tail&&"hidden"===r.tailMode&&!o.alternate)return null!==(t=t.lastEffect=r.lastEffect)&&(t.nextEffect=null),null}else 2*Ul()-r.renderingStartTime>r.tailExpiration&&1<n&&(t.effectTag|=64,i=!0,qa(r,!1),t.expirationTime=t.childExpirationTime=n-1);r.isBackwards?(o.sibling=t.child,t.child=o):(null!==(n=r.last)?n.sibling=o:t.child=o,r.last=o)}return null!==r.tail?(0===r.tailExpiration&&(r.tailExpiration=Ul()+500),n=r.tail,r.rendering=n,r.tail=n.sibling,r.lastEffect=t.lastEffect,r.renderingStartTime=Ul(),n.sibling=null,t=Fi.current,cl(Fi,i?1&t|2:1&t),n):null}throw Error(a(156,t.tag))}function Xa(e){switch(e.tag){case 1:hl(e.type)&&vl();var t=e.effectTag;return 4096&t?(e.effectTag=-4097&t|64,e):null;case 3:if(Ri(),ul(dl),ul(fl),0!=(64&(t=e.effectTag)))throw Error(a(285));return e.effectTag=-4097&t|64,e;case 5:return Ii(e),null;case 13:return ul(Fi),4096&(t=e.effectTag)?(e.effectTag=-4097&t|64,e):null;case 19:return ul(Fi),null;case 4:return Ri(),null;case 10:return ei(e),null;default:return null}}function Ga(e,t){return{value:e,source:t,stack:ge(t)}}Ua=function(e,t){for(var n=t.child;null!==n;){if(5===n.tag||6===n.tag)e.appendChild(n.stateNode);else if(4!==n.tag&&null!==n.child){n.child.return=n,n=n.child;continue}if(n===t)break;for(;null===n.sibling;){if(null===n.return||n.return===t)return;n=n.return}n.sibling.return=n.return,n=n.sibling}},Va=function(e,t,n,r,i){var a=e.memoizedProps;if(a!==r){var o,u,c=t.stateNode;switch(zi(_i.current),e=null,n){case"input":a=xe(c,a),r=xe(c,r),e=[];break;case"option":a=Pe(c,a),r=Pe(c,r),e=[];break;case"select":a=l({},a,{value:void 0}),r=l({},r,{value:void 0}),e=[];break;case"textarea":a=ze(c,a),r=ze(c,r),e=[];break;default:"function"!=typeof a.onClick&&"function"==typeof r.onClick&&(c.onclick=cn)}for(o in ln(n,r),n=null,a)if(!r.hasOwnProperty(o)&&a.hasOwnProperty(o)&&null!=a[o])if("style"===o)for(u in c=a[o])c.hasOwnProperty(u)&&(n||(n={}),n[u]="");else"dangerouslySetInnerHTML"!==o&&"children"!==o&&"suppressContentEditableWarning"!==o&&"suppressHydrationWarning"!==o&&"autoFocus"!==o&&(E.hasOwnProperty(o)?e||(e=[]):(e=e||[]).push(o,null));for(o in r){var s=r[o];if(c=null!=a?a[o]:void 0,r.hasOwnProperty(o)&&s!==c&&(null!=s||null!=c))if("style"===o)if(c){for(u in c)!c.hasOwnProperty(u)||s&&s.hasOwnProperty(u)||(n||(n={}),n[u]="");for(u in s)s.hasOwnProperty(u)&&c[u]!==s[u]&&(n||(n={}),n[u]=s[u])}else n||(e||(e=[]),e.push(o,n)),n=s;else"dangerouslySetInnerHTML"===o?(s=s?s.__html:void 0,c=c?c.__html:void 0,null!=s&&c!==s&&(e=e||[]).push(o,s)):"children"===o?c===s||"string"!=typeof s&&"number"!=typeof s||(e=e||[]).push(o,""+s):"suppressContentEditableWarning"!==o&&"suppressHydrationWarning"!==o&&(E.hasOwnProperty(o)?(null!=s&&un(i,o),e||c===s||(e=[])):(e=e||[]).push(o,s))}n&&(e=e||[]).push("style",n),i=e,(t.updateQueue=i)&&(t.effectTag|=4)}},Wa=function(e,t,n,r){n!==r&&(t.effectTag|=4)};var Ja="function"==typeof WeakSet?WeakSet:Set;function Za(e,t){var n=t.source,r=t.stack;null===r&&null!==n&&(r=ge(n)),null!==n&&ve(n.type),t=t.value,null!==e&&1===e.tag&&ve(e.type);try{console.error(t)}catch(l){setTimeout((function(){throw l}))}}function eo(e){var t=e.ref;if(null!==t)if("function"==typeof t)try{t(null)}catch(n){yu(e,n)}else t.current=null}function to(e,t){switch(t.tag){case 0:case 11:case 15:case 22:return;case 1:if(256&t.effectTag&&null!==e){var n=e.memoizedProps,r=e.memoizedState;t=(e=t.stateNode).getSnapshotBeforeUpdate(t.elementType===t.type?n:ql(t.type,n),r),e.__reactInternalSnapshotBeforeUpdate=t}return;case 3:case 5:case 6:case 4:case 17:return}throw Error(a(163))}function no(e,t){if(null!==(t=null!==(t=t.updateQueue)?t.lastEffect:null)){var n=t=t.next;do{if((n.tag&e)===e){var r=n.destroy;n.destroy=void 0,void 0!==r&&r()}n=n.next}while(n!==t)}}function ro(e,t){if(null!==(t=null!==(t=t.updateQueue)?t.lastEffect:null)){var n=t=t.next;do{if((n.tag&e)===e){var r=n.create;n.destroy=r()}n=n.next}while(n!==t)}}function lo(e,t,n){switch(n.tag){case 0:case 11:case 15:case 22:return void ro(3,n);case 1:if(e=n.stateNode,4&n.effectTag)if(null===t)e.componentDidMount();else{var r=n.elementType===n.type?t.memoizedProps:ql(n.type,t.memoizedProps);e.componentDidUpdate(r,t.memoizedState,e.__reactInternalSnapshotBeforeUpdate)}return void(null!==(t=n.updateQueue)&&fi(n,t,e));case 3:if(null!==(t=n.updateQueue)){if(e=null,null!==n.child)switch(n.child.tag){case 5:e=n.child.stateNode;break;case 1:e=n.child.stateNode}fi(n,t,e)}return;case 5:return e=n.stateNode,void(null===t&&4&n.effectTag&&gn(n.type,n.memoizedProps)&&e.focus());case 6:case 4:case 12:return;case 13:return void(null===n.memoizedState&&(n=n.alternate,null!==n&&(n=n.memoizedState,null!==n&&(n=n.dehydrated,null!==n&&Dt(n)))));case 19:case 17:case 20:case 21:return}throw Error(a(163))}function io(e,t,n){switch("function"==typeof xu&&xu(t),t.tag){case 0:case 11:case 14:case 15:case 22:if(null!==(e=t.updateQueue)&&null!==(e=e.lastEffect)){var r=e.next;jl(97<n?97:n,(function(){var e=r;do{var n=e.destroy;if(void 0!==n){var l=t;try{n()}catch(i){yu(l,i)}}e=e.next}while(e!==r)}))}break;case 1:eo(t),"function"==typeof(n=t.stateNode).componentWillUnmount&&function(e,t){try{t.props=e.memoizedProps,t.state=e.memoizedState,t.componentWillUnmount()}catch(n){yu(e,n)}}(t,n);break;case 5:eo(t);break;case 4:co(e,t,n)}}function ao(e){var t=e.alternate;e.return=null,e.child=null,e.memoizedState=null,e.updateQueue=null,e.dependencies=null,e.alternate=null,e.firstEffect=null,e.lastEffect=null,e.pendingProps=null,e.memoizedProps=null,e.stateNode=null,null!==t&&ao(t)}function oo(e){return 5===e.tag||3===e.tag||4===e.tag}function uo(e){e:{for(var t=e.return;null!==t;){if(oo(t)){var n=t;break e}t=t.return}throw Error(a(160))}switch(t=n.stateNode,n.tag){case 5:var r=!1;break;case 3:case 4:t=t.containerInfo,r=!0;break;default:throw Error(a(161))}16&n.effectTag&&(Ve(t,""),n.effectTag&=-17);e:t:for(n=e;;){for(;null===n.sibling;){if(null===n.return||oo(n.return)){n=null;break e}n=n.return}for(n.sibling.return=n.return,n=n.sibling;5!==n.tag&&6!==n.tag&&18!==n.tag;){if(2&n.effectTag)continue t;if(null===n.child||4===n.tag)continue t;n.child.return=n,n=n.child}if(!(2&n.effectTag)){n=n.stateNode;break e}}r?function e(t,n,r){var l=t.tag,i=5===l||6===l;if(i)t=i?t.stateNode:t.stateNode.instance,n?8===r.nodeType?r.parentNode.insertBefore(t,n):r.insertBefore(t,n):(8===r.nodeType?(n=r.parentNode).insertBefore(t,r):(n=r).appendChild(t),null!==(r=r._reactRootContainer)&&void 0!==r||null!==n.onclick||(n.onclick=cn));else if(4!==l&&null!==(t=t.child))for(e(t,n,r),t=t.sibling;null!==t;)e(t,n,r),t=t.sibling}(e,n,t):function e(t,n,r){var l=t.tag,i=5===l||6===l;if(i)t=i?t.stateNode:t.stateNode.instance,n?r.insertBefore(t,n):r.appendChild(t);else if(4!==l&&null!==(t=t.child))for(e(t,n,r),t=t.sibling;null!==t;)e(t,n,r),t=t.sibling}(e,n,t)}function co(e,t,n){for(var r,l,i=t,o=!1;;){if(!o){o=i.return;e:for(;;){if(null===o)throw Error(a(160));switch(r=o.stateNode,o.tag){case 5:l=!1;break e;case 3:case 4:r=r.containerInfo,l=!0;break e}o=o.return}o=!0}if(5===i.tag||6===i.tag){e:for(var u=e,c=i,s=n,f=c;;)if(io(u,f,s),null!==f.child&&4!==f.tag)f.child.return=f,f=f.child;else{if(f===c)break e;for(;null===f.sibling;){if(null===f.return||f.return===c)break e;f=f.return}f.sibling.return=f.return,f=f.sibling}l?(u=r,c=i.stateNode,8===u.nodeType?u.parentNode.removeChild(c):u.removeChild(c)):r.removeChild(i.stateNode)}else if(4===i.tag){if(null!==i.child){r=i.stateNode.containerInfo,l=!0,i.child.return=i,i=i.child;continue}}else if(io(e,i,n),null!==i.child){i.child.return=i,i=i.child;continue}if(i===t)break;for(;null===i.sibling;){if(null===i.return||i.return===t)return;4===(i=i.return).tag&&(o=!1)}i.sibling.return=i.return,i=i.sibling}}function so(e,t){switch(t.tag){case 0:case 11:case 14:case 15:case 22:return void no(3,t);case 1:return;case 5:var n=t.stateNode;if(null!=n){var r=t.memoizedProps,l=null!==e?e.memoizedProps:r;e=t.type;var i=t.updateQueue;if(t.updateQueue=null,null!==i){for(n[Sn]=r,"input"===e&&"radio"===r.type&&null!=r.name&&Ee(n,r),an(e,l),t=an(e,r),l=0;l<i.length;l+=2){var o=i[l],u=i[l+1];"style"===o?nn(n,u):"dangerouslySetInnerHTML"===o?Ue(n,u):"children"===o?Ve(n,u):G(n,o,u,t)}switch(e){case"input":Se(n,r);break;case"textarea":Re(n,r);break;case"select":t=n._wrapperState.wasMultiple,n._wrapperState.wasMultiple=!!r.multiple,null!=(e=r.value)?Ne(n,!!r.multiple,e,!1):t!==!!r.multiple&&(null!=r.defaultValue?Ne(n,!!r.multiple,r.defaultValue,!0):Ne(n,!!r.multiple,r.multiple?[]:"",!1))}}}return;case 6:if(null===t.stateNode)throw Error(a(162));return void(t.stateNode.nodeValue=t.memoizedProps);case 3:return void((t=t.stateNode).hydrate&&(t.hydrate=!1,Dt(t.containerInfo)));case 12:return;case 13:if(n=t,null===t.memoizedState?r=!1:(r=!0,n=t.child,Io=Ul()),null!==n)e:for(e=n;;){if(5===e.tag)i=e.stateNode,r?"function"==typeof(i=i.style).setProperty?i.setProperty("display","none","important"):i.display="none":(i=e.stateNode,l=null!=(l=e.memoizedProps.style)&&l.hasOwnProperty("display")?l.display:null,i.style.display=tn("display",l));else if(6===e.tag)e.stateNode.nodeValue=r?"":e.memoizedProps;else{if(13===e.tag&&null!==e.memoizedState&&null===e.memoizedState.dehydrated){(i=e.child.sibling).return=e,e=i;continue}if(null!==e.child){e.child.return=e,e=e.child;continue}}if(e===n)break;for(;null===e.sibling;){if(null===e.return||e.return===n)break e;e=e.return}e.sibling.return=e.return,e=e.sibling}return void fo(t);case 19:return void fo(t);case 17:return}throw Error(a(163))}function fo(e){var t=e.updateQueue;if(null!==t){e.updateQueue=null;var n=e.stateNode;null===n&&(n=e.stateNode=new Ja),t.forEach((function(t){var r=wu.bind(null,e,t);n.has(t)||(n.add(t),t.then(r,r))}))}}var po="function"==typeof WeakMap?WeakMap:Map;function mo(e,t,n){(n=oi(n,null)).tag=3,n.payload={element:null};var r=t.value;return n.callback=function(){Do||(Do=!0,Lo=r),Za(e,t)},n}function ho(e,t,n){(n=oi(n,null)).tag=3;var r=e.type.getDerivedStateFromError;if("function"==typeof r){var l=t.value;n.payload=function(){return Za(e,t),r(l)}}var i=e.stateNode;return null!==i&&"function"==typeof i.componentDidCatch&&(n.callback=function(){"function"!=typeof r&&(null===Ao?Ao=new Set([this]):Ao.add(this),Za(e,t));var n=t.stack;this.componentDidCatch(t.value,{componentStack:null!==n?n:""})}),n}var vo,go=Math.ceil,yo=X.ReactCurrentDispatcher,bo=X.ReactCurrentOwner,wo=0,ko=3,xo=4,To=0,Eo=null,So=null,Co=0,_o=wo,Po=null,No=1073741823,zo=1073741823,Oo=null,Ro=0,Mo=!1,Io=0,Fo=null,Do=!1,Lo=null,Ao=null,Uo=!1,Vo=null,Wo=90,jo=null,Qo=0,$o=null,Bo=0;function Ho(){return 0!=(48&To)?1073741821-(Ul()/10|0):0!==Bo?Bo:Bo=1073741821-(Ul()/10|0)}function Ko(e,t,n){if(0==(2&(t=t.mode)))return 1073741823;var r=Vl();if(0==(4&t))return 99===r?1073741823:1073741822;if(0!=(16&To))return Co;if(null!==n)e=Kl(e,0|n.timeoutMs||5e3,250);else switch(r){case 99:e=1073741823;break;case 98:e=Kl(e,150,100);break;case 97:case 96:e=Kl(e,5e3,250);break;case 95:e=2;break;default:throw Error(a(326))}return null!==Eo&&e===Co&&--e,e}function qo(e,t){if(50<Qo)throw Qo=0,$o=null,Error(a(185));if(null!==(e=Yo(e,t))){var n=Vl();1073741823===t?0!=(8&To)&&0==(48&To)?Zo(e):(Go(e),0===To&&Bl()):Go(e),0==(4&To)||98!==n&&99!==n||(null===jo?jo=new Map([[e,t]]):(void 0===(n=jo.get(e))||n>t)&&jo.set(e,t))}}function Yo(e,t){e.expirationTime<t&&(e.expirationTime=t);var n=e.alternate;null!==n&&n.expirationTime<t&&(n.expirationTime=t);var r=e.return,l=null;if(null===r&&3===e.tag)l=e.stateNode;else for(;null!==r;){if(n=r.alternate,r.childExpirationTime<t&&(r.childExpirationTime=t),null!==n&&n.childExpirationTime<t&&(n.childExpirationTime=t),null===r.return&&3===r.tag){l=r.stateNode;break}r=r.return}return null!==l&&(Eo===l&&(au(t),_o===xo&&Mu(l,Co)),Iu(l,t)),l}function Xo(e){var t=e.lastExpiredTime;if(0!==t)return t;if(!Ru(e,t=e.firstPendingTime))return t;var n=e.lastPingedTime;return 2>=(e=n>(e=e.nextKnownPendingLevel)?n:e)&&t!==e?0:e}function Go(e){if(0!==e.lastExpiredTime)e.callbackExpirationTime=1073741823,e.callbackPriority=99,e.callbackNode=$l(Zo.bind(null,e));else{var t=Xo(e),n=e.callbackNode;if(0===t)null!==n&&(e.callbackNode=null,e.callbackExpirationTime=0,e.callbackPriority=90);else{var r=Ho();if(1073741823===t?r=99:1===t||2===t?r=95:r=0>=(r=10*(1073741821-t)-10*(1073741821-r))?99:250>=r?98:5250>=r?97:95,null!==n){var l=e.callbackPriority;if(e.callbackExpirationTime===t&&l>=r)return;n!==Rl&&Tl(n)}e.callbackExpirationTime=t,e.callbackPriority=r,t=1073741823===t?$l(Zo.bind(null,e)):Ql(r,Jo.bind(null,e),{timeout:10*(1073741821-t)-Ul()}),e.callbackNode=t}}}function Jo(e,t){if(Bo=0,t)return Fu(e,t=Ho()),Go(e),null;var n=Xo(e);if(0!==n){if(t=e.callbackNode,0!=(48&To))throw Error(a(327));if(hu(),e===Eo&&n===Co||nu(e,n),null!==So){var r=To;To|=16;for(var l=lu();;)try{uu();break}catch(u){ru(e,u)}if(Zl(),To=r,yo.current=l,1===_o)throw t=Po,nu(e,n),Mu(e,n),Go(e),t;if(null===So)switch(l=e.finishedWork=e.current.alternate,e.finishedExpirationTime=n,r=_o,Eo=null,r){case wo:case 1:throw Error(a(345));case 2:Fu(e,2<n?2:n);break;case ko:if(Mu(e,n),n===(r=e.lastSuspendedTime)&&(e.nextKnownPendingLevel=fu(l)),1073741823===No&&10<(l=Io+500-Ul())){if(Mo){var i=e.lastPingedTime;if(0===i||i>=n){e.lastPingedTime=n,nu(e,n);break}}if(0!==(i=Xo(e))&&i!==n)break;if(0!==r&&r!==n){e.lastPingedTime=r;break}e.timeoutHandle=bn(du.bind(null,e),l);break}du(e);break;case xo:if(Mu(e,n),n===(r=e.lastSuspendedTime)&&(e.nextKnownPendingLevel=fu(l)),Mo&&(0===(l=e.lastPingedTime)||l>=n)){e.lastPingedTime=n,nu(e,n);break}if(0!==(l=Xo(e))&&l!==n)break;if(0!==r&&r!==n){e.lastPingedTime=r;break}if(1073741823!==zo?r=10*(1073741821-zo)-Ul():1073741823===No?r=0:(r=10*(1073741821-No)-5e3,0>(r=(l=Ul())-r)&&(r=0),(n=10*(1073741821-n)-l)<(r=(120>r?120:480>r?480:1080>r?1080:1920>r?1920:3e3>r?3e3:4320>r?4320:1960*go(r/1960))-r)&&(r=n)),10<r){e.timeoutHandle=bn(du.bind(null,e),r);break}du(e);break;case 5:if(1073741823!==No&&null!==Oo){i=No;var o=Oo;if(0>=(r=0|o.busyMinDurationMs)?r=0:(l=0|o.busyDelayMs,r=(i=Ul()-(10*(1073741821-i)-(0|o.timeoutMs||5e3)))<=l?0:l+r-i),10<r){Mu(e,n),e.timeoutHandle=bn(du.bind(null,e),r);break}}du(e);break;default:throw Error(a(329))}if(Go(e),e.callbackNode===t)return Jo.bind(null,e)}}return null}function Zo(e){var t=e.lastExpiredTime;if(t=0!==t?t:1073741823,0!=(48&To))throw Error(a(327));if(hu(),e===Eo&&t===Co||nu(e,t),null!==So){var n=To;To|=16;for(var r=lu();;)try{ou();break}catch(l){ru(e,l)}if(Zl(),To=n,yo.current=r,1===_o)throw n=Po,nu(e,t),Mu(e,t),Go(e),n;if(null!==So)throw Error(a(261));e.finishedWork=e.current.alternate,e.finishedExpirationTime=t,Eo=null,du(e),Go(e)}return null}function eu(e,t){var n=To;To|=1;try{return e(t)}finally{0===(To=n)&&Bl()}}function tu(e,t){var n=To;To&=-2,To|=8;try{return e(t)}finally{0===(To=n)&&Bl()}}function nu(e,t){e.finishedWork=null,e.finishedExpirationTime=0;var n=e.timeoutHandle;if(-1!==n&&(e.timeoutHandle=-1,wn(n)),null!==So)for(n=So.return;null!==n;){var r=n;switch(r.tag){case 1:null!=(r=r.type.childContextTypes)&&vl();break;case 3:Ri(),ul(dl),ul(fl);break;case 5:Ii(r);break;case 4:Ri();break;case 13:case 19:ul(Fi);break;case 10:ei(r)}n=n.return}Eo=e,So=Cu(e.current,null),Co=t,_o=wo,Po=null,zo=No=1073741823,Oo=null,Ro=0,Mo=!1}function ru(e,t){for(;;){try{if(Zl(),Ai.current=ha,$i)for(var n=Wi.memoizedState;null!==n;){var r=n.queue;null!==r&&(r.pending=null),n=n.next}if(Vi=0,Qi=ji=Wi=null,$i=!1,null===So||null===So.return)return _o=1,Po=t,So=null;e:{var l=e,i=So.return,a=So,o=t;if(t=Co,a.effectTag|=2048,a.firstEffect=a.lastEffect=null,null!==o&&"object"==typeof o&&"function"==typeof o.then){var u=o;if(0==(2&a.mode)){var c=a.alternate;c?(a.updateQueue=c.updateQueue,a.memoizedState=c.memoizedState,a.expirationTime=c.expirationTime):(a.updateQueue=null,a.memoizedState=null)}var s=0!=(1&Fi.current),f=i;do{var d;if(d=13===f.tag){var p=f.memoizedState;if(null!==p)d=null!==p.dehydrated;else{var m=f.memoizedProps;d=void 0!==m.fallback&&(!0!==m.unstable_avoidThisFallback||!s)}}if(d){var h=f.updateQueue;if(null===h){var v=new Set;v.add(u),f.updateQueue=v}else h.add(u);if(0==(2&f.mode)){if(f.effectTag|=64,a.effectTag&=-2981,1===a.tag)if(null===a.alternate)a.tag=17;else{var g=oi(1073741823,null);g.tag=2,ui(a,g)}a.expirationTime=1073741823;break e}o=void 0,a=t;var y=l.pingCache;if(null===y?(y=l.pingCache=new po,o=new Set,y.set(u,o)):void 0===(o=y.get(u))&&(o=new Set,y.set(u,o)),!o.has(a)){o.add(a);var b=bu.bind(null,l,u,a);u.then(b,b)}f.effectTag|=4096,f.expirationTime=t;break e}f=f.return}while(null!==f);o=Error((ve(a.type)||"A React component")+" suspended while rendering, but no fallback UI was specified.\n\nAdd a <Suspense fallback=...> component higher in the tree to provide a loading indicator or placeholder to display."+ge(a))}5!==_o&&(_o=2),o=Ga(o,a),f=i;do{switch(f.tag){case 3:u=o,f.effectTag|=4096,f.expirationTime=t,ci(f,mo(f,u,t));break e;case 1:u=o;var w=f.type,k=f.stateNode;if(0==(64&f.effectTag)&&("function"==typeof w.getDerivedStateFromError||null!==k&&"function"==typeof k.componentDidCatch&&(null===Ao||!Ao.has(k)))){f.effectTag|=4096,f.expirationTime=t,ci(f,ho(f,u,t));break e}}f=f.return}while(null!==f)}So=su(So)}catch(x){t=x;continue}break}}function lu(){var e=yo.current;return yo.current=ha,null===e?ha:e}function iu(e,t){e<No&&2<e&&(No=e),null!==t&&e<zo&&2<e&&(zo=e,Oo=t)}function au(e){e>Ro&&(Ro=e)}function ou(){for(;null!==So;)So=cu(So)}function uu(){for(;null!==So&&!Ml();)So=cu(So)}function cu(e){var t=vo(e.alternate,e,Co);return e.memoizedProps=e.pendingProps,null===t&&(t=su(e)),bo.current=null,t}function su(e){So=e;do{var t=So.alternate;if(e=So.return,0==(2048&So.effectTag)){if(t=Ya(t,So,Co),1===Co||1!==So.childExpirationTime){for(var n=0,r=So.child;null!==r;){var l=r.expirationTime,i=r.childExpirationTime;l>n&&(n=l),i>n&&(n=i),r=r.sibling}So.childExpirationTime=n}if(null!==t)return t;null!==e&&0==(2048&e.effectTag)&&(null===e.firstEffect&&(e.firstEffect=So.firstEffect),null!==So.lastEffect&&(null!==e.lastEffect&&(e.lastEffect.nextEffect=So.firstEffect),e.lastEffect=So.lastEffect),1<So.effectTag&&(null!==e.lastEffect?e.lastEffect.nextEffect=So:e.firstEffect=So,e.lastEffect=So))}else{if(null!==(t=Xa(So)))return t.effectTag&=2047,t;null!==e&&(e.firstEffect=e.lastEffect=null,e.effectTag|=2048)}if(null!==(t=So.sibling))return t;So=e}while(null!==So);return _o===wo&&(_o=5),null}function fu(e){var t=e.expirationTime;return t>(e=e.childExpirationTime)?t:e}function du(e){var t=Vl();return jl(99,pu.bind(null,e,t)),null}function pu(e,t){do{hu()}while(null!==Vo);if(0!=(48&To))throw Error(a(327));var n=e.finishedWork,r=e.finishedExpirationTime;if(null===n)return null;if(e.finishedWork=null,e.finishedExpirationTime=0,n===e.current)throw Error(a(177));e.callbackNode=null,e.callbackExpirationTime=0,e.callbackPriority=90,e.nextKnownPendingLevel=0;var l=fu(n);if(e.firstPendingTime=l,r<=e.lastSuspendedTime?e.firstSuspendedTime=e.lastSuspendedTime=e.nextKnownPendingLevel=0:r<=e.firstSuspendedTime&&(e.firstSuspendedTime=r-1),r<=e.lastPingedTime&&(e.lastPingedTime=0),r<=e.lastExpiredTime&&(e.lastExpiredTime=0),e===Eo&&(So=Eo=null,Co=0),1<n.effectTag?null!==n.lastEffect?(n.lastEffect.nextEffect=n,l=n.firstEffect):l=n:l=n.firstEffect,null!==l){var i=To;To|=32,bo.current=null,hn=Ht;var o=pn();if(mn(o)){if("selectionStart"in o)var u={start:o.selectionStart,end:o.selectionEnd};else e:{var c=(u=(u=o.ownerDocument)&&u.defaultView||window).getSelection&&u.getSelection();if(c&&0!==c.rangeCount){u=c.anchorNode;var s=c.anchorOffset,f=c.focusNode;c=c.focusOffset;try{u.nodeType,f.nodeType}catch(C){u=null;break e}var d=0,p=-1,m=-1,h=0,v=0,g=o,y=null;t:for(;;){for(var b;g!==u||0!==s&&3!==g.nodeType||(p=d+s),g!==f||0!==c&&3!==g.nodeType||(m=d+c),3===g.nodeType&&(d+=g.nodeValue.length),null!==(b=g.firstChild);)y=g,g=b;for(;;){if(g===o)break t;if(y===u&&++h===s&&(p=d),y===f&&++v===c&&(m=d),null!==(b=g.nextSibling))break;y=(g=y).parentNode}g=b}u=-1===p||-1===m?null:{start:p,end:m}}else u=null}u=u||{start:0,end:0}}else u=null;vn={activeElementDetached:null,focusedElem:o,selectionRange:u},Ht=!1,Fo=l;do{try{mu()}catch(C){if(null===Fo)throw Error(a(330));yu(Fo,C),Fo=Fo.nextEffect}}while(null!==Fo);Fo=l;do{try{for(o=e,u=t;null!==Fo;){var w=Fo.effectTag;if(16&w&&Ve(Fo.stateNode,""),128&w){var k=Fo.alternate;if(null!==k){var x=k.ref;null!==x&&("function"==typeof x?x(null):x.current=null)}}switch(1038&w){case 2:uo(Fo),Fo.effectTag&=-3;break;case 6:uo(Fo),Fo.effectTag&=-3,so(Fo.alternate,Fo);break;case 1024:Fo.effectTag&=-1025;break;case 1028:Fo.effectTag&=-1025,so(Fo.alternate,Fo);break;case 4:so(Fo.alternate,Fo);break;case 8:co(o,s=Fo,u),ao(s)}Fo=Fo.nextEffect}}catch(C){if(null===Fo)throw Error(a(330));yu(Fo,C),Fo=Fo.nextEffect}}while(null!==Fo);if(x=vn,k=pn(),w=x.focusedElem,u=x.selectionRange,k!==w&&w&&w.ownerDocument&&function e(t,n){return!(!t||!n)&&(t===n||(!t||3!==t.nodeType)&&(n&&3===n.nodeType?e(t,n.parentNode):"contains"in t?t.contains(n):!!t.compareDocumentPosition&&!!(16&t.compareDocumentPosition(n))))}(w.ownerDocument.documentElement,w)){null!==u&&mn(w)&&(k=u.start,void 0===(x=u.end)&&(x=k),"selectionStart"in w?(w.selectionStart=k,w.selectionEnd=Math.min(x,w.value.length)):(x=(k=w.ownerDocument||document)&&k.defaultView||window).getSelection&&(x=x.getSelection(),s=w.textContent.length,o=Math.min(u.start,s),u=void 0===u.end?o:Math.min(u.end,s),!x.extend&&o>u&&(s=u,u=o,o=s),s=dn(w,o),f=dn(w,u),s&&f&&(1!==x.rangeCount||x.anchorNode!==s.node||x.anchorOffset!==s.offset||x.focusNode!==f.node||x.focusOffset!==f.offset)&&((k=k.createRange()).setStart(s.node,s.offset),x.removeAllRanges(),o>u?(x.addRange(k),x.extend(f.node,f.offset)):(k.setEnd(f.node,f.offset),x.addRange(k))))),k=[];for(x=w;x=x.parentNode;)1===x.nodeType&&k.push({element:x,left:x.scrollLeft,top:x.scrollTop});for("function"==typeof w.focus&&w.focus(),w=0;w<k.length;w++)(x=k[w]).element.scrollLeft=x.left,x.element.scrollTop=x.top}Ht=!!hn,vn=hn=null,e.current=n,Fo=l;do{try{for(w=e;null!==Fo;){var T=Fo.effectTag;if(36&T&&lo(w,Fo.alternate,Fo),128&T){k=void 0;var E=Fo.ref;if(null!==E){var S=Fo.stateNode;switch(Fo.tag){case 5:k=S;break;default:k=S}"function"==typeof E?E(k):E.current=k}}Fo=Fo.nextEffect}}catch(C){if(null===Fo)throw Error(a(330));yu(Fo,C),Fo=Fo.nextEffect}}while(null!==Fo);Fo=null,Il(),To=i}else e.current=n;if(Uo)Uo=!1,Vo=e,Wo=t;else for(Fo=l;null!==Fo;)t=Fo.nextEffect,Fo.nextEffect=null,Fo=t;if(0===(t=e.firstPendingTime)&&(Ao=null),1073741823===t?e===$o?Qo++:(Qo=0,$o=e):Qo=0,"function"==typeof ku&&ku(n.stateNode,r),Go(e),Do)throw Do=!1,e=Lo,Lo=null,e;return 0!=(8&To)||Bl(),null}function mu(){for(;null!==Fo;){var e=Fo.effectTag;0!=(256&e)&&to(Fo.alternate,Fo),0==(512&e)||Uo||(Uo=!0,Ql(97,(function(){return hu(),null}))),Fo=Fo.nextEffect}}function hu(){if(90!==Wo){var e=97<Wo?97:Wo;return Wo=90,jl(e,vu)}}function vu(){if(null===Vo)return!1;var e=Vo;if(Vo=null,0!=(48&To))throw Error(a(331));var t=To;for(To|=32,e=e.current.firstEffect;null!==e;){try{var n=e;if(0!=(512&n.effectTag))switch(n.tag){case 0:case 11:case 15:case 22:no(5,n),ro(5,n)}}catch(r){if(null===e)throw Error(a(330));yu(e,r)}n=e.nextEffect,e.nextEffect=null,e=n}return To=t,Bl(),!0}function gu(e,t,n){ui(e,t=mo(e,t=Ga(n,t),1073741823)),null!==(e=Yo(e,1073741823))&&Go(e)}function yu(e,t){if(3===e.tag)gu(e,e,t);else for(var n=e.return;null!==n;){if(3===n.tag){gu(n,e,t);break}if(1===n.tag){var r=n.stateNode;if("function"==typeof n.type.getDerivedStateFromError||"function"==typeof r.componentDidCatch&&(null===Ao||!Ao.has(r))){ui(n,e=ho(n,e=Ga(t,e),1073741823)),null!==(n=Yo(n,1073741823))&&Go(n);break}}n=n.return}}function bu(e,t,n){var r=e.pingCache;null!==r&&r.delete(t),Eo===e&&Co===n?_o===xo||_o===ko&&1073741823===No&&Ul()-Io<500?nu(e,Co):Mo=!0:Ru(e,n)&&(0!==(t=e.lastPingedTime)&&t<n||(e.lastPingedTime=n,Go(e)))}function wu(e,t){var n=e.stateNode;null!==n&&n.delete(t),0===(t=0)&&(t=Ko(t=Ho(),e,null)),null!==(e=Yo(e,t))&&Go(e)}vo=function(e,t,n){var r=t.expirationTime;if(null!==e){var l=t.pendingProps;if(e.memoizedProps!==l||dl.current)Na=!0;else{if(r<n){switch(Na=!1,t.tag){case 3:Aa(t),_a();break;case 5:if(Mi(t),4&t.mode&&1!==n&&l.hidden)return t.expirationTime=t.childExpirationTime=1,null;break;case 1:hl(t.type)&&bl(t);break;case 4:Oi(t,t.stateNode.containerInfo);break;case 10:r=t.memoizedProps.value,l=t.type._context,cl(Yl,l._currentValue),l._currentValue=r;break;case 13:if(null!==t.memoizedState)return 0!==(r=t.child.childExpirationTime)&&r>=n?Qa(e,t,n):(cl(Fi,1&Fi.current),null!==(t=Ka(e,t,n))?t.sibling:null);cl(Fi,1&Fi.current);break;case 19:if(r=t.childExpirationTime>=n,0!=(64&e.effectTag)){if(r)return Ha(e,t,n);t.effectTag|=64}if(null!==(l=t.memoizedState)&&(l.rendering=null,l.tail=null),cl(Fi,Fi.current),!r)return null}return Ka(e,t,n)}Na=!1}}else Na=!1;switch(t.expirationTime=0,t.tag){case 2:if(r=t.type,null!==e&&(e.alternate=null,t.alternate=null,t.effectTag|=2),e=t.pendingProps,l=ml(t,fl.current),ni(t,n),l=Ki(null,t,r,e,l,n),t.effectTag|=1,"object"==typeof l&&null!==l&&"function"==typeof l.render&&void 0===l.$$typeof){if(t.tag=1,t.memoizedState=null,t.updateQueue=null,hl(r)){var i=!0;bl(t)}else i=!1;t.memoizedState=null!==l.state&&void 0!==l.state?l.state:null,ii(t);var o=r.getDerivedStateFromProps;"function"==typeof o&&mi(t,r,o,e),l.updater=hi,t.stateNode=l,l._reactInternalFiber=t,bi(t,r,e,n),t=La(null,t,r,!0,i,n)}else t.tag=0,za(null,t,l,n),t=t.child;return t;case 16:e:{if(l=t.elementType,null!==e&&(e.alternate=null,t.alternate=null,t.effectTag|=2),e=t.pendingProps,function(e){if(-1===e._status){e._status=0;var t=e._ctor;t=t(),e._result=t,t.then((function(t){0===e._status&&(t=t.default,e._status=1,e._result=t)}),(function(t){0===e._status&&(e._status=2,e._result=t)}))}}(l),1!==l._status)throw l._result;switch(l=l._result,t.type=l,i=t.tag=function(e){if("function"==typeof e)return Su(e)?1:0;if(null!=e){if((e=e.$$typeof)===ue)return 11;if(e===fe)return 14}return 2}(l),e=ql(l,e),i){case 0:t=Fa(null,t,l,e,n);break e;case 1:t=Da(null,t,l,e,n);break e;case 11:t=Oa(null,t,l,e,n);break e;case 14:t=Ra(null,t,l,ql(l.type,e),r,n);break e}throw Error(a(306,l,""))}return t;case 0:return r=t.type,l=t.pendingProps,Fa(e,t,r,l=t.elementType===r?l:ql(r,l),n);case 1:return r=t.type,l=t.pendingProps,Da(e,t,r,l=t.elementType===r?l:ql(r,l),n);case 3:if(Aa(t),r=t.updateQueue,null===e||null===r)throw Error(a(282));if(r=t.pendingProps,l=null!==(l=t.memoizedState)?l.element:null,ai(e,t),si(t,r,null,n),(r=t.memoizedState.element)===l)_a(),t=Ka(e,t,n);else{if((l=t.stateNode.hydrate)&&(wa=kn(t.stateNode.containerInfo.firstChild),ba=t,l=ka=!0),l)for(n=Si(t,null,r,n),t.child=n;n;)n.effectTag=-3&n.effectTag|1024,n=n.sibling;else za(e,t,r,n),_a();t=t.child}return t;case 5:return Mi(t),null===e&&Ea(t),r=t.type,l=t.pendingProps,i=null!==e?e.memoizedProps:null,o=l.children,yn(r,l)?o=null:null!==i&&yn(r,i)&&(t.effectTag|=16),Ia(e,t),4&t.mode&&1!==n&&l.hidden?(t.expirationTime=t.childExpirationTime=1,t=null):(za(e,t,o,n),t=t.child),t;case 6:return null===e&&Ea(t),null;case 13:return Qa(e,t,n);case 4:return Oi(t,t.stateNode.containerInfo),r=t.pendingProps,null===e?t.child=Ei(t,null,r,n):za(e,t,r,n),t.child;case 11:return r=t.type,l=t.pendingProps,Oa(e,t,r,l=t.elementType===r?l:ql(r,l),n);case 7:return za(e,t,t.pendingProps,n),t.child;case 8:case 12:return za(e,t,t.pendingProps.children,n),t.child;case 10:e:{r=t.type._context,l=t.pendingProps,o=t.memoizedProps,i=l.value;var u=t.type._context;if(cl(Yl,u._currentValue),u._currentValue=i,null!==o)if(u=o.value,0===(i=Lr(u,i)?0:0|("function"==typeof r._calculateChangedBits?r._calculateChangedBits(u,i):1073741823))){if(o.children===l.children&&!dl.current){t=Ka(e,t,n);break e}}else for(null!==(u=t.child)&&(u.return=t);null!==u;){var c=u.dependencies;if(null!==c){o=u.child;for(var s=c.firstContext;null!==s;){if(s.context===r&&0!=(s.observedBits&i)){1===u.tag&&((s=oi(n,null)).tag=2,ui(u,s)),u.expirationTime<n&&(u.expirationTime=n),null!==(s=u.alternate)&&s.expirationTime<n&&(s.expirationTime=n),ti(u.return,n),c.expirationTime<n&&(c.expirationTime=n);break}s=s.next}}else o=10===u.tag&&u.type===t.type?null:u.child;if(null!==o)o.return=u;else for(o=u;null!==o;){if(o===t){o=null;break}if(null!==(u=o.sibling)){u.return=o.return,o=u;break}o=o.return}u=o}za(e,t,l.children,n),t=t.child}return t;case 9:return l=t.type,r=(i=t.pendingProps).children,ni(t,n),r=r(l=ri(l,i.unstable_observedBits)),t.effectTag|=1,za(e,t,r,n),t.child;case 14:return i=ql(l=t.type,t.pendingProps),Ra(e,t,l,i=ql(l.type,i),r,n);case 15:return Ma(e,t,t.type,t.pendingProps,r,n);case 17:return r=t.type,l=t.pendingProps,l=t.elementType===r?l:ql(r,l),null!==e&&(e.alternate=null,t.alternate=null,t.effectTag|=2),t.tag=1,hl(r)?(e=!0,bl(t)):e=!1,ni(t,n),gi(t,r,l),bi(t,r,l,n),La(null,t,r,!0,e,n);case 19:return Ha(e,t,n)}throw Error(a(156,t.tag))};var ku=null,xu=null;function Tu(e,t,n,r){this.tag=e,this.key=n,this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null,this.index=0,this.ref=null,this.pendingProps=t,this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null,this.mode=r,this.effectTag=0,this.lastEffect=this.firstEffect=this.nextEffect=null,this.childExpirationTime=this.expirationTime=0,this.alternate=null}function Eu(e,t,n,r){return new Tu(e,t,n,r)}function Su(e){return!(!(e=e.prototype)||!e.isReactComponent)}function Cu(e,t){var n=e.alternate;return null===n?((n=Eu(e.tag,t,e.key,e.mode)).elementType=e.elementType,n.type=e.type,n.stateNode=e.stateNode,n.alternate=e,e.alternate=n):(n.pendingProps=t,n.effectTag=0,n.nextEffect=null,n.firstEffect=null,n.lastEffect=null),n.childExpirationTime=e.childExpirationTime,n.expirationTime=e.expirationTime,n.child=e.child,n.memoizedProps=e.memoizedProps,n.memoizedState=e.memoizedState,n.updateQueue=e.updateQueue,t=e.dependencies,n.dependencies=null===t?null:{expirationTime:t.expirationTime,firstContext:t.firstContext,responders:t.responders},n.sibling=e.sibling,n.index=e.index,n.ref=e.ref,n}function _u(e,t,n,r,l,i){var o=2;if(r=e,"function"==typeof e)Su(e)&&(o=1);else if("string"==typeof e)o=5;else e:switch(e){case ne:return Pu(n.children,l,i,t);case oe:o=8,l|=7;break;case re:o=8,l|=1;break;case le:return(e=Eu(12,n,t,8|l)).elementType=le,e.type=le,e.expirationTime=i,e;case ce:return(e=Eu(13,n,t,l)).type=ce,e.elementType=ce,e.expirationTime=i,e;case se:return(e=Eu(19,n,t,l)).elementType=se,e.expirationTime=i,e;default:if("object"==typeof e&&null!==e)switch(e.$$typeof){case ie:o=10;break e;case ae:o=9;break e;case ue:o=11;break e;case fe:o=14;break e;case de:o=16,r=null;break e;case pe:o=22;break e}throw Error(a(130,null==e?e:typeof e,""))}return(t=Eu(o,n,t,l)).elementType=e,t.type=r,t.expirationTime=i,t}function Pu(e,t,n,r){return(e=Eu(7,e,r,t)).expirationTime=n,e}function Nu(e,t,n){return(e=Eu(6,e,null,t)).expirationTime=n,e}function zu(e,t,n){return(t=Eu(4,null!==e.children?e.children:[],e.key,t)).expirationTime=n,t.stateNode={containerInfo:e.containerInfo,pendingChildren:null,implementation:e.implementation},t}function Ou(e,t,n){this.tag=t,this.current=null,this.containerInfo=e,this.pingCache=this.pendingChildren=null,this.finishedExpirationTime=0,this.finishedWork=null,this.timeoutHandle=-1,this.pendingContext=this.context=null,this.hydrate=n,this.callbackNode=null,this.callbackPriority=90,this.lastExpiredTime=this.lastPingedTime=this.nextKnownPendingLevel=this.lastSuspendedTime=this.firstSuspendedTime=this.firstPendingTime=0}function Ru(e,t){var n=e.firstSuspendedTime;return e=e.lastSuspendedTime,0!==n&&n>=t&&e<=t}function Mu(e,t){var n=e.firstSuspendedTime,r=e.lastSuspendedTime;n<t&&(e.firstSuspendedTime=t),(r>t||0===n)&&(e.lastSuspendedTime=t),t<=e.lastPingedTime&&(e.lastPingedTime=0),t<=e.lastExpiredTime&&(e.lastExpiredTime=0)}function Iu(e,t){t>e.firstPendingTime&&(e.firstPendingTime=t);var n=e.firstSuspendedTime;0!==n&&(t>=n?e.firstSuspendedTime=e.lastSuspendedTime=e.nextKnownPendingLevel=0:t>=e.lastSuspendedTime&&(e.lastSuspendedTime=t+1),t>e.nextKnownPendingLevel&&(e.nextKnownPendingLevel=t))}function Fu(e,t){var n=e.lastExpiredTime;(0===n||n>t)&&(e.lastExpiredTime=t)}function Du(e,t,n,r){var l=t.current,i=Ho(),o=di.suspense;i=Ko(i,l,o);e:if(n){t:{if(Ze(n=n._reactInternalFiber)!==n||1!==n.tag)throw Error(a(170));var u=n;do{switch(u.tag){case 3:u=u.stateNode.context;break t;case 1:if(hl(u.type)){u=u.stateNode.__reactInternalMemoizedMergedChildContext;break t}}u=u.return}while(null!==u);throw Error(a(171))}if(1===n.tag){var c=n.type;if(hl(c)){n=yl(n,c,u);break e}}n=u}else n=sl;return null===t.context?t.context=n:t.pendingContext=n,(t=oi(i,o)).payload={element:e},null!==(r=void 0===r?null:r)&&(t.callback=r),ui(l,t),qo(l,i),i}function Lu(e){if(!(e=e.current).child)return null;switch(e.child.tag){case 5:default:return e.child.stateNode}}function Au(e,t){null!==(e=e.memoizedState)&&null!==e.dehydrated&&e.retryTime<t&&(e.retryTime=t)}function Uu(e,t){Au(e,t),(e=e.alternate)&&Au(e,t)}function Vu(e,t,n){var r=new Ou(e,t,n=null!=n&&!0===n.hydrate),l=Eu(3,null,null,2===t?7:1===t?3:0);r.current=l,l.stateNode=r,ii(l),e[Cn]=r.current,n&&0!==t&&function(e,t){var n=Je(t);Ct.forEach((function(e){mt(e,t,n)})),_t.forEach((function(e){mt(e,t,n)}))}(0,9===e.nodeType?e:e.ownerDocument),this._internalRoot=r}function Wu(e){return!(!e||1!==e.nodeType&&9!==e.nodeType&&11!==e.nodeType&&(8!==e.nodeType||" react-mount-point-unstable "!==e.nodeValue))}function ju(e,t,n,r,l){var i=n._reactRootContainer;if(i){var a=i._internalRoot;if("function"==typeof l){var o=l;l=function(){var e=Lu(a);o.call(e)}}Du(t,a,e,l)}else{if(i=n._reactRootContainer=function(e,t){if(t||(t=!(!(t=e?9===e.nodeType?e.documentElement:e.firstChild:null)||1!==t.nodeType||!t.hasAttribute("data-reactroot"))),!t)for(var n;n=e.lastChild;)e.removeChild(n);return new Vu(e,0,t?{hydrate:!0}:void 0)}(n,r),a=i._internalRoot,"function"==typeof l){var u=l;l=function(){var e=Lu(a);u.call(e)}}tu((function(){Du(t,a,e,l)}))}return Lu(a)}function Qu(e,t,n){var r=3<arguments.length&&void 0!==arguments[3]?arguments[3]:null;return{$$typeof:te,key:null==r?null:""+r,children:e,containerInfo:t,implementation:n}}function $u(e,t){var n=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null;if(!Wu(t))throw Error(a(200));return Qu(e,t,null,n)}Vu.prototype.render=function(e){Du(e,this._internalRoot,null,null)},Vu.prototype.unmount=function(){var e=this._internalRoot,t=e.containerInfo;Du(null,e,null,(function(){t[Cn]=null}))},ht=function(e){if(13===e.tag){var t=Kl(Ho(),150,100);qo(e,t),Uu(e,t)}},vt=function(e){13===e.tag&&(qo(e,3),Uu(e,3))},gt=function(e){if(13===e.tag){var t=Ho();qo(e,t=Ko(t,e,null)),Uu(e,t)}},P=function(e,t,n){switch(t){case"input":if(Se(e,n),t=n.name,"radio"===n.type&&null!=t){for(n=e;n.parentNode;)n=n.parentNode;for(n=n.querySelectorAll("input[name="+JSON.stringify(""+t)+'][type="radio"]'),t=0;t<n.length;t++){var r=n[t];if(r!==e&&r.form===e.form){var l=zn(r);if(!l)throw Error(a(90));ke(r),Se(r,l)}}}break;case"textarea":Re(e,n);break;case"select":null!=(t=n.value)&&Ne(e,!!n.multiple,t,!1)}},I=eu,F=function(e,t,n,r,l){var i=To;To|=4;try{return jl(98,e.bind(null,t,n,r,l))}finally{0===(To=i)&&Bl()}},D=function(){0==(49&To)&&(function(){if(null!==jo){var e=jo;jo=null,e.forEach((function(e,t){Fu(t,e),Go(t)})),Bl()}}(),hu())},L=function(e,t){var n=To;To|=2;try{return e(t)}finally{0===(To=n)&&Bl()}};var Bu,Hu,Ku={Events:[Pn,Nn,zn,C,T,Ln,function(e){lt(e,Dn)},R,M,Gt,ot,hu,{current:!1}]};Hu=(Bu={findFiberByHostInstance:_n,bundleType:0,version:"16.13.1",rendererPackageName:"react-dom"}).findFiberByHostInstance,function(e){if("undefined"==typeof __REACT_DEVTOOLS_GLOBAL_HOOK__)return!1;var t=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(t.isDisabled||!t.supportsFiber)return!0;try{var n=t.inject(e);ku=function(e){try{t.onCommitFiberRoot(n,e,void 0,64==(64&e.current.effectTag))}catch(r){}},xu=function(e){try{t.onCommitFiberUnmount(n,e)}catch(r){}}}catch(r){}}(l({},Bu,{overrideHookState:null,overrideProps:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:X.ReactCurrentDispatcher,findHostInstanceByFiber:function(e){return null===(e=nt(e))?null:e.stateNode},findFiberByHostInstance:function(e){return Hu?Hu(e):null},findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null})),t.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=Ku,t.createPortal=$u,t.findDOMNode=function(e){if(null==e)return null;if(1===e.nodeType)return e;var t=e._reactInternalFiber;if(void 0===t){if("function"==typeof e.render)throw Error(a(188));throw Error(a(268,Object.keys(e)))}return e=null===(e=nt(t))?null:e.stateNode},t.flushSync=function(e,t){if(0!=(48&To))throw Error(a(187));var n=To;To|=1;try{return jl(99,e.bind(null,t))}finally{To=n,Bl()}},t.hydrate=function(e,t,n){if(!Wu(t))throw Error(a(200));return ju(null,e,t,!0,n)},t.render=function(e,t,n){if(!Wu(t))throw Error(a(200));return ju(null,e,t,!1,n)},t.unmountComponentAtNode=function(e){if(!Wu(e))throw Error(a(40));return!!e._reactRootContainer&&(tu((function(){ju(null,null,e,!1,(function(){e._reactRootContainer=null,e[Cn]=null}))})),!0)},t.unstable_batchedUpdates=eu,t.unstable_createPortal=function(e,t){return $u(e,t,2<arguments.length&&void 0!==arguments[2]?arguments[2]:null)},t.unstable_renderSubtreeIntoContainer=function(e,t,n,r){if(!Wu(n))throw Error(a(200));if(null==e||void 0===e._reactInternalFiber)throw Error(a(38));return ju(e,t,n,!1,r)},t.version="16.13.1"}}]);
-//# sourceMappingURL=framework-fd2b85530eec85104a39.js.map
\ No newline at end of file
diff --git a/framework-fd2b85530eec85104a39.js.map b/framework-fd2b85530eec85104a39.js.map
deleted file mode 100644
index 98f6a3c..0000000
--- a/framework-fd2b85530eec85104a39.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":["webpack:///./node_modules/prop-types/factoryWithThrowingShims.js","webpack:///./node_modules/prop-types/index.js","webpack:///./node_modules/react-dom/node_modules/scheduler/index.js","webpack:///./node_modules/react-dom/node_modules/scheduler/cjs/scheduler.production.min.js","webpack:///./node_modules/prop-types/lib/ReactPropTypesSecret.js","webpack:///./node_modules/react-dom/index.js","webpack:///./node_modules/react/index.js","webpack:///./node_modules/react/cjs/react.production.min.js","webpack:///./node_modules/react-dom/cjs/react-dom.production.min.js"],"names":["ReactPropTypesSecret","emptyFunction","emptyFunctionWithReset","resetWarningCache","module","exports","shim","props","propName","componentName","location","propFullName","secret","err","Error","name","getShim","isRequired","ReactPropTypes","array","bool","func","number","object","string","symbol","any","arrayOf","element","elementType","instanceOf","node","objectOf","oneOf","oneOfType","shape","exact","checkPropTypes","PropTypes","f","g","h","k","l","window","MessageChannel","p","q","t","a","unstable_now","b","setTimeout","u","Date","now","clearTimeout","unstable_forceFrameRate","w","performance","x","y","z","console","A","cancelAnimationFrame","requestAnimationFrame","error","B","C","D","E","F","G","Math","floor","H","I","port2","port1","onmessage","postMessage","J","c","length","push","d","e","K","L","M","pop","m","n","v","r","sortIndex","id","N","O","P","Q","R","S","T","U","V","callback","startTime","expirationTime","W","X","priorityLevel","Y","Z","unstable_IdlePriority","unstable_ImmediatePriority","unstable_LowPriority","unstable_NormalPriority","unstable_Profiling","unstable_UserBlockingPriority","unstable_cancelCallback","unstable_continueExecution","unstable_getCurrentPriorityLevel","unstable_getFirstCallbackNode","unstable_next","unstable_pauseExecution","unstable_requestPaint","unstable_runWithPriority","unstable_scheduleCallback","delay","timeout","unstable_shouldYield","unstable_wrapCallback","apply","this","arguments","checkDCE","__REACT_DEVTOOLS_GLOBAL_HOOK__","Symbol","for","iterator","encodeURIComponent","isMounted","enqueueForceUpdate","enqueueReplaceState","enqueueSetState","context","refs","updater","prototype","isReactComponent","setState","forceUpdate","constructor","isPureReactComponent","current","Object","hasOwnProperty","key","ref","__self","__source","call","children","Array","defaultProps","$$typeof","type","_owner","result","keyPrefix","count","isArray","next","done","value","keys","join","replace","escape","toString","aa","ba","ReactCurrentDispatcher","ReactCurrentBatchConfig","suspense","ReactCurrentOwner","IsSomeRendererActing","assign","Children","map","forEach","toArray","only","Component","Fragment","Profiler","PureComponent","StrictMode","Suspense","__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED","cloneElement","createContext","_calculateChangedBits","_currentValue","_currentValue2","_threadCount","Provider","Consumer","_context","createElement","createFactory","bind","createRef","forwardRef","render","isValidElement","lazy","_ctor","_status","_result","memo","compare","useCallback","useContext","useDebugValue","useEffect","useImperativeHandle","useLayoutEffect","useMemo","useReducer","useRef","useState","version","slice","onError","da","ea","fa","ha","ia","ja","la","ma","na","oa","currentTarget","ka","pa","qa","ra","indexOf","sa","extractEvents","eventTypes","ta","phasedRegistrationNames","ua","registrationName","va","wa","dependencies","xa","ya","document","za","Aa","Ba","Ca","stateNode","Da","Ea","Fa","Ga","Ha","Ia","Ja","Ka","La","Ma","Na","Oa","Pa","Qa","acceptsBooleans","attributeName","attributeNamespace","mustUseProperty","propertyName","sanitizeURL","split","toLowerCase","Ua","Va","toUpperCase","xlinkHref","Wa","Xa","Sa","isNaN","Ta","test","Ra","removeAttribute","setAttribute","setAttributeNS","Ya","Za","$a","ab","bb","cb","db","eb","fb","gb","hb","ib","jb","kb","lb","mb","nb","pb","displayName","qb","tag","_debugOwner","_debugSource","fileName","lineNumber","return","rb","sb","nodeName","xb","_valueTracker","getOwnPropertyDescriptor","get","set","defineProperty","configurable","enumerable","getValue","setValue","stopTracking","tb","yb","checked","zb","defaultChecked","defaultValue","_wrapperState","initialChecked","Ab","initialValue","controlled","Bb","Cb","Db","Eb","ownerDocument","activeElement","Gb","Fb","Hb","options","selected","defaultSelected","disabled","Ib","dangerouslySetInnerHTML","Jb","Kb","Lb","textContent","Mb","Nb","Ob","Pb","Qb","MSApp","execUnsafeLocalFunction","namespaceURI","innerHTML","valueOf","firstChild","removeChild","appendChild","Rb","lastChild","nodeType","nodeValue","Sb","Tb","animationend","animationiteration","animationstart","transitionend","Ub","Vb","Wb","style","animation","transition","Xb","Yb","Zb","$b","ac","bc","WeakMap","Map","cc","dc","alternate","effectTag","ec","memoizedState","dehydrated","fc","hc","child","sibling","gc","ic","concat","jc","kc","lc","_dispatchListeners","_dispatchInstances","isPropagationStopped","isPersistent","release","mc","nc","target","srcElement","correspondingUseElement","parentNode","oc","pc","qc","topLevelType","nativeEvent","targetInst","ancestors","rc","eventSystemFlags","sc","containerInfo","tc","uc","has","vc","wc","xc","yc","zc","Ac","Bc","Cc","Dc","Ec","Fc","Gc","Hc","Ic","Kc","blockedOn","container","Lc","delete","pointerId","Mc","Nc","Pc","priority","hydrate","Qc","Rc","Sc","Tc","shift","Uc","Vc","Wc","Yc","Zc","$c","ad","bubbled","captured","eventPriority","bd","cd","dd","ed","fd","gd","hd","addEventListener","Oc","jd","animationIterationCount","borderImageOutset","borderImageSlice","borderImageWidth","boxFlex","boxFlexGroup","boxOrdinalGroup","columnCount","columns","flex","flexGrow","flexPositive","flexShrink","flexNegative","flexOrder","gridArea","gridRow","gridRowEnd","gridRowSpan","gridRowStart","gridColumn","gridColumnEnd","gridColumnSpan","gridColumnStart","fontWeight","lineClamp","lineHeight","opacity","order","orphans","tabSize","widows","zIndex","zoom","fillOpacity","floodOpacity","stopOpacity","strokeDasharray","strokeDashoffset","strokeMiterlimit","strokeOpacity","strokeWidth","kd","ld","trim","md","setProperty","charAt","substring","nd","menuitem","area","base","br","col","embed","hr","img","input","keygen","link","meta","param","source","track","wbr","od","pd","is","qd","rd","sd","td","body","ud","vd","offset","nextSibling","xd","HTMLIFrameElement","contentWindow","href","yd","contentEditable","Dd","Ed","Fd","autoFocus","Gd","__html","Hd","Id","Jd","Kd","previousSibling","data","Ld","random","Md","Nd","Od","Pd","Qd","Rd","Sd","Td","dispatchConfig","Ud","_targetInst","Vd","Wd","Xd","Yd","Zd","$d","ae","be","ce","Interface","isDefaultPrevented","defaultPrevented","returnValue","ee","eventPool","fe","destructor","de","getPooled","preventDefault","stopPropagation","cancelBubble","persist","eventPhase","bubbles","cancelable","timeStamp","isTrusted","extend","ge","he","ie","je","ke","documentMode","le","me","ne","String","fromCharCode","oe","beforeInput","compositionEnd","compositionStart","compositionUpdate","pe","qe","keyCode","re","detail","se","ve","locale","which","te","ctrlKey","altKey","metaKey","char","ue","we","color","date","datetime","email","month","password","range","search","tel","text","time","url","week","xe","ye","change","ze","Ae","Be","Ce","De","Ee","Fe","Ge","detachEvent","He","Ie","attachEvent","Je","Ke","Le","Me","_isInputEventSupported","Ne","view","Oe","Alt","Control","Meta","Shift","Pe","getModifierState","Qe","Re","Se","Te","Ue","Ve","screenX","screenY","clientX","clientY","pageX","pageY","shiftKey","button","buttons","relatedTarget","fromElement","toElement","movementX","movementY","We","width","height","pressure","tangentialPressure","tiltX","tiltY","twist","pointerType","isPrimary","Xe","mouseEnter","mouseLeave","pointerEnter","pointerLeave","Ye","defaultView","parentWindow","$e","af","bf","cf","df","select","ef","ff","gf","hf","jf","start","selectionStart","end","selectionEnd","anchorNode","getSelection","anchorOffset","focusNode","focusOffset","kf","onSelect","lf","animationName","elapsedTime","pseudoElement","mf","clipboardData","nf","of","charCode","pf","Esc","Spacebar","Left","Up","Right","Down","Del","Win","Menu","Apps","Scroll","MozPrintableKey","qf","8","9","12","13","16","17","18","19","20","27","32","33","34","35","36","37","38","39","40","45","46","112","113","114","115","116","117","118","119","120","121","122","123","144","145","224","rf","repeat","sf","dataTransfer","tf","touches","targetTouches","changedTouches","uf","vf","deltaX","wheelDeltaX","deltaY","wheelDeltaY","wheelDelta","deltaZ","deltaMode","wf","SimpleEventPlugin","EnterLeaveEventPlugin","ChangeEventPlugin","SelectEventPlugin","BeforeInputEventPlugin","yf","zf","Af","Bf","Cf","contextTypes","__reactInternalMemoizedUnmaskedChildContext","__reactInternalMemoizedMaskedChildContext","childContextTypes","Df","Ef","Ff","getChildContext","Gf","__reactInternalMemoizedMergedChildContext","Hf","If","Jf","Kf","Lf","Mf","Nf","Of","Pf","Qf","Rf","Sf","Tf","Uf","Vf","Wf","Xf","Yf","Zf","$f","ag","bg","cg","dg","eg","fg","gg","hg","ig","jg","kg","lg","mg","ng","og","pg","childExpirationTime","qg","firstContext","rg","sg","observedBits","responders","tg","ug","updateQueue","baseState","baseQueue","shared","pending","effects","vg","wg","suspenseConfig","payload","xg","yg","zg","ca","Ag","Bg","Cg","Dg","Eg","Fg","Jg","_reactInternalFiber","Gg","Hg","Ig","Kg","shouldComponentUpdate","Lg","contextType","state","Mg","componentWillReceiveProps","UNSAFE_componentWillReceiveProps","Ng","getDerivedStateFromProps","getSnapshotBeforeUpdate","UNSAFE_componentWillMount","componentWillMount","componentDidMount","Og","Pg","_stringRef","Qg","Rg","lastEffect","nextEffect","firstEffect","index","Sg","Tg","mode","Ug","implementation","Vg","Wg","Xg","Yg","Zg","$g","ah","bh","ch","dh","documentElement","tagName","eh","fh","gh","hh","memoizedProps","revealOrder","ih","responder","jh","kh","lh","mh","nh","oh","ph","qh","rh","sh","th","queue","uh","vh","wh","lastRenderedReducer","action","eagerReducer","eagerState","lastRenderedState","dispatch","xh","yh","zh","Ah","create","destroy","deps","Bh","Ch","Dh","Eh","Fh","Gh","Hh","Ih","Jh","Kh","Lh","Mh","Nh","readContext","useResponder","useDeferredValue","useTransition","Oh","Ph","Qh","Rh","Sh","Th","pendingProps","Uh","Vh","Wh","Xh","Yh","Zh","$h","ai","bi","ci","di","ei","fi","UNSAFE_componentWillUpdate","componentWillUpdate","componentDidUpdate","gi","getDerivedStateFromError","hi","pendingContext","ni","pi","qi","ii","retryTime","ji","fallback","unstable_avoidThisFallback","ki","li","isBackwards","rendering","renderingStartTime","last","tail","tailExpiration","tailMode","mi","ri","si","wasMultiple","multiple","onClick","onclick","size","createElementNS","createTextNode","ti","ui","vi","wi","xi","yi","zi","Ai","stack","Bi","WeakSet","Set","Ci","Fi","Ei","Gi","__reactInternalSnapshotBeforeUpdate","Hi","Ii","Ji","focus","Ki","Li","componentWillUnmount","Di","Mi","Ni","Oi","Pi","Qi","instance","insertBefore","_reactRootContainer","Ri","Si","Ti","display","Ui","Vi","add","then","Wi","Xi","Yi","Zi","$i","componentDidCatch","aj","componentStack","Rj","bj","ceil","cj","dj","kj","lj","mj","nj","oj","qj","rj","sj","tj","uj","vj","wj","timeoutMs","xj","yj","zj","lastExpiredTime","Aj","firstPendingTime","lastPingedTime","nextKnownPendingLevel","callbackExpirationTime","callbackPriority","callbackNode","Bj","Cj","Dj","Ej","Fj","Gj","Hj","finishedWork","finishedExpirationTime","lastSuspendedTime","Ij","timeoutHandle","Jj","busyMinDurationMs","busyDelayMs","Kj","Mj","Nj","pingCache","Oj","ub","Pj","Xc","Qj","Sj","firstSuspendedTime","rangeCount","wb","activeElementDetached","focusedElem","selectionRange","Tj","wd","contains","compareDocumentPosition","min","createRange","setStart","removeAllRanges","addRange","setEnd","left","scrollLeft","top","scrollTop","vb","Uj","Vj","Wj","hidden","default","ob","Xj","unstable_observedBits","Zj","pendingChildren","ak","bk","ck","dk","ek","fk","Jc","_internalRoot","gk","ik","hasAttribute","hk","jk","kk","unmount","querySelectorAll","JSON","stringify","form","Lj","lk","Events","findFiberByHostInstance","bundleType","rendererPackageName","isDisabled","supportsFiber","inject","onCommitFiberRoot","onCommitFiberUnmount","Yj","overrideHookState","overrideProps","setSuspenseHandler","scheduleUpdate","currentDispatcherRef","findHostInstanceByFiber","findHostInstancesForRefresh","scheduleRefresh","scheduleRoot","setRefreshHandler","getCurrentFiber","createPortal","findDOMNode","flushSync","unmountComponentAtNode","unstable_batchedUpdates","unstable_createPortal","unstable_renderSubtreeIntoContainer"],"mappings":"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","file":"framework-fd2b85530eec85104a39.js","sourcesContent":["/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = require('./lib/ReactPropTypesSecret');\n\nfunction emptyFunction() {}\nfunction emptyFunctionWithReset() {}\nemptyFunctionWithReset.resetWarningCache = emptyFunction;\n\nmodule.exports = function() {\n function shim(props, propName, componentName, location, propFullName, secret) {\n if (secret === ReactPropTypesSecret) {\n // It is still safe when called from React.\n return;\n }\n var err = new Error(\n 'Calling PropTypes validators directly is not supported by the `prop-types` package. ' +\n 'Use PropTypes.checkPropTypes() to call them. ' +\n 'Read more at http://fb.me/use-check-prop-types'\n );\n err.name = 'Invariant Violation';\n throw err;\n };\n shim.isRequired = shim;\n function getShim() {\n return shim;\n };\n // Important!\n // Keep this list in sync with production version in `./factoryWithTypeCheckers.js`.\n var ReactPropTypes = {\n array: shim,\n bool: shim,\n func: shim,\n number: shim,\n object: shim,\n string: shim,\n symbol: shim,\n\n any: shim,\n arrayOf: getShim,\n element: shim,\n elementType: shim,\n instanceOf: getShim,\n node: shim,\n objectOf: getShim,\n oneOf: getShim,\n oneOfType: getShim,\n shape: getShim,\n exact: getShim,\n\n checkPropTypes: emptyFunctionWithReset,\n resetWarningCache: emptyFunction\n };\n\n ReactPropTypes.PropTypes = ReactPropTypes;\n\n return ReactPropTypes;\n};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\nif (process.env.NODE_ENV !== 'production') {\n var ReactIs = require('react-is');\n\n // By explicitly using `prop-types` you are opting into new development behavior.\n // http://fb.me/prop-types-in-prod\n var throwOnDirectAccess = true;\n module.exports = require('./factoryWithTypeCheckers')(ReactIs.isElement, throwOnDirectAccess);\n} else {\n // By explicitly using `prop-types` you are opting into new production behavior.\n // http://fb.me/prop-types-in-prod\n module.exports = require('./factoryWithThrowingShims')();\n}\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/scheduler.production.min.js');\n} else {\n module.exports = require('./cjs/scheduler.development.js');\n}\n","/** @license React v0.19.1\n * scheduler.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';var f,g,h,k,l;\nif(\"undefined\"===typeof window||\"function\"!==typeof MessageChannel){var p=null,q=null,t=function(){if(null!==p)try{var a=exports.unstable_now();p(!0,a);p=null}catch(b){throw setTimeout(t,0),b;}},u=Date.now();exports.unstable_now=function(){return Date.now()-u};f=function(a){null!==p?setTimeout(f,0,a):(p=a,setTimeout(t,0))};g=function(a,b){q=setTimeout(a,b)};h=function(){clearTimeout(q)};k=function(){return!1};l=exports.unstable_forceFrameRate=function(){}}else{var w=window.performance,x=window.Date,\ny=window.setTimeout,z=window.clearTimeout;if(\"undefined\"!==typeof console){var A=window.cancelAnimationFrame;\"function\"!==typeof window.requestAnimationFrame&&console.error(\"This browser doesn't support requestAnimationFrame. Make sure that you load a polyfill in older browsers. https://fb.me/react-polyfills\");\"function\"!==typeof A&&console.error(\"This browser doesn't support cancelAnimationFrame. Make sure that you load a polyfill in older browsers. https://fb.me/react-polyfills\")}if(\"object\"===\ntypeof w&&\"function\"===typeof w.now)exports.unstable_now=function(){return w.now()};else{var B=x.now();exports.unstable_now=function(){return x.now()-B}}var C=!1,D=null,E=-1,F=5,G=0;k=function(){return exports.unstable_now()>=G};l=function(){};exports.unstable_forceFrameRate=function(a){0>a||125<a?console.error(\"forceFrameRate takes a positive int between 0 and 125, forcing framerates higher than 125 fps is not unsupported\"):F=0<a?Math.floor(1E3/a):5};var H=new MessageChannel,I=H.port2;H.port1.onmessage=\nfunction(){if(null!==D){var a=exports.unstable_now();G=a+F;try{D(!0,a)?I.postMessage(null):(C=!1,D=null)}catch(b){throw I.postMessage(null),b;}}else C=!1};f=function(a){D=a;C||(C=!0,I.postMessage(null))};g=function(a,b){E=y(function(){a(exports.unstable_now())},b)};h=function(){z(E);E=-1}}function J(a,b){var c=a.length;a.push(b);a:for(;;){var d=c-1>>>1,e=a[d];if(void 0!==e&&0<K(e,b))a[d]=b,a[c]=e,c=d;else break a}}function L(a){a=a[0];return void 0===a?null:a}\nfunction M(a){var b=a[0];if(void 0!==b){var c=a.pop();if(c!==b){a[0]=c;a:for(var d=0,e=a.length;d<e;){var m=2*(d+1)-1,n=a[m],v=m+1,r=a[v];if(void 0!==n&&0>K(n,c))void 0!==r&&0>K(r,n)?(a[d]=r,a[v]=c,d=v):(a[d]=n,a[m]=c,d=m);else if(void 0!==r&&0>K(r,c))a[d]=r,a[v]=c,d=v;else break a}}return b}return null}function K(a,b){var c=a.sortIndex-b.sortIndex;return 0!==c?c:a.id-b.id}var N=[],O=[],P=1,Q=null,R=3,S=!1,T=!1,U=!1;\nfunction V(a){for(var b=L(O);null!==b;){if(null===b.callback)M(O);else if(b.startTime<=a)M(O),b.sortIndex=b.expirationTime,J(N,b);else break;b=L(O)}}function W(a){U=!1;V(a);if(!T)if(null!==L(N))T=!0,f(X);else{var b=L(O);null!==b&&g(W,b.startTime-a)}}\nfunction X(a,b){T=!1;U&&(U=!1,h());S=!0;var c=R;try{V(b);for(Q=L(N);null!==Q&&(!(Q.expirationTime>b)||a&&!k());){var d=Q.callback;if(null!==d){Q.callback=null;R=Q.priorityLevel;var e=d(Q.expirationTime<=b);b=exports.unstable_now();\"function\"===typeof e?Q.callback=e:Q===L(N)&&M(N);V(b)}else M(N);Q=L(N)}if(null!==Q)var m=!0;else{var n=L(O);null!==n&&g(W,n.startTime-b);m=!1}return m}finally{Q=null,R=c,S=!1}}\nfunction Y(a){switch(a){case 1:return-1;case 2:return 250;case 5:return 1073741823;case 4:return 1E4;default:return 5E3}}var Z=l;exports.unstable_IdlePriority=5;exports.unstable_ImmediatePriority=1;exports.unstable_LowPriority=4;exports.unstable_NormalPriority=3;exports.unstable_Profiling=null;exports.unstable_UserBlockingPriority=2;exports.unstable_cancelCallback=function(a){a.callback=null};exports.unstable_continueExecution=function(){T||S||(T=!0,f(X))};\nexports.unstable_getCurrentPriorityLevel=function(){return R};exports.unstable_getFirstCallbackNode=function(){return L(N)};exports.unstable_next=function(a){switch(R){case 1:case 2:case 3:var b=3;break;default:b=R}var c=R;R=b;try{return a()}finally{R=c}};exports.unstable_pauseExecution=function(){};exports.unstable_requestPaint=Z;exports.unstable_runWithPriority=function(a,b){switch(a){case 1:case 2:case 3:case 4:case 5:break;default:a=3}var c=R;R=a;try{return b()}finally{R=c}};\nexports.unstable_scheduleCallback=function(a,b,c){var d=exports.unstable_now();if(\"object\"===typeof c&&null!==c){var e=c.delay;e=\"number\"===typeof e&&0<e?d+e:d;c=\"number\"===typeof c.timeout?c.timeout:Y(a)}else c=Y(a),e=d;c=e+c;a={id:P++,callback:b,priorityLevel:a,startTime:e,expirationTime:c,sortIndex:-1};e>d?(a.sortIndex=e,J(O,a),null===L(N)&&a===L(O)&&(U?h():U=!0,g(W,e-d))):(a.sortIndex=c,J(N,a),T||S||(T=!0,f(X)));return a};\nexports.unstable_shouldYield=function(){var a=exports.unstable_now();V(a);var b=L(N);return b!==Q&&null!==Q&&null!==b&&null!==b.callback&&b.startTime<=a&&b.expirationTime<Q.expirationTime||k()};exports.unstable_wrapCallback=function(a){var b=R;return function(){var c=R;R=b;try{return a.apply(this,arguments)}finally{R=c}}};\n","/**\n * Copyright (c) 2013-present, Facebook, Inc.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';\n\nvar ReactPropTypesSecret = 'SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED';\n\nmodule.exports = ReactPropTypesSecret;\n","'use strict';\n\nfunction checkDCE() {\n /* global __REACT_DEVTOOLS_GLOBAL_HOOK__ */\n if (\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__ === 'undefined' ||\n typeof __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE !== 'function'\n ) {\n return;\n }\n if (process.env.NODE_ENV !== 'production') {\n // This branch is unreachable because this function is only called\n // in production, but the condition is true only in development.\n // Therefore if the branch is still here, dead code elimination wasn't\n // properly applied.\n // Don't change the message. React DevTools relies on it. Also make sure\n // this message doesn't occur elsewhere in this function, or it will cause\n // a false positive.\n throw new Error('^_^');\n }\n try {\n // Verify that the code above has been dead code eliminated (DCE'd).\n __REACT_DEVTOOLS_GLOBAL_HOOK__.checkDCE(checkDCE);\n } catch (err) {\n // DevTools shouldn't crash React, no matter what.\n // We should still report in case we break this code.\n console.error(err);\n }\n}\n\nif (process.env.NODE_ENV === 'production') {\n // DCE check should happen before ReactDOM bundle executes so that\n // DevTools can report bad minification during injection.\n checkDCE();\n module.exports = require('./cjs/react-dom.production.min.js');\n} else {\n module.exports = require('./cjs/react-dom.development.js');\n}\n","'use strict';\n\nif (process.env.NODE_ENV === 'production') {\n module.exports = require('./cjs/react.production.min.js');\n} else {\n module.exports = require('./cjs/react.development.js');\n}\n","/** @license React v16.13.1\n * react.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n'use strict';var l=require(\"object-assign\"),n=\"function\"===typeof Symbol&&Symbol.for,p=n?Symbol.for(\"react.element\"):60103,q=n?Symbol.for(\"react.portal\"):60106,r=n?Symbol.for(\"react.fragment\"):60107,t=n?Symbol.for(\"react.strict_mode\"):60108,u=n?Symbol.for(\"react.profiler\"):60114,v=n?Symbol.for(\"react.provider\"):60109,w=n?Symbol.for(\"react.context\"):60110,x=n?Symbol.for(\"react.forward_ref\"):60112,y=n?Symbol.for(\"react.suspense\"):60113,z=n?Symbol.for(\"react.memo\"):60115,A=n?Symbol.for(\"react.lazy\"):\n60116,B=\"function\"===typeof Symbol&&Symbol.iterator;function C(a){for(var b=\"https://reactjs.org/docs/error-decoder.html?invariant=\"+a,c=1;c<arguments.length;c++)b+=\"&args[]=\"+encodeURIComponent(arguments[c]);return\"Minified React error #\"+a+\"; visit \"+b+\" for the full message or use the non-minified dev environment for full errors and additional helpful warnings.\"}\nvar D={isMounted:function(){return!1},enqueueForceUpdate:function(){},enqueueReplaceState:function(){},enqueueSetState:function(){}},E={};function F(a,b,c){this.props=a;this.context=b;this.refs=E;this.updater=c||D}F.prototype.isReactComponent={};F.prototype.setState=function(a,b){if(\"object\"!==typeof a&&\"function\"!==typeof a&&null!=a)throw Error(C(85));this.updater.enqueueSetState(this,a,b,\"setState\")};F.prototype.forceUpdate=function(a){this.updater.enqueueForceUpdate(this,a,\"forceUpdate\")};\nfunction G(){}G.prototype=F.prototype;function H(a,b,c){this.props=a;this.context=b;this.refs=E;this.updater=c||D}var I=H.prototype=new G;I.constructor=H;l(I,F.prototype);I.isPureReactComponent=!0;var J={current:null},K=Object.prototype.hasOwnProperty,L={key:!0,ref:!0,__self:!0,__source:!0};\nfunction M(a,b,c){var e,d={},g=null,k=null;if(null!=b)for(e in void 0!==b.ref&&(k=b.ref),void 0!==b.key&&(g=\"\"+b.key),b)K.call(b,e)&&!L.hasOwnProperty(e)&&(d[e]=b[e]);var f=arguments.length-2;if(1===f)d.children=c;else if(1<f){for(var h=Array(f),m=0;m<f;m++)h[m]=arguments[m+2];d.children=h}if(a&&a.defaultProps)for(e in f=a.defaultProps,f)void 0===d[e]&&(d[e]=f[e]);return{$$typeof:p,type:a,key:g,ref:k,props:d,_owner:J.current}}\nfunction N(a,b){return{$$typeof:p,type:a.type,key:b,ref:a.ref,props:a.props,_owner:a._owner}}function O(a){return\"object\"===typeof a&&null!==a&&a.$$typeof===p}function escape(a){var b={\"=\":\"=0\",\":\":\"=2\"};return\"$\"+(\"\"+a).replace(/[=:]/g,function(a){return b[a]})}var P=/\\/+/g,Q=[];function R(a,b,c,e){if(Q.length){var d=Q.pop();d.result=a;d.keyPrefix=b;d.func=c;d.context=e;d.count=0;return d}return{result:a,keyPrefix:b,func:c,context:e,count:0}}\nfunction S(a){a.result=null;a.keyPrefix=null;a.func=null;a.context=null;a.count=0;10>Q.length&&Q.push(a)}\nfunction T(a,b,c,e){var d=typeof a;if(\"undefined\"===d||\"boolean\"===d)a=null;var g=!1;if(null===a)g=!0;else switch(d){case \"string\":case \"number\":g=!0;break;case \"object\":switch(a.$$typeof){case p:case q:g=!0}}if(g)return c(e,a,\"\"===b?\".\"+U(a,0):b),1;g=0;b=\"\"===b?\".\":b+\":\";if(Array.isArray(a))for(var k=0;k<a.length;k++){d=a[k];var f=b+U(d,k);g+=T(d,f,c,e)}else if(null===a||\"object\"!==typeof a?f=null:(f=B&&a[B]||a[\"@@iterator\"],f=\"function\"===typeof f?f:null),\"function\"===typeof f)for(a=f.call(a),k=\n0;!(d=a.next()).done;)d=d.value,f=b+U(d,k++),g+=T(d,f,c,e);else if(\"object\"===d)throw c=\"\"+a,Error(C(31,\"[object Object]\"===c?\"object with keys {\"+Object.keys(a).join(\", \")+\"}\":c,\"\"));return g}function V(a,b,c){return null==a?0:T(a,\"\",b,c)}function U(a,b){return\"object\"===typeof a&&null!==a&&null!=a.key?escape(a.key):b.toString(36)}function W(a,b){a.func.call(a.context,b,a.count++)}\nfunction aa(a,b,c){var e=a.result,d=a.keyPrefix;a=a.func.call(a.context,b,a.count++);Array.isArray(a)?X(a,e,c,function(a){return a}):null!=a&&(O(a)&&(a=N(a,d+(!a.key||b&&b.key===a.key?\"\":(\"\"+a.key).replace(P,\"$&/\")+\"/\")+c)),e.push(a))}function X(a,b,c,e,d){var g=\"\";null!=c&&(g=(\"\"+c).replace(P,\"$&/\")+\"/\");b=R(b,g,e,d);V(a,aa,b);S(b)}var Y={current:null};function Z(){var a=Y.current;if(null===a)throw Error(C(321));return a}\nvar ba={ReactCurrentDispatcher:Y,ReactCurrentBatchConfig:{suspense:null},ReactCurrentOwner:J,IsSomeRendererActing:{current:!1},assign:l};exports.Children={map:function(a,b,c){if(null==a)return a;var e=[];X(a,e,null,b,c);return e},forEach:function(a,b,c){if(null==a)return a;b=R(null,null,b,c);V(a,W,b);S(b)},count:function(a){return V(a,function(){return null},null)},toArray:function(a){var b=[];X(a,b,null,function(a){return a});return b},only:function(a){if(!O(a))throw Error(C(143));return a}};\nexports.Component=F;exports.Fragment=r;exports.Profiler=u;exports.PureComponent=H;exports.StrictMode=t;exports.Suspense=y;exports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=ba;\nexports.cloneElement=function(a,b,c){if(null===a||void 0===a)throw Error(C(267,a));var e=l({},a.props),d=a.key,g=a.ref,k=a._owner;if(null!=b){void 0!==b.ref&&(g=b.ref,k=J.current);void 0!==b.key&&(d=\"\"+b.key);if(a.type&&a.type.defaultProps)var f=a.type.defaultProps;for(h in b)K.call(b,h)&&!L.hasOwnProperty(h)&&(e[h]=void 0===b[h]&&void 0!==f?f[h]:b[h])}var h=arguments.length-2;if(1===h)e.children=c;else if(1<h){f=Array(h);for(var m=0;m<h;m++)f[m]=arguments[m+2];e.children=f}return{$$typeof:p,type:a.type,\nkey:d,ref:g,props:e,_owner:k}};exports.createContext=function(a,b){void 0===b&&(b=null);a={$$typeof:w,_calculateChangedBits:b,_currentValue:a,_currentValue2:a,_threadCount:0,Provider:null,Consumer:null};a.Provider={$$typeof:v,_context:a};return a.Consumer=a};exports.createElement=M;exports.createFactory=function(a){var b=M.bind(null,a);b.type=a;return b};exports.createRef=function(){return{current:null}};exports.forwardRef=function(a){return{$$typeof:x,render:a}};exports.isValidElement=O;\nexports.lazy=function(a){return{$$typeof:A,_ctor:a,_status:-1,_result:null}};exports.memo=function(a,b){return{$$typeof:z,type:a,compare:void 0===b?null:b}};exports.useCallback=function(a,b){return Z().useCallback(a,b)};exports.useContext=function(a,b){return Z().useContext(a,b)};exports.useDebugValue=function(){};exports.useEffect=function(a,b){return Z().useEffect(a,b)};exports.useImperativeHandle=function(a,b,c){return Z().useImperativeHandle(a,b,c)};\nexports.useLayoutEffect=function(a,b){return Z().useLayoutEffect(a,b)};exports.useMemo=function(a,b){return Z().useMemo(a,b)};exports.useReducer=function(a,b,c){return Z().useReducer(a,b,c)};exports.useRef=function(a){return Z().useRef(a)};exports.useState=function(a){return Z().useState(a)};exports.version=\"16.13.1\";\n","/** @license React v16.13.1\n * react-dom.production.min.js\n *\n * Copyright (c) Facebook, Inc. and its affiliates.\n *\n * This source code is licensed under the MIT license found in the\n * LICENSE file in the root directory of this source tree.\n */\n\n/*\n Modernizr 3.0.0pre (Custom Build) | MIT\n*/\n'use strict';var aa=require(\"react\"),n=require(\"object-assign\"),r=require(\"scheduler\");function u(a){for(var b=\"https://reactjs.org/docs/error-decoder.html?invariant=\"+a,c=1;c<arguments.length;c++)b+=\"&args[]=\"+encodeURIComponent(arguments[c]);return\"Minified React error #\"+a+\"; visit \"+b+\" for the full message or use the non-minified dev environment for full errors and additional helpful warnings.\"}if(!aa)throw Error(u(227));\nfunction ba(a,b,c,d,e,f,g,h,k){var l=Array.prototype.slice.call(arguments,3);try{b.apply(c,l)}catch(m){this.onError(m)}}var da=!1,ea=null,fa=!1,ha=null,ia={onError:function(a){da=!0;ea=a}};function ja(a,b,c,d,e,f,g,h,k){da=!1;ea=null;ba.apply(ia,arguments)}function ka(a,b,c,d,e,f,g,h,k){ja.apply(this,arguments);if(da){if(da){var l=ea;da=!1;ea=null}else throw Error(u(198));fa||(fa=!0,ha=l)}}var la=null,ma=null,na=null;\nfunction oa(a,b,c){var d=a.type||\"unknown-event\";a.currentTarget=na(c);ka(d,b,void 0,a);a.currentTarget=null}var pa=null,qa={};\nfunction ra(){if(pa)for(var a in qa){var b=qa[a],c=pa.indexOf(a);if(!(-1<c))throw Error(u(96,a));if(!sa[c]){if(!b.extractEvents)throw Error(u(97,a));sa[c]=b;c=b.eventTypes;for(var d in c){var e=void 0;var f=c[d],g=b,h=d;if(ta.hasOwnProperty(h))throw Error(u(99,h));ta[h]=f;var k=f.phasedRegistrationNames;if(k){for(e in k)k.hasOwnProperty(e)&&ua(k[e],g,h);e=!0}else f.registrationName?(ua(f.registrationName,g,h),e=!0):e=!1;if(!e)throw Error(u(98,d,a));}}}}\nfunction ua(a,b,c){if(va[a])throw Error(u(100,a));va[a]=b;wa[a]=b.eventTypes[c].dependencies}var sa=[],ta={},va={},wa={};function xa(a){var b=!1,c;for(c in a)if(a.hasOwnProperty(c)){var d=a[c];if(!qa.hasOwnProperty(c)||qa[c]!==d){if(qa[c])throw Error(u(102,c));qa[c]=d;b=!0}}b&&ra()}var ya=!(\"undefined\"===typeof window||\"undefined\"===typeof window.document||\"undefined\"===typeof window.document.createElement),za=null,Aa=null,Ba=null;\nfunction Ca(a){if(a=ma(a)){if(\"function\"!==typeof za)throw Error(u(280));var b=a.stateNode;b&&(b=la(b),za(a.stateNode,a.type,b))}}function Da(a){Aa?Ba?Ba.push(a):Ba=[a]:Aa=a}function Ea(){if(Aa){var a=Aa,b=Ba;Ba=Aa=null;Ca(a);if(b)for(a=0;a<b.length;a++)Ca(b[a])}}function Fa(a,b){return a(b)}function Ga(a,b,c,d,e){return a(b,c,d,e)}function Ha(){}var Ia=Fa,Ja=!1,Ka=!1;function La(){if(null!==Aa||null!==Ba)Ha(),Ea()}\nfunction Ma(a,b,c){if(Ka)return a(b,c);Ka=!0;try{return Ia(a,b,c)}finally{Ka=!1,La()}}var Na=/^[:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD][:A-Z_a-z\\u00C0-\\u00D6\\u00D8-\\u00F6\\u00F8-\\u02FF\\u0370-\\u037D\\u037F-\\u1FFF\\u200C-\\u200D\\u2070-\\u218F\\u2C00-\\u2FEF\\u3001-\\uD7FF\\uF900-\\uFDCF\\uFDF0-\\uFFFD\\-.0-9\\u00B7\\u0300-\\u036F\\u203F-\\u2040]*$/,Oa=Object.prototype.hasOwnProperty,Pa={},Qa={};\nfunction Ra(a){if(Oa.call(Qa,a))return!0;if(Oa.call(Pa,a))return!1;if(Na.test(a))return Qa[a]=!0;Pa[a]=!0;return!1}function Sa(a,b,c,d){if(null!==c&&0===c.type)return!1;switch(typeof b){case \"function\":case \"symbol\":return!0;case \"boolean\":if(d)return!1;if(null!==c)return!c.acceptsBooleans;a=a.toLowerCase().slice(0,5);return\"data-\"!==a&&\"aria-\"!==a;default:return!1}}\nfunction Ta(a,b,c,d){if(null===b||\"undefined\"===typeof b||Sa(a,b,c,d))return!0;if(d)return!1;if(null!==c)switch(c.type){case 3:return!b;case 4:return!1===b;case 5:return isNaN(b);case 6:return isNaN(b)||1>b}return!1}function v(a,b,c,d,e,f){this.acceptsBooleans=2===b||3===b||4===b;this.attributeName=d;this.attributeNamespace=e;this.mustUseProperty=c;this.propertyName=a;this.type=b;this.sanitizeURL=f}var C={};\n\"children dangerouslySetInnerHTML defaultValue defaultChecked innerHTML suppressContentEditableWarning suppressHydrationWarning style\".split(\" \").forEach(function(a){C[a]=new v(a,0,!1,a,null,!1)});[[\"acceptCharset\",\"accept-charset\"],[\"className\",\"class\"],[\"htmlFor\",\"for\"],[\"httpEquiv\",\"http-equiv\"]].forEach(function(a){var b=a[0];C[b]=new v(b,1,!1,a[1],null,!1)});[\"contentEditable\",\"draggable\",\"spellCheck\",\"value\"].forEach(function(a){C[a]=new v(a,2,!1,a.toLowerCase(),null,!1)});\n[\"autoReverse\",\"externalResourcesRequired\",\"focusable\",\"preserveAlpha\"].forEach(function(a){C[a]=new v(a,2,!1,a,null,!1)});\"allowFullScreen async autoFocus autoPlay controls default defer disabled disablePictureInPicture formNoValidate hidden loop noModule noValidate open playsInline readOnly required reversed scoped seamless itemScope\".split(\" \").forEach(function(a){C[a]=new v(a,3,!1,a.toLowerCase(),null,!1)});\n[\"checked\",\"multiple\",\"muted\",\"selected\"].forEach(function(a){C[a]=new v(a,3,!0,a,null,!1)});[\"capture\",\"download\"].forEach(function(a){C[a]=new v(a,4,!1,a,null,!1)});[\"cols\",\"rows\",\"size\",\"span\"].forEach(function(a){C[a]=new v(a,6,!1,a,null,!1)});[\"rowSpan\",\"start\"].forEach(function(a){C[a]=new v(a,5,!1,a.toLowerCase(),null,!1)});var Ua=/[\\-:]([a-z])/g;function Va(a){return a[1].toUpperCase()}\n\"accent-height alignment-baseline arabic-form baseline-shift cap-height clip-path clip-rule color-interpolation color-interpolation-filters color-profile color-rendering dominant-baseline enable-background fill-opacity fill-rule flood-color flood-opacity font-family font-size font-size-adjust font-stretch font-style font-variant font-weight glyph-name glyph-orientation-horizontal glyph-orientation-vertical horiz-adv-x horiz-origin-x image-rendering letter-spacing lighting-color marker-end marker-mid marker-start overline-position overline-thickness paint-order panose-1 pointer-events rendering-intent shape-rendering stop-color stop-opacity strikethrough-position strikethrough-thickness stroke-dasharray stroke-dashoffset stroke-linecap stroke-linejoin stroke-miterlimit stroke-opacity stroke-width text-anchor text-decoration text-rendering underline-position underline-thickness unicode-bidi unicode-range units-per-em v-alphabetic v-hanging v-ideographic v-mathematical vector-effect vert-adv-y vert-origin-x vert-origin-y word-spacing writing-mode xmlns:xlink x-height\".split(\" \").forEach(function(a){var b=a.replace(Ua,\nVa);C[b]=new v(b,1,!1,a,null,!1)});\"xlink:actuate xlink:arcrole xlink:role xlink:show xlink:title xlink:type\".split(\" \").forEach(function(a){var b=a.replace(Ua,Va);C[b]=new v(b,1,!1,a,\"http://www.w3.org/1999/xlink\",!1)});[\"xml:base\",\"xml:lang\",\"xml:space\"].forEach(function(a){var b=a.replace(Ua,Va);C[b]=new v(b,1,!1,a,\"http://www.w3.org/XML/1998/namespace\",!1)});[\"tabIndex\",\"crossOrigin\"].forEach(function(a){C[a]=new v(a,1,!1,a.toLowerCase(),null,!1)});\nC.xlinkHref=new v(\"xlinkHref\",1,!1,\"xlink:href\",\"http://www.w3.org/1999/xlink\",!0);[\"src\",\"href\",\"action\",\"formAction\"].forEach(function(a){C[a]=new v(a,1,!1,a.toLowerCase(),null,!0)});var Wa=aa.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED;Wa.hasOwnProperty(\"ReactCurrentDispatcher\")||(Wa.ReactCurrentDispatcher={current:null});Wa.hasOwnProperty(\"ReactCurrentBatchConfig\")||(Wa.ReactCurrentBatchConfig={suspense:null});\nfunction Xa(a,b,c,d){var e=C.hasOwnProperty(b)?C[b]:null;var f=null!==e?0===e.type:d?!1:!(2<b.length)||\"o\"!==b[0]&&\"O\"!==b[0]||\"n\"!==b[1]&&\"N\"!==b[1]?!1:!0;f||(Ta(b,c,e,d)&&(c=null),d||null===e?Ra(b)&&(null===c?a.removeAttribute(b):a.setAttribute(b,\"\"+c)):e.mustUseProperty?a[e.propertyName]=null===c?3===e.type?!1:\"\":c:(b=e.attributeName,d=e.attributeNamespace,null===c?a.removeAttribute(b):(e=e.type,c=3===e||4===e&&!0===c?\"\":\"\"+c,d?a.setAttributeNS(d,b,c):a.setAttribute(b,c))))}\nvar Ya=/^(.*)[\\\\\\/]/,E=\"function\"===typeof Symbol&&Symbol.for,Za=E?Symbol.for(\"react.element\"):60103,$a=E?Symbol.for(\"react.portal\"):60106,ab=E?Symbol.for(\"react.fragment\"):60107,bb=E?Symbol.for(\"react.strict_mode\"):60108,cb=E?Symbol.for(\"react.profiler\"):60114,db=E?Symbol.for(\"react.provider\"):60109,eb=E?Symbol.for(\"react.context\"):60110,fb=E?Symbol.for(\"react.concurrent_mode\"):60111,gb=E?Symbol.for(\"react.forward_ref\"):60112,hb=E?Symbol.for(\"react.suspense\"):60113,ib=E?Symbol.for(\"react.suspense_list\"):\n60120,jb=E?Symbol.for(\"react.memo\"):60115,kb=E?Symbol.for(\"react.lazy\"):60116,lb=E?Symbol.for(\"react.block\"):60121,mb=\"function\"===typeof Symbol&&Symbol.iterator;function nb(a){if(null===a||\"object\"!==typeof a)return null;a=mb&&a[mb]||a[\"@@iterator\"];return\"function\"===typeof a?a:null}function ob(a){if(-1===a._status){a._status=0;var b=a._ctor;b=b();a._result=b;b.then(function(b){0===a._status&&(b=b.default,a._status=1,a._result=b)},function(b){0===a._status&&(a._status=2,a._result=b)})}}\nfunction pb(a){if(null==a)return null;if(\"function\"===typeof a)return a.displayName||a.name||null;if(\"string\"===typeof a)return a;switch(a){case ab:return\"Fragment\";case $a:return\"Portal\";case cb:return\"Profiler\";case bb:return\"StrictMode\";case hb:return\"Suspense\";case ib:return\"SuspenseList\"}if(\"object\"===typeof a)switch(a.$$typeof){case eb:return\"Context.Consumer\";case db:return\"Context.Provider\";case gb:var b=a.render;b=b.displayName||b.name||\"\";return a.displayName||(\"\"!==b?\"ForwardRef(\"+b+\")\":\n\"ForwardRef\");case jb:return pb(a.type);case lb:return pb(a.render);case kb:if(a=1===a._status?a._result:null)return pb(a)}return null}function qb(a){var b=\"\";do{a:switch(a.tag){case 3:case 4:case 6:case 7:case 10:case 9:var c=\"\";break a;default:var d=a._debugOwner,e=a._debugSource,f=pb(a.type);c=null;d&&(c=pb(d.type));d=f;f=\"\";e?f=\" (at \"+e.fileName.replace(Ya,\"\")+\":\"+e.lineNumber+\")\":c&&(f=\" (created by \"+c+\")\");c=\"\\n in \"+(d||\"Unknown\")+f}b+=c;a=a.return}while(a);return b}\nfunction rb(a){switch(typeof a){case \"boolean\":case \"number\":case \"object\":case \"string\":case \"undefined\":return a;default:return\"\"}}function sb(a){var b=a.type;return(a=a.nodeName)&&\"input\"===a.toLowerCase()&&(\"checkbox\"===b||\"radio\"===b)}\nfunction tb(a){var b=sb(a)?\"checked\":\"value\",c=Object.getOwnPropertyDescriptor(a.constructor.prototype,b),d=\"\"+a[b];if(!a.hasOwnProperty(b)&&\"undefined\"!==typeof c&&\"function\"===typeof c.get&&\"function\"===typeof c.set){var e=c.get,f=c.set;Object.defineProperty(a,b,{configurable:!0,get:function(){return e.call(this)},set:function(a){d=\"\"+a;f.call(this,a)}});Object.defineProperty(a,b,{enumerable:c.enumerable});return{getValue:function(){return d},setValue:function(a){d=\"\"+a},stopTracking:function(){a._valueTracker=\nnull;delete a[b]}}}}function xb(a){a._valueTracker||(a._valueTracker=tb(a))}function yb(a){if(!a)return!1;var b=a._valueTracker;if(!b)return!0;var c=b.getValue();var d=\"\";a&&(d=sb(a)?a.checked?\"true\":\"false\":a.value);a=d;return a!==c?(b.setValue(a),!0):!1}function zb(a,b){var c=b.checked;return n({},b,{defaultChecked:void 0,defaultValue:void 0,value:void 0,checked:null!=c?c:a._wrapperState.initialChecked})}\nfunction Ab(a,b){var c=null==b.defaultValue?\"\":b.defaultValue,d=null!=b.checked?b.checked:b.defaultChecked;c=rb(null!=b.value?b.value:c);a._wrapperState={initialChecked:d,initialValue:c,controlled:\"checkbox\"===b.type||\"radio\"===b.type?null!=b.checked:null!=b.value}}function Bb(a,b){b=b.checked;null!=b&&Xa(a,\"checked\",b,!1)}\nfunction Cb(a,b){Bb(a,b);var c=rb(b.value),d=b.type;if(null!=c)if(\"number\"===d){if(0===c&&\"\"===a.value||a.value!=c)a.value=\"\"+c}else a.value!==\"\"+c&&(a.value=\"\"+c);else if(\"submit\"===d||\"reset\"===d){a.removeAttribute(\"value\");return}b.hasOwnProperty(\"value\")?Db(a,b.type,c):b.hasOwnProperty(\"defaultValue\")&&Db(a,b.type,rb(b.defaultValue));null==b.checked&&null!=b.defaultChecked&&(a.defaultChecked=!!b.defaultChecked)}\nfunction Eb(a,b,c){if(b.hasOwnProperty(\"value\")||b.hasOwnProperty(\"defaultValue\")){var d=b.type;if(!(\"submit\"!==d&&\"reset\"!==d||void 0!==b.value&&null!==b.value))return;b=\"\"+a._wrapperState.initialValue;c||b===a.value||(a.value=b);a.defaultValue=b}c=a.name;\"\"!==c&&(a.name=\"\");a.defaultChecked=!!a._wrapperState.initialChecked;\"\"!==c&&(a.name=c)}\nfunction Db(a,b,c){if(\"number\"!==b||a.ownerDocument.activeElement!==a)null==c?a.defaultValue=\"\"+a._wrapperState.initialValue:a.defaultValue!==\"\"+c&&(a.defaultValue=\"\"+c)}function Fb(a){var b=\"\";aa.Children.forEach(a,function(a){null!=a&&(b+=a)});return b}function Gb(a,b){a=n({children:void 0},b);if(b=Fb(b.children))a.children=b;return a}\nfunction Hb(a,b,c,d){a=a.options;if(b){b={};for(var e=0;e<c.length;e++)b[\"$\"+c[e]]=!0;for(c=0;c<a.length;c++)e=b.hasOwnProperty(\"$\"+a[c].value),a[c].selected!==e&&(a[c].selected=e),e&&d&&(a[c].defaultSelected=!0)}else{c=\"\"+rb(c);b=null;for(e=0;e<a.length;e++){if(a[e].value===c){a[e].selected=!0;d&&(a[e].defaultSelected=!0);return}null!==b||a[e].disabled||(b=a[e])}null!==b&&(b.selected=!0)}}\nfunction Ib(a,b){if(null!=b.dangerouslySetInnerHTML)throw Error(u(91));return n({},b,{value:void 0,defaultValue:void 0,children:\"\"+a._wrapperState.initialValue})}function Jb(a,b){var c=b.value;if(null==c){c=b.children;b=b.defaultValue;if(null!=c){if(null!=b)throw Error(u(92));if(Array.isArray(c)){if(!(1>=c.length))throw Error(u(93));c=c[0]}b=c}null==b&&(b=\"\");c=b}a._wrapperState={initialValue:rb(c)}}\nfunction Kb(a,b){var c=rb(b.value),d=rb(b.defaultValue);null!=c&&(c=\"\"+c,c!==a.value&&(a.value=c),null==b.defaultValue&&a.defaultValue!==c&&(a.defaultValue=c));null!=d&&(a.defaultValue=\"\"+d)}function Lb(a){var b=a.textContent;b===a._wrapperState.initialValue&&\"\"!==b&&null!==b&&(a.value=b)}var Mb={html:\"http://www.w3.org/1999/xhtml\",mathml:\"http://www.w3.org/1998/Math/MathML\",svg:\"http://www.w3.org/2000/svg\"};\nfunction Nb(a){switch(a){case \"svg\":return\"http://www.w3.org/2000/svg\";case \"math\":return\"http://www.w3.org/1998/Math/MathML\";default:return\"http://www.w3.org/1999/xhtml\"}}function Ob(a,b){return null==a||\"http://www.w3.org/1999/xhtml\"===a?Nb(b):\"http://www.w3.org/2000/svg\"===a&&\"foreignObject\"===b?\"http://www.w3.org/1999/xhtml\":a}\nvar Pb,Qb=function(a){return\"undefined\"!==typeof MSApp&&MSApp.execUnsafeLocalFunction?function(b,c,d,e){MSApp.execUnsafeLocalFunction(function(){return a(b,c,d,e)})}:a}(function(a,b){if(a.namespaceURI!==Mb.svg||\"innerHTML\"in a)a.innerHTML=b;else{Pb=Pb||document.createElement(\"div\");Pb.innerHTML=\"<svg>\"+b.valueOf().toString()+\"</svg>\";for(b=Pb.firstChild;a.firstChild;)a.removeChild(a.firstChild);for(;b.firstChild;)a.appendChild(b.firstChild)}});\nfunction Rb(a,b){if(b){var c=a.firstChild;if(c&&c===a.lastChild&&3===c.nodeType){c.nodeValue=b;return}}a.textContent=b}function Sb(a,b){var c={};c[a.toLowerCase()]=b.toLowerCase();c[\"Webkit\"+a]=\"webkit\"+b;c[\"Moz\"+a]=\"moz\"+b;return c}var Tb={animationend:Sb(\"Animation\",\"AnimationEnd\"),animationiteration:Sb(\"Animation\",\"AnimationIteration\"),animationstart:Sb(\"Animation\",\"AnimationStart\"),transitionend:Sb(\"Transition\",\"TransitionEnd\")},Ub={},Vb={};\nya&&(Vb=document.createElement(\"div\").style,\"AnimationEvent\"in window||(delete Tb.animationend.animation,delete Tb.animationiteration.animation,delete Tb.animationstart.animation),\"TransitionEvent\"in window||delete Tb.transitionend.transition);function Wb(a){if(Ub[a])return Ub[a];if(!Tb[a])return a;var b=Tb[a],c;for(c in b)if(b.hasOwnProperty(c)&&c in Vb)return Ub[a]=b[c];return a}\nvar Xb=Wb(\"animationend\"),Yb=Wb(\"animationiteration\"),Zb=Wb(\"animationstart\"),$b=Wb(\"transitionend\"),ac=\"abort canplay canplaythrough durationchange emptied encrypted ended error loadeddata loadedmetadata loadstart pause play playing progress ratechange seeked seeking stalled suspend timeupdate volumechange waiting\".split(\" \"),bc=new (\"function\"===typeof WeakMap?WeakMap:Map);function cc(a){var b=bc.get(a);void 0===b&&(b=new Map,bc.set(a,b));return b}\nfunction dc(a){var b=a,c=a;if(a.alternate)for(;b.return;)b=b.return;else{a=b;do b=a,0!==(b.effectTag&1026)&&(c=b.return),a=b.return;while(a)}return 3===b.tag?c:null}function ec(a){if(13===a.tag){var b=a.memoizedState;null===b&&(a=a.alternate,null!==a&&(b=a.memoizedState));if(null!==b)return b.dehydrated}return null}function fc(a){if(dc(a)!==a)throw Error(u(188));}\nfunction gc(a){var b=a.alternate;if(!b){b=dc(a);if(null===b)throw Error(u(188));return b!==a?null:a}for(var c=a,d=b;;){var e=c.return;if(null===e)break;var f=e.alternate;if(null===f){d=e.return;if(null!==d){c=d;continue}break}if(e.child===f.child){for(f=e.child;f;){if(f===c)return fc(e),a;if(f===d)return fc(e),b;f=f.sibling}throw Error(u(188));}if(c.return!==d.return)c=e,d=f;else{for(var g=!1,h=e.child;h;){if(h===c){g=!0;c=e;d=f;break}if(h===d){g=!0;d=e;c=f;break}h=h.sibling}if(!g){for(h=f.child;h;){if(h===\nc){g=!0;c=f;d=e;break}if(h===d){g=!0;d=f;c=e;break}h=h.sibling}if(!g)throw Error(u(189));}}if(c.alternate!==d)throw Error(u(190));}if(3!==c.tag)throw Error(u(188));return c.stateNode.current===c?a:b}function hc(a){a=gc(a);if(!a)return null;for(var b=a;;){if(5===b.tag||6===b.tag)return b;if(b.child)b.child.return=b,b=b.child;else{if(b===a)break;for(;!b.sibling;){if(!b.return||b.return===a)return null;b=b.return}b.sibling.return=b.return;b=b.sibling}}return null}\nfunction ic(a,b){if(null==b)throw Error(u(30));if(null==a)return b;if(Array.isArray(a)){if(Array.isArray(b))return a.push.apply(a,b),a;a.push(b);return a}return Array.isArray(b)?[a].concat(b):[a,b]}function jc(a,b,c){Array.isArray(a)?a.forEach(b,c):a&&b.call(c,a)}var kc=null;\nfunction lc(a){if(a){var b=a._dispatchListeners,c=a._dispatchInstances;if(Array.isArray(b))for(var d=0;d<b.length&&!a.isPropagationStopped();d++)oa(a,b[d],c[d]);else b&&oa(a,b,c);a._dispatchListeners=null;a._dispatchInstances=null;a.isPersistent()||a.constructor.release(a)}}function mc(a){null!==a&&(kc=ic(kc,a));a=kc;kc=null;if(a){jc(a,lc);if(kc)throw Error(u(95));if(fa)throw a=ha,fa=!1,ha=null,a;}}\nfunction nc(a){a=a.target||a.srcElement||window;a.correspondingUseElement&&(a=a.correspondingUseElement);return 3===a.nodeType?a.parentNode:a}function oc(a){if(!ya)return!1;a=\"on\"+a;var b=a in document;b||(b=document.createElement(\"div\"),b.setAttribute(a,\"return;\"),b=\"function\"===typeof b[a]);return b}var pc=[];function qc(a){a.topLevelType=null;a.nativeEvent=null;a.targetInst=null;a.ancestors.length=0;10>pc.length&&pc.push(a)}\nfunction rc(a,b,c,d){if(pc.length){var e=pc.pop();e.topLevelType=a;e.eventSystemFlags=d;e.nativeEvent=b;e.targetInst=c;return e}return{topLevelType:a,eventSystemFlags:d,nativeEvent:b,targetInst:c,ancestors:[]}}\nfunction sc(a){var b=a.targetInst,c=b;do{if(!c){a.ancestors.push(c);break}var d=c;if(3===d.tag)d=d.stateNode.containerInfo;else{for(;d.return;)d=d.return;d=3!==d.tag?null:d.stateNode.containerInfo}if(!d)break;b=c.tag;5!==b&&6!==b||a.ancestors.push(c);c=tc(d)}while(c);for(c=0;c<a.ancestors.length;c++){b=a.ancestors[c];var e=nc(a.nativeEvent);d=a.topLevelType;var f=a.nativeEvent,g=a.eventSystemFlags;0===c&&(g|=64);for(var h=null,k=0;k<sa.length;k++){var l=sa[k];l&&(l=l.extractEvents(d,b,f,e,g))&&(h=\nic(h,l))}mc(h)}}function uc(a,b,c){if(!c.has(a)){switch(a){case \"scroll\":vc(b,\"scroll\",!0);break;case \"focus\":case \"blur\":vc(b,\"focus\",!0);vc(b,\"blur\",!0);c.set(\"blur\",null);c.set(\"focus\",null);break;case \"cancel\":case \"close\":oc(a)&&vc(b,a,!0);break;case \"invalid\":case \"submit\":case \"reset\":break;default:-1===ac.indexOf(a)&&F(a,b)}c.set(a,null)}}\nvar wc,xc,yc,zc=!1,Ac=[],Bc=null,Cc=null,Dc=null,Ec=new Map,Fc=new Map,Gc=[],Hc=\"mousedown mouseup touchcancel touchend touchstart auxclick dblclick pointercancel pointerdown pointerup dragend dragstart drop compositionend compositionstart keydown keypress keyup input textInput close cancel copy cut paste click change contextmenu reset submit\".split(\" \"),Ic=\"focus blur dragenter dragleave mouseover mouseout pointerover pointerout gotpointercapture lostpointercapture\".split(\" \");\nfunction Jc(a,b){var c=cc(b);Hc.forEach(function(a){uc(a,b,c)});Ic.forEach(function(a){uc(a,b,c)})}function Kc(a,b,c,d,e){return{blockedOn:a,topLevelType:b,eventSystemFlags:c|32,nativeEvent:e,container:d}}\nfunction Lc(a,b){switch(a){case \"focus\":case \"blur\":Bc=null;break;case \"dragenter\":case \"dragleave\":Cc=null;break;case \"mouseover\":case \"mouseout\":Dc=null;break;case \"pointerover\":case \"pointerout\":Ec.delete(b.pointerId);break;case \"gotpointercapture\":case \"lostpointercapture\":Fc.delete(b.pointerId)}}function Mc(a,b,c,d,e,f){if(null===a||a.nativeEvent!==f)return a=Kc(b,c,d,e,f),null!==b&&(b=Nc(b),null!==b&&xc(b)),a;a.eventSystemFlags|=d;return a}\nfunction Oc(a,b,c,d,e){switch(b){case \"focus\":return Bc=Mc(Bc,a,b,c,d,e),!0;case \"dragenter\":return Cc=Mc(Cc,a,b,c,d,e),!0;case \"mouseover\":return Dc=Mc(Dc,a,b,c,d,e),!0;case \"pointerover\":var f=e.pointerId;Ec.set(f,Mc(Ec.get(f)||null,a,b,c,d,e));return!0;case \"gotpointercapture\":return f=e.pointerId,Fc.set(f,Mc(Fc.get(f)||null,a,b,c,d,e)),!0}return!1}\nfunction Pc(a){var b=tc(a.target);if(null!==b){var c=dc(b);if(null!==c)if(b=c.tag,13===b){if(b=ec(c),null!==b){a.blockedOn=b;r.unstable_runWithPriority(a.priority,function(){yc(c)});return}}else if(3===b&&c.stateNode.hydrate){a.blockedOn=3===c.tag?c.stateNode.containerInfo:null;return}}a.blockedOn=null}function Qc(a){if(null!==a.blockedOn)return!1;var b=Rc(a.topLevelType,a.eventSystemFlags,a.container,a.nativeEvent);if(null!==b){var c=Nc(b);null!==c&&xc(c);a.blockedOn=b;return!1}return!0}\nfunction Sc(a,b,c){Qc(a)&&c.delete(b)}function Tc(){for(zc=!1;0<Ac.length;){var a=Ac[0];if(null!==a.blockedOn){a=Nc(a.blockedOn);null!==a&&wc(a);break}var b=Rc(a.topLevelType,a.eventSystemFlags,a.container,a.nativeEvent);null!==b?a.blockedOn=b:Ac.shift()}null!==Bc&&Qc(Bc)&&(Bc=null);null!==Cc&&Qc(Cc)&&(Cc=null);null!==Dc&&Qc(Dc)&&(Dc=null);Ec.forEach(Sc);Fc.forEach(Sc)}function Uc(a,b){a.blockedOn===b&&(a.blockedOn=null,zc||(zc=!0,r.unstable_scheduleCallback(r.unstable_NormalPriority,Tc)))}\nfunction Vc(a){function b(b){return Uc(b,a)}if(0<Ac.length){Uc(Ac[0],a);for(var c=1;c<Ac.length;c++){var d=Ac[c];d.blockedOn===a&&(d.blockedOn=null)}}null!==Bc&&Uc(Bc,a);null!==Cc&&Uc(Cc,a);null!==Dc&&Uc(Dc,a);Ec.forEach(b);Fc.forEach(b);for(c=0;c<Gc.length;c++)d=Gc[c],d.blockedOn===a&&(d.blockedOn=null);for(;0<Gc.length&&(c=Gc[0],null===c.blockedOn);)Pc(c),null===c.blockedOn&&Gc.shift()}\nvar Wc={},Yc=new Map,Zc=new Map,$c=[\"abort\",\"abort\",Xb,\"animationEnd\",Yb,\"animationIteration\",Zb,\"animationStart\",\"canplay\",\"canPlay\",\"canplaythrough\",\"canPlayThrough\",\"durationchange\",\"durationChange\",\"emptied\",\"emptied\",\"encrypted\",\"encrypted\",\"ended\",\"ended\",\"error\",\"error\",\"gotpointercapture\",\"gotPointerCapture\",\"load\",\"load\",\"loadeddata\",\"loadedData\",\"loadedmetadata\",\"loadedMetadata\",\"loadstart\",\"loadStart\",\"lostpointercapture\",\"lostPointerCapture\",\"playing\",\"playing\",\"progress\",\"progress\",\"seeking\",\n\"seeking\",\"stalled\",\"stalled\",\"suspend\",\"suspend\",\"timeupdate\",\"timeUpdate\",$b,\"transitionEnd\",\"waiting\",\"waiting\"];function ad(a,b){for(var c=0;c<a.length;c+=2){var d=a[c],e=a[c+1],f=\"on\"+(e[0].toUpperCase()+e.slice(1));f={phasedRegistrationNames:{bubbled:f,captured:f+\"Capture\"},dependencies:[d],eventPriority:b};Zc.set(d,b);Yc.set(d,f);Wc[e]=f}}\nad(\"blur blur cancel cancel click click close close contextmenu contextMenu copy copy cut cut auxclick auxClick dblclick doubleClick dragend dragEnd dragstart dragStart drop drop focus focus input input invalid invalid keydown keyDown keypress keyPress keyup keyUp mousedown mouseDown mouseup mouseUp paste paste pause pause play play pointercancel pointerCancel pointerdown pointerDown pointerup pointerUp ratechange rateChange reset reset seeked seeked submit submit touchcancel touchCancel touchend touchEnd touchstart touchStart volumechange volumeChange\".split(\" \"),0);\nad(\"drag drag dragenter dragEnter dragexit dragExit dragleave dragLeave dragover dragOver mousemove mouseMove mouseout mouseOut mouseover mouseOver pointermove pointerMove pointerout pointerOut pointerover pointerOver scroll scroll toggle toggle touchmove touchMove wheel wheel\".split(\" \"),1);ad($c,2);for(var bd=\"change selectionchange textInput compositionstart compositionend compositionupdate\".split(\" \"),cd=0;cd<bd.length;cd++)Zc.set(bd[cd],0);\nvar dd=r.unstable_UserBlockingPriority,ed=r.unstable_runWithPriority,fd=!0;function F(a,b){vc(b,a,!1)}function vc(a,b,c){var d=Zc.get(b);switch(void 0===d?2:d){case 0:d=gd.bind(null,b,1,a);break;case 1:d=hd.bind(null,b,1,a);break;default:d=id.bind(null,b,1,a)}c?a.addEventListener(b,d,!0):a.addEventListener(b,d,!1)}function gd(a,b,c,d){Ja||Ha();var e=id,f=Ja;Ja=!0;try{Ga(e,a,b,c,d)}finally{(Ja=f)||La()}}function hd(a,b,c,d){ed(dd,id.bind(null,a,b,c,d))}\nfunction id(a,b,c,d){if(fd)if(0<Ac.length&&-1<Hc.indexOf(a))a=Kc(null,a,b,c,d),Ac.push(a);else{var e=Rc(a,b,c,d);if(null===e)Lc(a,d);else if(-1<Hc.indexOf(a))a=Kc(e,a,b,c,d),Ac.push(a);else if(!Oc(e,a,b,c,d)){Lc(a,d);a=rc(a,d,null,b);try{Ma(sc,a)}finally{qc(a)}}}}\nfunction Rc(a,b,c,d){c=nc(d);c=tc(c);if(null!==c){var e=dc(c);if(null===e)c=null;else{var f=e.tag;if(13===f){c=ec(e);if(null!==c)return c;c=null}else if(3===f){if(e.stateNode.hydrate)return 3===e.tag?e.stateNode.containerInfo:null;c=null}else e!==c&&(c=null)}}a=rc(a,d,c,b);try{Ma(sc,a)}finally{qc(a)}return null}\nvar jd={animationIterationCount:!0,borderImageOutset:!0,borderImageSlice:!0,borderImageWidth:!0,boxFlex:!0,boxFlexGroup:!0,boxOrdinalGroup:!0,columnCount:!0,columns:!0,flex:!0,flexGrow:!0,flexPositive:!0,flexShrink:!0,flexNegative:!0,flexOrder:!0,gridArea:!0,gridRow:!0,gridRowEnd:!0,gridRowSpan:!0,gridRowStart:!0,gridColumn:!0,gridColumnEnd:!0,gridColumnSpan:!0,gridColumnStart:!0,fontWeight:!0,lineClamp:!0,lineHeight:!0,opacity:!0,order:!0,orphans:!0,tabSize:!0,widows:!0,zIndex:!0,zoom:!0,fillOpacity:!0,\nfloodOpacity:!0,stopOpacity:!0,strokeDasharray:!0,strokeDashoffset:!0,strokeMiterlimit:!0,strokeOpacity:!0,strokeWidth:!0},kd=[\"Webkit\",\"ms\",\"Moz\",\"O\"];Object.keys(jd).forEach(function(a){kd.forEach(function(b){b=b+a.charAt(0).toUpperCase()+a.substring(1);jd[b]=jd[a]})});function ld(a,b,c){return null==b||\"boolean\"===typeof b||\"\"===b?\"\":c||\"number\"!==typeof b||0===b||jd.hasOwnProperty(a)&&jd[a]?(\"\"+b).trim():b+\"px\"}\nfunction md(a,b){a=a.style;for(var c in b)if(b.hasOwnProperty(c)){var d=0===c.indexOf(\"--\"),e=ld(c,b[c],d);\"float\"===c&&(c=\"cssFloat\");d?a.setProperty(c,e):a[c]=e}}var nd=n({menuitem:!0},{area:!0,base:!0,br:!0,col:!0,embed:!0,hr:!0,img:!0,input:!0,keygen:!0,link:!0,meta:!0,param:!0,source:!0,track:!0,wbr:!0});\nfunction od(a,b){if(b){if(nd[a]&&(null!=b.children||null!=b.dangerouslySetInnerHTML))throw Error(u(137,a,\"\"));if(null!=b.dangerouslySetInnerHTML){if(null!=b.children)throw Error(u(60));if(!(\"object\"===typeof b.dangerouslySetInnerHTML&&\"__html\"in b.dangerouslySetInnerHTML))throw Error(u(61));}if(null!=b.style&&\"object\"!==typeof b.style)throw Error(u(62,\"\"));}}\nfunction pd(a,b){if(-1===a.indexOf(\"-\"))return\"string\"===typeof b.is;switch(a){case \"annotation-xml\":case \"color-profile\":case \"font-face\":case \"font-face-src\":case \"font-face-uri\":case \"font-face-format\":case \"font-face-name\":case \"missing-glyph\":return!1;default:return!0}}var qd=Mb.html;function rd(a,b){a=9===a.nodeType||11===a.nodeType?a:a.ownerDocument;var c=cc(a);b=wa[b];for(var d=0;d<b.length;d++)uc(b[d],a,c)}function sd(){}\nfunction td(a){a=a||(\"undefined\"!==typeof document?document:void 0);if(\"undefined\"===typeof a)return null;try{return a.activeElement||a.body}catch(b){return a.body}}function ud(a){for(;a&&a.firstChild;)a=a.firstChild;return a}function vd(a,b){var c=ud(a);a=0;for(var d;c;){if(3===c.nodeType){d=a+c.textContent.length;if(a<=b&&d>=b)return{node:c,offset:b-a};a=d}a:{for(;c;){if(c.nextSibling){c=c.nextSibling;break a}c=c.parentNode}c=void 0}c=ud(c)}}\nfunction wd(a,b){return a&&b?a===b?!0:a&&3===a.nodeType?!1:b&&3===b.nodeType?wd(a,b.parentNode):\"contains\"in a?a.contains(b):a.compareDocumentPosition?!!(a.compareDocumentPosition(b)&16):!1:!1}function xd(){for(var a=window,b=td();b instanceof a.HTMLIFrameElement;){try{var c=\"string\"===typeof b.contentWindow.location.href}catch(d){c=!1}if(c)a=b.contentWindow;else break;b=td(a.document)}return b}\nfunction yd(a){var b=a&&a.nodeName&&a.nodeName.toLowerCase();return b&&(\"input\"===b&&(\"text\"===a.type||\"search\"===a.type||\"tel\"===a.type||\"url\"===a.type||\"password\"===a.type)||\"textarea\"===b||\"true\"===a.contentEditable)}var zd=\"$\",Ad=\"/$\",Bd=\"$?\",Cd=\"$!\",Dd=null,Ed=null;function Fd(a,b){switch(a){case \"button\":case \"input\":case \"select\":case \"textarea\":return!!b.autoFocus}return!1}\nfunction Gd(a,b){return\"textarea\"===a||\"option\"===a||\"noscript\"===a||\"string\"===typeof b.children||\"number\"===typeof b.children||\"object\"===typeof b.dangerouslySetInnerHTML&&null!==b.dangerouslySetInnerHTML&&null!=b.dangerouslySetInnerHTML.__html}var Hd=\"function\"===typeof setTimeout?setTimeout:void 0,Id=\"function\"===typeof clearTimeout?clearTimeout:void 0;function Jd(a){for(;null!=a;a=a.nextSibling){var b=a.nodeType;if(1===b||3===b)break}return a}\nfunction Kd(a){a=a.previousSibling;for(var b=0;a;){if(8===a.nodeType){var c=a.data;if(c===zd||c===Cd||c===Bd){if(0===b)return a;b--}else c===Ad&&b++}a=a.previousSibling}return null}var Ld=Math.random().toString(36).slice(2),Md=\"__reactInternalInstance$\"+Ld,Nd=\"__reactEventHandlers$\"+Ld,Od=\"__reactContainere$\"+Ld;\nfunction tc(a){var b=a[Md];if(b)return b;for(var c=a.parentNode;c;){if(b=c[Od]||c[Md]){c=b.alternate;if(null!==b.child||null!==c&&null!==c.child)for(a=Kd(a);null!==a;){if(c=a[Md])return c;a=Kd(a)}return b}a=c;c=a.parentNode}return null}function Nc(a){a=a[Md]||a[Od];return!a||5!==a.tag&&6!==a.tag&&13!==a.tag&&3!==a.tag?null:a}function Pd(a){if(5===a.tag||6===a.tag)return a.stateNode;throw Error(u(33));}function Qd(a){return a[Nd]||null}\nfunction Rd(a){do a=a.return;while(a&&5!==a.tag);return a?a:null}\nfunction Sd(a,b){var c=a.stateNode;if(!c)return null;var d=la(c);if(!d)return null;c=d[b];a:switch(b){case \"onClick\":case \"onClickCapture\":case \"onDoubleClick\":case \"onDoubleClickCapture\":case \"onMouseDown\":case \"onMouseDownCapture\":case \"onMouseMove\":case \"onMouseMoveCapture\":case \"onMouseUp\":case \"onMouseUpCapture\":case \"onMouseEnter\":(d=!d.disabled)||(a=a.type,d=!(\"button\"===a||\"input\"===a||\"select\"===a||\"textarea\"===a));a=!d;break a;default:a=!1}if(a)return null;if(c&&\"function\"!==typeof c)throw Error(u(231,\nb,typeof c));return c}function Td(a,b,c){if(b=Sd(a,c.dispatchConfig.phasedRegistrationNames[b]))c._dispatchListeners=ic(c._dispatchListeners,b),c._dispatchInstances=ic(c._dispatchInstances,a)}function Ud(a){if(a&&a.dispatchConfig.phasedRegistrationNames){for(var b=a._targetInst,c=[];b;)c.push(b),b=Rd(b);for(b=c.length;0<b--;)Td(c[b],\"captured\",a);for(b=0;b<c.length;b++)Td(c[b],\"bubbled\",a)}}\nfunction Vd(a,b,c){a&&c&&c.dispatchConfig.registrationName&&(b=Sd(a,c.dispatchConfig.registrationName))&&(c._dispatchListeners=ic(c._dispatchListeners,b),c._dispatchInstances=ic(c._dispatchInstances,a))}function Wd(a){a&&a.dispatchConfig.registrationName&&Vd(a._targetInst,null,a)}function Xd(a){jc(a,Ud)}var Yd=null,Zd=null,$d=null;\nfunction ae(){if($d)return $d;var a,b=Zd,c=b.length,d,e=\"value\"in Yd?Yd.value:Yd.textContent,f=e.length;for(a=0;a<c&&b[a]===e[a];a++);var g=c-a;for(d=1;d<=g&&b[c-d]===e[f-d];d++);return $d=e.slice(a,1<d?1-d:void 0)}function be(){return!0}function ce(){return!1}\nfunction G(a,b,c,d){this.dispatchConfig=a;this._targetInst=b;this.nativeEvent=c;a=this.constructor.Interface;for(var e in a)a.hasOwnProperty(e)&&((b=a[e])?this[e]=b(c):\"target\"===e?this.target=d:this[e]=c[e]);this.isDefaultPrevented=(null!=c.defaultPrevented?c.defaultPrevented:!1===c.returnValue)?be:ce;this.isPropagationStopped=ce;return this}\nn(G.prototype,{preventDefault:function(){this.defaultPrevented=!0;var a=this.nativeEvent;a&&(a.preventDefault?a.preventDefault():\"unknown\"!==typeof a.returnValue&&(a.returnValue=!1),this.isDefaultPrevented=be)},stopPropagation:function(){var a=this.nativeEvent;a&&(a.stopPropagation?a.stopPropagation():\"unknown\"!==typeof a.cancelBubble&&(a.cancelBubble=!0),this.isPropagationStopped=be)},persist:function(){this.isPersistent=be},isPersistent:ce,destructor:function(){var a=this.constructor.Interface,\nb;for(b in a)this[b]=null;this.nativeEvent=this._targetInst=this.dispatchConfig=null;this.isPropagationStopped=this.isDefaultPrevented=ce;this._dispatchInstances=this._dispatchListeners=null}});G.Interface={type:null,target:null,currentTarget:function(){return null},eventPhase:null,bubbles:null,cancelable:null,timeStamp:function(a){return a.timeStamp||Date.now()},defaultPrevented:null,isTrusted:null};\nG.extend=function(a){function b(){}function c(){return d.apply(this,arguments)}var d=this;b.prototype=d.prototype;var e=new b;n(e,c.prototype);c.prototype=e;c.prototype.constructor=c;c.Interface=n({},d.Interface,a);c.extend=d.extend;de(c);return c};de(G);function ee(a,b,c,d){if(this.eventPool.length){var e=this.eventPool.pop();this.call(e,a,b,c,d);return e}return new this(a,b,c,d)}\nfunction fe(a){if(!(a instanceof this))throw Error(u(279));a.destructor();10>this.eventPool.length&&this.eventPool.push(a)}function de(a){a.eventPool=[];a.getPooled=ee;a.release=fe}var ge=G.extend({data:null}),he=G.extend({data:null}),ie=[9,13,27,32],je=ya&&\"CompositionEvent\"in window,ke=null;ya&&\"documentMode\"in document&&(ke=document.documentMode);\nvar le=ya&&\"TextEvent\"in window&&!ke,me=ya&&(!je||ke&&8<ke&&11>=ke),ne=String.fromCharCode(32),oe={beforeInput:{phasedRegistrationNames:{bubbled:\"onBeforeInput\",captured:\"onBeforeInputCapture\"},dependencies:[\"compositionend\",\"keypress\",\"textInput\",\"paste\"]},compositionEnd:{phasedRegistrationNames:{bubbled:\"onCompositionEnd\",captured:\"onCompositionEndCapture\"},dependencies:\"blur compositionend keydown keypress keyup mousedown\".split(\" \")},compositionStart:{phasedRegistrationNames:{bubbled:\"onCompositionStart\",\ncaptured:\"onCompositionStartCapture\"},dependencies:\"blur compositionstart keydown keypress keyup mousedown\".split(\" \")},compositionUpdate:{phasedRegistrationNames:{bubbled:\"onCompositionUpdate\",captured:\"onCompositionUpdateCapture\"},dependencies:\"blur compositionupdate keydown keypress keyup mousedown\".split(\" \")}},pe=!1;\nfunction qe(a,b){switch(a){case \"keyup\":return-1!==ie.indexOf(b.keyCode);case \"keydown\":return 229!==b.keyCode;case \"keypress\":case \"mousedown\":case \"blur\":return!0;default:return!1}}function re(a){a=a.detail;return\"object\"===typeof a&&\"data\"in a?a.data:null}var se=!1;function te(a,b){switch(a){case \"compositionend\":return re(b);case \"keypress\":if(32!==b.which)return null;pe=!0;return ne;case \"textInput\":return a=b.data,a===ne&&pe?null:a;default:return null}}\nfunction ue(a,b){if(se)return\"compositionend\"===a||!je&&qe(a,b)?(a=ae(),$d=Zd=Yd=null,se=!1,a):null;switch(a){case \"paste\":return null;case \"keypress\":if(!(b.ctrlKey||b.altKey||b.metaKey)||b.ctrlKey&&b.altKey){if(b.char&&1<b.char.length)return b.char;if(b.which)return String.fromCharCode(b.which)}return null;case \"compositionend\":return me&&\"ko\"!==b.locale?null:b.data;default:return null}}\nvar ve={eventTypes:oe,extractEvents:function(a,b,c,d){var e;if(je)b:{switch(a){case \"compositionstart\":var f=oe.compositionStart;break b;case \"compositionend\":f=oe.compositionEnd;break b;case \"compositionupdate\":f=oe.compositionUpdate;break b}f=void 0}else se?qe(a,c)&&(f=oe.compositionEnd):\"keydown\"===a&&229===c.keyCode&&(f=oe.compositionStart);f?(me&&\"ko\"!==c.locale&&(se||f!==oe.compositionStart?f===oe.compositionEnd&&se&&(e=ae()):(Yd=d,Zd=\"value\"in Yd?Yd.value:Yd.textContent,se=!0)),f=ge.getPooled(f,\nb,c,d),e?f.data=e:(e=re(c),null!==e&&(f.data=e)),Xd(f),e=f):e=null;(a=le?te(a,c):ue(a,c))?(b=he.getPooled(oe.beforeInput,b,c,d),b.data=a,Xd(b)):b=null;return null===e?b:null===b?e:[e,b]}},we={color:!0,date:!0,datetime:!0,\"datetime-local\":!0,email:!0,month:!0,number:!0,password:!0,range:!0,search:!0,tel:!0,text:!0,time:!0,url:!0,week:!0};function xe(a){var b=a&&a.nodeName&&a.nodeName.toLowerCase();return\"input\"===b?!!we[a.type]:\"textarea\"===b?!0:!1}\nvar ye={change:{phasedRegistrationNames:{bubbled:\"onChange\",captured:\"onChangeCapture\"},dependencies:\"blur change click focus input keydown keyup selectionchange\".split(\" \")}};function ze(a,b,c){a=G.getPooled(ye.change,a,b,c);a.type=\"change\";Da(c);Xd(a);return a}var Ae=null,Be=null;function Ce(a){mc(a)}function De(a){var b=Pd(a);if(yb(b))return a}function Ee(a,b){if(\"change\"===a)return b}var Fe=!1;ya&&(Fe=oc(\"input\")&&(!document.documentMode||9<document.documentMode));\nfunction Ge(){Ae&&(Ae.detachEvent(\"onpropertychange\",He),Be=Ae=null)}function He(a){if(\"value\"===a.propertyName&&De(Be))if(a=ze(Be,a,nc(a)),Ja)mc(a);else{Ja=!0;try{Fa(Ce,a)}finally{Ja=!1,La()}}}function Ie(a,b,c){\"focus\"===a?(Ge(),Ae=b,Be=c,Ae.attachEvent(\"onpropertychange\",He)):\"blur\"===a&&Ge()}function Je(a){if(\"selectionchange\"===a||\"keyup\"===a||\"keydown\"===a)return De(Be)}function Ke(a,b){if(\"click\"===a)return De(b)}function Le(a,b){if(\"input\"===a||\"change\"===a)return De(b)}\nvar Me={eventTypes:ye,_isInputEventSupported:Fe,extractEvents:function(a,b,c,d){var e=b?Pd(b):window,f=e.nodeName&&e.nodeName.toLowerCase();if(\"select\"===f||\"input\"===f&&\"file\"===e.type)var g=Ee;else if(xe(e))if(Fe)g=Le;else{g=Je;var h=Ie}else(f=e.nodeName)&&\"input\"===f.toLowerCase()&&(\"checkbox\"===e.type||\"radio\"===e.type)&&(g=Ke);if(g&&(g=g(a,b)))return ze(g,c,d);h&&h(a,e,b);\"blur\"===a&&(a=e._wrapperState)&&a.controlled&&\"number\"===e.type&&Db(e,\"number\",e.value)}},Ne=G.extend({view:null,detail:null}),\nOe={Alt:\"altKey\",Control:\"ctrlKey\",Meta:\"metaKey\",Shift:\"shiftKey\"};function Pe(a){var b=this.nativeEvent;return b.getModifierState?b.getModifierState(a):(a=Oe[a])?!!b[a]:!1}function Qe(){return Pe}\nvar Re=0,Se=0,Te=!1,Ue=!1,Ve=Ne.extend({screenX:null,screenY:null,clientX:null,clientY:null,pageX:null,pageY:null,ctrlKey:null,shiftKey:null,altKey:null,metaKey:null,getModifierState:Qe,button:null,buttons:null,relatedTarget:function(a){return a.relatedTarget||(a.fromElement===a.srcElement?a.toElement:a.fromElement)},movementX:function(a){if(\"movementX\"in a)return a.movementX;var b=Re;Re=a.screenX;return Te?\"mousemove\"===a.type?a.screenX-b:0:(Te=!0,0)},movementY:function(a){if(\"movementY\"in a)return a.movementY;\nvar b=Se;Se=a.screenY;return Ue?\"mousemove\"===a.type?a.screenY-b:0:(Ue=!0,0)}}),We=Ve.extend({pointerId:null,width:null,height:null,pressure:null,tangentialPressure:null,tiltX:null,tiltY:null,twist:null,pointerType:null,isPrimary:null}),Xe={mouseEnter:{registrationName:\"onMouseEnter\",dependencies:[\"mouseout\",\"mouseover\"]},mouseLeave:{registrationName:\"onMouseLeave\",dependencies:[\"mouseout\",\"mouseover\"]},pointerEnter:{registrationName:\"onPointerEnter\",dependencies:[\"pointerout\",\"pointerover\"]},pointerLeave:{registrationName:\"onPointerLeave\",\ndependencies:[\"pointerout\",\"pointerover\"]}},Ye={eventTypes:Xe,extractEvents:function(a,b,c,d,e){var f=\"mouseover\"===a||\"pointerover\"===a,g=\"mouseout\"===a||\"pointerout\"===a;if(f&&0===(e&32)&&(c.relatedTarget||c.fromElement)||!g&&!f)return null;f=d.window===d?d:(f=d.ownerDocument)?f.defaultView||f.parentWindow:window;if(g){if(g=b,b=(b=c.relatedTarget||c.toElement)?tc(b):null,null!==b){var h=dc(b);if(b!==h||5!==b.tag&&6!==b.tag)b=null}}else g=null;if(g===b)return null;if(\"mouseout\"===a||\"mouseover\"===\na){var k=Ve;var l=Xe.mouseLeave;var m=Xe.mouseEnter;var p=\"mouse\"}else if(\"pointerout\"===a||\"pointerover\"===a)k=We,l=Xe.pointerLeave,m=Xe.pointerEnter,p=\"pointer\";a=null==g?f:Pd(g);f=null==b?f:Pd(b);l=k.getPooled(l,g,c,d);l.type=p+\"leave\";l.target=a;l.relatedTarget=f;c=k.getPooled(m,b,c,d);c.type=p+\"enter\";c.target=f;c.relatedTarget=a;d=g;p=b;if(d&&p)a:{k=d;m=p;g=0;for(a=k;a;a=Rd(a))g++;a=0;for(b=m;b;b=Rd(b))a++;for(;0<g-a;)k=Rd(k),g--;for(;0<a-g;)m=Rd(m),a--;for(;g--;){if(k===m||k===m.alternate)break a;\nk=Rd(k);m=Rd(m)}k=null}else k=null;m=k;for(k=[];d&&d!==m;){g=d.alternate;if(null!==g&&g===m)break;k.push(d);d=Rd(d)}for(d=[];p&&p!==m;){g=p.alternate;if(null!==g&&g===m)break;d.push(p);p=Rd(p)}for(p=0;p<k.length;p++)Vd(k[p],\"bubbled\",l);for(p=d.length;0<p--;)Vd(d[p],\"captured\",c);return 0===(e&64)?[l]:[l,c]}};function Ze(a,b){return a===b&&(0!==a||1/a===1/b)||a!==a&&b!==b}var $e=\"function\"===typeof Object.is?Object.is:Ze,af=Object.prototype.hasOwnProperty;\nfunction bf(a,b){if($e(a,b))return!0;if(\"object\"!==typeof a||null===a||\"object\"!==typeof b||null===b)return!1;var c=Object.keys(a),d=Object.keys(b);if(c.length!==d.length)return!1;for(d=0;d<c.length;d++)if(!af.call(b,c[d])||!$e(a[c[d]],b[c[d]]))return!1;return!0}\nvar cf=ya&&\"documentMode\"in document&&11>=document.documentMode,df={select:{phasedRegistrationNames:{bubbled:\"onSelect\",captured:\"onSelectCapture\"},dependencies:\"blur contextmenu dragend focus keydown keyup mousedown mouseup selectionchange\".split(\" \")}},ef=null,ff=null,gf=null,hf=!1;\nfunction jf(a,b){var c=b.window===b?b.document:9===b.nodeType?b:b.ownerDocument;if(hf||null==ef||ef!==td(c))return null;c=ef;\"selectionStart\"in c&&yd(c)?c={start:c.selectionStart,end:c.selectionEnd}:(c=(c.ownerDocument&&c.ownerDocument.defaultView||window).getSelection(),c={anchorNode:c.anchorNode,anchorOffset:c.anchorOffset,focusNode:c.focusNode,focusOffset:c.focusOffset});return gf&&bf(gf,c)?null:(gf=c,a=G.getPooled(df.select,ff,a,b),a.type=\"select\",a.target=ef,Xd(a),a)}\nvar kf={eventTypes:df,extractEvents:function(a,b,c,d,e,f){e=f||(d.window===d?d.document:9===d.nodeType?d:d.ownerDocument);if(!(f=!e)){a:{e=cc(e);f=wa.onSelect;for(var g=0;g<f.length;g++)if(!e.has(f[g])){e=!1;break a}e=!0}f=!e}if(f)return null;e=b?Pd(b):window;switch(a){case \"focus\":if(xe(e)||\"true\"===e.contentEditable)ef=e,ff=b,gf=null;break;case \"blur\":gf=ff=ef=null;break;case \"mousedown\":hf=!0;break;case \"contextmenu\":case \"mouseup\":case \"dragend\":return hf=!1,jf(c,d);case \"selectionchange\":if(cf)break;\ncase \"keydown\":case \"keyup\":return jf(c,d)}return null}},lf=G.extend({animationName:null,elapsedTime:null,pseudoElement:null}),mf=G.extend({clipboardData:function(a){return\"clipboardData\"in a?a.clipboardData:window.clipboardData}}),nf=Ne.extend({relatedTarget:null});function of(a){var b=a.keyCode;\"charCode\"in a?(a=a.charCode,0===a&&13===b&&(a=13)):a=b;10===a&&(a=13);return 32<=a||13===a?a:0}\nvar pf={Esc:\"Escape\",Spacebar:\" \",Left:\"ArrowLeft\",Up:\"ArrowUp\",Right:\"ArrowRight\",Down:\"ArrowDown\",Del:\"Delete\",Win:\"OS\",Menu:\"ContextMenu\",Apps:\"ContextMenu\",Scroll:\"ScrollLock\",MozPrintableKey:\"Unidentified\"},qf={8:\"Backspace\",9:\"Tab\",12:\"Clear\",13:\"Enter\",16:\"Shift\",17:\"Control\",18:\"Alt\",19:\"Pause\",20:\"CapsLock\",27:\"Escape\",32:\" \",33:\"PageUp\",34:\"PageDown\",35:\"End\",36:\"Home\",37:\"ArrowLeft\",38:\"ArrowUp\",39:\"ArrowRight\",40:\"ArrowDown\",45:\"Insert\",46:\"Delete\",112:\"F1\",113:\"F2\",114:\"F3\",115:\"F4\",\n116:\"F5\",117:\"F6\",118:\"F7\",119:\"F8\",120:\"F9\",121:\"F10\",122:\"F11\",123:\"F12\",144:\"NumLock\",145:\"ScrollLock\",224:\"Meta\"},rf=Ne.extend({key:function(a){if(a.key){var b=pf[a.key]||a.key;if(\"Unidentified\"!==b)return b}return\"keypress\"===a.type?(a=of(a),13===a?\"Enter\":String.fromCharCode(a)):\"keydown\"===a.type||\"keyup\"===a.type?qf[a.keyCode]||\"Unidentified\":\"\"},location:null,ctrlKey:null,shiftKey:null,altKey:null,metaKey:null,repeat:null,locale:null,getModifierState:Qe,charCode:function(a){return\"keypress\"===\na.type?of(a):0},keyCode:function(a){return\"keydown\"===a.type||\"keyup\"===a.type?a.keyCode:0},which:function(a){return\"keypress\"===a.type?of(a):\"keydown\"===a.type||\"keyup\"===a.type?a.keyCode:0}}),sf=Ve.extend({dataTransfer:null}),tf=Ne.extend({touches:null,targetTouches:null,changedTouches:null,altKey:null,metaKey:null,ctrlKey:null,shiftKey:null,getModifierState:Qe}),uf=G.extend({propertyName:null,elapsedTime:null,pseudoElement:null}),vf=Ve.extend({deltaX:function(a){return\"deltaX\"in a?a.deltaX:\"wheelDeltaX\"in\na?-a.wheelDeltaX:0},deltaY:function(a){return\"deltaY\"in a?a.deltaY:\"wheelDeltaY\"in a?-a.wheelDeltaY:\"wheelDelta\"in a?-a.wheelDelta:0},deltaZ:null,deltaMode:null}),wf={eventTypes:Wc,extractEvents:function(a,b,c,d){var e=Yc.get(a);if(!e)return null;switch(a){case \"keypress\":if(0===of(c))return null;case \"keydown\":case \"keyup\":a=rf;break;case \"blur\":case \"focus\":a=nf;break;case \"click\":if(2===c.button)return null;case \"auxclick\":case \"dblclick\":case \"mousedown\":case \"mousemove\":case \"mouseup\":case \"mouseout\":case \"mouseover\":case \"contextmenu\":a=\nVe;break;case \"drag\":case \"dragend\":case \"dragenter\":case \"dragexit\":case \"dragleave\":case \"dragover\":case \"dragstart\":case \"drop\":a=sf;break;case \"touchcancel\":case \"touchend\":case \"touchmove\":case \"touchstart\":a=tf;break;case Xb:case Yb:case Zb:a=lf;break;case $b:a=uf;break;case \"scroll\":a=Ne;break;case \"wheel\":a=vf;break;case \"copy\":case \"cut\":case \"paste\":a=mf;break;case \"gotpointercapture\":case \"lostpointercapture\":case \"pointercancel\":case \"pointerdown\":case \"pointermove\":case \"pointerout\":case \"pointerover\":case \"pointerup\":a=\nWe;break;default:a=G}b=a.getPooled(e,b,c,d);Xd(b);return b}};if(pa)throw Error(u(101));pa=Array.prototype.slice.call(\"ResponderEventPlugin SimpleEventPlugin EnterLeaveEventPlugin ChangeEventPlugin SelectEventPlugin BeforeInputEventPlugin\".split(\" \"));ra();var xf=Nc;la=Qd;ma=xf;na=Pd;xa({SimpleEventPlugin:wf,EnterLeaveEventPlugin:Ye,ChangeEventPlugin:Me,SelectEventPlugin:kf,BeforeInputEventPlugin:ve});var yf=[],zf=-1;function H(a){0>zf||(a.current=yf[zf],yf[zf]=null,zf--)}\nfunction I(a,b){zf++;yf[zf]=a.current;a.current=b}var Af={},J={current:Af},K={current:!1},Bf=Af;function Cf(a,b){var c=a.type.contextTypes;if(!c)return Af;var d=a.stateNode;if(d&&d.__reactInternalMemoizedUnmaskedChildContext===b)return d.__reactInternalMemoizedMaskedChildContext;var e={},f;for(f in c)e[f]=b[f];d&&(a=a.stateNode,a.__reactInternalMemoizedUnmaskedChildContext=b,a.__reactInternalMemoizedMaskedChildContext=e);return e}function L(a){a=a.childContextTypes;return null!==a&&void 0!==a}\nfunction Df(){H(K);H(J)}function Ef(a,b,c){if(J.current!==Af)throw Error(u(168));I(J,b);I(K,c)}function Ff(a,b,c){var d=a.stateNode;a=b.childContextTypes;if(\"function\"!==typeof d.getChildContext)return c;d=d.getChildContext();for(var e in d)if(!(e in a))throw Error(u(108,pb(b)||\"Unknown\",e));return n({},c,{},d)}function Gf(a){a=(a=a.stateNode)&&a.__reactInternalMemoizedMergedChildContext||Af;Bf=J.current;I(J,a);I(K,K.current);return!0}\nfunction Hf(a,b,c){var d=a.stateNode;if(!d)throw Error(u(169));c?(a=Ff(a,b,Bf),d.__reactInternalMemoizedMergedChildContext=a,H(K),H(J),I(J,a)):H(K);I(K,c)}\nvar If=r.unstable_runWithPriority,Jf=r.unstable_scheduleCallback,Kf=r.unstable_cancelCallback,Lf=r.unstable_requestPaint,Mf=r.unstable_now,Nf=r.unstable_getCurrentPriorityLevel,Of=r.unstable_ImmediatePriority,Pf=r.unstable_UserBlockingPriority,Qf=r.unstable_NormalPriority,Rf=r.unstable_LowPriority,Sf=r.unstable_IdlePriority,Tf={},Uf=r.unstable_shouldYield,Vf=void 0!==Lf?Lf:function(){},Wf=null,Xf=null,Yf=!1,Zf=Mf(),$f=1E4>Zf?Mf:function(){return Mf()-Zf};\nfunction ag(){switch(Nf()){case Of:return 99;case Pf:return 98;case Qf:return 97;case Rf:return 96;case Sf:return 95;default:throw Error(u(332));}}function bg(a){switch(a){case 99:return Of;case 98:return Pf;case 97:return Qf;case 96:return Rf;case 95:return Sf;default:throw Error(u(332));}}function cg(a,b){a=bg(a);return If(a,b)}function dg(a,b,c){a=bg(a);return Jf(a,b,c)}function eg(a){null===Wf?(Wf=[a],Xf=Jf(Of,fg)):Wf.push(a);return Tf}function gg(){if(null!==Xf){var a=Xf;Xf=null;Kf(a)}fg()}\nfunction fg(){if(!Yf&&null!==Wf){Yf=!0;var a=0;try{var b=Wf;cg(99,function(){for(;a<b.length;a++){var c=b[a];do c=c(!0);while(null!==c)}});Wf=null}catch(c){throw null!==Wf&&(Wf=Wf.slice(a+1)),Jf(Of,gg),c;}finally{Yf=!1}}}function hg(a,b,c){c/=10;return 1073741821-(((1073741821-a+b/10)/c|0)+1)*c}function ig(a,b){if(a&&a.defaultProps){b=n({},b);a=a.defaultProps;for(var c in a)void 0===b[c]&&(b[c]=a[c])}return b}var jg={current:null},kg=null,lg=null,mg=null;function ng(){mg=lg=kg=null}\nfunction og(a){var b=jg.current;H(jg);a.type._context._currentValue=b}function pg(a,b){for(;null!==a;){var c=a.alternate;if(a.childExpirationTime<b)a.childExpirationTime=b,null!==c&&c.childExpirationTime<b&&(c.childExpirationTime=b);else if(null!==c&&c.childExpirationTime<b)c.childExpirationTime=b;else break;a=a.return}}function qg(a,b){kg=a;mg=lg=null;a=a.dependencies;null!==a&&null!==a.firstContext&&(a.expirationTime>=b&&(rg=!0),a.firstContext=null)}\nfunction sg(a,b){if(mg!==a&&!1!==b&&0!==b){if(\"number\"!==typeof b||1073741823===b)mg=a,b=1073741823;b={context:a,observedBits:b,next:null};if(null===lg){if(null===kg)throw Error(u(308));lg=b;kg.dependencies={expirationTime:0,firstContext:b,responders:null}}else lg=lg.next=b}return a._currentValue}var tg=!1;function ug(a){a.updateQueue={baseState:a.memoizedState,baseQueue:null,shared:{pending:null},effects:null}}\nfunction vg(a,b){a=a.updateQueue;b.updateQueue===a&&(b.updateQueue={baseState:a.baseState,baseQueue:a.baseQueue,shared:a.shared,effects:a.effects})}function wg(a,b){a={expirationTime:a,suspenseConfig:b,tag:0,payload:null,callback:null,next:null};return a.next=a}function xg(a,b){a=a.updateQueue;if(null!==a){a=a.shared;var c=a.pending;null===c?b.next=b:(b.next=c.next,c.next=b);a.pending=b}}\nfunction yg(a,b){var c=a.alternate;null!==c&&vg(c,a);a=a.updateQueue;c=a.baseQueue;null===c?(a.baseQueue=b.next=b,b.next=b):(b.next=c.next,c.next=b)}\nfunction zg(a,b,c,d){var e=a.updateQueue;tg=!1;var f=e.baseQueue,g=e.shared.pending;if(null!==g){if(null!==f){var h=f.next;f.next=g.next;g.next=h}f=g;e.shared.pending=null;h=a.alternate;null!==h&&(h=h.updateQueue,null!==h&&(h.baseQueue=g))}if(null!==f){h=f.next;var k=e.baseState,l=0,m=null,p=null,x=null;if(null!==h){var z=h;do{g=z.expirationTime;if(g<d){var ca={expirationTime:z.expirationTime,suspenseConfig:z.suspenseConfig,tag:z.tag,payload:z.payload,callback:z.callback,next:null};null===x?(p=x=\nca,m=k):x=x.next=ca;g>l&&(l=g)}else{null!==x&&(x=x.next={expirationTime:1073741823,suspenseConfig:z.suspenseConfig,tag:z.tag,payload:z.payload,callback:z.callback,next:null});Ag(g,z.suspenseConfig);a:{var D=a,t=z;g=b;ca=c;switch(t.tag){case 1:D=t.payload;if(\"function\"===typeof D){k=D.call(ca,k,g);break a}k=D;break a;case 3:D.effectTag=D.effectTag&-4097|64;case 0:D=t.payload;g=\"function\"===typeof D?D.call(ca,k,g):D;if(null===g||void 0===g)break a;k=n({},k,g);break a;case 2:tg=!0}}null!==z.callback&&\n(a.effectTag|=32,g=e.effects,null===g?e.effects=[z]:g.push(z))}z=z.next;if(null===z||z===h)if(g=e.shared.pending,null===g)break;else z=f.next=g.next,g.next=h,e.baseQueue=f=g,e.shared.pending=null}while(1)}null===x?m=k:x.next=p;e.baseState=m;e.baseQueue=x;Bg(l);a.expirationTime=l;a.memoizedState=k}}\nfunction Cg(a,b,c){a=b.effects;b.effects=null;if(null!==a)for(b=0;b<a.length;b++){var d=a[b],e=d.callback;if(null!==e){d.callback=null;d=e;e=c;if(\"function\"!==typeof d)throw Error(u(191,d));d.call(e)}}}var Dg=Wa.ReactCurrentBatchConfig,Eg=(new aa.Component).refs;function Fg(a,b,c,d){b=a.memoizedState;c=c(d,b);c=null===c||void 0===c?b:n({},b,c);a.memoizedState=c;0===a.expirationTime&&(a.updateQueue.baseState=c)}\nvar Jg={isMounted:function(a){return(a=a._reactInternalFiber)?dc(a)===a:!1},enqueueSetState:function(a,b,c){a=a._reactInternalFiber;var d=Gg(),e=Dg.suspense;d=Hg(d,a,e);e=wg(d,e);e.payload=b;void 0!==c&&null!==c&&(e.callback=c);xg(a,e);Ig(a,d)},enqueueReplaceState:function(a,b,c){a=a._reactInternalFiber;var d=Gg(),e=Dg.suspense;d=Hg(d,a,e);e=wg(d,e);e.tag=1;e.payload=b;void 0!==c&&null!==c&&(e.callback=c);xg(a,e);Ig(a,d)},enqueueForceUpdate:function(a,b){a=a._reactInternalFiber;var c=Gg(),d=Dg.suspense;\nc=Hg(c,a,d);d=wg(c,d);d.tag=2;void 0!==b&&null!==b&&(d.callback=b);xg(a,d);Ig(a,c)}};function Kg(a,b,c,d,e,f,g){a=a.stateNode;return\"function\"===typeof a.shouldComponentUpdate?a.shouldComponentUpdate(d,f,g):b.prototype&&b.prototype.isPureReactComponent?!bf(c,d)||!bf(e,f):!0}\nfunction Lg(a,b,c){var d=!1,e=Af;var f=b.contextType;\"object\"===typeof f&&null!==f?f=sg(f):(e=L(b)?Bf:J.current,d=b.contextTypes,f=(d=null!==d&&void 0!==d)?Cf(a,e):Af);b=new b(c,f);a.memoizedState=null!==b.state&&void 0!==b.state?b.state:null;b.updater=Jg;a.stateNode=b;b._reactInternalFiber=a;d&&(a=a.stateNode,a.__reactInternalMemoizedUnmaskedChildContext=e,a.__reactInternalMemoizedMaskedChildContext=f);return b}\nfunction Mg(a,b,c,d){a=b.state;\"function\"===typeof b.componentWillReceiveProps&&b.componentWillReceiveProps(c,d);\"function\"===typeof b.UNSAFE_componentWillReceiveProps&&b.UNSAFE_componentWillReceiveProps(c,d);b.state!==a&&Jg.enqueueReplaceState(b,b.state,null)}\nfunction Ng(a,b,c,d){var e=a.stateNode;e.props=c;e.state=a.memoizedState;e.refs=Eg;ug(a);var f=b.contextType;\"object\"===typeof f&&null!==f?e.context=sg(f):(f=L(b)?Bf:J.current,e.context=Cf(a,f));zg(a,c,e,d);e.state=a.memoizedState;f=b.getDerivedStateFromProps;\"function\"===typeof f&&(Fg(a,b,f,c),e.state=a.memoizedState);\"function\"===typeof b.getDerivedStateFromProps||\"function\"===typeof e.getSnapshotBeforeUpdate||\"function\"!==typeof e.UNSAFE_componentWillMount&&\"function\"!==typeof e.componentWillMount||\n(b=e.state,\"function\"===typeof e.componentWillMount&&e.componentWillMount(),\"function\"===typeof e.UNSAFE_componentWillMount&&e.UNSAFE_componentWillMount(),b!==e.state&&Jg.enqueueReplaceState(e,e.state,null),zg(a,c,e,d),e.state=a.memoizedState);\"function\"===typeof e.componentDidMount&&(a.effectTag|=4)}var Og=Array.isArray;\nfunction Pg(a,b,c){a=c.ref;if(null!==a&&\"function\"!==typeof a&&\"object\"!==typeof a){if(c._owner){c=c._owner;if(c){if(1!==c.tag)throw Error(u(309));var d=c.stateNode}if(!d)throw Error(u(147,a));var e=\"\"+a;if(null!==b&&null!==b.ref&&\"function\"===typeof b.ref&&b.ref._stringRef===e)return b.ref;b=function(a){var b=d.refs;b===Eg&&(b=d.refs={});null===a?delete b[e]:b[e]=a};b._stringRef=e;return b}if(\"string\"!==typeof a)throw Error(u(284));if(!c._owner)throw Error(u(290,a));}return a}\nfunction Qg(a,b){if(\"textarea\"!==a.type)throw Error(u(31,\"[object Object]\"===Object.prototype.toString.call(b)?\"object with keys {\"+Object.keys(b).join(\", \")+\"}\":b,\"\"));}\nfunction Rg(a){function b(b,c){if(a){var d=b.lastEffect;null!==d?(d.nextEffect=c,b.lastEffect=c):b.firstEffect=b.lastEffect=c;c.nextEffect=null;c.effectTag=8}}function c(c,d){if(!a)return null;for(;null!==d;)b(c,d),d=d.sibling;return null}function d(a,b){for(a=new Map;null!==b;)null!==b.key?a.set(b.key,b):a.set(b.index,b),b=b.sibling;return a}function e(a,b){a=Sg(a,b);a.index=0;a.sibling=null;return a}function f(b,c,d){b.index=d;if(!a)return c;d=b.alternate;if(null!==d)return d=d.index,d<c?(b.effectTag=\n2,c):d;b.effectTag=2;return c}function g(b){a&&null===b.alternate&&(b.effectTag=2);return b}function h(a,b,c,d){if(null===b||6!==b.tag)return b=Tg(c,a.mode,d),b.return=a,b;b=e(b,c);b.return=a;return b}function k(a,b,c,d){if(null!==b&&b.elementType===c.type)return d=e(b,c.props),d.ref=Pg(a,b,c),d.return=a,d;d=Ug(c.type,c.key,c.props,null,a.mode,d);d.ref=Pg(a,b,c);d.return=a;return d}function l(a,b,c,d){if(null===b||4!==b.tag||b.stateNode.containerInfo!==c.containerInfo||b.stateNode.implementation!==\nc.implementation)return b=Vg(c,a.mode,d),b.return=a,b;b=e(b,c.children||[]);b.return=a;return b}function m(a,b,c,d,f){if(null===b||7!==b.tag)return b=Wg(c,a.mode,d,f),b.return=a,b;b=e(b,c);b.return=a;return b}function p(a,b,c){if(\"string\"===typeof b||\"number\"===typeof b)return b=Tg(\"\"+b,a.mode,c),b.return=a,b;if(\"object\"===typeof b&&null!==b){switch(b.$$typeof){case Za:return c=Ug(b.type,b.key,b.props,null,a.mode,c),c.ref=Pg(a,null,b),c.return=a,c;case $a:return b=Vg(b,a.mode,c),b.return=a,b}if(Og(b)||\nnb(b))return b=Wg(b,a.mode,c,null),b.return=a,b;Qg(a,b)}return null}function x(a,b,c,d){var e=null!==b?b.key:null;if(\"string\"===typeof c||\"number\"===typeof c)return null!==e?null:h(a,b,\"\"+c,d);if(\"object\"===typeof c&&null!==c){switch(c.$$typeof){case Za:return c.key===e?c.type===ab?m(a,b,c.props.children,d,e):k(a,b,c,d):null;case $a:return c.key===e?l(a,b,c,d):null}if(Og(c)||nb(c))return null!==e?null:m(a,b,c,d,null);Qg(a,c)}return null}function z(a,b,c,d,e){if(\"string\"===typeof d||\"number\"===typeof d)return a=\na.get(c)||null,h(b,a,\"\"+d,e);if(\"object\"===typeof d&&null!==d){switch(d.$$typeof){case Za:return a=a.get(null===d.key?c:d.key)||null,d.type===ab?m(b,a,d.props.children,e,d.key):k(b,a,d,e);case $a:return a=a.get(null===d.key?c:d.key)||null,l(b,a,d,e)}if(Og(d)||nb(d))return a=a.get(c)||null,m(b,a,d,e,null);Qg(b,d)}return null}function ca(e,g,h,k){for(var l=null,t=null,m=g,y=g=0,A=null;null!==m&&y<h.length;y++){m.index>y?(A=m,m=null):A=m.sibling;var q=x(e,m,h[y],k);if(null===q){null===m&&(m=A);break}a&&\nm&&null===q.alternate&&b(e,m);g=f(q,g,y);null===t?l=q:t.sibling=q;t=q;m=A}if(y===h.length)return c(e,m),l;if(null===m){for(;y<h.length;y++)m=p(e,h[y],k),null!==m&&(g=f(m,g,y),null===t?l=m:t.sibling=m,t=m);return l}for(m=d(e,m);y<h.length;y++)A=z(m,e,y,h[y],k),null!==A&&(a&&null!==A.alternate&&m.delete(null===A.key?y:A.key),g=f(A,g,y),null===t?l=A:t.sibling=A,t=A);a&&m.forEach(function(a){return b(e,a)});return l}function D(e,g,h,l){var k=nb(h);if(\"function\"!==typeof k)throw Error(u(150));h=k.call(h);\nif(null==h)throw Error(u(151));for(var m=k=null,t=g,y=g=0,A=null,q=h.next();null!==t&&!q.done;y++,q=h.next()){t.index>y?(A=t,t=null):A=t.sibling;var D=x(e,t,q.value,l);if(null===D){null===t&&(t=A);break}a&&t&&null===D.alternate&&b(e,t);g=f(D,g,y);null===m?k=D:m.sibling=D;m=D;t=A}if(q.done)return c(e,t),k;if(null===t){for(;!q.done;y++,q=h.next())q=p(e,q.value,l),null!==q&&(g=f(q,g,y),null===m?k=q:m.sibling=q,m=q);return k}for(t=d(e,t);!q.done;y++,q=h.next())q=z(t,e,y,q.value,l),null!==q&&(a&&null!==\nq.alternate&&t.delete(null===q.key?y:q.key),g=f(q,g,y),null===m?k=q:m.sibling=q,m=q);a&&t.forEach(function(a){return b(e,a)});return k}return function(a,d,f,h){var k=\"object\"===typeof f&&null!==f&&f.type===ab&&null===f.key;k&&(f=f.props.children);var l=\"object\"===typeof f&&null!==f;if(l)switch(f.$$typeof){case Za:a:{l=f.key;for(k=d;null!==k;){if(k.key===l){switch(k.tag){case 7:if(f.type===ab){c(a,k.sibling);d=e(k,f.props.children);d.return=a;a=d;break a}break;default:if(k.elementType===f.type){c(a,\nk.sibling);d=e(k,f.props);d.ref=Pg(a,k,f);d.return=a;a=d;break a}}c(a,k);break}else b(a,k);k=k.sibling}f.type===ab?(d=Wg(f.props.children,a.mode,h,f.key),d.return=a,a=d):(h=Ug(f.type,f.key,f.props,null,a.mode,h),h.ref=Pg(a,d,f),h.return=a,a=h)}return g(a);case $a:a:{for(k=f.key;null!==d;){if(d.key===k)if(4===d.tag&&d.stateNode.containerInfo===f.containerInfo&&d.stateNode.implementation===f.implementation){c(a,d.sibling);d=e(d,f.children||[]);d.return=a;a=d;break a}else{c(a,d);break}else b(a,d);d=\nd.sibling}d=Vg(f,a.mode,h);d.return=a;a=d}return g(a)}if(\"string\"===typeof f||\"number\"===typeof f)return f=\"\"+f,null!==d&&6===d.tag?(c(a,d.sibling),d=e(d,f),d.return=a,a=d):(c(a,d),d=Tg(f,a.mode,h),d.return=a,a=d),g(a);if(Og(f))return ca(a,d,f,h);if(nb(f))return D(a,d,f,h);l&&Qg(a,f);if(\"undefined\"===typeof f&&!k)switch(a.tag){case 1:case 0:throw a=a.type,Error(u(152,a.displayName||a.name||\"Component\"));}return c(a,d)}}var Xg=Rg(!0),Yg=Rg(!1),Zg={},$g={current:Zg},ah={current:Zg},bh={current:Zg};\nfunction ch(a){if(a===Zg)throw Error(u(174));return a}function dh(a,b){I(bh,b);I(ah,a);I($g,Zg);a=b.nodeType;switch(a){case 9:case 11:b=(b=b.documentElement)?b.namespaceURI:Ob(null,\"\");break;default:a=8===a?b.parentNode:b,b=a.namespaceURI||null,a=a.tagName,b=Ob(b,a)}H($g);I($g,b)}function eh(){H($g);H(ah);H(bh)}function fh(a){ch(bh.current);var b=ch($g.current);var c=Ob(b,a.type);b!==c&&(I(ah,a),I($g,c))}function gh(a){ah.current===a&&(H($g),H(ah))}var M={current:0};\nfunction hh(a){for(var b=a;null!==b;){if(13===b.tag){var c=b.memoizedState;if(null!==c&&(c=c.dehydrated,null===c||c.data===Bd||c.data===Cd))return b}else if(19===b.tag&&void 0!==b.memoizedProps.revealOrder){if(0!==(b.effectTag&64))return b}else if(null!==b.child){b.child.return=b;b=b.child;continue}if(b===a)break;for(;null===b.sibling;){if(null===b.return||b.return===a)return null;b=b.return}b.sibling.return=b.return;b=b.sibling}return null}function ih(a,b){return{responder:a,props:b}}\nvar jh=Wa.ReactCurrentDispatcher,kh=Wa.ReactCurrentBatchConfig,lh=0,N=null,O=null,P=null,mh=!1;function Q(){throw Error(u(321));}function nh(a,b){if(null===b)return!1;for(var c=0;c<b.length&&c<a.length;c++)if(!$e(a[c],b[c]))return!1;return!0}\nfunction oh(a,b,c,d,e,f){lh=f;N=b;b.memoizedState=null;b.updateQueue=null;b.expirationTime=0;jh.current=null===a||null===a.memoizedState?ph:qh;a=c(d,e);if(b.expirationTime===lh){f=0;do{b.expirationTime=0;if(!(25>f))throw Error(u(301));f+=1;P=O=null;b.updateQueue=null;jh.current=rh;a=c(d,e)}while(b.expirationTime===lh)}jh.current=sh;b=null!==O&&null!==O.next;lh=0;P=O=N=null;mh=!1;if(b)throw Error(u(300));return a}\nfunction th(){var a={memoizedState:null,baseState:null,baseQueue:null,queue:null,next:null};null===P?N.memoizedState=P=a:P=P.next=a;return P}function uh(){if(null===O){var a=N.alternate;a=null!==a?a.memoizedState:null}else a=O.next;var b=null===P?N.memoizedState:P.next;if(null!==b)P=b,O=a;else{if(null===a)throw Error(u(310));O=a;a={memoizedState:O.memoizedState,baseState:O.baseState,baseQueue:O.baseQueue,queue:O.queue,next:null};null===P?N.memoizedState=P=a:P=P.next=a}return P}\nfunction vh(a,b){return\"function\"===typeof b?b(a):b}\nfunction wh(a){var b=uh(),c=b.queue;if(null===c)throw Error(u(311));c.lastRenderedReducer=a;var d=O,e=d.baseQueue,f=c.pending;if(null!==f){if(null!==e){var g=e.next;e.next=f.next;f.next=g}d.baseQueue=e=f;c.pending=null}if(null!==e){e=e.next;d=d.baseState;var h=g=f=null,k=e;do{var l=k.expirationTime;if(l<lh){var m={expirationTime:k.expirationTime,suspenseConfig:k.suspenseConfig,action:k.action,eagerReducer:k.eagerReducer,eagerState:k.eagerState,next:null};null===h?(g=h=m,f=d):h=h.next=m;l>N.expirationTime&&\n(N.expirationTime=l,Bg(l))}else null!==h&&(h=h.next={expirationTime:1073741823,suspenseConfig:k.suspenseConfig,action:k.action,eagerReducer:k.eagerReducer,eagerState:k.eagerState,next:null}),Ag(l,k.suspenseConfig),d=k.eagerReducer===a?k.eagerState:a(d,k.action);k=k.next}while(null!==k&&k!==e);null===h?f=d:h.next=g;$e(d,b.memoizedState)||(rg=!0);b.memoizedState=d;b.baseState=f;b.baseQueue=h;c.lastRenderedState=d}return[b.memoizedState,c.dispatch]}\nfunction xh(a){var b=uh(),c=b.queue;if(null===c)throw Error(u(311));c.lastRenderedReducer=a;var d=c.dispatch,e=c.pending,f=b.memoizedState;if(null!==e){c.pending=null;var g=e=e.next;do f=a(f,g.action),g=g.next;while(g!==e);$e(f,b.memoizedState)||(rg=!0);b.memoizedState=f;null===b.baseQueue&&(b.baseState=f);c.lastRenderedState=f}return[f,d]}\nfunction yh(a){var b=th();\"function\"===typeof a&&(a=a());b.memoizedState=b.baseState=a;a=b.queue={pending:null,dispatch:null,lastRenderedReducer:vh,lastRenderedState:a};a=a.dispatch=zh.bind(null,N,a);return[b.memoizedState,a]}function Ah(a,b,c,d){a={tag:a,create:b,destroy:c,deps:d,next:null};b=N.updateQueue;null===b?(b={lastEffect:null},N.updateQueue=b,b.lastEffect=a.next=a):(c=b.lastEffect,null===c?b.lastEffect=a.next=a:(d=c.next,c.next=a,a.next=d,b.lastEffect=a));return a}\nfunction Bh(){return uh().memoizedState}function Ch(a,b,c,d){var e=th();N.effectTag|=a;e.memoizedState=Ah(1|b,c,void 0,void 0===d?null:d)}function Dh(a,b,c,d){var e=uh();d=void 0===d?null:d;var f=void 0;if(null!==O){var g=O.memoizedState;f=g.destroy;if(null!==d&&nh(d,g.deps)){Ah(b,c,f,d);return}}N.effectTag|=a;e.memoizedState=Ah(1|b,c,f,d)}function Eh(a,b){return Ch(516,4,a,b)}function Fh(a,b){return Dh(516,4,a,b)}function Gh(a,b){return Dh(4,2,a,b)}\nfunction Hh(a,b){if(\"function\"===typeof b)return a=a(),b(a),function(){b(null)};if(null!==b&&void 0!==b)return a=a(),b.current=a,function(){b.current=null}}function Ih(a,b,c){c=null!==c&&void 0!==c?c.concat([a]):null;return Dh(4,2,Hh.bind(null,b,a),c)}function Jh(){}function Kh(a,b){th().memoizedState=[a,void 0===b?null:b];return a}function Lh(a,b){var c=uh();b=void 0===b?null:b;var d=c.memoizedState;if(null!==d&&null!==b&&nh(b,d[1]))return d[0];c.memoizedState=[a,b];return a}\nfunction Mh(a,b){var c=uh();b=void 0===b?null:b;var d=c.memoizedState;if(null!==d&&null!==b&&nh(b,d[1]))return d[0];a=a();c.memoizedState=[a,b];return a}function Nh(a,b,c){var d=ag();cg(98>d?98:d,function(){a(!0)});cg(97<d?97:d,function(){var d=kh.suspense;kh.suspense=void 0===b?null:b;try{a(!1),c()}finally{kh.suspense=d}})}\nfunction zh(a,b,c){var d=Gg(),e=Dg.suspense;d=Hg(d,a,e);e={expirationTime:d,suspenseConfig:e,action:c,eagerReducer:null,eagerState:null,next:null};var f=b.pending;null===f?e.next=e:(e.next=f.next,f.next=e);b.pending=e;f=a.alternate;if(a===N||null!==f&&f===N)mh=!0,e.expirationTime=lh,N.expirationTime=lh;else{if(0===a.expirationTime&&(null===f||0===f.expirationTime)&&(f=b.lastRenderedReducer,null!==f))try{var g=b.lastRenderedState,h=f(g,c);e.eagerReducer=f;e.eagerState=h;if($e(h,g))return}catch(k){}finally{}Ig(a,\nd)}}\nvar sh={readContext:sg,useCallback:Q,useContext:Q,useEffect:Q,useImperativeHandle:Q,useLayoutEffect:Q,useMemo:Q,useReducer:Q,useRef:Q,useState:Q,useDebugValue:Q,useResponder:Q,useDeferredValue:Q,useTransition:Q},ph={readContext:sg,useCallback:Kh,useContext:sg,useEffect:Eh,useImperativeHandle:function(a,b,c){c=null!==c&&void 0!==c?c.concat([a]):null;return Ch(4,2,Hh.bind(null,b,a),c)},useLayoutEffect:function(a,b){return Ch(4,2,a,b)},useMemo:function(a,b){var c=th();b=void 0===b?null:b;a=a();c.memoizedState=[a,\nb];return a},useReducer:function(a,b,c){var d=th();b=void 0!==c?c(b):b;d.memoizedState=d.baseState=b;a=d.queue={pending:null,dispatch:null,lastRenderedReducer:a,lastRenderedState:b};a=a.dispatch=zh.bind(null,N,a);return[d.memoizedState,a]},useRef:function(a){var b=th();a={current:a};return b.memoizedState=a},useState:yh,useDebugValue:Jh,useResponder:ih,useDeferredValue:function(a,b){var c=yh(a),d=c[0],e=c[1];Eh(function(){var c=kh.suspense;kh.suspense=void 0===b?null:b;try{e(a)}finally{kh.suspense=\nc}},[a,b]);return d},useTransition:function(a){var b=yh(!1),c=b[0];b=b[1];return[Kh(Nh.bind(null,b,a),[b,a]),c]}},qh={readContext:sg,useCallback:Lh,useContext:sg,useEffect:Fh,useImperativeHandle:Ih,useLayoutEffect:Gh,useMemo:Mh,useReducer:wh,useRef:Bh,useState:function(){return wh(vh)},useDebugValue:Jh,useResponder:ih,useDeferredValue:function(a,b){var c=wh(vh),d=c[0],e=c[1];Fh(function(){var c=kh.suspense;kh.suspense=void 0===b?null:b;try{e(a)}finally{kh.suspense=c}},[a,b]);return d},useTransition:function(a){var b=\nwh(vh),c=b[0];b=b[1];return[Lh(Nh.bind(null,b,a),[b,a]),c]}},rh={readContext:sg,useCallback:Lh,useContext:sg,useEffect:Fh,useImperativeHandle:Ih,useLayoutEffect:Gh,useMemo:Mh,useReducer:xh,useRef:Bh,useState:function(){return xh(vh)},useDebugValue:Jh,useResponder:ih,useDeferredValue:function(a,b){var c=xh(vh),d=c[0],e=c[1];Fh(function(){var c=kh.suspense;kh.suspense=void 0===b?null:b;try{e(a)}finally{kh.suspense=c}},[a,b]);return d},useTransition:function(a){var b=xh(vh),c=b[0];b=b[1];return[Lh(Nh.bind(null,\nb,a),[b,a]),c]}},Oh=null,Ph=null,Qh=!1;function Rh(a,b){var c=Sh(5,null,null,0);c.elementType=\"DELETED\";c.type=\"DELETED\";c.stateNode=b;c.return=a;c.effectTag=8;null!==a.lastEffect?(a.lastEffect.nextEffect=c,a.lastEffect=c):a.firstEffect=a.lastEffect=c}\nfunction Th(a,b){switch(a.tag){case 5:var c=a.type;b=1!==b.nodeType||c.toLowerCase()!==b.nodeName.toLowerCase()?null:b;return null!==b?(a.stateNode=b,!0):!1;case 6:return b=\"\"===a.pendingProps||3!==b.nodeType?null:b,null!==b?(a.stateNode=b,!0):!1;case 13:return!1;default:return!1}}\nfunction Uh(a){if(Qh){var b=Ph;if(b){var c=b;if(!Th(a,b)){b=Jd(c.nextSibling);if(!b||!Th(a,b)){a.effectTag=a.effectTag&-1025|2;Qh=!1;Oh=a;return}Rh(Oh,c)}Oh=a;Ph=Jd(b.firstChild)}else a.effectTag=a.effectTag&-1025|2,Qh=!1,Oh=a}}function Vh(a){for(a=a.return;null!==a&&5!==a.tag&&3!==a.tag&&13!==a.tag;)a=a.return;Oh=a}\nfunction Wh(a){if(a!==Oh)return!1;if(!Qh)return Vh(a),Qh=!0,!1;var b=a.type;if(5!==a.tag||\"head\"!==b&&\"body\"!==b&&!Gd(b,a.memoizedProps))for(b=Ph;b;)Rh(a,b),b=Jd(b.nextSibling);Vh(a);if(13===a.tag){a=a.memoizedState;a=null!==a?a.dehydrated:null;if(!a)throw Error(u(317));a:{a=a.nextSibling;for(b=0;a;){if(8===a.nodeType){var c=a.data;if(c===Ad){if(0===b){Ph=Jd(a.nextSibling);break a}b--}else c!==zd&&c!==Cd&&c!==Bd||b++}a=a.nextSibling}Ph=null}}else Ph=Oh?Jd(a.stateNode.nextSibling):null;return!0}\nfunction Xh(){Ph=Oh=null;Qh=!1}var Yh=Wa.ReactCurrentOwner,rg=!1;function R(a,b,c,d){b.child=null===a?Yg(b,null,c,d):Xg(b,a.child,c,d)}function Zh(a,b,c,d,e){c=c.render;var f=b.ref;qg(b,e);d=oh(a,b,c,d,f,e);if(null!==a&&!rg)return b.updateQueue=a.updateQueue,b.effectTag&=-517,a.expirationTime<=e&&(a.expirationTime=0),$h(a,b,e);b.effectTag|=1;R(a,b,d,e);return b.child}\nfunction ai(a,b,c,d,e,f){if(null===a){var g=c.type;if(\"function\"===typeof g&&!bi(g)&&void 0===g.defaultProps&&null===c.compare&&void 0===c.defaultProps)return b.tag=15,b.type=g,ci(a,b,g,d,e,f);a=Ug(c.type,null,d,null,b.mode,f);a.ref=b.ref;a.return=b;return b.child=a}g=a.child;if(e<f&&(e=g.memoizedProps,c=c.compare,c=null!==c?c:bf,c(e,d)&&a.ref===b.ref))return $h(a,b,f);b.effectTag|=1;a=Sg(g,d);a.ref=b.ref;a.return=b;return b.child=a}\nfunction ci(a,b,c,d,e,f){return null!==a&&bf(a.memoizedProps,d)&&a.ref===b.ref&&(rg=!1,e<f)?(b.expirationTime=a.expirationTime,$h(a,b,f)):di(a,b,c,d,f)}function ei(a,b){var c=b.ref;if(null===a&&null!==c||null!==a&&a.ref!==c)b.effectTag|=128}function di(a,b,c,d,e){var f=L(c)?Bf:J.current;f=Cf(b,f);qg(b,e);c=oh(a,b,c,d,f,e);if(null!==a&&!rg)return b.updateQueue=a.updateQueue,b.effectTag&=-517,a.expirationTime<=e&&(a.expirationTime=0),$h(a,b,e);b.effectTag|=1;R(a,b,c,e);return b.child}\nfunction fi(a,b,c,d,e){if(L(c)){var f=!0;Gf(b)}else f=!1;qg(b,e);if(null===b.stateNode)null!==a&&(a.alternate=null,b.alternate=null,b.effectTag|=2),Lg(b,c,d),Ng(b,c,d,e),d=!0;else if(null===a){var g=b.stateNode,h=b.memoizedProps;g.props=h;var k=g.context,l=c.contextType;\"object\"===typeof l&&null!==l?l=sg(l):(l=L(c)?Bf:J.current,l=Cf(b,l));var m=c.getDerivedStateFromProps,p=\"function\"===typeof m||\"function\"===typeof g.getSnapshotBeforeUpdate;p||\"function\"!==typeof g.UNSAFE_componentWillReceiveProps&&\n\"function\"!==typeof g.componentWillReceiveProps||(h!==d||k!==l)&&Mg(b,g,d,l);tg=!1;var x=b.memoizedState;g.state=x;zg(b,d,g,e);k=b.memoizedState;h!==d||x!==k||K.current||tg?(\"function\"===typeof m&&(Fg(b,c,m,d),k=b.memoizedState),(h=tg||Kg(b,c,h,d,x,k,l))?(p||\"function\"!==typeof g.UNSAFE_componentWillMount&&\"function\"!==typeof g.componentWillMount||(\"function\"===typeof g.componentWillMount&&g.componentWillMount(),\"function\"===typeof g.UNSAFE_componentWillMount&&g.UNSAFE_componentWillMount()),\"function\"===\ntypeof g.componentDidMount&&(b.effectTag|=4)):(\"function\"===typeof g.componentDidMount&&(b.effectTag|=4),b.memoizedProps=d,b.memoizedState=k),g.props=d,g.state=k,g.context=l,d=h):(\"function\"===typeof g.componentDidMount&&(b.effectTag|=4),d=!1)}else g=b.stateNode,vg(a,b),h=b.memoizedProps,g.props=b.type===b.elementType?h:ig(b.type,h),k=g.context,l=c.contextType,\"object\"===typeof l&&null!==l?l=sg(l):(l=L(c)?Bf:J.current,l=Cf(b,l)),m=c.getDerivedStateFromProps,(p=\"function\"===typeof m||\"function\"===\ntypeof g.getSnapshotBeforeUpdate)||\"function\"!==typeof g.UNSAFE_componentWillReceiveProps&&\"function\"!==typeof g.componentWillReceiveProps||(h!==d||k!==l)&&Mg(b,g,d,l),tg=!1,k=b.memoizedState,g.state=k,zg(b,d,g,e),x=b.memoizedState,h!==d||k!==x||K.current||tg?(\"function\"===typeof m&&(Fg(b,c,m,d),x=b.memoizedState),(m=tg||Kg(b,c,h,d,k,x,l))?(p||\"function\"!==typeof g.UNSAFE_componentWillUpdate&&\"function\"!==typeof g.componentWillUpdate||(\"function\"===typeof g.componentWillUpdate&&g.componentWillUpdate(d,\nx,l),\"function\"===typeof g.UNSAFE_componentWillUpdate&&g.UNSAFE_componentWillUpdate(d,x,l)),\"function\"===typeof g.componentDidUpdate&&(b.effectTag|=4),\"function\"===typeof g.getSnapshotBeforeUpdate&&(b.effectTag|=256)):(\"function\"!==typeof g.componentDidUpdate||h===a.memoizedProps&&k===a.memoizedState||(b.effectTag|=4),\"function\"!==typeof g.getSnapshotBeforeUpdate||h===a.memoizedProps&&k===a.memoizedState||(b.effectTag|=256),b.memoizedProps=d,b.memoizedState=x),g.props=d,g.state=x,g.context=l,d=m):\n(\"function\"!==typeof g.componentDidUpdate||h===a.memoizedProps&&k===a.memoizedState||(b.effectTag|=4),\"function\"!==typeof g.getSnapshotBeforeUpdate||h===a.memoizedProps&&k===a.memoizedState||(b.effectTag|=256),d=!1);return gi(a,b,c,d,f,e)}\nfunction gi(a,b,c,d,e,f){ei(a,b);var g=0!==(b.effectTag&64);if(!d&&!g)return e&&Hf(b,c,!1),$h(a,b,f);d=b.stateNode;Yh.current=b;var h=g&&\"function\"!==typeof c.getDerivedStateFromError?null:d.render();b.effectTag|=1;null!==a&&g?(b.child=Xg(b,a.child,null,f),b.child=Xg(b,null,h,f)):R(a,b,h,f);b.memoizedState=d.state;e&&Hf(b,c,!0);return b.child}function hi(a){var b=a.stateNode;b.pendingContext?Ef(a,b.pendingContext,b.pendingContext!==b.context):b.context&&Ef(a,b.context,!1);dh(a,b.containerInfo)}\nvar ii={dehydrated:null,retryTime:0};\nfunction ji(a,b,c){var d=b.mode,e=b.pendingProps,f=M.current,g=!1,h;(h=0!==(b.effectTag&64))||(h=0!==(f&2)&&(null===a||null!==a.memoizedState));h?(g=!0,b.effectTag&=-65):null!==a&&null===a.memoizedState||void 0===e.fallback||!0===e.unstable_avoidThisFallback||(f|=1);I(M,f&1);if(null===a){void 0!==e.fallback&&Uh(b);if(g){g=e.fallback;e=Wg(null,d,0,null);e.return=b;if(0===(b.mode&2))for(a=null!==b.memoizedState?b.child.child:b.child,e.child=a;null!==a;)a.return=e,a=a.sibling;c=Wg(g,d,c,null);c.return=\nb;e.sibling=c;b.memoizedState=ii;b.child=e;return c}d=e.children;b.memoizedState=null;return b.child=Yg(b,null,d,c)}if(null!==a.memoizedState){a=a.child;d=a.sibling;if(g){e=e.fallback;c=Sg(a,a.pendingProps);c.return=b;if(0===(b.mode&2)&&(g=null!==b.memoizedState?b.child.child:b.child,g!==a.child))for(c.child=g;null!==g;)g.return=c,g=g.sibling;d=Sg(d,e);d.return=b;c.sibling=d;c.childExpirationTime=0;b.memoizedState=ii;b.child=c;return d}c=Xg(b,a.child,e.children,c);b.memoizedState=null;return b.child=\nc}a=a.child;if(g){g=e.fallback;e=Wg(null,d,0,null);e.return=b;e.child=a;null!==a&&(a.return=e);if(0===(b.mode&2))for(a=null!==b.memoizedState?b.child.child:b.child,e.child=a;null!==a;)a.return=e,a=a.sibling;c=Wg(g,d,c,null);c.return=b;e.sibling=c;c.effectTag|=2;e.childExpirationTime=0;b.memoizedState=ii;b.child=e;return c}b.memoizedState=null;return b.child=Xg(b,a,e.children,c)}\nfunction ki(a,b){a.expirationTime<b&&(a.expirationTime=b);var c=a.alternate;null!==c&&c.expirationTime<b&&(c.expirationTime=b);pg(a.return,b)}function li(a,b,c,d,e,f){var g=a.memoizedState;null===g?a.memoizedState={isBackwards:b,rendering:null,renderingStartTime:0,last:d,tail:c,tailExpiration:0,tailMode:e,lastEffect:f}:(g.isBackwards=b,g.rendering=null,g.renderingStartTime=0,g.last=d,g.tail=c,g.tailExpiration=0,g.tailMode=e,g.lastEffect=f)}\nfunction mi(a,b,c){var d=b.pendingProps,e=d.revealOrder,f=d.tail;R(a,b,d.children,c);d=M.current;if(0!==(d&2))d=d&1|2,b.effectTag|=64;else{if(null!==a&&0!==(a.effectTag&64))a:for(a=b.child;null!==a;){if(13===a.tag)null!==a.memoizedState&&ki(a,c);else if(19===a.tag)ki(a,c);else if(null!==a.child){a.child.return=a;a=a.child;continue}if(a===b)break a;for(;null===a.sibling;){if(null===a.return||a.return===b)break a;a=a.return}a.sibling.return=a.return;a=a.sibling}d&=1}I(M,d);if(0===(b.mode&2))b.memoizedState=\nnull;else switch(e){case \"forwards\":c=b.child;for(e=null;null!==c;)a=c.alternate,null!==a&&null===hh(a)&&(e=c),c=c.sibling;c=e;null===c?(e=b.child,b.child=null):(e=c.sibling,c.sibling=null);li(b,!1,e,c,f,b.lastEffect);break;case \"backwards\":c=null;e=b.child;for(b.child=null;null!==e;){a=e.alternate;if(null!==a&&null===hh(a)){b.child=e;break}a=e.sibling;e.sibling=c;c=e;e=a}li(b,!0,c,null,f,b.lastEffect);break;case \"together\":li(b,!1,null,null,void 0,b.lastEffect);break;default:b.memoizedState=null}return b.child}\nfunction $h(a,b,c){null!==a&&(b.dependencies=a.dependencies);var d=b.expirationTime;0!==d&&Bg(d);if(b.childExpirationTime<c)return null;if(null!==a&&b.child!==a.child)throw Error(u(153));if(null!==b.child){a=b.child;c=Sg(a,a.pendingProps);b.child=c;for(c.return=b;null!==a.sibling;)a=a.sibling,c=c.sibling=Sg(a,a.pendingProps),c.return=b;c.sibling=null}return b.child}var ni,oi,pi,qi;\nni=function(a,b){for(var c=b.child;null!==c;){if(5===c.tag||6===c.tag)a.appendChild(c.stateNode);else if(4!==c.tag&&null!==c.child){c.child.return=c;c=c.child;continue}if(c===b)break;for(;null===c.sibling;){if(null===c.return||c.return===b)return;c=c.return}c.sibling.return=c.return;c=c.sibling}};oi=function(){};\npi=function(a,b,c,d,e){var f=a.memoizedProps;if(f!==d){var g=b.stateNode;ch($g.current);a=null;switch(c){case \"input\":f=zb(g,f);d=zb(g,d);a=[];break;case \"option\":f=Gb(g,f);d=Gb(g,d);a=[];break;case \"select\":f=n({},f,{value:void 0});d=n({},d,{value:void 0});a=[];break;case \"textarea\":f=Ib(g,f);d=Ib(g,d);a=[];break;default:\"function\"!==typeof f.onClick&&\"function\"===typeof d.onClick&&(g.onclick=sd)}od(c,d);var h,k;c=null;for(h in f)if(!d.hasOwnProperty(h)&&f.hasOwnProperty(h)&&null!=f[h])if(\"style\"===\nh)for(k in g=f[h],g)g.hasOwnProperty(k)&&(c||(c={}),c[k]=\"\");else\"dangerouslySetInnerHTML\"!==h&&\"children\"!==h&&\"suppressContentEditableWarning\"!==h&&\"suppressHydrationWarning\"!==h&&\"autoFocus\"!==h&&(va.hasOwnProperty(h)?a||(a=[]):(a=a||[]).push(h,null));for(h in d){var l=d[h];g=null!=f?f[h]:void 0;if(d.hasOwnProperty(h)&&l!==g&&(null!=l||null!=g))if(\"style\"===h)if(g){for(k in g)!g.hasOwnProperty(k)||l&&l.hasOwnProperty(k)||(c||(c={}),c[k]=\"\");for(k in l)l.hasOwnProperty(k)&&g[k]!==l[k]&&(c||(c={}),\nc[k]=l[k])}else c||(a||(a=[]),a.push(h,c)),c=l;else\"dangerouslySetInnerHTML\"===h?(l=l?l.__html:void 0,g=g?g.__html:void 0,null!=l&&g!==l&&(a=a||[]).push(h,l)):\"children\"===h?g===l||\"string\"!==typeof l&&\"number\"!==typeof l||(a=a||[]).push(h,\"\"+l):\"suppressContentEditableWarning\"!==h&&\"suppressHydrationWarning\"!==h&&(va.hasOwnProperty(h)?(null!=l&&rd(e,h),a||g===l||(a=[])):(a=a||[]).push(h,l))}c&&(a=a||[]).push(\"style\",c);e=a;if(b.updateQueue=e)b.effectTag|=4}};\nqi=function(a,b,c,d){c!==d&&(b.effectTag|=4)};function ri(a,b){switch(a.tailMode){case \"hidden\":b=a.tail;for(var c=null;null!==b;)null!==b.alternate&&(c=b),b=b.sibling;null===c?a.tail=null:c.sibling=null;break;case \"collapsed\":c=a.tail;for(var d=null;null!==c;)null!==c.alternate&&(d=c),c=c.sibling;null===d?b||null===a.tail?a.tail=null:a.tail.sibling=null:d.sibling=null}}\nfunction si(a,b,c){var d=b.pendingProps;switch(b.tag){case 2:case 16:case 15:case 0:case 11:case 7:case 8:case 12:case 9:case 14:return null;case 1:return L(b.type)&&Df(),null;case 3:return eh(),H(K),H(J),c=b.stateNode,c.pendingContext&&(c.context=c.pendingContext,c.pendingContext=null),null!==a&&null!==a.child||!Wh(b)||(b.effectTag|=4),oi(b),null;case 5:gh(b);c=ch(bh.current);var e=b.type;if(null!==a&&null!=b.stateNode)pi(a,b,e,d,c),a.ref!==b.ref&&(b.effectTag|=128);else{if(!d){if(null===b.stateNode)throw Error(u(166));\nreturn null}a=ch($g.current);if(Wh(b)){d=b.stateNode;e=b.type;var f=b.memoizedProps;d[Md]=b;d[Nd]=f;switch(e){case \"iframe\":case \"object\":case \"embed\":F(\"load\",d);break;case \"video\":case \"audio\":for(a=0;a<ac.length;a++)F(ac[a],d);break;case \"source\":F(\"error\",d);break;case \"img\":case \"image\":case \"link\":F(\"error\",d);F(\"load\",d);break;case \"form\":F(\"reset\",d);F(\"submit\",d);break;case \"details\":F(\"toggle\",d);break;case \"input\":Ab(d,f);F(\"invalid\",d);rd(c,\"onChange\");break;case \"select\":d._wrapperState=\n{wasMultiple:!!f.multiple};F(\"invalid\",d);rd(c,\"onChange\");break;case \"textarea\":Jb(d,f),F(\"invalid\",d),rd(c,\"onChange\")}od(e,f);a=null;for(var g in f)if(f.hasOwnProperty(g)){var h=f[g];\"children\"===g?\"string\"===typeof h?d.textContent!==h&&(a=[\"children\",h]):\"number\"===typeof h&&d.textContent!==\"\"+h&&(a=[\"children\",\"\"+h]):va.hasOwnProperty(g)&&null!=h&&rd(c,g)}switch(e){case \"input\":xb(d);Eb(d,f,!0);break;case \"textarea\":xb(d);Lb(d);break;case \"select\":case \"option\":break;default:\"function\"===typeof f.onClick&&\n(d.onclick=sd)}c=a;b.updateQueue=c;null!==c&&(b.effectTag|=4)}else{g=9===c.nodeType?c:c.ownerDocument;a===qd&&(a=Nb(e));a===qd?\"script\"===e?(a=g.createElement(\"div\"),a.innerHTML=\"<script>\\x3c/script>\",a=a.removeChild(a.firstChild)):\"string\"===typeof d.is?a=g.createElement(e,{is:d.is}):(a=g.createElement(e),\"select\"===e&&(g=a,d.multiple?g.multiple=!0:d.size&&(g.size=d.size))):a=g.createElementNS(a,e);a[Md]=b;a[Nd]=d;ni(a,b,!1,!1);b.stateNode=a;g=pd(e,d);switch(e){case \"iframe\":case \"object\":case \"embed\":F(\"load\",\na);h=d;break;case \"video\":case \"audio\":for(h=0;h<ac.length;h++)F(ac[h],a);h=d;break;case \"source\":F(\"error\",a);h=d;break;case \"img\":case \"image\":case \"link\":F(\"error\",a);F(\"load\",a);h=d;break;case \"form\":F(\"reset\",a);F(\"submit\",a);h=d;break;case \"details\":F(\"toggle\",a);h=d;break;case \"input\":Ab(a,d);h=zb(a,d);F(\"invalid\",a);rd(c,\"onChange\");break;case \"option\":h=Gb(a,d);break;case \"select\":a._wrapperState={wasMultiple:!!d.multiple};h=n({},d,{value:void 0});F(\"invalid\",a);rd(c,\"onChange\");break;case \"textarea\":Jb(a,\nd);h=Ib(a,d);F(\"invalid\",a);rd(c,\"onChange\");break;default:h=d}od(e,h);var k=h;for(f in k)if(k.hasOwnProperty(f)){var l=k[f];\"style\"===f?md(a,l):\"dangerouslySetInnerHTML\"===f?(l=l?l.__html:void 0,null!=l&&Qb(a,l)):\"children\"===f?\"string\"===typeof l?(\"textarea\"!==e||\"\"!==l)&&Rb(a,l):\"number\"===typeof l&&Rb(a,\"\"+l):\"suppressContentEditableWarning\"!==f&&\"suppressHydrationWarning\"!==f&&\"autoFocus\"!==f&&(va.hasOwnProperty(f)?null!=l&&rd(c,f):null!=l&&Xa(a,f,l,g))}switch(e){case \"input\":xb(a);Eb(a,d,!1);\nbreak;case \"textarea\":xb(a);Lb(a);break;case \"option\":null!=d.value&&a.setAttribute(\"value\",\"\"+rb(d.value));break;case \"select\":a.multiple=!!d.multiple;c=d.value;null!=c?Hb(a,!!d.multiple,c,!1):null!=d.defaultValue&&Hb(a,!!d.multiple,d.defaultValue,!0);break;default:\"function\"===typeof h.onClick&&(a.onclick=sd)}Fd(e,d)&&(b.effectTag|=4)}null!==b.ref&&(b.effectTag|=128)}return null;case 6:if(a&&null!=b.stateNode)qi(a,b,a.memoizedProps,d);else{if(\"string\"!==typeof d&&null===b.stateNode)throw Error(u(166));\nc=ch(bh.current);ch($g.current);Wh(b)?(c=b.stateNode,d=b.memoizedProps,c[Md]=b,c.nodeValue!==d&&(b.effectTag|=4)):(c=(9===c.nodeType?c:c.ownerDocument).createTextNode(d),c[Md]=b,b.stateNode=c)}return null;case 13:H(M);d=b.memoizedState;if(0!==(b.effectTag&64))return b.expirationTime=c,b;c=null!==d;d=!1;null===a?void 0!==b.memoizedProps.fallback&&Wh(b):(e=a.memoizedState,d=null!==e,c||null===e||(e=a.child.sibling,null!==e&&(f=b.firstEffect,null!==f?(b.firstEffect=e,e.nextEffect=f):(b.firstEffect=b.lastEffect=\ne,e.nextEffect=null),e.effectTag=8)));if(c&&!d&&0!==(b.mode&2))if(null===a&&!0!==b.memoizedProps.unstable_avoidThisFallback||0!==(M.current&1))S===ti&&(S=ui);else{if(S===ti||S===ui)S=vi;0!==wi&&null!==T&&(xi(T,U),yi(T,wi))}if(c||d)b.effectTag|=4;return null;case 4:return eh(),oi(b),null;case 10:return og(b),null;case 17:return L(b.type)&&Df(),null;case 19:H(M);d=b.memoizedState;if(null===d)return null;e=0!==(b.effectTag&64);f=d.rendering;if(null===f)if(e)ri(d,!1);else{if(S!==ti||null!==a&&0!==(a.effectTag&\n64))for(f=b.child;null!==f;){a=hh(f);if(null!==a){b.effectTag|=64;ri(d,!1);e=a.updateQueue;null!==e&&(b.updateQueue=e,b.effectTag|=4);null===d.lastEffect&&(b.firstEffect=null);b.lastEffect=d.lastEffect;for(d=b.child;null!==d;)e=d,f=c,e.effectTag&=2,e.nextEffect=null,e.firstEffect=null,e.lastEffect=null,a=e.alternate,null===a?(e.childExpirationTime=0,e.expirationTime=f,e.child=null,e.memoizedProps=null,e.memoizedState=null,e.updateQueue=null,e.dependencies=null):(e.childExpirationTime=a.childExpirationTime,\ne.expirationTime=a.expirationTime,e.child=a.child,e.memoizedProps=a.memoizedProps,e.memoizedState=a.memoizedState,e.updateQueue=a.updateQueue,f=a.dependencies,e.dependencies=null===f?null:{expirationTime:f.expirationTime,firstContext:f.firstContext,responders:f.responders}),d=d.sibling;I(M,M.current&1|2);return b.child}f=f.sibling}}else{if(!e)if(a=hh(f),null!==a){if(b.effectTag|=64,e=!0,c=a.updateQueue,null!==c&&(b.updateQueue=c,b.effectTag|=4),ri(d,!0),null===d.tail&&\"hidden\"===d.tailMode&&!f.alternate)return b=\nb.lastEffect=d.lastEffect,null!==b&&(b.nextEffect=null),null}else 2*$f()-d.renderingStartTime>d.tailExpiration&&1<c&&(b.effectTag|=64,e=!0,ri(d,!1),b.expirationTime=b.childExpirationTime=c-1);d.isBackwards?(f.sibling=b.child,b.child=f):(c=d.last,null!==c?c.sibling=f:b.child=f,d.last=f)}return null!==d.tail?(0===d.tailExpiration&&(d.tailExpiration=$f()+500),c=d.tail,d.rendering=c,d.tail=c.sibling,d.lastEffect=b.lastEffect,d.renderingStartTime=$f(),c.sibling=null,b=M.current,I(M,e?b&1|2:b&1),c):null}throw Error(u(156,\nb.tag));}function zi(a){switch(a.tag){case 1:L(a.type)&&Df();var b=a.effectTag;return b&4096?(a.effectTag=b&-4097|64,a):null;case 3:eh();H(K);H(J);b=a.effectTag;if(0!==(b&64))throw Error(u(285));a.effectTag=b&-4097|64;return a;case 5:return gh(a),null;case 13:return H(M),b=a.effectTag,b&4096?(a.effectTag=b&-4097|64,a):null;case 19:return H(M),null;case 4:return eh(),null;case 10:return og(a),null;default:return null}}function Ai(a,b){return{value:a,source:b,stack:qb(b)}}\nvar Bi=\"function\"===typeof WeakSet?WeakSet:Set;function Ci(a,b){var c=b.source,d=b.stack;null===d&&null!==c&&(d=qb(c));null!==c&&pb(c.type);b=b.value;null!==a&&1===a.tag&&pb(a.type);try{console.error(b)}catch(e){setTimeout(function(){throw e;})}}function Di(a,b){try{b.props=a.memoizedProps,b.state=a.memoizedState,b.componentWillUnmount()}catch(c){Ei(a,c)}}function Fi(a){var b=a.ref;if(null!==b)if(\"function\"===typeof b)try{b(null)}catch(c){Ei(a,c)}else b.current=null}\nfunction Gi(a,b){switch(b.tag){case 0:case 11:case 15:case 22:return;case 1:if(b.effectTag&256&&null!==a){var c=a.memoizedProps,d=a.memoizedState;a=b.stateNode;b=a.getSnapshotBeforeUpdate(b.elementType===b.type?c:ig(b.type,c),d);a.__reactInternalSnapshotBeforeUpdate=b}return;case 3:case 5:case 6:case 4:case 17:return}throw Error(u(163));}\nfunction Hi(a,b){b=b.updateQueue;b=null!==b?b.lastEffect:null;if(null!==b){var c=b=b.next;do{if((c.tag&a)===a){var d=c.destroy;c.destroy=void 0;void 0!==d&&d()}c=c.next}while(c!==b)}}function Ii(a,b){b=b.updateQueue;b=null!==b?b.lastEffect:null;if(null!==b){var c=b=b.next;do{if((c.tag&a)===a){var d=c.create;c.destroy=d()}c=c.next}while(c!==b)}}\nfunction Ji(a,b,c){switch(c.tag){case 0:case 11:case 15:case 22:Ii(3,c);return;case 1:a=c.stateNode;if(c.effectTag&4)if(null===b)a.componentDidMount();else{var d=c.elementType===c.type?b.memoizedProps:ig(c.type,b.memoizedProps);a.componentDidUpdate(d,b.memoizedState,a.__reactInternalSnapshotBeforeUpdate)}b=c.updateQueue;null!==b&&Cg(c,b,a);return;case 3:b=c.updateQueue;if(null!==b){a=null;if(null!==c.child)switch(c.child.tag){case 5:a=c.child.stateNode;break;case 1:a=c.child.stateNode}Cg(c,b,a)}return;\ncase 5:a=c.stateNode;null===b&&c.effectTag&4&&Fd(c.type,c.memoizedProps)&&a.focus();return;case 6:return;case 4:return;case 12:return;case 13:null===c.memoizedState&&(c=c.alternate,null!==c&&(c=c.memoizedState,null!==c&&(c=c.dehydrated,null!==c&&Vc(c))));return;case 19:case 17:case 20:case 21:return}throw Error(u(163));}\nfunction Ki(a,b,c){\"function\"===typeof Li&&Li(b);switch(b.tag){case 0:case 11:case 14:case 15:case 22:a=b.updateQueue;if(null!==a&&(a=a.lastEffect,null!==a)){var d=a.next;cg(97<c?97:c,function(){var a=d;do{var c=a.destroy;if(void 0!==c){var g=b;try{c()}catch(h){Ei(g,h)}}a=a.next}while(a!==d)})}break;case 1:Fi(b);c=b.stateNode;\"function\"===typeof c.componentWillUnmount&&Di(b,c);break;case 5:Fi(b);break;case 4:Mi(a,b,c)}}\nfunction Ni(a){var b=a.alternate;a.return=null;a.child=null;a.memoizedState=null;a.updateQueue=null;a.dependencies=null;a.alternate=null;a.firstEffect=null;a.lastEffect=null;a.pendingProps=null;a.memoizedProps=null;a.stateNode=null;null!==b&&Ni(b)}function Oi(a){return 5===a.tag||3===a.tag||4===a.tag}\nfunction Pi(a){a:{for(var b=a.return;null!==b;){if(Oi(b)){var c=b;break a}b=b.return}throw Error(u(160));}b=c.stateNode;switch(c.tag){case 5:var d=!1;break;case 3:b=b.containerInfo;d=!0;break;case 4:b=b.containerInfo;d=!0;break;default:throw Error(u(161));}c.effectTag&16&&(Rb(b,\"\"),c.effectTag&=-17);a:b:for(c=a;;){for(;null===c.sibling;){if(null===c.return||Oi(c.return)){c=null;break a}c=c.return}c.sibling.return=c.return;for(c=c.sibling;5!==c.tag&&6!==c.tag&&18!==c.tag;){if(c.effectTag&2)continue b;\nif(null===c.child||4===c.tag)continue b;else c.child.return=c,c=c.child}if(!(c.effectTag&2)){c=c.stateNode;break a}}d?Qi(a,c,b):Ri(a,c,b)}\nfunction Qi(a,b,c){var d=a.tag,e=5===d||6===d;if(e)a=e?a.stateNode:a.stateNode.instance,b?8===c.nodeType?c.parentNode.insertBefore(a,b):c.insertBefore(a,b):(8===c.nodeType?(b=c.parentNode,b.insertBefore(a,c)):(b=c,b.appendChild(a)),c=c._reactRootContainer,null!==c&&void 0!==c||null!==b.onclick||(b.onclick=sd));else if(4!==d&&(a=a.child,null!==a))for(Qi(a,b,c),a=a.sibling;null!==a;)Qi(a,b,c),a=a.sibling}\nfunction Ri(a,b,c){var d=a.tag,e=5===d||6===d;if(e)a=e?a.stateNode:a.stateNode.instance,b?c.insertBefore(a,b):c.appendChild(a);else if(4!==d&&(a=a.child,null!==a))for(Ri(a,b,c),a=a.sibling;null!==a;)Ri(a,b,c),a=a.sibling}\nfunction Mi(a,b,c){for(var d=b,e=!1,f,g;;){if(!e){e=d.return;a:for(;;){if(null===e)throw Error(u(160));f=e.stateNode;switch(e.tag){case 5:g=!1;break a;case 3:f=f.containerInfo;g=!0;break a;case 4:f=f.containerInfo;g=!0;break a}e=e.return}e=!0}if(5===d.tag||6===d.tag){a:for(var h=a,k=d,l=c,m=k;;)if(Ki(h,m,l),null!==m.child&&4!==m.tag)m.child.return=m,m=m.child;else{if(m===k)break a;for(;null===m.sibling;){if(null===m.return||m.return===k)break a;m=m.return}m.sibling.return=m.return;m=m.sibling}g?(h=\nf,k=d.stateNode,8===h.nodeType?h.parentNode.removeChild(k):h.removeChild(k)):f.removeChild(d.stateNode)}else if(4===d.tag){if(null!==d.child){f=d.stateNode.containerInfo;g=!0;d.child.return=d;d=d.child;continue}}else if(Ki(a,d,c),null!==d.child){d.child.return=d;d=d.child;continue}if(d===b)break;for(;null===d.sibling;){if(null===d.return||d.return===b)return;d=d.return;4===d.tag&&(e=!1)}d.sibling.return=d.return;d=d.sibling}}\nfunction Si(a,b){switch(b.tag){case 0:case 11:case 14:case 15:case 22:Hi(3,b);return;case 1:return;case 5:var c=b.stateNode;if(null!=c){var d=b.memoizedProps,e=null!==a?a.memoizedProps:d;a=b.type;var f=b.updateQueue;b.updateQueue=null;if(null!==f){c[Nd]=d;\"input\"===a&&\"radio\"===d.type&&null!=d.name&&Bb(c,d);pd(a,e);b=pd(a,d);for(e=0;e<f.length;e+=2){var g=f[e],h=f[e+1];\"style\"===g?md(c,h):\"dangerouslySetInnerHTML\"===g?Qb(c,h):\"children\"===g?Rb(c,h):Xa(c,g,h,b)}switch(a){case \"input\":Cb(c,d);break;\ncase \"textarea\":Kb(c,d);break;case \"select\":b=c._wrapperState.wasMultiple,c._wrapperState.wasMultiple=!!d.multiple,a=d.value,null!=a?Hb(c,!!d.multiple,a,!1):b!==!!d.multiple&&(null!=d.defaultValue?Hb(c,!!d.multiple,d.defaultValue,!0):Hb(c,!!d.multiple,d.multiple?[]:\"\",!1))}}}return;case 6:if(null===b.stateNode)throw Error(u(162));b.stateNode.nodeValue=b.memoizedProps;return;case 3:b=b.stateNode;b.hydrate&&(b.hydrate=!1,Vc(b.containerInfo));return;case 12:return;case 13:c=b;null===b.memoizedState?\nd=!1:(d=!0,c=b.child,Ti=$f());if(null!==c)a:for(a=c;;){if(5===a.tag)f=a.stateNode,d?(f=f.style,\"function\"===typeof f.setProperty?f.setProperty(\"display\",\"none\",\"important\"):f.display=\"none\"):(f=a.stateNode,e=a.memoizedProps.style,e=void 0!==e&&null!==e&&e.hasOwnProperty(\"display\")?e.display:null,f.style.display=ld(\"display\",e));else if(6===a.tag)a.stateNode.nodeValue=d?\"\":a.memoizedProps;else if(13===a.tag&&null!==a.memoizedState&&null===a.memoizedState.dehydrated){f=a.child.sibling;f.return=a;a=\nf;continue}else if(null!==a.child){a.child.return=a;a=a.child;continue}if(a===c)break;for(;null===a.sibling;){if(null===a.return||a.return===c)break a;a=a.return}a.sibling.return=a.return;a=a.sibling}Ui(b);return;case 19:Ui(b);return;case 17:return}throw Error(u(163));}function Ui(a){var b=a.updateQueue;if(null!==b){a.updateQueue=null;var c=a.stateNode;null===c&&(c=a.stateNode=new Bi);b.forEach(function(b){var d=Vi.bind(null,a,b);c.has(b)||(c.add(b),b.then(d,d))})}}\nvar Wi=\"function\"===typeof WeakMap?WeakMap:Map;function Xi(a,b,c){c=wg(c,null);c.tag=3;c.payload={element:null};var d=b.value;c.callback=function(){Yi||(Yi=!0,Zi=d);Ci(a,b)};return c}\nfunction $i(a,b,c){c=wg(c,null);c.tag=3;var d=a.type.getDerivedStateFromError;if(\"function\"===typeof d){var e=b.value;c.payload=function(){Ci(a,b);return d(e)}}var f=a.stateNode;null!==f&&\"function\"===typeof f.componentDidCatch&&(c.callback=function(){\"function\"!==typeof d&&(null===aj?aj=new Set([this]):aj.add(this),Ci(a,b));var c=b.stack;this.componentDidCatch(b.value,{componentStack:null!==c?c:\"\"})});return c}\nvar bj=Math.ceil,cj=Wa.ReactCurrentDispatcher,dj=Wa.ReactCurrentOwner,V=0,ej=8,fj=16,gj=32,ti=0,hj=1,ij=2,ui=3,vi=4,jj=5,W=V,T=null,X=null,U=0,S=ti,kj=null,lj=1073741823,mj=1073741823,nj=null,wi=0,oj=!1,Ti=0,pj=500,Y=null,Yi=!1,Zi=null,aj=null,qj=!1,rj=null,sj=90,tj=null,uj=0,vj=null,wj=0;function Gg(){return(W&(fj|gj))!==V?1073741821-($f()/10|0):0!==wj?wj:wj=1073741821-($f()/10|0)}\nfunction Hg(a,b,c){b=b.mode;if(0===(b&2))return 1073741823;var d=ag();if(0===(b&4))return 99===d?1073741823:1073741822;if((W&fj)!==V)return U;if(null!==c)a=hg(a,c.timeoutMs|0||5E3,250);else switch(d){case 99:a=1073741823;break;case 98:a=hg(a,150,100);break;case 97:case 96:a=hg(a,5E3,250);break;case 95:a=2;break;default:throw Error(u(326));}null!==T&&a===U&&--a;return a}\nfunction Ig(a,b){if(50<uj)throw uj=0,vj=null,Error(u(185));a=xj(a,b);if(null!==a){var c=ag();1073741823===b?(W&ej)!==V&&(W&(fj|gj))===V?yj(a):(Z(a),W===V&&gg()):Z(a);(W&4)===V||98!==c&&99!==c||(null===tj?tj=new Map([[a,b]]):(c=tj.get(a),(void 0===c||c>b)&&tj.set(a,b)))}}\nfunction xj(a,b){a.expirationTime<b&&(a.expirationTime=b);var c=a.alternate;null!==c&&c.expirationTime<b&&(c.expirationTime=b);var d=a.return,e=null;if(null===d&&3===a.tag)e=a.stateNode;else for(;null!==d;){c=d.alternate;d.childExpirationTime<b&&(d.childExpirationTime=b);null!==c&&c.childExpirationTime<b&&(c.childExpirationTime=b);if(null===d.return&&3===d.tag){e=d.stateNode;break}d=d.return}null!==e&&(T===e&&(Bg(b),S===vi&&xi(e,U)),yi(e,b));return e}\nfunction zj(a){var b=a.lastExpiredTime;if(0!==b)return b;b=a.firstPendingTime;if(!Aj(a,b))return b;var c=a.lastPingedTime;a=a.nextKnownPendingLevel;a=c>a?c:a;return 2>=a&&b!==a?0:a}\nfunction Z(a){if(0!==a.lastExpiredTime)a.callbackExpirationTime=1073741823,a.callbackPriority=99,a.callbackNode=eg(yj.bind(null,a));else{var b=zj(a),c=a.callbackNode;if(0===b)null!==c&&(a.callbackNode=null,a.callbackExpirationTime=0,a.callbackPriority=90);else{var d=Gg();1073741823===b?d=99:1===b||2===b?d=95:(d=10*(1073741821-b)-10*(1073741821-d),d=0>=d?99:250>=d?98:5250>=d?97:95);if(null!==c){var e=a.callbackPriority;if(a.callbackExpirationTime===b&&e>=d)return;c!==Tf&&Kf(c)}a.callbackExpirationTime=\nb;a.callbackPriority=d;b=1073741823===b?eg(yj.bind(null,a)):dg(d,Bj.bind(null,a),{timeout:10*(1073741821-b)-$f()});a.callbackNode=b}}}\nfunction Bj(a,b){wj=0;if(b)return b=Gg(),Cj(a,b),Z(a),null;var c=zj(a);if(0!==c){b=a.callbackNode;if((W&(fj|gj))!==V)throw Error(u(327));Dj();a===T&&c===U||Ej(a,c);if(null!==X){var d=W;W|=fj;var e=Fj();do try{Gj();break}catch(h){Hj(a,h)}while(1);ng();W=d;cj.current=e;if(S===hj)throw b=kj,Ej(a,c),xi(a,c),Z(a),b;if(null===X)switch(e=a.finishedWork=a.current.alternate,a.finishedExpirationTime=c,d=S,T=null,d){case ti:case hj:throw Error(u(345));case ij:Cj(a,2<c?2:c);break;case ui:xi(a,c);d=a.lastSuspendedTime;\nc===d&&(a.nextKnownPendingLevel=Ij(e));if(1073741823===lj&&(e=Ti+pj-$f(),10<e)){if(oj){var f=a.lastPingedTime;if(0===f||f>=c){a.lastPingedTime=c;Ej(a,c);break}}f=zj(a);if(0!==f&&f!==c)break;if(0!==d&&d!==c){a.lastPingedTime=d;break}a.timeoutHandle=Hd(Jj.bind(null,a),e);break}Jj(a);break;case vi:xi(a,c);d=a.lastSuspendedTime;c===d&&(a.nextKnownPendingLevel=Ij(e));if(oj&&(e=a.lastPingedTime,0===e||e>=c)){a.lastPingedTime=c;Ej(a,c);break}e=zj(a);if(0!==e&&e!==c)break;if(0!==d&&d!==c){a.lastPingedTime=\nd;break}1073741823!==mj?d=10*(1073741821-mj)-$f():1073741823===lj?d=0:(d=10*(1073741821-lj)-5E3,e=$f(),c=10*(1073741821-c)-e,d=e-d,0>d&&(d=0),d=(120>d?120:480>d?480:1080>d?1080:1920>d?1920:3E3>d?3E3:4320>d?4320:1960*bj(d/1960))-d,c<d&&(d=c));if(10<d){a.timeoutHandle=Hd(Jj.bind(null,a),d);break}Jj(a);break;case jj:if(1073741823!==lj&&null!==nj){f=lj;var g=nj;d=g.busyMinDurationMs|0;0>=d?d=0:(e=g.busyDelayMs|0,f=$f()-(10*(1073741821-f)-(g.timeoutMs|0||5E3)),d=f<=e?0:e+d-f);if(10<d){xi(a,c);a.timeoutHandle=\nHd(Jj.bind(null,a),d);break}}Jj(a);break;default:throw Error(u(329));}Z(a);if(a.callbackNode===b)return Bj.bind(null,a)}}return null}\nfunction yj(a){var b=a.lastExpiredTime;b=0!==b?b:1073741823;if((W&(fj|gj))!==V)throw Error(u(327));Dj();a===T&&b===U||Ej(a,b);if(null!==X){var c=W;W|=fj;var d=Fj();do try{Kj();break}catch(e){Hj(a,e)}while(1);ng();W=c;cj.current=d;if(S===hj)throw c=kj,Ej(a,b),xi(a,b),Z(a),c;if(null!==X)throw Error(u(261));a.finishedWork=a.current.alternate;a.finishedExpirationTime=b;T=null;Jj(a);Z(a)}return null}function Lj(){if(null!==tj){var a=tj;tj=null;a.forEach(function(a,c){Cj(c,a);Z(c)});gg()}}\nfunction Mj(a,b){var c=W;W|=1;try{return a(b)}finally{W=c,W===V&&gg()}}function Nj(a,b){var c=W;W&=-2;W|=ej;try{return a(b)}finally{W=c,W===V&&gg()}}\nfunction Ej(a,b){a.finishedWork=null;a.finishedExpirationTime=0;var c=a.timeoutHandle;-1!==c&&(a.timeoutHandle=-1,Id(c));if(null!==X)for(c=X.return;null!==c;){var d=c;switch(d.tag){case 1:d=d.type.childContextTypes;null!==d&&void 0!==d&&Df();break;case 3:eh();H(K);H(J);break;case 5:gh(d);break;case 4:eh();break;case 13:H(M);break;case 19:H(M);break;case 10:og(d)}c=c.return}T=a;X=Sg(a.current,null);U=b;S=ti;kj=null;mj=lj=1073741823;nj=null;wi=0;oj=!1}\nfunction Hj(a,b){do{try{ng();jh.current=sh;if(mh)for(var c=N.memoizedState;null!==c;){var d=c.queue;null!==d&&(d.pending=null);c=c.next}lh=0;P=O=N=null;mh=!1;if(null===X||null===X.return)return S=hj,kj=b,X=null;a:{var e=a,f=X.return,g=X,h=b;b=U;g.effectTag|=2048;g.firstEffect=g.lastEffect=null;if(null!==h&&\"object\"===typeof h&&\"function\"===typeof h.then){var k=h;if(0===(g.mode&2)){var l=g.alternate;l?(g.updateQueue=l.updateQueue,g.memoizedState=l.memoizedState,g.expirationTime=l.expirationTime):(g.updateQueue=\nnull,g.memoizedState=null)}var m=0!==(M.current&1),p=f;do{var x;if(x=13===p.tag){var z=p.memoizedState;if(null!==z)x=null!==z.dehydrated?!0:!1;else{var ca=p.memoizedProps;x=void 0===ca.fallback?!1:!0!==ca.unstable_avoidThisFallback?!0:m?!1:!0}}if(x){var D=p.updateQueue;if(null===D){var t=new Set;t.add(k);p.updateQueue=t}else D.add(k);if(0===(p.mode&2)){p.effectTag|=64;g.effectTag&=-2981;if(1===g.tag)if(null===g.alternate)g.tag=17;else{var y=wg(1073741823,null);y.tag=2;xg(g,y)}g.expirationTime=1073741823;\nbreak a}h=void 0;g=b;var A=e.pingCache;null===A?(A=e.pingCache=new Wi,h=new Set,A.set(k,h)):(h=A.get(k),void 0===h&&(h=new Set,A.set(k,h)));if(!h.has(g)){h.add(g);var q=Oj.bind(null,e,k,g);k.then(q,q)}p.effectTag|=4096;p.expirationTime=b;break a}p=p.return}while(null!==p);h=Error((pb(g.type)||\"A React component\")+\" suspended while rendering, but no fallback UI was specified.\\n\\nAdd a <Suspense fallback=...> component higher in the tree to provide a loading indicator or placeholder to display.\"+qb(g))}S!==\njj&&(S=ij);h=Ai(h,g);p=f;do{switch(p.tag){case 3:k=h;p.effectTag|=4096;p.expirationTime=b;var B=Xi(p,k,b);yg(p,B);break a;case 1:k=h;var w=p.type,ub=p.stateNode;if(0===(p.effectTag&64)&&(\"function\"===typeof w.getDerivedStateFromError||null!==ub&&\"function\"===typeof ub.componentDidCatch&&(null===aj||!aj.has(ub)))){p.effectTag|=4096;p.expirationTime=b;var vb=$i(p,k,b);yg(p,vb);break a}}p=p.return}while(null!==p)}X=Pj(X)}catch(Xc){b=Xc;continue}break}while(1)}\nfunction Fj(){var a=cj.current;cj.current=sh;return null===a?sh:a}function Ag(a,b){a<lj&&2<a&&(lj=a);null!==b&&a<mj&&2<a&&(mj=a,nj=b)}function Bg(a){a>wi&&(wi=a)}function Kj(){for(;null!==X;)X=Qj(X)}function Gj(){for(;null!==X&&!Uf();)X=Qj(X)}function Qj(a){var b=Rj(a.alternate,a,U);a.memoizedProps=a.pendingProps;null===b&&(b=Pj(a));dj.current=null;return b}\nfunction Pj(a){X=a;do{var b=X.alternate;a=X.return;if(0===(X.effectTag&2048)){b=si(b,X,U);if(1===U||1!==X.childExpirationTime){for(var c=0,d=X.child;null!==d;){var e=d.expirationTime,f=d.childExpirationTime;e>c&&(c=e);f>c&&(c=f);d=d.sibling}X.childExpirationTime=c}if(null!==b)return b;null!==a&&0===(a.effectTag&2048)&&(null===a.firstEffect&&(a.firstEffect=X.firstEffect),null!==X.lastEffect&&(null!==a.lastEffect&&(a.lastEffect.nextEffect=X.firstEffect),a.lastEffect=X.lastEffect),1<X.effectTag&&(null!==\na.lastEffect?a.lastEffect.nextEffect=X:a.firstEffect=X,a.lastEffect=X))}else{b=zi(X);if(null!==b)return b.effectTag&=2047,b;null!==a&&(a.firstEffect=a.lastEffect=null,a.effectTag|=2048)}b=X.sibling;if(null!==b)return b;X=a}while(null!==X);S===ti&&(S=jj);return null}function Ij(a){var b=a.expirationTime;a=a.childExpirationTime;return b>a?b:a}function Jj(a){var b=ag();cg(99,Sj.bind(null,a,b));return null}\nfunction Sj(a,b){do Dj();while(null!==rj);if((W&(fj|gj))!==V)throw Error(u(327));var c=a.finishedWork,d=a.finishedExpirationTime;if(null===c)return null;a.finishedWork=null;a.finishedExpirationTime=0;if(c===a.current)throw Error(u(177));a.callbackNode=null;a.callbackExpirationTime=0;a.callbackPriority=90;a.nextKnownPendingLevel=0;var e=Ij(c);a.firstPendingTime=e;d<=a.lastSuspendedTime?a.firstSuspendedTime=a.lastSuspendedTime=a.nextKnownPendingLevel=0:d<=a.firstSuspendedTime&&(a.firstSuspendedTime=\nd-1);d<=a.lastPingedTime&&(a.lastPingedTime=0);d<=a.lastExpiredTime&&(a.lastExpiredTime=0);a===T&&(X=T=null,U=0);1<c.effectTag?null!==c.lastEffect?(c.lastEffect.nextEffect=c,e=c.firstEffect):e=c:e=c.firstEffect;if(null!==e){var f=W;W|=gj;dj.current=null;Dd=fd;var g=xd();if(yd(g)){if(\"selectionStart\"in g)var h={start:g.selectionStart,end:g.selectionEnd};else a:{h=(h=g.ownerDocument)&&h.defaultView||window;var k=h.getSelection&&h.getSelection();if(k&&0!==k.rangeCount){h=k.anchorNode;var l=k.anchorOffset,\nm=k.focusNode;k=k.focusOffset;try{h.nodeType,m.nodeType}catch(wb){h=null;break a}var p=0,x=-1,z=-1,ca=0,D=0,t=g,y=null;b:for(;;){for(var A;;){t!==h||0!==l&&3!==t.nodeType||(x=p+l);t!==m||0!==k&&3!==t.nodeType||(z=p+k);3===t.nodeType&&(p+=t.nodeValue.length);if(null===(A=t.firstChild))break;y=t;t=A}for(;;){if(t===g)break b;y===h&&++ca===l&&(x=p);y===m&&++D===k&&(z=p);if(null!==(A=t.nextSibling))break;t=y;y=t.parentNode}t=A}h=-1===x||-1===z?null:{start:x,end:z}}else h=null}h=h||{start:0,end:0}}else h=\nnull;Ed={activeElementDetached:null,focusedElem:g,selectionRange:h};fd=!1;Y=e;do try{Tj()}catch(wb){if(null===Y)throw Error(u(330));Ei(Y,wb);Y=Y.nextEffect}while(null!==Y);Y=e;do try{for(g=a,h=b;null!==Y;){var q=Y.effectTag;q&16&&Rb(Y.stateNode,\"\");if(q&128){var B=Y.alternate;if(null!==B){var w=B.ref;null!==w&&(\"function\"===typeof w?w(null):w.current=null)}}switch(q&1038){case 2:Pi(Y);Y.effectTag&=-3;break;case 6:Pi(Y);Y.effectTag&=-3;Si(Y.alternate,Y);break;case 1024:Y.effectTag&=-1025;break;case 1028:Y.effectTag&=\n-1025;Si(Y.alternate,Y);break;case 4:Si(Y.alternate,Y);break;case 8:l=Y,Mi(g,l,h),Ni(l)}Y=Y.nextEffect}}catch(wb){if(null===Y)throw Error(u(330));Ei(Y,wb);Y=Y.nextEffect}while(null!==Y);w=Ed;B=xd();q=w.focusedElem;h=w.selectionRange;if(B!==q&&q&&q.ownerDocument&&wd(q.ownerDocument.documentElement,q)){null!==h&&yd(q)&&(B=h.start,w=h.end,void 0===w&&(w=B),\"selectionStart\"in q?(q.selectionStart=B,q.selectionEnd=Math.min(w,q.value.length)):(w=(B=q.ownerDocument||document)&&B.defaultView||window,w.getSelection&&\n(w=w.getSelection(),l=q.textContent.length,g=Math.min(h.start,l),h=void 0===h.end?g:Math.min(h.end,l),!w.extend&&g>h&&(l=h,h=g,g=l),l=vd(q,g),m=vd(q,h),l&&m&&(1!==w.rangeCount||w.anchorNode!==l.node||w.anchorOffset!==l.offset||w.focusNode!==m.node||w.focusOffset!==m.offset)&&(B=B.createRange(),B.setStart(l.node,l.offset),w.removeAllRanges(),g>h?(w.addRange(B),w.extend(m.node,m.offset)):(B.setEnd(m.node,m.offset),w.addRange(B))))));B=[];for(w=q;w=w.parentNode;)1===w.nodeType&&B.push({element:w,left:w.scrollLeft,\ntop:w.scrollTop});\"function\"===typeof q.focus&&q.focus();for(q=0;q<B.length;q++)w=B[q],w.element.scrollLeft=w.left,w.element.scrollTop=w.top}fd=!!Dd;Ed=Dd=null;a.current=c;Y=e;do try{for(q=a;null!==Y;){var ub=Y.effectTag;ub&36&&Ji(q,Y.alternate,Y);if(ub&128){B=void 0;var vb=Y.ref;if(null!==vb){var Xc=Y.stateNode;switch(Y.tag){case 5:B=Xc;break;default:B=Xc}\"function\"===typeof vb?vb(B):vb.current=B}}Y=Y.nextEffect}}catch(wb){if(null===Y)throw Error(u(330));Ei(Y,wb);Y=Y.nextEffect}while(null!==Y);Y=\nnull;Vf();W=f}else a.current=c;if(qj)qj=!1,rj=a,sj=b;else for(Y=e;null!==Y;)b=Y.nextEffect,Y.nextEffect=null,Y=b;b=a.firstPendingTime;0===b&&(aj=null);1073741823===b?a===vj?uj++:(uj=0,vj=a):uj=0;\"function\"===typeof Uj&&Uj(c.stateNode,d);Z(a);if(Yi)throw Yi=!1,a=Zi,Zi=null,a;if((W&ej)!==V)return null;gg();return null}function Tj(){for(;null!==Y;){var a=Y.effectTag;0!==(a&256)&&Gi(Y.alternate,Y);0===(a&512)||qj||(qj=!0,dg(97,function(){Dj();return null}));Y=Y.nextEffect}}\nfunction Dj(){if(90!==sj){var a=97<sj?97:sj;sj=90;return cg(a,Vj)}}function Vj(){if(null===rj)return!1;var a=rj;rj=null;if((W&(fj|gj))!==V)throw Error(u(331));var b=W;W|=gj;for(a=a.current.firstEffect;null!==a;){try{var c=a;if(0!==(c.effectTag&512))switch(c.tag){case 0:case 11:case 15:case 22:Hi(5,c),Ii(5,c)}}catch(d){if(null===a)throw Error(u(330));Ei(a,d)}c=a.nextEffect;a.nextEffect=null;a=c}W=b;gg();return!0}\nfunction Wj(a,b,c){b=Ai(c,b);b=Xi(a,b,1073741823);xg(a,b);a=xj(a,1073741823);null!==a&&Z(a)}function Ei(a,b){if(3===a.tag)Wj(a,a,b);else for(var c=a.return;null!==c;){if(3===c.tag){Wj(c,a,b);break}else if(1===c.tag){var d=c.stateNode;if(\"function\"===typeof c.type.getDerivedStateFromError||\"function\"===typeof d.componentDidCatch&&(null===aj||!aj.has(d))){a=Ai(b,a);a=$i(c,a,1073741823);xg(c,a);c=xj(c,1073741823);null!==c&&Z(c);break}}c=c.return}}\nfunction Oj(a,b,c){var d=a.pingCache;null!==d&&d.delete(b);T===a&&U===c?S===vi||S===ui&&1073741823===lj&&$f()-Ti<pj?Ej(a,U):oj=!0:Aj(a,c)&&(b=a.lastPingedTime,0!==b&&b<c||(a.lastPingedTime=c,Z(a)))}function Vi(a,b){var c=a.stateNode;null!==c&&c.delete(b);b=0;0===b&&(b=Gg(),b=Hg(b,a,null));a=xj(a,b);null!==a&&Z(a)}var Rj;\nRj=function(a,b,c){var d=b.expirationTime;if(null!==a){var e=b.pendingProps;if(a.memoizedProps!==e||K.current)rg=!0;else{if(d<c){rg=!1;switch(b.tag){case 3:hi(b);Xh();break;case 5:fh(b);if(b.mode&4&&1!==c&&e.hidden)return b.expirationTime=b.childExpirationTime=1,null;break;case 1:L(b.type)&&Gf(b);break;case 4:dh(b,b.stateNode.containerInfo);break;case 10:d=b.memoizedProps.value;e=b.type._context;I(jg,e._currentValue);e._currentValue=d;break;case 13:if(null!==b.memoizedState){d=b.child.childExpirationTime;\nif(0!==d&&d>=c)return ji(a,b,c);I(M,M.current&1);b=$h(a,b,c);return null!==b?b.sibling:null}I(M,M.current&1);break;case 19:d=b.childExpirationTime>=c;if(0!==(a.effectTag&64)){if(d)return mi(a,b,c);b.effectTag|=64}e=b.memoizedState;null!==e&&(e.rendering=null,e.tail=null);I(M,M.current);if(!d)return null}return $h(a,b,c)}rg=!1}}else rg=!1;b.expirationTime=0;switch(b.tag){case 2:d=b.type;null!==a&&(a.alternate=null,b.alternate=null,b.effectTag|=2);a=b.pendingProps;e=Cf(b,J.current);qg(b,c);e=oh(null,\nb,d,a,e,c);b.effectTag|=1;if(\"object\"===typeof e&&null!==e&&\"function\"===typeof e.render&&void 0===e.$$typeof){b.tag=1;b.memoizedState=null;b.updateQueue=null;if(L(d)){var f=!0;Gf(b)}else f=!1;b.memoizedState=null!==e.state&&void 0!==e.state?e.state:null;ug(b);var g=d.getDerivedStateFromProps;\"function\"===typeof g&&Fg(b,d,g,a);e.updater=Jg;b.stateNode=e;e._reactInternalFiber=b;Ng(b,d,a,c);b=gi(null,b,d,!0,f,c)}else b.tag=0,R(null,b,e,c),b=b.child;return b;case 16:a:{e=b.elementType;null!==a&&(a.alternate=\nnull,b.alternate=null,b.effectTag|=2);a=b.pendingProps;ob(e);if(1!==e._status)throw e._result;e=e._result;b.type=e;f=b.tag=Xj(e);a=ig(e,a);switch(f){case 0:b=di(null,b,e,a,c);break a;case 1:b=fi(null,b,e,a,c);break a;case 11:b=Zh(null,b,e,a,c);break a;case 14:b=ai(null,b,e,ig(e.type,a),d,c);break a}throw Error(u(306,e,\"\"));}return b;case 0:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:ig(d,e),di(a,b,d,e,c);case 1:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:ig(d,e),fi(a,b,d,e,c);\ncase 3:hi(b);d=b.updateQueue;if(null===a||null===d)throw Error(u(282));d=b.pendingProps;e=b.memoizedState;e=null!==e?e.element:null;vg(a,b);zg(b,d,null,c);d=b.memoizedState.element;if(d===e)Xh(),b=$h(a,b,c);else{if(e=b.stateNode.hydrate)Ph=Jd(b.stateNode.containerInfo.firstChild),Oh=b,e=Qh=!0;if(e)for(c=Yg(b,null,d,c),b.child=c;c;)c.effectTag=c.effectTag&-3|1024,c=c.sibling;else R(a,b,d,c),Xh();b=b.child}return b;case 5:return fh(b),null===a&&Uh(b),d=b.type,e=b.pendingProps,f=null!==a?a.memoizedProps:\nnull,g=e.children,Gd(d,e)?g=null:null!==f&&Gd(d,f)&&(b.effectTag|=16),ei(a,b),b.mode&4&&1!==c&&e.hidden?(b.expirationTime=b.childExpirationTime=1,b=null):(R(a,b,g,c),b=b.child),b;case 6:return null===a&&Uh(b),null;case 13:return ji(a,b,c);case 4:return dh(b,b.stateNode.containerInfo),d=b.pendingProps,null===a?b.child=Xg(b,null,d,c):R(a,b,d,c),b.child;case 11:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:ig(d,e),Zh(a,b,d,e,c);case 7:return R(a,b,b.pendingProps,c),b.child;case 8:return R(a,\nb,b.pendingProps.children,c),b.child;case 12:return R(a,b,b.pendingProps.children,c),b.child;case 10:a:{d=b.type._context;e=b.pendingProps;g=b.memoizedProps;f=e.value;var h=b.type._context;I(jg,h._currentValue);h._currentValue=f;if(null!==g)if(h=g.value,f=$e(h,f)?0:(\"function\"===typeof d._calculateChangedBits?d._calculateChangedBits(h,f):1073741823)|0,0===f){if(g.children===e.children&&!K.current){b=$h(a,b,c);break a}}else for(h=b.child,null!==h&&(h.return=b);null!==h;){var k=h.dependencies;if(null!==\nk){g=h.child;for(var l=k.firstContext;null!==l;){if(l.context===d&&0!==(l.observedBits&f)){1===h.tag&&(l=wg(c,null),l.tag=2,xg(h,l));h.expirationTime<c&&(h.expirationTime=c);l=h.alternate;null!==l&&l.expirationTime<c&&(l.expirationTime=c);pg(h.return,c);k.expirationTime<c&&(k.expirationTime=c);break}l=l.next}}else g=10===h.tag?h.type===b.type?null:h.child:h.child;if(null!==g)g.return=h;else for(g=h;null!==g;){if(g===b){g=null;break}h=g.sibling;if(null!==h){h.return=g.return;g=h;break}g=g.return}h=\ng}R(a,b,e.children,c);b=b.child}return b;case 9:return e=b.type,f=b.pendingProps,d=f.children,qg(b,c),e=sg(e,f.unstable_observedBits),d=d(e),b.effectTag|=1,R(a,b,d,c),b.child;case 14:return e=b.type,f=ig(e,b.pendingProps),f=ig(e.type,f),ai(a,b,e,f,d,c);case 15:return ci(a,b,b.type,b.pendingProps,d,c);case 17:return d=b.type,e=b.pendingProps,e=b.elementType===d?e:ig(d,e),null!==a&&(a.alternate=null,b.alternate=null,b.effectTag|=2),b.tag=1,L(d)?(a=!0,Gf(b)):a=!1,qg(b,c),Lg(b,d,e),Ng(b,d,e,c),gi(null,\nb,d,!0,a,c);case 19:return mi(a,b,c)}throw Error(u(156,b.tag));};var Uj=null,Li=null;function Yj(a){if(\"undefined\"===typeof __REACT_DEVTOOLS_GLOBAL_HOOK__)return!1;var b=__REACT_DEVTOOLS_GLOBAL_HOOK__;if(b.isDisabled||!b.supportsFiber)return!0;try{var c=b.inject(a);Uj=function(a){try{b.onCommitFiberRoot(c,a,void 0,64===(a.current.effectTag&64))}catch(e){}};Li=function(a){try{b.onCommitFiberUnmount(c,a)}catch(e){}}}catch(d){}return!0}\nfunction Zj(a,b,c,d){this.tag=a;this.key=c;this.sibling=this.child=this.return=this.stateNode=this.type=this.elementType=null;this.index=0;this.ref=null;this.pendingProps=b;this.dependencies=this.memoizedState=this.updateQueue=this.memoizedProps=null;this.mode=d;this.effectTag=0;this.lastEffect=this.firstEffect=this.nextEffect=null;this.childExpirationTime=this.expirationTime=0;this.alternate=null}function Sh(a,b,c,d){return new Zj(a,b,c,d)}\nfunction bi(a){a=a.prototype;return!(!a||!a.isReactComponent)}function Xj(a){if(\"function\"===typeof a)return bi(a)?1:0;if(void 0!==a&&null!==a){a=a.$$typeof;if(a===gb)return 11;if(a===jb)return 14}return 2}\nfunction Sg(a,b){var c=a.alternate;null===c?(c=Sh(a.tag,b,a.key,a.mode),c.elementType=a.elementType,c.type=a.type,c.stateNode=a.stateNode,c.alternate=a,a.alternate=c):(c.pendingProps=b,c.effectTag=0,c.nextEffect=null,c.firstEffect=null,c.lastEffect=null);c.childExpirationTime=a.childExpirationTime;c.expirationTime=a.expirationTime;c.child=a.child;c.memoizedProps=a.memoizedProps;c.memoizedState=a.memoizedState;c.updateQueue=a.updateQueue;b=a.dependencies;c.dependencies=null===b?null:{expirationTime:b.expirationTime,\nfirstContext:b.firstContext,responders:b.responders};c.sibling=a.sibling;c.index=a.index;c.ref=a.ref;return c}\nfunction Ug(a,b,c,d,e,f){var g=2;d=a;if(\"function\"===typeof a)bi(a)&&(g=1);else if(\"string\"===typeof a)g=5;else a:switch(a){case ab:return Wg(c.children,e,f,b);case fb:g=8;e|=7;break;case bb:g=8;e|=1;break;case cb:return a=Sh(12,c,b,e|8),a.elementType=cb,a.type=cb,a.expirationTime=f,a;case hb:return a=Sh(13,c,b,e),a.type=hb,a.elementType=hb,a.expirationTime=f,a;case ib:return a=Sh(19,c,b,e),a.elementType=ib,a.expirationTime=f,a;default:if(\"object\"===typeof a&&null!==a)switch(a.$$typeof){case db:g=\n10;break a;case eb:g=9;break a;case gb:g=11;break a;case jb:g=14;break a;case kb:g=16;d=null;break a;case lb:g=22;break a}throw Error(u(130,null==a?a:typeof a,\"\"));}b=Sh(g,c,b,e);b.elementType=a;b.type=d;b.expirationTime=f;return b}function Wg(a,b,c,d){a=Sh(7,a,d,b);a.expirationTime=c;return a}function Tg(a,b,c){a=Sh(6,a,null,b);a.expirationTime=c;return a}\nfunction Vg(a,b,c){b=Sh(4,null!==a.children?a.children:[],a.key,b);b.expirationTime=c;b.stateNode={containerInfo:a.containerInfo,pendingChildren:null,implementation:a.implementation};return b}\nfunction ak(a,b,c){this.tag=b;this.current=null;this.containerInfo=a;this.pingCache=this.pendingChildren=null;this.finishedExpirationTime=0;this.finishedWork=null;this.timeoutHandle=-1;this.pendingContext=this.context=null;this.hydrate=c;this.callbackNode=null;this.callbackPriority=90;this.lastExpiredTime=this.lastPingedTime=this.nextKnownPendingLevel=this.lastSuspendedTime=this.firstSuspendedTime=this.firstPendingTime=0}\nfunction Aj(a,b){var c=a.firstSuspendedTime;a=a.lastSuspendedTime;return 0!==c&&c>=b&&a<=b}function xi(a,b){var c=a.firstSuspendedTime,d=a.lastSuspendedTime;c<b&&(a.firstSuspendedTime=b);if(d>b||0===c)a.lastSuspendedTime=b;b<=a.lastPingedTime&&(a.lastPingedTime=0);b<=a.lastExpiredTime&&(a.lastExpiredTime=0)}\nfunction yi(a,b){b>a.firstPendingTime&&(a.firstPendingTime=b);var c=a.firstSuspendedTime;0!==c&&(b>=c?a.firstSuspendedTime=a.lastSuspendedTime=a.nextKnownPendingLevel=0:b>=a.lastSuspendedTime&&(a.lastSuspendedTime=b+1),b>a.nextKnownPendingLevel&&(a.nextKnownPendingLevel=b))}function Cj(a,b){var c=a.lastExpiredTime;if(0===c||c>b)a.lastExpiredTime=b}\nfunction bk(a,b,c,d){var e=b.current,f=Gg(),g=Dg.suspense;f=Hg(f,e,g);a:if(c){c=c._reactInternalFiber;b:{if(dc(c)!==c||1!==c.tag)throw Error(u(170));var h=c;do{switch(h.tag){case 3:h=h.stateNode.context;break b;case 1:if(L(h.type)){h=h.stateNode.__reactInternalMemoizedMergedChildContext;break b}}h=h.return}while(null!==h);throw Error(u(171));}if(1===c.tag){var k=c.type;if(L(k)){c=Ff(c,k,h);break a}}c=h}else c=Af;null===b.context?b.context=c:b.pendingContext=c;b=wg(f,g);b.payload={element:a};d=void 0===\nd?null:d;null!==d&&(b.callback=d);xg(e,b);Ig(e,f);return f}function ck(a){a=a.current;if(!a.child)return null;switch(a.child.tag){case 5:return a.child.stateNode;default:return a.child.stateNode}}function dk(a,b){a=a.memoizedState;null!==a&&null!==a.dehydrated&&a.retryTime<b&&(a.retryTime=b)}function ek(a,b){dk(a,b);(a=a.alternate)&&dk(a,b)}\nfunction fk(a,b,c){c=null!=c&&!0===c.hydrate;var d=new ak(a,b,c),e=Sh(3,null,null,2===b?7:1===b?3:0);d.current=e;e.stateNode=d;ug(e);a[Od]=d.current;c&&0!==b&&Jc(a,9===a.nodeType?a:a.ownerDocument);this._internalRoot=d}fk.prototype.render=function(a){bk(a,this._internalRoot,null,null)};fk.prototype.unmount=function(){var a=this._internalRoot,b=a.containerInfo;bk(null,a,null,function(){b[Od]=null})};\nfunction gk(a){return!(!a||1!==a.nodeType&&9!==a.nodeType&&11!==a.nodeType&&(8!==a.nodeType||\" react-mount-point-unstable \"!==a.nodeValue))}function hk(a,b){b||(b=a?9===a.nodeType?a.documentElement:a.firstChild:null,b=!(!b||1!==b.nodeType||!b.hasAttribute(\"data-reactroot\")));if(!b)for(var c;c=a.lastChild;)a.removeChild(c);return new fk(a,0,b?{hydrate:!0}:void 0)}\nfunction ik(a,b,c,d,e){var f=c._reactRootContainer;if(f){var g=f._internalRoot;if(\"function\"===typeof e){var h=e;e=function(){var a=ck(g);h.call(a)}}bk(b,g,a,e)}else{f=c._reactRootContainer=hk(c,d);g=f._internalRoot;if(\"function\"===typeof e){var k=e;e=function(){var a=ck(g);k.call(a)}}Nj(function(){bk(b,g,a,e)})}return ck(g)}function jk(a,b,c){var d=3<arguments.length&&void 0!==arguments[3]?arguments[3]:null;return{$$typeof:$a,key:null==d?null:\"\"+d,children:a,containerInfo:b,implementation:c}}\nwc=function(a){if(13===a.tag){var b=hg(Gg(),150,100);Ig(a,b);ek(a,b)}};xc=function(a){13===a.tag&&(Ig(a,3),ek(a,3))};yc=function(a){if(13===a.tag){var b=Gg();b=Hg(b,a,null);Ig(a,b);ek(a,b)}};\nza=function(a,b,c){switch(b){case \"input\":Cb(a,c);b=c.name;if(\"radio\"===c.type&&null!=b){for(c=a;c.parentNode;)c=c.parentNode;c=c.querySelectorAll(\"input[name=\"+JSON.stringify(\"\"+b)+'][type=\"radio\"]');for(b=0;b<c.length;b++){var d=c[b];if(d!==a&&d.form===a.form){var e=Qd(d);if(!e)throw Error(u(90));yb(d);Cb(d,e)}}}break;case \"textarea\":Kb(a,c);break;case \"select\":b=c.value,null!=b&&Hb(a,!!c.multiple,b,!1)}};Fa=Mj;\nGa=function(a,b,c,d,e){var f=W;W|=4;try{return cg(98,a.bind(null,b,c,d,e))}finally{W=f,W===V&&gg()}};Ha=function(){(W&(1|fj|gj))===V&&(Lj(),Dj())};Ia=function(a,b){var c=W;W|=2;try{return a(b)}finally{W=c,W===V&&gg()}};function kk(a,b){var c=2<arguments.length&&void 0!==arguments[2]?arguments[2]:null;if(!gk(b))throw Error(u(200));return jk(a,b,null,c)}var lk={Events:[Nc,Pd,Qd,xa,ta,Xd,function(a){jc(a,Wd)},Da,Ea,id,mc,Dj,{current:!1}]};\n(function(a){var b=a.findFiberByHostInstance;return Yj(n({},a,{overrideHookState:null,overrideProps:null,setSuspenseHandler:null,scheduleUpdate:null,currentDispatcherRef:Wa.ReactCurrentDispatcher,findHostInstanceByFiber:function(a){a=hc(a);return null===a?null:a.stateNode},findFiberByHostInstance:function(a){return b?b(a):null},findHostInstancesForRefresh:null,scheduleRefresh:null,scheduleRoot:null,setRefreshHandler:null,getCurrentFiber:null}))})({findFiberByHostInstance:tc,bundleType:0,version:\"16.13.1\",\nrendererPackageName:\"react-dom\"});exports.__SECRET_INTERNALS_DO_NOT_USE_OR_YOU_WILL_BE_FIRED=lk;exports.createPortal=kk;exports.findDOMNode=function(a){if(null==a)return null;if(1===a.nodeType)return a;var b=a._reactInternalFiber;if(void 0===b){if(\"function\"===typeof a.render)throw Error(u(188));throw Error(u(268,Object.keys(a)));}a=hc(b);a=null===a?null:a.stateNode;return a};\nexports.flushSync=function(a,b){if((W&(fj|gj))!==V)throw Error(u(187));var c=W;W|=1;try{return cg(99,a.bind(null,b))}finally{W=c,gg()}};exports.hydrate=function(a,b,c){if(!gk(b))throw Error(u(200));return ik(null,a,b,!0,c)};exports.render=function(a,b,c){if(!gk(b))throw Error(u(200));return ik(null,a,b,!1,c)};\nexports.unmountComponentAtNode=function(a){if(!gk(a))throw Error(u(40));return a._reactRootContainer?(Nj(function(){ik(null,null,a,!1,function(){a._reactRootContainer=null;a[Od]=null})}),!0):!1};exports.unstable_batchedUpdates=Mj;exports.unstable_createPortal=function(a,b){return kk(a,b,2<arguments.length&&void 0!==arguments[2]?arguments[2]:null)};\nexports.unstable_renderSubtreeIntoContainer=function(a,b,c,d){if(!gk(c))throw Error(u(200));if(null==a||void 0===a._reactInternalFiber)throw Error(u(38));return ik(a,b,c,!1,d)};exports.version=\"16.13.1\";\n"],"sourceRoot":""}
\ No newline at end of file
diff --git a/index.html b/index.html
index 1cb0d28..ab7c992 100644
--- a/index.html
+++ b/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><style data-href="/jkube/styles.5c9b852c43e28f117cb7.css">@import url(https://fonts.googleapis.com/css?family=Libre+Franklin:100,300,400,600,700,|Roboto:300,400,500,700|Jura);@import url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css);@import url(https://unpkg.com/@coreui/icons/css/brand.min.css);code[class*=language-],pre[class*=language-]{color:#657b83;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-ms-hyphens:none;hyphens:none}code[class*=language-]::selection,code[class*=language-] ::selection,pre[class*=language-]::selection,pre[class*=language-] ::selection{background:#073642}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;border-radius:.3em}:not(pre)>code[class*=language-],pre[class*=language-]{background-color:#fdf6e3}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#93a1a1}.token.punctuation{color:#586e75}.token.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#268bd2}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string,.token.url{color:#2aa198}.token.entity{color:#657b83;background:#eee8d5}.token.atrule,.token.attr-value,.token.keyword{color:#859900}.token.class-name,.token.function{color:#b58900}.token.important,.token.regex,.token.variable{color:#cb4b16}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body,html{font-family:Libre Franklin,Roboto,sans-serif}body{margin:0;padding:0;outline:0;background:#f1f2f2;font-size:16px;color:#222}h1{font-size:3rem}h1,h2{margin-top:0;font-family:Roboto,sans-serif;font-weight:300}h2{font-size:2rem}h3{font-size:1.5rem;font-weight:300}a{color:#525c86}a:focus,a:hover{color:#222}.eclipse-jkube-footer{padding:16px;border-top:10px solid #222;background-color:#292c2f;font-size:19.2px;font-family:Roboto,sans-serif;font-weight:300;line-height:1.5}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube{display:flex;flex-direction:column;max-width:1170px;margin:0 auto 16px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-image{width:160px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-tagline{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links{max-width:1170px;margin:0 auto 16px;display:flex;flex-wrap:wrap}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list{padding:0;margin:0 48px 16px 0;list-style:none}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a{transition:color .1s linear;color:#f1f2f2}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a,.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a:hover{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a:hover{color:#525c86}.eclipse-jkube-footer .eclipse-jkube-footer__links a{text-decoration:none}.eclipse-jkube-footer .eclipse-jkube-footer__copyright{max-width:1170px;margin:0 auto 16px;font-family:Roboto,sans-serif;color:#939598}.eclipse-jkube__header{display:block;position:relative;height:175px;background-color:#292c2f}@media (min-width:700px){.eclipse-jkube__header{height:105px}}.eclipse-jkube__header .eclipse-jkube__header-trade-mark{font-size:.5em;font-size:.3em;line-height:2.5;vertical-align:top}.eclipse-jkube__header .eclipse-jkube__header-container{position:relative;margin:0 auto;padding:0 16px;height:100%;max-width:1170px}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-container{display:flex;flex-wrap:nowrap;height:105px}}.eclipse-jkube__header .eclipse-jkube__header-logo{display:flex;justify-content:center;align-items:center;font-size:32px;font-weight:400;color:#f1f2f2}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo{font-size:50px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:65px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:90px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image img{max-height:100%;max-width:100%}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:50px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:65px}}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube-image{height:100%}.eclipse-jkube__header .eclipse-jkube__header-logo:hover{color:#f1f2f2}.eclipse-jkube__header .eclipse-jkube__header-content{flex:1 0;min-width:1px;display:flex;justify-content:center;align-items:center}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-content{justify-content:flex-end}}.eclipse-jkube__header .eclipse-jkube__header-content ul{display:flex;flex-wrap:wrap;align-items:center;justify-content:center}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-content ul{justify-content:flex-start}}.eclipse-jkube__header .eclipse-jkube__header-content ul li{margin:4px 0;padding-right:16px;list-style:none;color:#f1f2f2;font-size:20px}.eclipse-jkube__header .eclipse-jkube__header-content .eclipse-jkube__header-stars{display:block;width:85px;height:20px;line-height:20px}.eclipse-jkube__header a{color:#f1f2f2;text-decoration:none}.eclipse-jkube__header a:hover{color:#dd8623;transition:color .3s}.quick-start-card{border:1px solid #d6d6d6;padding:16px}.quick-start-card .quick-start-card__title{margin:0;padding:0}.quick-start-card .quick-start-card__title a{text-decoration:none}.quick-start-card .quick-start-card__title a:active,.quick-start-card .quick-start-card__title a:hover{text-decoration:underline}.quick-start-card .quick-start-card__technologies{margin:16px 0 0;padding:0}.quick-start-card .quick-start-card__technologies-item{display:inline-flex;align-items:center;padding:.25rem .3rem;border-radius:.2rem;font-size:.8rem;margin:0 0 .5rem;background:#dd8623;color:#222}.quick-start-card .quick-start-card__technologies-item:not(:last-child){margin-right:.5rem}.quick-start-card .quick-start-card__technologies-item-icon{display:inline-block;height:.8rem;margin-right:.2rem}.quick-start-card .quick-start-card__description p{margin-top:0}.quick-start-card .quick-start-card__links a{display:inline-block;text-decoration:none;padding:.3rem .5rem;border-radius:.2rem;border:1px solid #d6d6d6;background:#d6d6d6;color:#222}.quick-start-card .quick-start-card__links a:active,.quick-start-card .quick-start-card__links a:hover{background-color:#f1f2f2}.eclipse-jkube{display:flex;flex-direction:column;min-height:100vh}.eclipse-jkube__main{flex:1 1}@media (min-width:1170px){.eclipse-jkube__main{overflow-x:hidden}}.eclipse-jkube__main .eclipse-jkube__content{margin:0 16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content{max-width:1154px;margin:0 auto}}.eclipse-jkube__main .eclipse-jkube__content img{max-width:100%}.eclipse-jkube__main .eclipse-jkube__content :not(pre)>code[class*=language-],.eclipse-jkube__main .eclipse-jkube__content pre[class*=language-]{background-color:transparent}.eclipse-jkube__main .eclipse-jkube__content .hero{margin:0 -16px 16px;display:block;background-color:#272727;background-image:url(/jkube/static/cubes-8e1e59c337437947105e6668f1f3790a.jpg);background-size:cover;color:#f1f2f2}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px;background-color:rgba(39,39,39,.7)}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px calc((100% - 1170px)/2)}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content .getting-involved{color:#f1f2f2;margin:0 -16px;padding:0 16px;display:flex;justify-content:flex-end}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content h1{font-size:2.5rem;font-family:Libre Franklin,Roboto,sans-serif;font-weight:400}.eclipse-jkube__main .eclipse-jkube__content .section-dark{background-color:#404040;color:#f1f2f2;margin:0 -16px;padding:16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;padding:16px calc((100% - 1170px)/2)}}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark>*{padding:0 calc((100% - 1170px)/2)}}.eclipse-jkube__main .eclipse-jkube__content .highlight{display:flex;align-items:center}.eclipse-jkube__main .eclipse-jkube__content .highlight>p{margin:16px 32px;display:none}@media (min-width:501px){.eclipse-jkube__main .eclipse-jkube__content .highlight>p{display:block}}.eclipse-jkube__main .eclipse-jkube__content .highlight>p img{max-width:100px}.eclipse-jkube__main .eclipse-jkube__content .highlight-description{flex:1 1;min-width:1px}.eclipse-jkube__main .eclipse-jkube__content .highlight ul{flex:1 1;min-width:1px;margin:0;padding:0}.eclipse-jkube__main .eclipse-jkube__content .highlight li{list-style:none;margin:16px 0}.eclipse-jkube__main .eclipse-jkube__content .calendar{position:relative;overflow:hidden;padding-bottom:75%;margin-bottom:16px}@media (min-width:666.66667px){.eclipse-jkube__main .eclipse-jkube__content .calendar{padding-bottom:0;height:500px}}.eclipse-jkube__main .eclipse-jkube__content .calendar iframe{position:absolute;top:0;height:100%;max-height:500px;width:100%}.eclipse-jkube__documentation{margin:0}@media screen and (min-width:768px){.eclipse-jkube__documentation{position:absolute;top:105px;bottom:0;width:100%;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content{position:relative;padding:16px;overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content article,.eclipse-jkube__documentation .eclipse-jkube__documentation-content aside,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figcaption,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure,.eclipse-jkube__documentation .eclipse-jkube__documentation-content footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content header,.eclipse-jkube__documentation .eclipse-jkube__documentation-content hgroup,.eclipse-jkube__documentation .eclipse-jkube__documentation-content main,.eclipse-jkube__documentation .eclipse-jkube__documentation-content nav,.eclipse-jkube__documentation .eclipse-jkube__documentation-content section{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio,.eclipse-jkube__documentation .eclipse-jkube__documentation-content video{display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio:not([controls]){display:none;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus{outline:thin dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{outline:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2em;margin:.67em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]{border-bottom:1px dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dfn{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{box-sizing:content-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content mark{background:#ff0;color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content samp{font-family:monospace;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{white-space:pre-wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content q{quotes:"\201C" "\201D" "\2018" "\2019"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub{bottom:-.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg:not(:root){overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure{margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content legend{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select,.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{font-family:inherit;font-size:100%;margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input{line-height:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[type=button],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=reset],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=submit]{-webkit-appearance:button;cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button[disabled],.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[disabled]{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=checkbox],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=radio]{box-sizing:border-box;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button::-moz-focus-inner,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input::-moz-focus-inner{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{overflow:auto;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{border-collapse:collapse;border-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content *,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :before{box-sizing:border-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body{background:#fff;color:rgba(0,0,0,.8);padding:0;margin:0;font-family:"Noto Serif","DejaVu Serif",serif;font-weight:400;font-style:normal;line-height:1;position:relative;cursor:auto;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{max-width:100%;height:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{height:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{-ms-interpolation-mode:bicubic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .left{float:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .right{float:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-left{text-align:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-right{text-align:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-center{text-align:center!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-justify{text-align:justify!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{display:inline-block;vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{height:auto;min-height:50px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .center{margin-left:auto;margin-right:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stretch{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .subheader,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{line-height:1.45;color:#7a2518;font-weight:400;margin-top:0;margin-bottom:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content div,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content form,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6,.eclipse-jkube__documentation .eclipse-jkube__documentation-content li,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin:0;padding:0;direction:ltr}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:#2156a5;text-decoration:underline;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{color:#1d4b8f}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{font-family:inherit;font-weight:400;font-size:1em;line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p aside{font-size:.875em;line-height:1.35;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-family:Open Sans,DejaVu Sans,sans-serif;font-weight:300;font-style:normal;color:#ba3925;text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:.5em;line-height:1.0125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 small{font-size:60%;color:#e99b8f;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5{font-size:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{border:solid #dddddf;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em,.eclipse-jkube__documentation .eclipse-jkube__documentation-content i{font-style:italic;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b,.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong{font-weight:700;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:60%;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;font-weight:400;color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{font-size:1em;line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ul{margin-left:1.25em;margin-bottom:0;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square li ul{list-style:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square{list-style-type:square}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle{list-style-type:circle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc{list-style-type:disc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ul{margin-left:1.25em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dt{margin-bottom:.3125em;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content acronym{text-transform:uppercase;font-size:90%;color:rgba(0,0,0,.8);border-bottom:1px dotted #ddd;cursor:help}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote{margin:0 0 1.25em;padding:.5625em 1.25em 0 1.1875em;border-left:1px solid #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite{display:block;font-size:.9375em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite:before{content:"\2014 "}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a:visited{color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote p{line-height:1.6;color:rgba(0,0,0,.85)}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:2.3125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4{font-size:1.4375em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{background:#fff;margin-bottom:1.25em;border:1px solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead{background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th{padding:.5em .625em .625em;font-size:inherit;color:rgba(0,0,0,.8);text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr th{padding:.5625em .625em;font-size:inherit;color:rgba(0,0,0,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.even{background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tbody tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td{display:table-cell;line-height:1.6}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2;word-spacing:-.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre):not([class^=L])>code{font-size:.9375em;font-style:normal!important;letter-spacing:0;padding:.1em .5ex;word-spacing:-.15em;background:#f7f7f8;border-radius:4px;line-height:1.45;text-rendering:optimizeSpeed;word-wrap:break-word}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nobreak{word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nowrap{white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{color:rgba(0,0,0,.9);font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;line-height:1.45;text-rendering:optimizeSpeed}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre pre{color:inherit;font-size:inherit;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre>code{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap pre{white-space:pre;word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em em{font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq{color:rgba(51,51,51,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;display:inline-block;color:rgba(0,0,0,.8);font-size:.65em;line-height:1.45;background:#f7f7f7;border:1px solid #ccc;border-radius:3px;box-shadow:0 1px 0 rgba(0,0,0,.2),inset 0 0 0 .1em #fff;margin:0 .15em;padding:.2em .5em;vertical-align:middle;position:relative;top:-.1em;white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:first-child{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:last-child{margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b:not(.caret){font-weight:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{word-spacing:-.02em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b.caret{font-size:1.25em;line-height:.8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq i.caret{font-weight:700;text-align:center;width:.45em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{position:relative;top:-1px;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{content:"[";padding:0 3px 0 2px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after{content:"]";padding:0 2px 0 3px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p a>code:hover{color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{width:100%;margin:0 auto;max-width:62.5em;*zoom:1;position:relative;padding-left:.9375em;padding-right:.9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-top:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before{content:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{color:rgba(0,0,0,.85);margin-top:2.25rem;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child+#toc{margin-top:8px;border-top:1px solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:only-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #dddddf;padding-bottom:8px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details{border-bottom:1px solid #dddddf;line-height:1.45;padding-top:.25em;padding-bottom:.25em;padding-left:.25em;color:rgba(0,0,0,.6);display:flex;flex-flow:row wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span:first-child{margin-left:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span.email a{color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span:before{content:"\A0\2013\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span.author:before{content:"\A0\22C5\A0";color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span#revremark:before{content:"\A0|\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber{text-transform:capitalize}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber:after{content:"\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content>h1:first-child:not([class]){color:rgba(0,0,0,.85);border-bottom:1px solid #dddddf;padding-bottom:8px;margin-top:0;padding-top:1rem;margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #e7e7e9;padding-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc>ul{margin-left:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0>li>a{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0 ul.sectlevel1{margin:.5em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul{font-family:Open Sans,DejaVu Sans,sans-serif;list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc li{line-height:1.3334;margin-top:.3334em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{color:#7a2518;font-size:1.2em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:15em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{margin-top:0!important;background:#f8f8f7;position:fixed;width:15em;left:0;top:0;border-right:1px solid #e7e7e9;border-top-width:0!important;border-bottom-width:0!important;z-index:1000;padding:1.25em 1em;height:100%;overflow:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{margin-top:0;margin-bottom:.8rem;font-size:1.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.9em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{margin-left:0;padding-left:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:.5em;margin-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:15em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right #toc.toc2{border-right-width:0;border-left:1px solid #e7e7e9;left:auto;right:0}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:20em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{width:20em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.95em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{padding-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:20em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc{border:1px solid #e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{max-width:100%;background:rgba(0,0,0,.8);padding:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:hsla(0,0%,100%,.8);line-height:1.44}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:.625em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:1.25em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1:last-child{padding-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border-top:1px solid #e7e7e9}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:before{content:"\A7";font-size:.85em;display:block;padding-top:.1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:hover{visibility:visible}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link{color:#ba3925;text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link:hover{color:#a53221}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content details>summary:first-of-type{cursor:pointer;display:list-item;outline:none;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{text-rendering:optimizeLegibility;text-align:left;font-family:"Noto Serif","DejaVu Serif",serif;font-size:1rem;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock.fit-content>caption.title{white-space:nowrap;width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #preamble>.sectionbody>[class=paragraph]:first-of-type p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph.lead>p{font-size:1.21875em;line-height:1.6;color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock #preamble>.sectionbody>[class=paragraph]:first-of-type p{font-size:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon{text-align:center;width:80px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon .title{font-weight:700;font-family:Open Sans,DejaVu Sans,sans-serif;text-transform:uppercase}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content{padding-left:1.125em;padding-right:1.25em;border-left:1px solid #dddddf;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{border:1px solid #e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#fff;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{border:1px solid #dbdbd6;margin-bottom:1.25em;padding:1.25em;background:#f3f3f2;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title{color:#7a2518;margin-top:0;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{border-radius:4px;word-wrap:break-word;overflow-x:auto;padding:1em;font-size:.8125em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:.90625em}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:1em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre:not(.highlight),.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class=highlight],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class^="highlight "],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock.output pre{color:#f7f7f8;background:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content{position:relative}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:none;content:attr(data-lang);position:absolute;font-size:.75em;top:.425rem;right:.5rem;line-height:1;text-transform:uppercase;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock:hover code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:before{content:attr(data-prompt);padding-right:.5em;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:not([data-prompt]):before{content:"$"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs{padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs>code{padding:1em;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.prettyprint{border-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .prettyprint{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint .linenums{line-height:1.45;margin-left:2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li{background:none;list-style-type:inherit;padding-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li code[data-lang]:before{opacity:1}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li:not(:first-child) code[data-lang]:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable{border-collapse:separate;border:0;margin-bottom:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td[class]{color:inherit;vertical-align:top;padding:0;line-height:inherit;white-space:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.code{padding-left:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.linenos{border-right:1px solid;opacity:.35;padding-right:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno{border-right:1px solid;opacity:.35;display:inline-block;margin-right:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno:before{content:"";margin-right:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock{margin:0 1em 1.25em 1.5em;display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock:not(.excerpt)>.title{margin-left:-1.5em;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock p{color:rgba(0,0,0,.85);font-size:1.15rem;line-height:1.75;word-spacing:.1em;letter-spacing:0;font-style:italic;text-align:justify}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote{margin:0;padding:0;border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote:before{content:"\201C";float:left;font-size:2.75em;font-weight:700;line-height:.6em;margin-left:-.6em;color:#7a2518;text-shadow:0 1px 2px rgba(0,0,0,.1)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote>.paragraph:last-child p{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution{margin-top:.75em;margin-right:.5ex;text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock{margin:0 1em 1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre{font-family:Open Sans,DejaVu Sans,sans;font-size:1.15rem;color:rgba(0,0,0,.85);font-weight:300;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{margin-top:1.25rem;margin-left:.5ex}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{font-size:.9375em;line-height:1.45;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution br,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution cite,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution cite{display:block;letter-spacing:-.025em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{line-height:1.6;word-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract{margin:0 1em 1.25em;display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract>.title{margin:0 0 .375em;font-size:1.15em;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt>blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{padding:0 0 .25em 1em;border-left:.25em solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{color:inherit;font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock .attribution{color:inherit;text-align:left;margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock{max-width:100%;border-collapse:separate}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child{margin-bottom:-1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child.sidebarblock{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{border:0 solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead>tr>.tableblock{border-width:0 1px 1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tfoot>tr>.tableblock{border-width:1px 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock{border-width:0 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead>tr>.tableblock{border-width:0 0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tfoot>tr>.tableblock{border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>*>tr>.tableblock:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock:last-child{border-right-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead:last-child>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead:last-child>tr>.tableblock{border-bottom-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-all{border-width:1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-sides{border-width:0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-ends,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-topbot{border-width:1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-all tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-even tr:nth-of-type(2n),.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-hover tr:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-odd tr:nth-of-type(odd){background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-left{text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-right,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-right{text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-center,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-center{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-top,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-top{vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-bottom,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-bottom{vertical-align:bottom}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-middle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-middle{vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead th{font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th{display:table-cell;line-height:1.6;background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th p{color:rgba(0,0,0,.8);font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock>code:only-child{background:none;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol{margin-left:1.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-left:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul dd{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-check-square-o:first-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-square-o:first-child{width:1.25em;font-size:.8em;position:relative;bottom:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>input[type=checkbox]:first-child{margin-right:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline{display:flex;flex-flow:row wrap;list-style:none;margin:0 0 .625em -1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline>li{margin-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .unstyled dl dt{font-weight:400;font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.arabic{list-style-type:decimal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.decimal{list-style-type:decimal-leading-zero}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.loweralpha{list-style-type:lower-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperalpha{list-style-type:upper-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowerroman{list-style-type:lower-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperroman{list-style-type:upper-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowergreek{list-style-type:lower-greek}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table{border:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table>tbody>tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table>tbody>tr{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist2{vertical-align:top;padding:0 .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1{font-weight:700;padding-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock+.colist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock+.colist{margin-top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child{padding:.4em .75em 0;line-height:1;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):last-child{padding:.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .thumb{line-height:0;display:inline-block;border:4px solid #fff;box-shadow:0 0 0 1px #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.left{margin:.25em .625em 1.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.right{margin:.25em 0 1.25em .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb{border-width:6px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb>.title{padding:0 .125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-top:.25em;margin-bottom:.25em;display:inline-block;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left{margin-right:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image{text-decoration:none;display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image object{pointer-events:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref{font-size:.875em;position:static;vertical-align:super}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 .75em;border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote{padding:0 .375em 0 .225em;line-height:1.3334;font-size:.875em;margin-left:1.2em;margin-bottom:.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote a:first-of-type{font-weight:700;text-decoration:none;margin-left:-1.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote:last-of-type{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table{border:0;background:#fff;width:100%;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table td.line-data{width:99%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.unbreakable{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .big{font-size:larger}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .small{font-size:smaller}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .underline{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .overline{text-decoration:overline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .line-through{text-decoration:line-through}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua{color:#00bfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua-background{background:#00fafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black-background{background:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue{color:#0000bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue-background{background:#0000fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia{color:#bf00bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia-background{background:#fa00fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray{color:#606060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray-background{background:#7d7d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green{color:#006000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green-background{background:#007d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime{color:#00bf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime-background{background:#00fa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon{color:#600000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon-background{background:#7d0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy{color:#000060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy-background{background:#00007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive{color:#606000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive-background{background:#7d7d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple{color:#600060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple-background{background:#7d007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red{color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red-background{background:#fa0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver{color:#909090}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver-background{background:#bcbcbc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal{color:#006060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal-background{background:#007d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white{color:#bfbfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white-background{background:#fafafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow{color:#bfbf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow-background{background:#fafa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.icon>.fa{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a span.icon>.fa{cursor:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;text-shadow:1px 1px 2px rgba(0,0,0,.5);cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-note:before{content:"\F05A";color:#19407c}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-tip:before{content:"\F0EB";text-shadow:1px 1px 2px rgba(155,155,0,.8);color:#111}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-warning:before{content:"\F071";color:#bf6900}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-caution:before{content:"\F06D";color:#bf3400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-important:before{content:"\F06A";color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]{display:inline-block;color:#fff!important;background:rgba(0,0,0,.8);border-radius:100px;text-align:center;font-size:.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:Open Sans,DejaVu Sans,sans-serif;font-style:normal;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value] *{color:#fff!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]+b{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]:after{content:attr(data-value)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre .conum[data-value]{position:relative;top:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.conum *{color:inherit!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum:not([data-value]):empty{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{letter-spacing:-.01em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content strong{letter-spacing:-.005em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{background:#fffef7;border-color:#e0e0dc;box-shadow:0 1px 4px #e0e0dc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:none!important}@page{.eclipse-jkube__documentation .eclipse-jkube__documentation-content{margin:1.25cm .75cm}}@media print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content *{box-shadow:none!important;text-shadow:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:inherit!important;text-decoration:underline!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.bare,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="#"],.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="mailto:"]{text-decoration:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="http:"]:not(.bare):after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="https:"]:not(.bare):after{content:"(" attr(href) ")";display:inline-block;font-size:.875em;padding-left:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]:after{content:" (" attr(title) ")"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tr{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content thead{display:table-header-group}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{max-width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1em;orphans:3;widows:3}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{page-break-after:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{background:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #dddddf!important;padding-bottom:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details{border:0!important;display:block;padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details span:first-child{margin-left:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br+span:before{content:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #preamble,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book .sect1>h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book h1.sect0{page-break-before:always}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{padding:0 .9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-on-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:block!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-for-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .show-for-print{display:inherit!important}}@media amzn-kf8,print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{margin-top:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:rgba(0,0,0,.6);font-size:.9em}}@media amzn-kf8{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{padding:0}}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content{padding-left:21em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .toc{position:fixed;width:20em;left:0;top:105px;bottom:0;z-index:1000;padding:0 16px;border-right:1px solid #efefed;border-top-width:0!important;border-bottom-width:0!important;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content i.fa{font-style:normal}.eclipse-jkube__quickstarts{padding:0}.eclipse-jkube__quickstarts-item{list-style:none}.eclipse-jkube__quickstarts-item:not(:last-child){margin-bottom:16px}</style><meta name="generator" content="Gatsby 2.24.12"/><title data-react-helmet="true">Eclipse JKube - Successor of the deprecated Fabric8 Maven Plugin</title><meta data-react-helmet="true" charSet="UTF-8"/><meta data-react-helmet="true" name="description" content="Eclipse - Successor of the deprecated Fabric8 Maven Plugin"/><style type="text/css">
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><style data-href="/jkube/styles.5c9b852c43e28f117cb7.css" id="gatsby-global-css">@import url(https://fonts.googleapis.com/css?family=Libre+Franklin:100,300,400,600,700,|Roboto:300,400,500,700|Jura);@import url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css);@import url(https://unpkg.com/@coreui/icons/css/brand.min.css);code[class*=language-],pre[class*=language-]{color:#657b83;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-ms-hyphens:none;hyphens:none}code[class*=language-]::selection,code[class*=language-] ::selection,pre[class*=language-]::selection,pre[class*=language-] ::selection{background:#073642}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;border-radius:.3em}:not(pre)>code[class*=language-],pre[class*=language-]{background-color:#fdf6e3}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#93a1a1}.token.punctuation{color:#586e75}.token.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#268bd2}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string,.token.url{color:#2aa198}.token.entity{color:#657b83;background:#eee8d5}.token.atrule,.token.attr-value,.token.keyword{color:#859900}.token.class-name,.token.function{color:#b58900}.token.important,.token.regex,.token.variable{color:#cb4b16}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body,html{font-family:Libre Franklin,Roboto,sans-serif}body{margin:0;padding:0;outline:0;background:#f1f2f2;font-size:16px;color:#222}h1{font-size:3rem}h1,h2{margin-top:0;font-family:Roboto,sans-serif;font-weight:300}h2{font-size:2rem}h3{font-size:1.5rem;font-weight:300}a{color:#525c86}a:focus,a:hover{color:#222}.eclipse-jkube-footer{padding:16px;border-top:10px solid #222;background-color:#292c2f;font-size:19.2px;font-family:Roboto,sans-serif;font-weight:300;line-height:1.5}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube{display:flex;flex-direction:column;max-width:1170px;margin:0 auto 16px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-image{width:160px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-tagline{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links{max-width:1170px;margin:0 auto 16px;display:flex;flex-wrap:wrap}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list{padding:0;margin:0 48px 16px 0;list-style:none}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a{transition:color .1s linear;color:#f1f2f2}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a,.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a:hover{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a:hover{color:#525c86}.eclipse-jkube-footer .eclipse-jkube-footer__links a{text-decoration:none}.eclipse-jkube-footer .eclipse-jkube-footer__copyright{max-width:1170px;margin:0 auto 16px;font-family:Roboto,sans-serif;color:#939598}.eclipse-jkube__header{display:block;position:relative;height:175px;background-color:#292c2f}@media (min-width:700px){.eclipse-jkube__header{height:105px}}.eclipse-jkube__header .eclipse-jkube__header-trade-mark{font-size:.5em;font-size:.3em;line-height:2.5;vertical-align:top}.eclipse-jkube__header .eclipse-jkube__header-container{position:relative;margin:0 auto;padding:0 16px;height:100%;max-width:1170px}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-container{display:flex;flex-wrap:nowrap;height:105px}}.eclipse-jkube__header .eclipse-jkube__header-logo{display:flex;justify-content:center;align-items:center;font-size:32px;font-weight:400;color:#f1f2f2}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo{font-size:50px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:65px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:90px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image img{max-height:100%;max-width:100%}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:50px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:65px}}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube-image{height:100%}.eclipse-jkube__header .eclipse-jkube__header-logo:hover{color:#f1f2f2}.eclipse-jkube__header .eclipse-jkube__header-content{flex:1 0;min-width:1px;display:flex;justify-content:center;align-items:center}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-content{justify-content:flex-end}}.eclipse-jkube__header .eclipse-jkube__header-content ul{display:flex;flex-wrap:wrap;align-items:center;justify-content:center}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-content ul{justify-content:flex-start}}.eclipse-jkube__header .eclipse-jkube__header-content ul li{margin:4px 0;padding-right:16px;list-style:none;color:#f1f2f2;font-size:20px}.eclipse-jkube__header .eclipse-jkube__header-content .eclipse-jkube__header-stars{display:block;width:85px;height:20px;line-height:20px}.eclipse-jkube__header a{color:#f1f2f2;text-decoration:none}.eclipse-jkube__header a:hover{color:#dd8623;transition:color .3s}.quick-start-card{border:1px solid #d6d6d6;padding:16px}.quick-start-card .quick-start-card__title{margin:0;padding:0}.quick-start-card .quick-start-card__title a{text-decoration:none}.quick-start-card .quick-start-card__title a:active,.quick-start-card .quick-start-card__title a:hover{text-decoration:underline}.quick-start-card .quick-start-card__technologies{margin:16px 0 0;padding:0}.quick-start-card .quick-start-card__technologies-item{display:inline-flex;align-items:center;padding:.25rem .3rem;border-radius:.2rem;font-size:.8rem;margin:0 0 .5rem;background:#dd8623;color:#222}.quick-start-card .quick-start-card__technologies-item:not(:last-child){margin-right:.5rem}.quick-start-card .quick-start-card__technologies-item-icon{display:inline-block;height:.8rem;margin-right:.2rem}.quick-start-card .quick-start-card__description p{margin-top:0}.quick-start-card .quick-start-card__links a{display:inline-block;text-decoration:none;padding:.3rem .5rem;border-radius:.2rem;border:1px solid #d6d6d6;background:#d6d6d6;color:#222}.quick-start-card .quick-start-card__links a:active,.quick-start-card .quick-start-card__links a:hover{background-color:#f1f2f2}.eclipse-jkube{display:flex;flex-direction:column;min-height:100vh}.eclipse-jkube__main{flex:1 1}@media (min-width:1170px){.eclipse-jkube__main{overflow-x:hidden}}.eclipse-jkube__main .eclipse-jkube__content{margin:0 16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content{max-width:1154px;margin:0 auto}}.eclipse-jkube__main .eclipse-jkube__content img{max-width:100%}.eclipse-jkube__main .eclipse-jkube__content :not(pre)>code[class*=language-],.eclipse-jkube__main .eclipse-jkube__content pre[class*=language-]{background-color:transparent}.eclipse-jkube__main .eclipse-jkube__content .hero{margin:0 -16px 16px;display:block;background-color:#272727;background-image:url(/jkube/static/cubes-8e1e59c337437947105e6668f1f3790a.jpg);background-size:cover;color:#f1f2f2}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px;background-color:rgba(39,39,39,.7)}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px calc(50% - 585px)}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content .getting-involved{color:#f1f2f2;margin:0 -16px;padding:0 16px;display:flex;justify-content:flex-end}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content h1{font-size:2.5rem;font-family:Libre Franklin,Roboto,sans-serif;font-weight:400}.eclipse-jkube__main .eclipse-jkube__content .section-dark{background-color:#404040;color:#f1f2f2;margin:0 -16px;padding:16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;padding:16px calc(50% - 585px)}}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark>*{padding:0 calc(50% - 585px)}}.eclipse-jkube__main .eclipse-jkube__content .highlight{display:flex;align-items:center}.eclipse-jkube__main .eclipse-jkube__content .highlight>p{margin:16px 32px;display:none}@media (min-width:501px){.eclipse-jkube__main .eclipse-jkube__content .highlight>p{display:block}}.eclipse-jkube__main .eclipse-jkube__content .highlight>p img{max-width:100px}.eclipse-jkube__main .eclipse-jkube__content .highlight-description{flex:1 1;min-width:1px}.eclipse-jkube__main .eclipse-jkube__content .highlight ul{flex:1 1;min-width:1px;margin:0;padding:0}.eclipse-jkube__main .eclipse-jkube__content .highlight li{list-style:none;margin:16px 0}.eclipse-jkube__main .eclipse-jkube__content .calendar{position:relative;overflow:hidden;padding-bottom:75%;margin-bottom:16px}@media (min-width:666.66667px){.eclipse-jkube__main .eclipse-jkube__content .calendar{padding-bottom:0;height:500px}}.eclipse-jkube__main .eclipse-jkube__content .calendar iframe{position:absolute;top:0;height:100%;max-height:500px;width:100%}.eclipse-jkube__documentation{margin:0}@media screen and (min-width:768px){.eclipse-jkube__documentation{position:absolute;top:105px;bottom:0;width:100%;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content{position:relative;padding:16px;overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content article,.eclipse-jkube__documentation .eclipse-jkube__documentation-content aside,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figcaption,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure,.eclipse-jkube__documentation .eclipse-jkube__documentation-content footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content header,.eclipse-jkube__documentation .eclipse-jkube__documentation-content hgroup,.eclipse-jkube__documentation .eclipse-jkube__documentation-content main,.eclipse-jkube__documentation .eclipse-jkube__documentation-content nav,.eclipse-jkube__documentation .eclipse-jkube__documentation-content section{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio,.eclipse-jkube__documentation .eclipse-jkube__documentation-content video{display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio:not([controls]){display:none;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus{outline:thin dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{outline:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2em;margin:.67em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]{border-bottom:1px dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dfn{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{box-sizing:content-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content mark{background:#ff0;color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content samp{font-family:monospace;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{white-space:pre-wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content q{quotes:"\201C" "\201D" "\2018" "\2019"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub{bottom:-.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg:not(:root){overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure{margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content legend{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select,.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{font-family:inherit;font-size:100%;margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input{line-height:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[type=button],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=reset],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=submit]{-webkit-appearance:button;cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button[disabled],.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[disabled]{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=checkbox],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=radio]{box-sizing:border-box;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button::-moz-focus-inner,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input::-moz-focus-inner{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{overflow:auto;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{border-collapse:collapse;border-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content *,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :before{box-sizing:border-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body{background:#fff;color:rgba(0,0,0,.8);padding:0;margin:0;font-family:"Noto Serif","DejaVu Serif",serif;font-weight:400;font-style:normal;line-height:1;position:relative;cursor:auto;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{max-width:100%;height:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{height:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{-ms-interpolation-mode:bicubic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .left{float:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .right{float:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-left{text-align:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-right{text-align:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-center{text-align:center!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-justify{text-align:justify!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{display:inline-block;vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{height:auto;min-height:50px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .center{margin-left:auto;margin-right:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stretch{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .subheader,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{line-height:1.45;color:#7a2518;font-weight:400;margin-top:0;margin-bottom:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content div,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content form,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6,.eclipse-jkube__documentation .eclipse-jkube__documentation-content li,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin:0;padding:0;direction:ltr}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:#2156a5;text-decoration:underline;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{color:#1d4b8f}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{font-family:inherit;font-weight:400;font-size:1em;line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p aside{font-size:.875em;line-height:1.35;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-family:Open Sans,DejaVu Sans,sans-serif;font-weight:300;font-style:normal;color:#ba3925;text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:.5em;line-height:1.0125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 small{font-size:60%;color:#e99b8f;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5{font-size:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{border:solid #dddddf;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em,.eclipse-jkube__documentation .eclipse-jkube__documentation-content i{font-style:italic;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b,.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong{font-weight:700;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:60%;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;font-weight:400;color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{font-size:1em;line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ul{margin-left:1.25em;margin-bottom:0;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square li ul{list-style:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square{list-style-type:square}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle{list-style-type:circle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc{list-style-type:disc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ul{margin-left:1.25em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dt{margin-bottom:.3125em;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content acronym{text-transform:uppercase;font-size:90%;color:rgba(0,0,0,.8);border-bottom:1px dotted #ddd;cursor:help}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote{margin:0 0 1.25em;padding:.5625em 1.25em 0 1.1875em;border-left:1px solid #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite{display:block;font-size:.9375em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite:before{content:"\2014 "}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a:visited{color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote p{line-height:1.6;color:rgba(0,0,0,.85)}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:2.3125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4{font-size:1.4375em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{background:#fff;margin-bottom:1.25em;border:1px solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead{background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th{padding:.5em .625em .625em;font-size:inherit;color:rgba(0,0,0,.8);text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr th{padding:.5625em .625em;font-size:inherit;color:rgba(0,0,0,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.even{background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tbody tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td{display:table-cell;line-height:1.6}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2;word-spacing:-.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre):not([class^=L])>code{font-size:.9375em;font-style:normal!important;letter-spacing:0;padding:.1em .5ex;word-spacing:-.15em;background:#f7f7f8;border-radius:4px;line-height:1.45;text-rendering:optimizeSpeed;word-wrap:break-word}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nobreak{word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nowrap{white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{color:rgba(0,0,0,.9);font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;line-height:1.45;text-rendering:optimizeSpeed}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre pre{color:inherit;font-size:inherit;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre>code{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap pre{white-space:pre;word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em em{font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq{color:rgba(51,51,51,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;display:inline-block;color:rgba(0,0,0,.8);font-size:.65em;line-height:1.45;background:#f7f7f7;border:1px solid #ccc;border-radius:3px;box-shadow:0 1px 0 rgba(0,0,0,.2),inset 0 0 0 .1em #fff;margin:0 .15em;padding:.2em .5em;vertical-align:middle;position:relative;top:-.1em;white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:first-child{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:last-child{margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b:not(.caret){font-weight:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{word-spacing:-.02em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b.caret{font-size:1.25em;line-height:.8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq i.caret{font-weight:700;text-align:center;width:.45em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{position:relative;top:-1px;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{content:"[";padding:0 3px 0 2px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after{content:"]";padding:0 2px 0 3px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p a>code:hover{color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{width:100%;margin:0 auto;max-width:62.5em;*zoom:1;position:relative;padding-left:.9375em;padding-right:.9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-top:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before{content:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{color:rgba(0,0,0,.85);margin-top:2.25rem;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child+#toc{margin-top:8px;border-top:1px solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:only-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #dddddf;padding-bottom:8px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details{border-bottom:1px solid #dddddf;line-height:1.45;padding-top:.25em;padding-bottom:.25em;padding-left:.25em;color:rgba(0,0,0,.6);display:flex;flex-flow:row wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span:first-child{margin-left:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span.email a{color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span:before{content:"\A0\2013\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span.author:before{content:"\A0\22C5\A0";color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span#revremark:before{content:"\A0|\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber{text-transform:capitalize}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber:after{content:"\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content>h1:first-child:not([class]){color:rgba(0,0,0,.85);border-bottom:1px solid #dddddf;padding-bottom:8px;margin-top:0;padding-top:1rem;margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #e7e7e9;padding-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc>ul{margin-left:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0>li>a{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0 ul.sectlevel1{margin:.5em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul{font-family:Open Sans,DejaVu Sans,sans-serif;list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc li{line-height:1.3334;margin-top:.3334em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{color:#7a2518;font-size:1.2em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:15em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{margin-top:0!important;background:#f8f8f7;position:fixed;width:15em;left:0;top:0;border-right:1px solid #e7e7e9;border-top-width:0!important;border-bottom-width:0!important;z-index:1000;padding:1.25em 1em;height:100%;overflow:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{margin-top:0;margin-bottom:.8rem;font-size:1.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.9em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{margin-left:0;padding-left:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:.5em;margin-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:15em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right #toc.toc2{border-right-width:0;border-left:1px solid #e7e7e9;left:auto;right:0}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:20em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{width:20em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.95em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{padding-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:20em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc{border:1px solid #e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{max-width:100%;background:rgba(0,0,0,.8);padding:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:hsla(0,0%,100%,.8);line-height:1.44}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:.625em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:1.25em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1:last-child{padding-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border-top:1px solid #e7e7e9}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:before{content:"\A7";font-size:.85em;display:block;padding-top:.1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:hover{visibility:visible}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link{color:#ba3925;text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link:hover{color:#a53221}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content details>summary:first-of-type{cursor:pointer;display:list-item;outline:none;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{text-rendering:optimizeLegibility;text-align:left;font-family:"Noto Serif","DejaVu Serif",serif;font-size:1rem;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock.fit-content>caption.title{white-space:nowrap;width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #preamble>.sectionbody>[class=paragraph]:first-of-type p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph.lead>p{font-size:1.21875em;line-height:1.6;color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock #preamble>.sectionbody>[class=paragraph]:first-of-type p{font-size:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon{text-align:center;width:80px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon .title{font-weight:700;font-family:Open Sans,DejaVu Sans,sans-serif;text-transform:uppercase}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content{padding-left:1.125em;padding-right:1.25em;border-left:1px solid #dddddf;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{border:1px solid #e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#fff;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{border:1px solid #dbdbd6;margin-bottom:1.25em;padding:1.25em;background:#f3f3f2;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title{color:#7a2518;margin-top:0;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{border-radius:4px;word-wrap:break-word;overflow-x:auto;padding:1em;font-size:.8125em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:.90625em}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:1em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre:not(.highlight),.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class=highlight],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class^="highlight "],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock.output pre{color:#f7f7f8;background:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content{position:relative}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:none;content:attr(data-lang);position:absolute;font-size:.75em;top:.425rem;right:.5rem;line-height:1;text-transform:uppercase;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock:hover code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:before{content:attr(data-prompt);padding-right:.5em;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:not([data-prompt]):before{content:"$"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs{padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs>code{padding:1em;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.prettyprint{border-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .prettyprint{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint .linenums{line-height:1.45;margin-left:2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li{background:none;list-style-type:inherit;padding-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li code[data-lang]:before{opacity:1}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li:not(:first-child) code[data-lang]:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable{border-collapse:separate;border:0;margin-bottom:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td[class]{color:inherit;vertical-align:top;padding:0;line-height:inherit;white-space:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.code{padding-left:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.linenos{border-right:1px solid;opacity:.35;padding-right:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno{border-right:1px solid;opacity:.35;display:inline-block;margin-right:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno:before{content:"";margin-right:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock{margin:0 1em 1.25em 1.5em;display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock:not(.excerpt)>.title{margin-left:-1.5em;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock p{color:rgba(0,0,0,.85);font-size:1.15rem;line-height:1.75;word-spacing:.1em;letter-spacing:0;font-style:italic;text-align:justify}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote{margin:0;padding:0;border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote:before{content:"\201C";float:left;font-size:2.75em;font-weight:700;line-height:.6em;margin-left:-.6em;color:#7a2518;text-shadow:0 1px 2px rgba(0,0,0,.1)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote>.paragraph:last-child p{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution{margin-top:.75em;margin-right:.5ex;text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock{margin:0 1em 1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre{font-family:Open Sans,DejaVu Sans,sans;font-size:1.15rem;color:rgba(0,0,0,.85);font-weight:300;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{margin-top:1.25rem;margin-left:.5ex}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{font-size:.9375em;line-height:1.45;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution br,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution cite,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution cite{display:block;letter-spacing:-.025em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{line-height:1.6;word-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract{margin:0 1em 1.25em;display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract>.title{margin:0 0 .375em;font-size:1.15em;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt>blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{padding:0 0 .25em 1em;border-left:.25em solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{color:inherit;font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock .attribution{color:inherit;text-align:left;margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock{max-width:100%;border-collapse:separate}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child{margin-bottom:-1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child.sidebarblock{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{border:0 solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead>tr>.tableblock{border-width:0 1px 1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tfoot>tr>.tableblock{border-width:1px 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock{border-width:0 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead>tr>.tableblock{border-width:0 0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tfoot>tr>.tableblock{border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>*>tr>.tableblock:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock:last-child{border-right-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead:last-child>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead:last-child>tr>.tableblock{border-bottom-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-all{border-width:1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-sides{border-width:0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-ends,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-topbot{border-width:1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-all tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-even tr:nth-of-type(2n),.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-hover tr:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-odd tr:nth-of-type(odd){background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-left{text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-right,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-right{text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-center,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-center{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-top,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-top{vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-bottom,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-bottom{vertical-align:bottom}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-middle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-middle{vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead th{font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th{display:table-cell;line-height:1.6;background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th p{color:rgba(0,0,0,.8);font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock>code:only-child{background:none;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol{margin-left:1.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-left:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul dd{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-check-square-o:first-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-square-o:first-child{width:1.25em;font-size:.8em;position:relative;bottom:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>input[type=checkbox]:first-child{margin-right:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline{display:flex;flex-flow:row wrap;list-style:none;margin:0 0 .625em -1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline>li{margin-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .unstyled dl dt{font-weight:400;font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.arabic{list-style-type:decimal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.decimal{list-style-type:decimal-leading-zero}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.loweralpha{list-style-type:lower-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperalpha{list-style-type:upper-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowerroman{list-style-type:lower-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperroman{list-style-type:upper-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowergreek{list-style-type:lower-greek}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table{border:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table>tbody>tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table>tbody>tr{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist2{vertical-align:top;padding:0 .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1{font-weight:700;padding-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock+.colist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock+.colist{margin-top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child{padding:.4em .75em 0;line-height:1;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):last-child{padding:.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .thumb{line-height:0;display:inline-block;border:4px solid #fff;box-shadow:0 0 0 1px #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.left{margin:.25em .625em 1.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.right{margin:.25em 0 1.25em .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb{border-width:6px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb>.title{padding:0 .125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-top:.25em;margin-bottom:.25em;display:inline-block;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left{margin-right:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image{text-decoration:none;display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image object{pointer-events:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref{font-size:.875em;position:static;vertical-align:super}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 .75em;border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote{padding:0 .375em 0 .225em;line-height:1.3334;font-size:.875em;margin-left:1.2em;margin-bottom:.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote a:first-of-type{font-weight:700;text-decoration:none;margin-left:-1.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote:last-of-type{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table{border:0;background:#fff;width:100%;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table td.line-data{width:99%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.unbreakable{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .big{font-size:larger}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .small{font-size:smaller}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .underline{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .overline{text-decoration:overline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .line-through{text-decoration:line-through}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua{color:#00bfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua-background{background:#00fafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black-background{background:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue{color:#0000bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue-background{background:#0000fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia{color:#bf00bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia-background{background:#fa00fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray{color:#606060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray-background{background:#7d7d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green{color:#006000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green-background{background:#007d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime{color:#00bf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime-background{background:#00fa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon{color:#600000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon-background{background:#7d0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy{color:#000060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy-background{background:#00007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive{color:#606000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive-background{background:#7d7d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple{color:#600060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple-background{background:#7d007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red{color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red-background{background:#fa0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver{color:#909090}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver-background{background:#bcbcbc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal{color:#006060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal-background{background:#007d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white{color:#bfbfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white-background{background:#fafafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow{color:#bfbf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow-background{background:#fafa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.icon>.fa{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a span.icon>.fa{cursor:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;text-shadow:1px 1px 2px rgba(0,0,0,.5);cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-note:before{content:"\F05A";color:#19407c}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-tip:before{content:"\F0EB";text-shadow:1px 1px 2px rgba(155,155,0,.8);color:#111}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-warning:before{content:"\F071";color:#bf6900}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-caution:before{content:"\F06D";color:#bf3400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-important:before{content:"\F06A";color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]{display:inline-block;color:#fff!important;background:rgba(0,0,0,.8);border-radius:100px;text-align:center;font-size:.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:Open Sans,DejaVu Sans,sans-serif;font-style:normal;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value] *{color:#fff!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]+b{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]:after{content:attr(data-value)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre .conum[data-value]{position:relative;top:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.conum *{color:inherit!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum:not([data-value]):empty{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{letter-spacing:-.01em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content strong{letter-spacing:-.005em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{background:#fffef7;border-color:#e0e0dc;box-shadow:0 1px 4px #e0e0dc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:none!important}@page{.eclipse-jkube__documentation .eclipse-jkube__documentation-content{margin:1.25cm .75cm}}@media print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content *{box-shadow:none!important;text-shadow:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:inherit!important;text-decoration:underline!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.bare,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="#"],.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="mailto:"]{text-decoration:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="http:"]:not(.bare):after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="https:"]:not(.bare):after{content:"(" attr(href) ")";display:inline-block;font-size:.875em;padding-left:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]:after{content:" (" attr(title) ")"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tr{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content thead{display:table-header-group}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{max-width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1em;orphans:3;widows:3}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{page-break-after:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{background:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #dddddf!important;padding-bottom:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details{border:0!important;display:block;padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details span:first-child{margin-left:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br+span:before{content:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #preamble,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book .sect1>h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book h1.sect0{page-break-before:always}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{padding:0 .9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-on-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:block!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-for-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .show-for-print{display:inherit!important}}@media amzn-kf8,print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{margin-top:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:rgba(0,0,0,.6);font-size:.9em}}@media amzn-kf8{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{padding:0}}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content{padding-left:21em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .toc{position:fixed;width:20em;left:0;top:105px;bottom:0;z-index:1000;padding:0 16px;border-right:1px solid #efefed;border-top-width:0!important;border-bottom-width:0!important;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content i.fa{font-style:normal}.eclipse-jkube__quickstarts{padding:0}.eclipse-jkube__quickstarts-item{list-style:none}.eclipse-jkube__quickstarts-item:not(:last-child){margin-bottom:16px}</style><meta name="generator" content="Gatsby 2.30.1"/><title data-react-helmet="true">Eclipse JKube - Successor of the deprecated Fabric8 Maven Plugin</title><meta data-react-helmet="true" charSet="UTF-8"/><meta data-react-helmet="true" name="description" content="Eclipse - Successor of the deprecated Fabric8 Maven Plugin"/><style type="text/css">
.anchor.before {
position: absolute;
top: 0;
@@ -48,7 +48,7 @@
}
}
})
- </script><link as="script" rel="preload" href="/jkube/webpack-runtime-5e7a06a902090b1f37ba.js"/><link as="script" rel="preload" href="/jkube/framework-fd2b85530eec85104a39.js"/><link as="script" rel="preload" href="/jkube/app-d7398b08e923fe8a3caa.js"/><link as="script" rel="preload" href="/jkube/styles-c2fe8482057191dca484.js"/><link as="script" rel="preload" href="/jkube/commons-8b827618f0536ebfeda2.js"/><link as="script" rel="preload" href="/jkube/component---src-templates-main-jsx-456568a5c9ae2c9095ee.js"/><link as="fetch" rel="preload" href="/jkube/page-data/index/page-data.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/jkube/page-data/app-data.json" crossorigin="anonymous"/></head><body><div id="___gatsby"><div style="outline:none" tabindex="-1" id="gatsby-focus-wrapper"><div class="eclipse-jkube"><header class="eclipse-jkube__header"><div class="eclipse-jkube__header-container"><a aria-current="page" class="eclipse-jkube__header-logo" href="/jkube/"><div class="eclipse-jkube__header-logo-eclipse-image"><img src="/jkube/static/EF_WHT-OR_png-d0fd43ad31261ee9693a060be920e71e.png" alt="Eclipse Foundation"/></div><div class="eclipse-jkube__header-logo-jkube"><img class="eclipse-jkube__header-logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/><span class="eclipse-jkube__header-trade-mark">™</span></div></a><div class="eclipse-jkube__header-content"><ul><li><a href="/jkube/docs">Docs</a></li><li><a href="/jkube/demos">Demos</a></li><li><a href="/jkube/community">Community</a></li><li><a href="/jkube/contributing">Contributing</a></li><li><a class="eclipse-jkube__header-stars" href="https://github.com/eclipse/jkube" title="eclipse/jkube" target="_blank" rel="nofollow noopener noreferrer"><img src="https://img.shields.io/github/stars/eclipse/jkube?style=social" alt="eclipse/jkube stargazers"/></a></li></ul></div></div></header><div class="eclipse-jkube__main"><div class="eclipse-jkube__content"><div class="hero">
+ </script><link as="script" rel="preload" href="/jkube/webpack-runtime-b52c77882f7d7b54b2b3.js"/><link as="script" rel="preload" href="/jkube/framework-5e01c8af6b1735c9eaa3.js"/><link as="script" rel="preload" href="/jkube/app-59faa9989d677dd59195.js"/><link as="script" rel="preload" href="/jkube/styles-e9d24b1846c7d6eb9685.js"/><link as="script" rel="preload" href="/jkube/commons-ee34cd715ab4f7da30e0.js"/><link as="script" rel="preload" href="/jkube/component---src-templates-main-jsx-8853cf342e1cf1bead5c.js"/><link as="fetch" rel="preload" href="/jkube/page-data/index/page-data.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/jkube/page-data/app-data.json" crossorigin="anonymous"/></head><body><div id="___gatsby"><div style="outline:none" tabindex="-1" id="gatsby-focus-wrapper"><div class="eclipse-jkube"><header class="eclipse-jkube__header"><div class="eclipse-jkube__header-container"><a aria-current="page" class="eclipse-jkube__header-logo" href="/jkube/"><div class="eclipse-jkube__header-logo-eclipse-image"><img src="/jkube/static/EF_WHT-OR_png-d0fd43ad31261ee9693a060be920e71e.png" alt="Eclipse Foundation"/></div><div class="eclipse-jkube__header-logo-jkube"><img class="eclipse-jkube__header-logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/><span class="eclipse-jkube__header-trade-mark">™</span></div></a><div class="eclipse-jkube__header-content"><ul><li><a href="/jkube/docs">Docs</a></li><li><a href="/jkube/demos">Demos</a></li><li><a href="/jkube/community">Community</a></li><li><a href="/jkube/contributing">Contributing</a></li><li><a class="eclipse-jkube__header-stars" href="https://github.com/eclipse/jkube" title="eclipse/jkube" target="_blank" rel="nofollow noopener noreferrer"><img src="https://img.shields.io/github/stars/eclipse/jkube?style=social" alt="eclipse/jkube stargazers"/></a></li></ul></div></div></header><div class="eclipse-jkube__main"><div class="eclipse-jkube__content"><div class="hero">
<div class="hero-content">
<div class="getting-involved">
<p><a href="https://twitter.com/jkubeio" target="_blank" rel="nofollow noopener noreferrer"><img src="https://img.shields.io/twitter/follow/jkubeio?label=Follow" alt="Twitter"></a>
@@ -108,4 +108,4 @@
</a>
<a href="https://download.eclipse.org/jkube/" target="_blank" rel="nofollow noopener noreferrer"><img src="https://img.shields.io/badge/eclipse%20downloads-downloads.eclipse.org-red" alt="Eclipse Download Repository">
</a></p>
-</div></div></div><div class="eclipse-jkube-footer"><div class="eclipse-jkube-footer__logo-jkube"><a aria-current="page" class="" href="/jkube/"><img class="eclipse-jkube-footer__logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/></a><span class="eclipse-jkube-footer__logo-jkube-tagline">Cloud-Native Java Applications without a hassle</span></div><div class="eclipse-jkube-footer__links"><ul class="eclipse-jkube-footer__links-list"><li><a href="/jkube/docs#getting-started">Get Started</a></li><li><a href="/jkube/docs">Docs</a></li><li><a href="/jkube/quickstarts">Quickstarts</a></li><li><a href="/jkube/docs#katacoda-courses">Katacoda Courses</a></li><li><a href="/jkube/demos">Demos</a></li></ul><ul class="eclipse-jkube-footer__links-list"><li><a href="/jkube/community">Community</a></li><li><a href="/jkube/community#planning-and-meetings">Get Involved</a></li><li><a href="/jkube/contributing">Contributing</a></li></ul><ul class="eclipse-jkube-footer__links-list"><li><a href="https://www.eclipse.org" target="_blank" rel="nofollow noopener noreferrer">Eclipse Foundation</a></li><li><a href="https://www.eclipse.org/legal/privacy.php" target="_blank" rel="nofollow noopener noreferrer">Privacy Policy</a></li><li><a href="https://www.eclipse.org/legal/termsofuse.php" target="_blank" rel="nofollow noopener noreferrer">Terms of Use</a></li><li><a href="https://www.eclipse.org/legal/copyright.php" target="_blank" rel="nofollow noopener noreferrer">Copyright Agent</a></li><li><a href="https://www.eclipse.org/legal" target="_blank" rel="nofollow noopener noreferrer">Legal Resources</a></li></ul></div><div class="eclipse-jkube-footer__copyright">Copyright © Eclipse Foundation 2020</div></div></div></div><div id="gatsby-announcer" style="position:absolute;top:0;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0" aria-live="assertive" aria-atomic="true"></div></div><script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/";/*]]>*/</script><script id="gatsby-chunk-mapping">/*<![CDATA[*/window.___chunkMapping={"polyfill":["/polyfill-88d9aed314b16f9b2adc.js"],"app":["/app-d7398b08e923fe8a3caa.js"],"component---src-pages-quickstarts-index-jsx":["/component---src-pages-quickstarts-index-jsx-a1e42093b41968828647.js"],"component---src-templates-doc-jsx":["/component---src-templates-doc-jsx-5366dbd1b50f3447a412.js"],"component---src-templates-main-jsx":["/component---src-templates-main-jsx-456568a5c9ae2c9095ee.js"]};/*]]>*/</script><script src="/jkube/polyfill-88d9aed314b16f9b2adc.js" nomodule=""></script><script src="/jkube/component---src-templates-main-jsx-456568a5c9ae2c9095ee.js" async=""></script><script src="/jkube/commons-8b827618f0536ebfeda2.js" async=""></script><script src="/jkube/styles-c2fe8482057191dca484.js" async=""></script><script src="/jkube/app-d7398b08e923fe8a3caa.js" async=""></script><script src="/jkube/framework-fd2b85530eec85104a39.js" async=""></script><script src="/jkube/webpack-runtime-5e7a06a902090b1f37ba.js" async=""></script></body></html>
\ No newline at end of file
+</div></div></div><div class="eclipse-jkube-footer"><div class="eclipse-jkube-footer__logo-jkube"><a aria-current="page" class="" href="/jkube/"><img class="eclipse-jkube-footer__logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/></a><span class="eclipse-jkube-footer__logo-jkube-tagline">Cloud-Native Java Applications without a hassle</span></div><div class="eclipse-jkube-footer__links"><ul class="eclipse-jkube-footer__links-list"><li><a href="/jkube/docs#getting-started">Get Started</a></li><li><a href="/jkube/docs">Docs</a></li><li><a href="/jkube/quickstarts">Quickstarts</a></li><li><a href="/jkube/docs#katacoda-courses">Katacoda Courses</a></li><li><a href="/jkube/demos">Demos</a></li></ul><ul class="eclipse-jkube-footer__links-list"><li><a href="/jkube/community">Community</a></li><li><a href="/jkube/community#planning-and-meetings">Get Involved</a></li><li><a href="/jkube/contributing">Contributing</a></li></ul><ul class="eclipse-jkube-footer__links-list"><li><a href="https://www.eclipse.org" target="_blank" rel="nofollow noopener noreferrer">Eclipse Foundation</a></li><li><a href="https://www.eclipse.org/legal/privacy.php" target="_blank" rel="nofollow noopener noreferrer">Privacy Policy</a></li><li><a href="https://www.eclipse.org/legal/termsofuse.php" target="_blank" rel="nofollow noopener noreferrer">Terms of Use</a></li><li><a href="https://www.eclipse.org/legal/copyright.php" target="_blank" rel="nofollow noopener noreferrer">Copyright Agent</a></li><li><a href="https://www.eclipse.org/legal" target="_blank" rel="nofollow noopener noreferrer">Legal Resources</a></li></ul></div><div class="eclipse-jkube-footer__copyright">Copyright © Eclipse Foundation 2020</div></div></div></div><div id="gatsby-announcer" style="position:absolute;top:0;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0" aria-live="assertive" aria-atomic="true"></div></div><script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/";/*]]>*/</script><script id="gatsby-chunk-mapping">/*<![CDATA[*/window.___chunkMapping={"polyfill":["/polyfill-e4957c11759bdfc149d9.js"],"app":["/app-59faa9989d677dd59195.js"],"component---src-pages-quickstarts-index-jsx":["/component---src-pages-quickstarts-index-jsx-8b53e5455e208a3e59b9.js"],"component---src-templates-doc-jsx":["/component---src-templates-doc-jsx-21a94bb36ef3df298f42.js"],"component---src-templates-main-jsx":["/component---src-templates-main-jsx-8853cf342e1cf1bead5c.js"]};/*]]>*/</script><script src="/jkube/polyfill-e4957c11759bdfc149d9.js" nomodule=""></script><script src="/jkube/component---src-templates-main-jsx-8853cf342e1cf1bead5c.js" async=""></script><script src="/jkube/commons-ee34cd715ab4f7da30e0.js" async=""></script><script src="/jkube/styles-e9d24b1846c7d6eb9685.js" async=""></script><script src="/jkube/app-59faa9989d677dd59195.js" async=""></script><script src="/jkube/framework-5e01c8af6b1735c9eaa3.js" async=""></script><script src="/jkube/webpack-runtime-b52c77882f7d7b54b2b3.js" async=""></script></body></html>
\ No newline at end of file
diff --git a/page-data/app-data.json b/page-data/app-data.json
index 16a50a6..5c08b43 100644
--- a/page-data/app-data.json
+++ b/page-data/app-data.json
@@ -1 +1 @@
-{"webpackCompilationHash":"cb0efa77472fd1c8afff"}
+{"webpackCompilationHash":"6724d8bc809e55e8bf43"}
diff --git a/page-data/docs/kubernetes-maven-plugin/page-data.json b/page-data/docs/kubernetes-maven-plugin/page-data.json
index 9d9a1fc..0414873 100644
--- a/page-data/docs/kubernetes-maven-plugin/page-data.json
+++ b/page-data/docs/kubernetes-maven-plugin/page-data.json
@@ -1 +1 @@
-{"componentChunkName":"component---src-templates-doc-jsx","path":"/docs/kubernetes-maven-plugin","result":{"data":{"asciidocCopy":{"html":"<div id=\"preamble\">\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>© 2020 The original authors.</p>\n</div>\n<div id=\"toc\" class=\"toc\">\n<div id=\"toctitle\" class=\"title\">kubernetes-maven-plugin</div>\n<ul class=\"sectlevel1\">\n<li><a href=\"#introduction\">1. Introduction</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#building-images\">1.1. Building Images</a></li>\n<li><a href=\"#resource-descriptors\">1.2. Kubernetes Resources</a></li>\n<li><a href=\"#_configuration\">1.3. Configuration</a></li>\n<li><a href=\"#_examples\">1.4. Examples</a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#zero-config\">1.4.1. Zero-Config</a></li>\n<li><a href=\"#_xml_configuration\">1.4.2. XML Configuration</a></li>\n<li><a href=\"#_resource_fragments\">1.4.3. Resource Fragments</a></li>\n</ul>\n</li>\n</ul>\n</li>\n<li><a href=\"#compatibility-with-Kubernetes\">2. Compatibility with Kubernetes</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#kubernetes-compatibility\">2.1. Kubernetes Compatibility</a></li>\n</ul>\n</li>\n<li><a href=\"#installation\">3. Installation</a></li>\n<li><a href=\"#goals\">4. Goals Overview</a></li>\n<li><a href=\"#goals-overview-build\">5. Build Goals</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#jkube:resource\">5.1. <strong>k8s:resource</strong></a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#resource-labels-annotations\">5.1.1. Labels and Annotations</a></li>\n<li><a href=\"#resource-secrets\">5.1.2. Secrets</a></li>\n<li><a href=\"#resource-validation\">5.1.3. Resource Validation</a></li>\n<li><a href=\"#Supported-Properties-Resource\">5.1.4. Supported Properties for Resource goal</a></li>\n</ul>\n</li>\n<li><a href=\"#jkube:build\">5.2. <strong>k8s:build</strong></a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#build-kubernetes\">5.2.1. Kubernetes Build</a></li>\n<li><a href=\"#build-goal-configuration\">5.2.2. Configuration (XML)</a></li>\n<li><a href=\"#_kubernetes_access_configuration\">5.2.3. Kubernetes Access Configuration</a></li>\n<li><a href=\"#_image_configuration\">5.2.4. Image Configuration</a></li>\n<li><a href=\"#build-configuration\">5.2.5. Build Configuration</a></li>\n<li><a href=\"#build-assembly\">5.2.6. Assembly</a></li>\n<li><a href=\"#misc-env\">5.2.7. Environment and Labels</a></li>\n<li><a href=\"#misc-startup\">5.2.8. Startup Arguments</a></li>\n<li><a href=\"#build-buildargs\">5.2.9. Build Args</a></li>\n<li><a href=\"#build-healthcheck\">5.2.10. Healthcheck</a></li>\n</ul>\n</li>\n<li><a href=\"#jkube:push\">5.3. <strong>k8s:push</strong></a></li>\n<li><a href=\"#jkube:apply\">5.4. <strong>k8s:apply</strong></a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#Supported-Properties-Apply\">5.4.1. Supported Properties For Apply goal</a></li>\n</ul>\n</li>\n<li><a href=\"#jkube:helm\">5.5. <strong>k8s:helm</strong></a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#helm-multi-module\">5.5.1. Multi-module projects</a></li>\n</ul>\n</li>\n</ul>\n</li>\n<li><a href=\"#goals-overview-develop\">6. Development Goals</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#jkube:deploy\">6.1. <strong>k8s:deploy</strong></a></li>\n<li><a href=\"#jkube:undeploy\">6.2. <strong>k8s:undeploy</strong></a></li>\n<li><a href=\"#jkube:log\">6.3. <strong>k8s:log</strong></a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#Supported-Properties-Log\">6.3.1. Supported Properties for Log goal</a></li>\n</ul>\n</li>\n<li><a href=\"#jkube:debug\">6.4. <strong>k8s:debug</strong></a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#_speeding_up_debugging\">6.4.1. Speeding up debugging</a></li>\n<li><a href=\"#_debugging_with_suspension\">6.4.2. Debugging with suspension</a></li>\n<li><a href=\"#Supported-Properties-Debug\">6.4.3. Supported Properties For Debug Goal</a></li>\n</ul>\n</li>\n<li><a href=\"#jkube:watch\">6.5. <strong>k8s:watch</strong></a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#watcher-spring-boot\">6.5.1. Spring Boot</a></li>\n<li><a href=\"#watcher-docker-image\">6.5.2. Docker Image</a></li>\n<li><a href=\"#Supported-Properties-Watch\">6.5.3. Supported Properties for Watch goal</a></li>\n</ul>\n</li>\n</ul>\n</li>\n<li><a href=\"#generators\">7. Generators</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#generators-default\">7.1. Default Generators</a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#generator-java-exec\">7.1.1. Java Applications</a></li>\n<li><a href=\"#generator-spring-boot\">7.1.2. Spring Boot</a></li>\n<li><a href=\"#generator-wildfly-swarm\">7.1.3. Wildfly Swarm</a></li>\n<li><a href=\"#generator-thorntail-v2\">7.1.4. Thorntail v2</a></li>\n<li><a href=\"#generator-vertx\">7.1.5. Vert.x</a></li>\n<li><a href=\"#generator-karaf\">7.1.6. Karaf</a></li>\n<li><a href=\"#generator-webapp\">7.1.7. Web Applications</a></li>\n<li><a href=\"#generator-quarkus\">7.1.8. Quarkus</a></li>\n<li><a href=\"#generator-openliberty\">7.1.9. Open Liberty</a></li>\n<li><a href=\"#generator-wildfly-jar\">7.1.10. Wildfly JAR Generator</a></li>\n</ul>\n</li>\n<li><a href=\"#generators-api\">7.2. Generator API</a></li>\n</ul>\n</li>\n<li><a href=\"#enrichers\">8. Enrichers</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#enrichers-default\">8.1. Default Enrichers</a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#enrichers-generic\">8.1.1. Generic Enrichers</a></li>\n<li><a href=\"#enrichers-specific\">8.1.2. Specific Enrichers</a></li>\n</ul>\n</li>\n<li><a href=\"#_enricher_api\">8.2. Enricher API</a></li>\n</ul>\n</li>\n<li><a href=\"#profiles\">9. Profiles</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#generator-enricher-definition\">9.1. Generator and Enricher definitions</a></li>\n<li><a href=\"#profiles-lookup-order\">9.2. Lookup order</a></li>\n<li><a href=\"#profiles-using\">9.3. Using Profiles</a></li>\n<li><a href=\"#profiles-predefined\">9.4. Predefined Profiles</a></li>\n<li><a href=\"#profiles-extended\">9.5. Extending Profiles</a></li>\n</ul>\n</li>\n<li><a href=\"#access-configuration\">10. Access configuration</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#_docker_access\">10.1. Docker Access</a></li>\n<li><a href=\"#_openshift_and_kubernetes_access\">10.2. OpenShift and Kubernetes Access</a></li>\n</ul>\n</li>\n<li><a href=\"#registry\">11. Registry handling</a></li>\n<li><a href=\"#authentication\">12. Authentication</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#_pull_vs_push_authentication\">12.1. Pull vs. Push Authentication</a></li>\n<li><a href=\"#_openshift_authentication\">12.2. OpenShift Authentication</a></li>\n<li><a href=\"#password-encryption\">12.3. Password encryption</a></li>\n<li><a href=\"#extended-authentication\">12.4. Extended Authentication</a></li>\n</ul>\n</li>\n<li><a href=\"#volume-configuration\">13. Volume Configuration</a></li>\n<li><a href=\"#integrations\">14. Integrations</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#integrations.dekorate\">14.1. Dekorate</a></li>\n<li><a href=\"#_jib_java_image_builder\">14.2. JIB (Java Image Builder)</a></li>\n</ul>\n</li>\n<li><a href=\"#faq\">15. FAQ</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#_general_questions\">15.1. General questions</a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#_how_do_i_define_an_environment_variable\">15.1.1. How do I define an environment variable?</a></li>\n<li><a href=\"#_how_do_i_define_a_system_property\">15.1.2. How do I define a system property?</a></li>\n<li><a href=\"#_how_do_i_mount_a_config_file_from_a_configmap\">15.1.3. How do I mount a config file from a ConfigMap?</a></li>\n<li><a href=\"#_how_do_i_use_a_persistent_volume\">15.1.4. How do I use a Persistent Volume?</a></li>\n<li><a href=\"#_how_do_i_generate_ingress_for_my_generated_service\">15.1.5. How do I generate Ingress for my generated Service?</a></li>\n</ul>\n</li>\n</ul>\n</li>\n<li><a href=\"#appendix\">16. Appendix</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#_kindfilename_type_mapping\">16.1. Kind/Filename Type Mapping</a></li>\n<li><a href=\"#_custom_kindfilename_mapping\">16.2. Custom Kind/Filename Mapping</a></li>\n</ul>\n</li>\n</ul>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"introduction\">1. Introduction</h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>The <strong>kubernetes-maven-plugin</strong> brings your Java applications on to\n<a href=\"http://kubernetes.io/\">Kubernetes</a>.\nIt provides a tight integration into <a href=\"http://maven.apache.org\">Maven</a> and benefits from the build configuration already provided.\nThis plugin focus on two tasks: <em>Building Docker images</em> and <em>creating Kubernetes resource descriptors</em>.\nIt can be configured very flexibly and supports multiple configuration models for creating: A <em>Zero-Config</em> setup allows for a quick ramp-up with some opinionated defaults.\nFor more advanced requirements, an <em>XML configuration</em> provides additional configuration options which can be added to the <code>pom.xml</code>.\nFor the full power, in order to tune all facets of the creation, external <em>resource fragments</em> and <em>Dockerfiles</em> can be used.</p>\n</div>\n<div class=\"sect2\">\n<h3 id=\"building-images\">1.1. Building Images</h3>\n<div class=\"paragraph\">\n<p>The <a href=\"#jkube:build\"><strong>k8s:build</strong></a> goal is for creating Docker images containing the actual application. These then can be deployed later on Kubernetes or OpenShift.\nIt is easy to include build artifacts and their dependencies into these images.\nThis plugin uses the assembly descriptor format similar to the one used in\n<a href=\"http://maven.apache.org/plugins/maven-assembly-plugin/\">maven-assembly-plugin</a> to specify the content which will be added\nto the image.\nThat images can then be pushed to public or private Docker registries with <a href=\"#jkube:push\"><strong>k8s:push</strong></a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>Depending on the operational mode, for building the actual image either a Docker daemon is used directly or an <a href=\"https://docs.openshift.com/enterprise/3.0/architecture/core_concepts/builds_and_image_streams.html#docker-build\">OpenShift Docker Build</a> is performed.</p>\n</div>\n<div class=\"paragraph\">\n<p>A special <a href=\"#jkube:watch\"><strong>k8s:watch</strong></a> goal allows for reacting to code changes to automatically recreate images or copy new artifacts into running containers.</p>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"resource-descriptors\">1.2. Kubernetes Resources</h3>\n<div class=\"paragraph\">\n<p>Kubernetes resource descriptors can be created or generated from <a href=\"#jkube:resource\"><strong>k8s:resource</strong></a>.\nThese files are packaged within the Maven artifacts and can be deployed to a running orchestration platform with <a href=\"#jkube:apply\"><strong>k8s:apply</strong></a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>Typically you only specify a small part of the real resource descriptors which will be enriched by this plugin with various extra information taken from the <code>pom.xml</code>.\nThis drastically reduces boilerplate code for common scenarios.</p>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"_configuration\">1.3. Configuration</h3>\n<div class=\"paragraph\">\n<p>As mentioned already there are three levels of configuration:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><strong>Zero-Config</strong> mode makes some very opinionated decisions based on what is present in the pom.xml like what base image to use or which ports to expose.\nThis is great for starting up things and for keeping quickstart applications small and tidy.</p>\n</li>\n<li>\n<p><strong>XML plugin configuration</strong> mode is similar to what <a href=\"https://dmp.fabric8.io/#example\">docker-maven-plugin</a> provides.\nThis allows for type-safe configuration with IDE support, but only a subset of possible resource descriptor features is provided.</p>\n</li>\n<li>\n<p><strong>Kubernetes & OpenShift resource fragments</strong> are user provided YAML files that can be <em>enriched</em> by the plugin. This allows expert users to use a plain configuration file with all their capabilities, but also to add project specific build information and avoid boilerplate code.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>The following table gives an overview of the different models</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 1. Configuration Models</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 50%;\">\n<col style=\"width: 37.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Model</th>\n<th class=\"tableblock halign-left valign-top\">Docker Images</th>\n<th class=\"tableblock halign-left valign-top\">Resource Descriptors</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>Zero-Config</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generators\">Generators</a> are used to create Docker image configurations. Generators can detect certain aspects of\n the build (e.g. whether Spring Boot is used) and then choose some opinionated defaults like the base image, which\n ports to expose and the startup command. They can be configured, but offer only a few options.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Default <a href=\"#enrichers\">Enrichers</a> will create a default <em>Service</em> and <em>Deployment</em> (<em>DeploymentConfig</em> for OpenShift)\n when no other resource objects are provided. Depending on the image they can detect which port to expose in the\n service. As with Generators, Enrichers support a limited set of configuration options.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>XML configuration</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">kubernetes-maven-plugin inherits the XML based configuration for building images from the\n <a href=\"https://dmp.fabric8.io/#docker:build\">docker-maven-plugin</a> and provides the same functionality. It supports an\n <a href=\"http://maven.apache.org/components/plugins/maven-assembly-plugin/assembly.html\">assembly descriptor</a> for specifying the\n content of the Docker image.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A subset of possible resource objects can be configured with a dedicated XML syntax. With a decent IDE you get\n autocompletion on most objects and inline documentation for the available configuration elements. The provided\n configuration can be still enhanced by Enhancers which is useful for adding e.g. labels and annotations containing\n build or other information.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>Resource Fragments</strong> and <strong>Dockerfiles</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Similarly to the docker-maven-plugin, kubernetes-maven-plugin supports <a href=\"#external-dockerfile\">external Dockerfiles</a> too, which are\n referenced from the plugin configuration.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Resource descriptors can be provided as external YAML files which will build a base skeleton for the applicable resource.</p>\n<p class=\"tableblock\"> The \"skeleton\" is then post-processed by <a href=\"#enrichers\">Enrichers</a> which will complete the skeleton by adding the fields\n each enricher is responsible of (labels, annotations, port information, etc.). Maven properties within these files\n are resolved to their values.</p>\n<p class=\"tableblock\"> With this model you can use every Kubernetes / OpenShift resource objects with all their flexibility, but still get the benefit\n of adding build information.</p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect2\">\n<h3 id=\"_examples\">1.4. Examples</h3>\n<div class=\"paragraph\">\n<p>Let’s have a look at some code. The following examples will demonstrate all three configurations variants:</p>\n</div>\n<div class=\"sect3\">\n<h4 id=\"zero-config\">1.4.1. Zero-Config</h4>\n<div class=\"paragraph\">\n<p>This minimal but full working example <code>pom.xml</code> shows how a simple spring boot application can be dockerized and\nprepared for Kubernetes. The full example can be found in directory\n<a href=\"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/zero-config\">quickstarts/maven/zero-config</a>.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><project>\n <modelVersion>4.0.0</modelVersion>\n\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>jkube-maven-sample-zero-config</artifactId>\n <version>1.0.2</version>\n <packaging>jar</packaging>\n\n <parent>\n <groupId>org.springframework.boot</groupId>\n <artifactId>spring-boot-starter-parent</artifactId> <i class=\"conum\" data-value=\"1\"></i><b>(1)</b>\n <version>1.5.5.RELEASE</version>\n </parent>\n\n <dependencies>\n <dependency>\n <groupId>org.springframework.boot</groupId>\n <artifactId>spring-boot-starter-web</artifactId> <i class=\"conum\" data-value=\"2\"></i><b>(2)</b>\n </dependency>\n </dependencies>\n\n <build>\n <plugins>\n <plugin>\n <groupId>org.springframework.boot</groupId>\n <artifactId>spring-boot-maven-plugin</artifactId> <i class=\"conum\" data-value=\"3\"></i><b>(3)</b>\n </plugin>\n <plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId> <i class=\"conum\" data-value=\"4\"></i><b>(4)</b>\n <version>1.0.2</version>\n </plugin>\n </plugins>\n </build>\n</project></code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td>This minimalistic spring boot application uses the spring-boot parent POM for setting up dependencies and plugins</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"2\"></i><b>2</b></td>\n<td>The Spring Boot web starter dependency enables a simple embedded Tomcat for serving Spring MVC apps</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"3\"></i><b>3</b></td>\n<td>The <code>spring-boot-maven-plugin</code> is responsible for repackaging the application into a fat jar, including all dependencies and the embedded Tomcat</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"4\"></i><b>4</b></td>\n<td>The <code>kubernetes-maven-plugin</code> enables the automatic generation of a Docker image and Kubernetes / OpenShift descriptors including this Spring application.</td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<p>This setup make some opinionated decisions for you:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>As base image <a href=\"https://quay.io/repository/jkube/jkube-java-binary-s2i\">jkube/jkube-java-binary-s2i</a>\nis chosen which enables <a href=\"https://www.jolokia.org\">Jolokia</a> and <a href=\"https://github.com/prometheus/jmx_exporter\">jmx_exporter</a>.\nIt also comes with a sophisticated <a href=\"https://github.com/jboss-openshift/cct_module/tree/master/jboss/container/java/run/bash\">startup script</a>.</p>\n</li>\n<li>\n<p>It will create a Kubernetes <a href=\"http://kubernetes.io/docs/user-guide/deployments/\">Deployment</a> and a\n<a href=\"http://kubernetes.io/docs/user-guide/services/\">Service</a> as resource objects</p>\n</li>\n<li>\n<p>It exports port 8080 as the application service port (and 8778 and 9779 for Jolokia and jmx_exporter access, respectively)</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>These choices can be influenced by configuration options as described in <a href=\"#generator-spring-boot\">Spring Boot Generator</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>To start the Docker image build, you simply run</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-bash\" data-lang=\"bash\">mvn package k8s:build</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This will create the Docker image against a running Docker daemon (which must be accessible either via Unix Socket or\nwith the URL set in <code>DOCKER_HOST</code>). Alternatively, when connected to an OpenShift cluster then a <a href=\"https://docs.openshift.com/enterprise/3.0/using_images/s2i_images/index.html\">S2I</a> build will be performed on OpenShift which at the end creates an\n<a href=\"https://docs.openshift.com/enterprise/3.1/architecture/core_concepts/builds_and_image_streams.html\">ImageStream</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>To deploy the resources to the cluster call</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-bash\" data-lang=\"bash\">mvn k8s:resource k8s:deploy</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>By default a <em>Service</em> and a <em>Deployment</em> object pointing to the created Docker image is created. When running in OpenShift mode, a <em>Service</em> and <em>DeploymentConfig</em> which refers the <em>ImageStream</em> created with <code>k8s:build</code> will be installed.</p>\n</div>\n<div class=\"paragraph\">\n<p>Of course you can bind all those jkube-goals to execution phases as well, so that they are called along with standard lifecycle goals like <code>install</code>. For example, to bind the building of the Kubernetes resource files and the Docker images, add the following goals to the execution of the kubernetes-maven-plugin:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example for lifecycle bindings</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n\n <!-- ... -->\n\n <executions>\n <execution>\n <goals>\n <goal>resource</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>If you’d also like to automatically deploy to Kubernetes each time you do a <code>mvn install</code> you can add the <code>apply</code> goal:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example for lifecycle bindings with automatic deploys for mvn install</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n\n <!-- ... -->\n\n <executions>\n <execution>\n <goals>\n <goal>resource</goal>\n <goal>build</goal>\n <goal>apply</goal>\n </goals>\n </execution>\n </executions>\n</plugin></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_xml_configuration\">1.4.2. XML Configuration</h4>\n<div class=\"admonitionblock warning\">\n<table>\n<tr>\n<td class=\"icon\">\n<i class=\"fa icon-warning\" title=\"Warning\"></i>\n</td>\n<td class=\"content\">\nXML based configuration is only partially implemented and is not recommended for use right now.\n</td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<p>Although the Zero-config mode and its generators can be tweaked with options up to a certain degree, many cases require more flexibility. For such instances, an XML-based plugin configuration can be used, in a way similar to the\n<a href=\"https://dmp.fabric8.io/#configuration\">XML configuration</a> used by <code>docker-maven-plugin</code>.</p>\n</div>\n<div class=\"paragraph\">\n<p>The plugin configuration can be roughly divided into the following sections:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Global configuration options are responsible for tuning the behaviour of plugin goals</p>\n</li>\n<li>\n<p><code><images></code> defines which Docker <a href=\"#image-configuration\">images</a> are used and configured. This section is similar to the\n<a href=\"https://dmp.fabric8.io//#image-configuration\">image configuration</a> of the <code>docker-maven-plugin</code>, except that <code><run></code>\nand <code><external></code> sub-elements are ignored)</p>\n</li>\n<li>\n<p><code><resource></code> defines the resource descriptors for deploying on an OpenShift or Kuberneres cluster.</p>\n</li>\n<li>\n<p><code><generator></code> configures <a href=\"#generators\">generators</a> which are responsible for creating images. Generators are used as an alternative to a dedicated <code><images></code> section.</p>\n</li>\n<li>\n<p><code><enricher></code> configures various aspects of <a href=\"#enrichers\">enrichers</a> for creating or enhancing resource descriptors.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>A working example can be found in the\n<a href=\"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/xml-config\">quickstarts/maven/xml-config</a> directory.\nAn extract of the plugin configuration is shown below:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example for an XML configuration</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><configuration>\n <namespace>test-ns</namespace>\n <images> <i class=\"conum\" data-value=\"1\"></i><b>(1)</b>\n <image>\n <name>xml-config-demo:1.0.0</name>\n <!-- \"alias\" is used to correlate to the containers in the pod spec -->\n <alias>camel-app</alias>\n <build>\n <from>fabric8/java-centos-openjdk8-jre</from>\n <assembly>\n <inline>\n <baseDirectory>/deployments</baseDirectory>\n </inline>\n </assembly>\n <env>\n <JAVA_LIB_DIR>/deployments</JAVA_LIB_DIR>\n <JAVA_MAIN_CLASS>org.apache.camel.cdi.Main</JAVA_MAIN_CLASS>\n </env>\n </build>\n </image>\n </images>\n\n <resources> <i class=\"conum\" data-value=\"2\"></i><b>(2)</b>\n <labels> <i class=\"conum\" data-value=\"3\"></i><b>(3)</b>\n <all>\n <group>quickstarts</group>\n </all>\n </labels>\n\n <replicas>2</replicas> <i class=\"conum\" data-value=\"4\"></i><b>(4)</b>\n <controllerName>${project.artifactId}</controllerName> <i class=\"conum\" data-value=\"5\"></i><b>(5)</b>\n\n <services> <i class=\"conum\" data-value=\"6\"></i><b>(6)</b>\n <service>\n <name>camel-service</name>\n <headless>true</headless>\n </service>\n </services>\n\n <serviceAccounts>\n <serviceAccount>\n <name>build-robot</name>\n </serviceAccount>\n </serviceAccounts>\n </resources>\n</configuration></code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td>Standard XML configuration for building one single Docker image</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"2\"></i><b>2</b></td>\n<td>Kubernetes / OpenShift resources to create</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"3\"></i><b>3</b></td>\n<td>Labels which should be applied globally to all resource objects</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"4\"></i><b>4</b></td>\n<td>Number of replicas desired</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"5\"></i><b>5</b></td>\n<td>Name of controller created by plugin</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"6\"></i><b>6</b></td>\n<td>One or more <a href=\"http://kubernetes.io/docs/user-guide/services/\">Service</a> definitions.</td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<p>The XML resource configuration is based on plain Kubernetes resource objects. When targeting OpenShift, Kubernetes resource descriptors will be automatically converted to their OpenShift counterparts, e.g. a Kubernetes <a href=\"http://kubernetes.io/docs/user-guide/deployments/\">Deployment</a> will be converted to an OpenShift <a href=\"https://docs.openshift.com/container-platform/4.1/applications/deployments/what-deployments-are.html#deployments-and-deploymentconfigs_what-deployments-are\">DeploymentConfig</a>.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_resource_fragments\">1.4.3. Resource Fragments</h4>\n<div class=\"paragraph\">\n<p>The third configuration option is to use an external configuration in form of YAML resource descriptors which are located in the <code>src/main/jkube</code> directory. Each resource gets its own file, which contains a skeleton of a resource descriptor. The plugin will pick up the resource, enrich it and then combine all to a single <code>kubernetes.yml</code> and <code>openshift.yml</code> file. Within these descriptor files you are can freely use any Kubernetes feature.</p>\n</div>\n<div class=\"paragraph\">\n<p>Note: In order to support simultaneously both OpenShift and Kubernetes, there is currently no way to specify OpenShift-only features this way, though this might change in future releases.</p>\n</div>\n<div class=\"paragraph\">\n<p>Let’s have a look at an example from\n<a href=\"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/external-resources\">quickstarts/maven/external-resources</a>.\nThis is a plain Spring Boot application, whose images are auto generated like in the <a href=\"#zero-config\">Zero-Config</a> case.\nThe resource fragments are in <code>src/main/jkube</code>.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example fragment \"deployment.yml\"</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">spec:\n replicas: 1\n template:\n spec:\n volumes:\n - name: config\n gitRepo:\n repository: 'https://github.com/jstrachan/sample-springboot-config.git'\n revision: 667ee4db6bc842b127825351e5c9bae5a4fb2147\n directory: .\n containers:\n - volumeMounts:\n - name: config\n mountPath: /app/config\n env:\n - name: KUBERNETES_NAMESPACE\n valueFrom:\n fieldRef:\n apiVersion: v1\n fieldPath: metadata.namespace\n serviceAccount: ribbon</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>As you can see, there is no <code>metadata</code> section as would be expected for Kubernetes resources because it will be automatically added by the <code>kubernetes-maven-plugin</code>. The object’s <code>Kind</code>, if not given, is automatically derived from the\nfilename. In this case, the <code>kubernetes-maven-plugin</code> will create a <code>Deployment</code> because the file is called <code>deployment.yml</code>. Similar mappings between file names and resource type exist for each supported resource kind, the\ncomplete list of which (along with associated abbreviations) can be found in the <a href=\"#appendix-kind-mapping\">Appendix</a>.</p>\n</div>\n<div class=\"admonitionblock note\">\n<table>\n<tr>\n<td class=\"icon\">\n<i class=\"fa icon-note\" title=\"Note\"></i>\n</td>\n<td class=\"content\">\nNow that sidecar containers are supported in this plugin(if <code>jkube.sidecar</code> is enabled), be careful whenever you’re supplying container name in the resource fragment. If container specified in resource fragment doesn’t have a name or it’s name is equal to default fmp generated application’s container name; it would not be treated as sidecar and it would be merged into main container. However, You can override plugin’s default name for main container via <code>jkube.generator.alias</code> property.\n</td>\n</tr>\n</table>\n</div>\n<hr>\n<div class=\"paragraph\">\n<p>Additionally, if you name your fragment using a name prefix followed by a dash and the mapped file name, the plugin will automatically use that name for your resource. So, for example, if you name your deployment fragment\n<code>myapp-deployment.yml</code>, the plugin will name your resource <code>myapp</code>. In the absence of such provided name for your resource, a name will be automatically derived from your project’s metadata (in particular, its <code>artifactId</code> as specified in your POM).</p>\n</div>\n<div class=\"paragraph\">\n<p>No image is also referenced in this example because the plugin also fills in the image details based on the configured image you are building with (either from a generator or from a dedicated image plugin configuration, as seen before).</p>\n</div>\n<div class=\"admonitionblock note\">\n<table>\n<tr>\n<td class=\"icon\">\n<i class=\"fa icon-note\" title=\"Note\"></i>\n</td>\n<td class=\"content\">\nFor building images there is also an alternative mode using external Dockerfiles, in addition to the XML based configuration. Refer to <a href=\"#build-overview\">k8s:build</a> for details.\n</td>\n</tr>\n</table>\n</div>\n<hr>\n<div class=\"paragraph\">\n<p>Enrichment of resource fragments can be fine-tuned by using profile sub-directories. For more details see <a href=\"#profiles\">Profiles</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>Now that we have seen some examples of the various ways how this plugin can be used, the following sections will describe the plugin goals and extension points in detail.</p>\n</div>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"compatibility-with-Kubernetes\">2. Compatibility with Kubernetes</h2>\n<div class=\"sectionbody\">\n<div class=\"sect2\">\n<h3 id=\"kubernetes-compatibility\">2.1. Kubernetes Compatibility</h3>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 2. Kubernetes Compatibility</caption>\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 16.667%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">KMP</th>\n<th class=\"tableblock halign-left valign-top\">Kubernetes 1.19</th>\n<th class=\"tableblock halign-left valign-top\">Kubernetes 1.18</th>\n<th class=\"tableblock halign-left valign-top\">Kubernetes 1.17</th>\n<th class=\"tableblock halign-left valign-top\">Kubernetes 1.14</th>\n<th class=\"tableblock halign-left valign-top\">Kubernetes 1.12</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">KMP 1.0.2</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">KMP 1.0.1</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">KMP 1.0.0</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">KMP 0.2.0</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">x</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">x</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">KMP 0.1.1</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">x</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">x</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">x</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">KMP 0.1.0</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">x</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">x</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">x</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"installation\">3. Installation</h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>This plugin is available from Maven central and can be connected to\npre- and post-integration phase as seen below. The configuration and\navailable goals are described below.</p>\n</div>\n<div class=\"paragraph\">\n<p>By default, Maven will only search for plugins in the <code>org.apache.maven.plugins</code> and <code>org.codehaus.mojo</code> packages. In order to resolve the provider for the JKube plugin goals, you need to edit <code>~/.m2/settings.xml</code> and add the <code>org.eclipse.jkube</code> namespace so the <code><pluginGroups></code> configuration.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><settings>\n ...\n\n <pluginGroups>\n <pluginGroup>org.eclipse.jkube</pluginGroup>\n </pluginGroups>\n\n ...\n</settings></code></pre>\n</div>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n <version>1.0.2</version>\n\n <configuration>\n ....\n <images>\n <!-- A single's image configuration -->\n <image>\n ...\n <build>\n ....\n </build>\n </image>\n ....\n </images>\n </configuration>\n\n <!-- Connect k8s:resource, k8s:build and k8s:helm to lifecycle phases -->\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>build</goal>\n <goal>helm</goal>\n </goals>\n </execution>\n </executions>\n</plugin></code></pre>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"goals\">4. Goals Overview</h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>This plugin supports a rich set for providing a smooth Java developer experience. These goals can be categorized in multiple groups:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><a href=\"#goals-build\">Build goals</a> are all about creating and managing Kubernetes build artifacts like Docker images or S2I builds.</p>\n</li>\n<li>\n<p><a href=\"#goals-develop\">Development goals</a> target help not only in deploying resource descriptors to the development cluster but also to manage the lifecycle of the development cluster as well.</p>\n</li>\n</ul>\n</div>\n<table id=\"goals-build\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 3. Build Goals</caption>\n<colgroup>\n<col style=\"width: 25%;\">\n<col style=\"width: 75%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Goal</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong><a href=\"#jkube:build\"><strong>k8s:build</strong></a></strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Build images</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong><a href=\"#jkube:push\"><strong>k8s:push</strong></a></strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Push images to a registry</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong><a href=\"#jkube:resource\"><strong>k8s:resource</strong></a></strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Create Kubernetes or OpenShift resource descriptors</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong><a href=\"#jkube:apply\"><strong>k8s:apply</strong></a></strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Apply resources to a running cluster</p></td>\n</tr>\n</tbody>\n</table>\n<table id=\"goals-develop\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 4. Development Goals</caption>\n<colgroup>\n<col style=\"width: 25%;\">\n<col style=\"width: 75%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Goal</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong><a href=\"#jkube:deploy\"><strong>k8s:deploy</strong></a></strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Deploy resources descriptors to a cluster after creating them and building the app. Same as <a href=\"#jkube:apply\"><strong>k8s:apply</strong></a> except that it runs in the background.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong><a href=\"#jkube:undeploy\"><strong>k8s:undeploy</strong></a></strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Undeploy and remove resources descriptors from a cluster.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong><a href=\"#jkube:watch\"><strong>k8s:watch</strong></a></strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Watch for file changes and perform rebuilds and redeployments</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong><a href=\"#jkube:log\"><strong>k8s:log</strong></a></strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Show the logs of the running application</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong><a href=\"#jkube:debug\"><strong>k8s:debug</strong></a></strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Enable remote debugging</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Depending on whether the OpenShift or Kubernetes operational mode is used, the workflow and the performed actions differs :</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 5. Workflows</caption>\n<colgroup>\n<col style=\"width: 11.1111%;\">\n<col style=\"width: 44.4444%;\">\n<col style=\"width: 44.4445%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Use Case</th>\n<th class=\"tableblock halign-left valign-top\">Kubernetes</th>\n<th class=\"tableblock halign-left valign-top\">OpenShift</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Build</p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p><code>k8s:build</code> <code>k8s:push</code></p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Creates an image against an exposed Docker daemon (with a <code>docker.tar</code>)</p>\n</li>\n<li>\n<p>Pushes the image to a registry which is then referenced from the configuration</p>\n</li>\n</ul>\n</div></div></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p><code>k8s:build</code></p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Creates or uses a <code>BuildConfig</code></p>\n</li>\n<li>\n<p>Creates or uses an <code>ImageStream</code> which can be referenced by the deployment descriptors in a <code>DeploymenConfig</code></p>\n</li>\n<li>\n<p>Starts an OpenShift build with a <code>docker.tar</code> as input</p>\n</li>\n</ul>\n</div></div></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Deploy</p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p><code>k8s:deploy</code></p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Applies a Kubernetes resource descriptor to cluster</p>\n</li>\n</ul>\n</div></div></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p><code>k8s:deploy</code></p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Applies an OpenShift resource descriptor to a cluster</p>\n</li>\n</ul>\n</div></div></td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"goals-overview-build\">5. Build Goals</h2>\n<div class=\"sectionbody\">\n<div class=\"sect2\">\n<h3 id=\"jkube:resource\">5.1. <strong>k8s:resource</strong></h3>\n<div class=\"paragraph\">\n<p>This goal generates Kubernetes resources based on your project. It can either be opinionated defaults or\nbased on the configuration provided in XML config or resource fragments in <code>src/main/jkube</code>.\nGenerated resources are in <code>target/classes/META-INF/jkube/kubernetes</code> directory.</p>\n</div>\n<div class=\"sect3\">\n<h4 id=\"resource-labels-annotations\">5.1.1. Labels and Annotations</h4>\n<div class=\"paragraph\">\n<p>Labels and annotations can be easily added to any resource object. This is best explained by an example.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example for label and annotations</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <!-- ... -->\n <configuration>\n <!-- ... -->\n <resources>\n <labels> <i class=\"conum\" data-value=\"1\"></i><b>(1)</b>\n <all> <i class=\"conum\" data-value=\"1\"></i><b>(1)</b>\n <property> <i class=\"conum\" data-value=\"2\"></i><b>(2)</b>\n <name>organisation</name>\n <value>unesco</value>\n </property>\n </all>\n <service> <i class=\"conum\" data-value=\"3\"></i><b>(3)</b>\n <property>\n <name>database</name>\n <value>mysql</value>\n </property>\n <property>\n <name>persistent</name>\n <value>true</value>\n </property>\n </service>\n <replicaSet> <i class=\"conum\" data-value=\"4\"></i><b>(4)</b>\n <!-- ... -->\n </replicaSet>\n <pod> <i class=\"conum\" data-value=\"5\"></i><b>(5)</b>\n <!-- ... -->\n </pod>\n <deployment> <i class=\"conum\" data-value=\"6\"></i><b>(6)</b>\n <!-- ... -->\n </deployment>\n </labels>\n\n <annotations> <i class=\"conum\" data-value=\"7\"></i><b>(7)</b>\n <!-- ... -->\n </annotations>\n <remotes> <i class=\"conum\" data-value=\"8\"></i><b>(8)</b>\n <remote>https://gist.githubusercontent.com/lordofthejars/ac2823cec7831697d09444bbaa76cd50/raw/e4b43f1b6494766dfc635b5959af7730c1a58a93/deployment.yaml</remote>\n </remotes>\n </resource>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td><code><labels></code> section with <code><resources></code> contains labels which should be applied to objects of various kinds</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"2\"></i><b>2</b></td>\n<td>Within <code><all></code> labels which should be applied to <strong>every</strong> object can be specified</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"3\"></i><b>3</b></td>\n<td><code><service></code> labels are used to label services</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"4\"></i><b>4</b></td>\n<td><code><replicaSet></code> labels are for replica set and replication controller</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"5\"></i><b>5</b></td>\n<td><code><pod></code> holds labels for pod specifications in replication controller, replica sets and deployments</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"6\"></i><b>6</b></td>\n<td><code><deployment></code> is for labels on deployments (kubernetes) and deployment configs (openshift)</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"7\"></i><b>7</b></td>\n<td>The subelements are also available for specifying annotations.</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"8\"></i><b>8</b></td>\n<td><code><remotes></code> you can set location of fragments as <code>URL</code>.</td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<p>Labels and annotations can be specified in free form as a map. In this map, the element name is the name of the label or annotation respectively, whereas the content is the value to set.</p>\n</div>\n<div class=\"paragraph\">\n<p>The following subelements are possible for <code><labels></code> and <code><annotations></code> :</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 6. Label and annotation configuration</caption>\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 85.7143%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>all</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">All entries specified in the <code><all></code> sections are applied to all resource objects created.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>deployment</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Labels and annotations applied to <code>Deployment</code> (for Kubernetes).</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>pod</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Labels and annotations applied pod specification as used in <code>ReplicationController</code>, <code>ReplicaSets</code>, <code>Deployments</code> and <code>DeploymentConfigs</code> objects.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>replicaSet</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Labels and annotations applied to <code>ReplicaSet</code> and <code>ReplicationController</code> objects.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>service</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Labels and annotations applied to <code>Service</code> objects.</p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect3\">\n<h4 id=\"resource-secrets\">5.1.2. Secrets</h4>\n<div class=\"paragraph\">\n<p>Once you’ve configured some docker registry credentials into <code>~/.m2/setting.xml</code>, as explained in the\n<a href=\"#authentication\">Authentication</a> section, you can create Kubernetes secrets from a server declaration.</p>\n</div>\n<div class=\"paragraph\">\n<p><strong>XML configuration</strong></p>\n</div>\n<div class=\"paragraph\">\n<p>You can create a secret using xml configuration in the <code>pom.xml</code> file. It should contain the following fields:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">key</th>\n<th class=\"tableblock halign-left valign-top\">required</th>\n<th class=\"tableblock halign-left valign-top\">description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>dockerServerId</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>true</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">the server id which is configured in\n<code>~/.m2/setting.xml</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>name</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>true</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">this will be used as name of the kubernetes secret resource</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>namespace</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>false</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">the secret resource will be applied to the specific\nnamespace, if provided</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>This is best explained by an example.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example for XML configuration</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><properties>\n <jkube.docker.registry>docker.io</docker.registry>\n</properties></code></pre>\n</div>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><configuration>\n <resources>\n <secrets>\n <secret>\n <dockerServerId>${docker.registry}</dockerServerId>\n <name>mydockerkey</name>\n </secret>\n </secrets>\n </resources>\n</configuration></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p><strong>Yaml fragment with annotation</strong></p>\n</div>\n<div class=\"paragraph\">\n<p>You can create a secret using a yaml fragment. You can reference the docker server id with an annotation\n<code>maven.jkube.io/dockerServerId</code>. The yaml fragment file should be put under\nthe <code>src/main/jkube/</code> folder.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">apiVersion: v1\nkind: Secret\nmetadata:\n name: mydockerkey\n namespace: default\n annotations:\n maven.jkube.io/dockerServerId: ${docker.registry}\ntype: kubernetes.io/dockercfg</code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"resource-validation\">5.1.3. Resource Validation</h4>\n<div class=\"paragraph\">\n<p>Resource goal also validates the generated resource descriptors using API specification of <a href=\"https://raw.githubusercontent.com/kubernetes/kubernetes/master/api/openapi-spec/swagger.json\">Kubernetes</a>.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 7. Validation Configuration</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipResourceValidation</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If value is set to <code>true</code> then resource validation is skipped. This may be useful if resource validation is failing\n for some reason but you still want to continue the deployment.</p>\n<p class=\"tableblock\"> Default is <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skipResourceValidation</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>failOnValidationError</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If value is set to <code>true</code> then any validation error will block the plugin execution. A warning will be printed\n otherwise.</p>\n<p class=\"tableblock\"> Default is <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.failOnValidationError</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect3\">\n<h4 id=\"Supported-Properties-Resource\">5.1.4. Supported Properties for Resource goal</h4>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 8. Options available with resource goal</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>profile</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Profile to use. A profile contains the enrichers and generators to use as well as their configuration. Profiles are\n looked up in the classpath and can be provided as yaml files.</p>\n<p class=\"tableblock\"> Defaults to <code>default</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.profile</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>sidecar</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Whether to enable sidecar behavior or not. By default pod specs are merged into main application container.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.sidecar</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipHealthCheck</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Whether to skip health checks addition in generated resources or not.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skipHealthCheck</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>workDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The JKube working directory. Defaults to <code>${project.build.directory}/jkube</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.workDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>environment</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Environment name where resources are placed. For example, if you set this property to dev and resourceDir is the\n default one, plugin will look at <code>src/main/jkube/dev</code>.</p>\n<p class=\"tableblock\"> Defaults to <code>null</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.environment</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>useProjectClassPath</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Should we use the project’s compile time classpath to scan for additional enrichers/generators.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.useProjectClassPath</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>resourceDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Folder where to find project specific files.</p>\n<p class=\"tableblock\"> Defaults to <code>${basedir}/src/main/jkube</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.resourceDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>targetDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The generated Kubernetes manifests target direcotry.</p>\n<p class=\"tableblock\"> Defaults to <code>${project.build.outputDirectory}/META-INF/jkube</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.targetDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>resourceType</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The artifact type for attaching the generated resource file to the project. Can be either 'json' or 'yaml'.</p>\n<p class=\"tableblock\"> Defaults to <code>yaml</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.resourceType</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>mergeWithDekorate</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">When resource generation is delegated to Dekorate, should JKube resources be merged with Dekorate generated ones.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.mergeWithDekorate</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>interpolateTemplateParameters</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Interpolate parameter values from <code>*template.yml</code> fragments in the generated resource list (<code>kubernetes.yml</code>).</p>\n<p class=\"tableblock\"> This is useful when using JKube in combination with Helm.</p>\n<p class=\"tableblock\"> Placeholders for variables defined in template files can be used in the different resource fragments. Helm generated\n charts will contain these placeholders/parameters.</p>\n<p class=\"tableblock\"> For <code>resource</code> goal, these placeholders are replaced in the\n aggregated resource list YAML file (not in the individual generated resources) if this option is enabled.</p>\n<p class=\"tableblock\"> Defaults to <code>true</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.interpolateTemplateParameters</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipResource</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Skip resource generation.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skip.resource</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>createExternalUrls</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Should we create external Ingress for any LoadBalancer Services which don’t already have them.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.createExternalUrls</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>domain</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Domain added to the Service ID when creating Kubernetes Ingresses or OpenShift routes.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.domain</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"jkube:build\">5.2. <strong>k8s:build</strong></h3>\n<div class=\"paragraph\">\n<p>This goal is for building Docker images.</p>\n</div>\n<div class=\"sect3\">\n<h4 id=\"build-kubernetes\">5.2.1. Kubernetes Build</h4>\n<div class=\"paragraph\">\n<p>A normal Docker build is performed by default. The connection configuration to\naccess the Docker daemon is described in <a href=\"#access-configuration\">Access Configuration</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>In order to make the generated images available to the Kubernetes cluster the generated images need to be pushed to a\nregistry with the goal <a href=\"#jkube:push\"><strong>k8s:push</strong></a>. This is not necessary for single node clusters, though as there is no need to\ndistribute images.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"build-goal-configuration\">5.2.2. Configuration (XML)</h4>\n<div class=\"paragraph\">\n<p>The following sections describe the usual configuration, which is similar to the build configuration used in the\n <a href=\"https://dmp.fabric8.io\">docker-maven-plugin</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>In addition a more automatic way for creating predefined build configuration can be performed with so called <a href=\"#generators\">Generators</a>. Generators are very flexible and can be easily created. These are described in an extra <a href=\"#generators\">section</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>Global configuration parameters specify overall behavior common for all images to build. Some of the configuration options are shared with other goals.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 9. Global configuration</caption>\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 71.4285%;\">\n<col style=\"width: 14.2858%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>buildStrategy</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>Defines what build strategy to choose while building container image.\nPossible values are <code>docker</code> and <code>jib</code> out of which <code>docker</code> is default.</p>\n</div></div></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.build.strategy</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>apiVersion</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Use this variable if you are using an older version of docker not compatible with the current default use to\n communicate with the server.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.apiVersion</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>authConfig</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Authentication information when pulling from or pushing to Docker registry. There is a dedicated section\n <a href=\"#authentication\">Authentication</a> for how to do security.</p></td>\n<td class=\"tableblock halign-left valign-top\"></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>autoPull</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>Decide how to pull missing base images or images to start:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>on</code> : Automatic download any missing images (default)</p>\n</li>\n<li>\n<p><code>off</code> : Automatic pulling is switched off</p>\n</li>\n<li>\n<p><code>always</code> : Pull images always even when they already exist locally</p>\n</li>\n<li>\n<p><code>once</code> : For multi-module builds images are only checked once and pulled for the whole build.</p>\n</li>\n</ul>\n</div></div></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.autoPull</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>buildRecreate</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>If the effective <a href=\"#build-mode\">mode</a> is <code>openshift</code> then this option decides how the OpenShift resource objects\n associated with the build should be treated when they already exist:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>buildConfig</code> or <code>bc</code> : Only the BuildConfig is recreated</p>\n</li>\n<li>\n<p><code>imageStream</code> or <code>is</code> : Only the ImageStream is recreated</p>\n</li>\n<li>\n<p><code>all</code> : Both, BuildConfig and ImageStream are recreated</p>\n</li>\n<li>\n<p><code>none</code> : Neither BuildConfig nor ImageStream is recreated</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>The default is <code>none</code>. If you provide the property without value then <code>all</code> is assumed, so everything gets recreated.</p>\n</div></div></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.build.recreate</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a id=\"image-pull-policy\"></a> <strong>imagePullPolicy</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>Specify whether images should be pull when looking for base images while building or images for starting.\nThis property can take the following values (case insensitive):</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>IfNotPresent</code>: Automatic download any missing images (default)</p>\n</li>\n<li>\n<p><code>Never</code> : Automatic pulling is switched off always</p>\n</li>\n<li>\n<p><code>Always</code> : Pull images always even when they already exist locally.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>By default a progress meter is printed out on the console, which is omitted when using Maven in batch mode (option <code>-B</code>). A very simplified progress meter is provided when using no color output (i.e. with <code>-Djkube.useColor=false</code>).</p>\n</div></div></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.imagePullPolicy</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>certPath</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Path to SSL certificate when SSL is used for communicating with the Docker daemon. These certificates are normally\n stored in <code>~/.docker/</code>. With this configuration the path can be set explicitly. If not set, the fallback is first\n taken from the environment variable <code>DOCKER_CERT_PATH</code> and then as last resort <code>~/.docker/</code>. The keys in this are\n expected with it standard names <code>ca.pem</code>, <code>cert.pem</code> and <code>key.pem</code>.\n Please refer to the <a href=\"https://docs.docker.com/articles/https\">Docker documentation</a> for more information about SSL\n security with Docker.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.certPath</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>dockerHost</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>The URL of the Docker Daemon. If this configuration option is not given, then the optional <code><machine></code> configuration\nsection is consulted. The scheme of the URL can be either given directly as <code>http</code> or <code>https</code>\ndepending on whether plain HTTP communication is enabled or SSL should\nbe used. Alternatively the scheme could be <code>tcp</code> in which case the\nprotocol is determined via the IANA assigned port: 2375 for <code>http</code>\nand 2376 for <code>https</code>. Finally, Unix sockets are supported by using\nthe scheme <code>unix</code> together with the filesystem path to the unix socket.</p>\n</div>\n<div class=\"paragraph\">\n<p>The discovery sequence used by the docker-maven-plugin to determine\nthe URL is:</p>\n</div>\n<div class=\"olist arabic\">\n<ol class=\"arabic\">\n<li>\n<p>Value of <strong>dockerHost</strong> (<code>jkube.docker.host</code>)</p>\n</li>\n<li>\n<p>The Docker host associated with the docker-machine named in <code><machine></code>, i.e. the <code>DOCKER_HOST</code> from <code>docker-machine env</code>. See <a href=\"#docker-machine\">below</a> for more information about Docker machine support.</p>\n</li>\n<li>\n<p>The value of the environment variable <code>DOCKER_HOST</code>.</p>\n</li>\n<li>\n<p><code>unix:///var/run/docker.sock</code> if it is a readable socket.</p>\n</li>\n</ol>\n</div></div></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.host</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>filter</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">In order to temporarily restrict the operation of plugin goals this configuration option can be used.\n Typically this will be set via the system property <code>jkube.image.filter</code> when Maven is called. The value can be a single\n image name (either its alias or full name) or it can be a comma separated list with multiple image names. Any name\n which doesn’t refer an image in the configuration will be ignored.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.image.filter</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>machine</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Docker machine configuration. See <a href=\"#docker-machine\">Docker Machine</a> for possible values.</p></td>\n<td class=\"tableblock halign-left valign-top\"></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>maxConnections</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Number of parallel connections are allowed to be opened to the Docker Host. For parsing log output, a connection needs\n to be kept open (as well for the wait features), so don’t put that number to low. Default is 100 which should be\n suitable for most of the cases.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.maxConnections</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>access</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Group of configuration parameters to connect to Kubernetes/OpenShift cluster.</p></td>\n<td class=\"tableblock halign-left valign-top\"></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>outputDirectory</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Default output directory to be used by this plugin.\n The default value is <code>target/docker</code> and is only used for the goal <code>k8s:build</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.build.target.dir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>profile</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Profile to which contains enricher and generators configuration. See <a href=\"#profiles\">Profiles</a> for details.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.profile</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>registry</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Specify globally a registry to use for pulling and pushing images. See <a href=\"#registry\">Registry handling</a> for details.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.registry</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skip</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">With this parameter the execution of this plugin can be skipped completely.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skip</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipBuild</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set not images will be build (which implies also <em>skip.tag</em>) with <code>k8s:build</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skip.build</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipBuildPom</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set the build step will be skipped for modules of type <code>pom</code>. If not set, then by default projects of type <code>pom</code>\n will be skipped if there are no image configurations contained.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skip.build.pom</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipTag</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set to <code>true</code> this plugin won’t add any tags to images that have been built with <code>k8s:build</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skip.tag</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipMachine</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Skip using docker machine in any case</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.skip.machine</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>sourceDirectory</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Default directory that contains the assembly descriptor(s) used by the plugin. The default value is <code>src/main/docker</code>.\n This option is only relevant for the <code>k8s:build</code> goal.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.build.source.dir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>verbose</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Boolean attribute for switching on verbose output like the build steps when doing a Docker build. Default is <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.verbose</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>logDate</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The date format to use when logging messages from Docker. Default is <code>DEFAULT</code> (<code>HH:mm:ss.SSS</code>)</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.logDate</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>logStdout</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Log to stdout regardless if log files are configured or not. Default is <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.logStdout</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_kubernetes_access_configuration\">5.2.3. Kubernetes Access Configuration</h4>\n<div class=\"paragraph\">\n<p>You can configure parameters to define how plugin is going to connect to Kubernetes cluster instead of relying on default parameters.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><configuration>\n <access>\n <username></username>\n <password></password>\n <masterUrl></masterUrl>\n <apiVersion></apiVersion>\n </access>\n</configuration></code></pre>\n</div>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 71.4285%;\">\n<col style=\"width: 14.2858%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>username</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Username on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.username</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>password</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Password on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.password</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>namespace</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Namespace on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.namespace</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>masterUrl</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Master URL on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.masterUrl</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>apiVersion</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Api version on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.apiVersion</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>caCertFile</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">CaCert File on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.caCertFile</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>caCertData</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">CaCert Data on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.caCertData</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>clientCertFile</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Client Cert File on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.clientCertFile</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>clientCertData</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Client Cert Data on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.clientCertData</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>clientKeyFile</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Client Key File on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.clientKeyFile</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>clientKeyData</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Client Key Data on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.clientKeyData</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>clientKeyAlgo</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Client Key Algorithm on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.clientKeyAlgo</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>clientKeyPassphrase</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Client Key Passphrase on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.clientKeyPassphrase</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>trustStoreFile</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Trust Store File on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.trustStoreFile</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>trustStorePassphrase</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Trust Store Passphrase on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.trustStorePassphrase</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>keyStoreFile</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Key Store File on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.keyStoreFile</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>keyStorePassphrase</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Key Store Passphrase on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.keyStorePassphrase</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_image_configuration\">5.2.4. Image Configuration</h4>\n<div class=\"paragraph\">\n<p>The configuration how images should be created a defined in a dedicated <code><images></code> sections. These are specified for\neach image within the <code><images></code> element of the configuration with one <code><image></code> element per image to use.</p>\n</div>\n<div class=\"paragraph\">\n<p>The <code><image></code> element can contain the following sub elements:</p>\n</div>\n<table id=\"config-image\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 10. Image Configuration</caption>\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 83.3334%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#image-name\"><strong>name</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Each <code><image></code> configuration has a mandatory, unique docker\nrepository <em>name</em>. This can include registry and tag parts, but also placeholder parameters. See below for a detailed explanation.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>alias</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Shortcut name for an image which can be used for\nidentifying the image within this configuration. This is used when\nlinking images together or for specifying it with the global <strong>image</strong> configuration element.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#registry\"><strong>registry</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Registry to use for this image. If the <code>name</code> already contains a registry this takes precedence. See <a href=\"#registry\">Registry handling</a> for more details.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#config-image-build\"><strong>build</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Element which contains all the configuration aspects when doing a <a href=\"#jkube:build\"><strong>k8s:build</strong></a>. This element can be omitted if the image is only pulled from a registry e.g. as support for integration tests like database images.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>The <code><build></code> section is mandatory and is explained in <a href=\"#build-configuration\">below</a>.</p>\n</div>\n<div id=\"image-name\" class=\"paragraph\">\n<p>When specifying the image name in the configuration with the <code><name></code> field you can use several placeholders which are replaced during runtime by this plugin. In addition you can use regular Maven properties which are resolved by Maven itself.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 11. Image Names</caption>\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 83.3334%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Placeholder</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>%g</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The last part of the Maven group name, sanitized so that it can be used as username on GitHub. Only the part after the last dot is used. E.g. for a group id <code>org.eclipse.jkube</code> this placeholder would insert <code>jkube</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>%a</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A sanitized version of the artefact id so that it can be used as part of an Docker image name. I.e. it is converted to all lower case (as required by Docker)</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>%v</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The project version. Synonym to <code>${project.version}</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>%l</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If the project version ends with <code>-SNAPSHOT</code> then this placeholder is <code>latest</code>, otherwise its the full version (same as <code>%v</code>)</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>%t</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If the project version ends with <code>-SNAPSHOT</code> this placeholder resolves to <code>snapshot-<timestamp></code> where timestamp has the date format <code>yyMMdd-HHmmss-SSSS</code> (eg <code>snapshot-</code>). This feature is especially useful during development in oder to avoid conflicts when images are to be updated which are still in use. You need to take care yourself of cleaning up old images afterwards, though.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"listingblock\">\n<div class=\"title\">Example for <image></div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><configuration>\n <!-- .... -->\n <images>\n <image> <i class=\"conum\" data-value=\"1\"></i><b>(1)</b>\n <name>%g/jkube-build-demo:0.1</name> <i class=\"conum\" data-value=\"2\"></i><b>(2)</b>\n <alias>service</alias> <i class=\"conum\" data-value=\"3\"></i><b>(3)</b>\n <build>....</build> <i class=\"conum\" data-value=\"4\"></i><b>(4)</b>\n </image>\n <image>\n ....\n </image>\n </images>\n</configuration></code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td>One or more <code><image></code> definitions</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"2\"></i><b>2</b></td>\n<td>The Docker image name used when creating the image. Note that <code>%g</code> would be replaced by project group id.</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"3\"></i><b>3</b></td>\n<td>An alias which can be used in other parts of the plugin to reference to this image. This alias must be unique.</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"4\"></i><b>4</b></td>\n<td>A <code><build></code> section as described in <a href=\"#buid-configuration\">Build Configuration</a></td>\n</tr>\n</table>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"build-configuration\">5.2.5. Build Configuration</h4>\n<div id=\"build-overview\" class=\"paragraph\">\n<p>There are two different modes how images can be built:</p>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Inline plugin configuration</div>\n<p>With an inline plugin configuration all information required to build the image is contained in the plugin configuration. By default its the standard XML based configuration for the plugin but can be switched to a property based configuration syntax as described in the section <a href=\"#external-configuration\">External configuration</a>. The XML configuration syntax is recommended because of its more structured and typed nature.</p>\n</div>\n<div class=\"paragraph\">\n<p>When using this mode, the Dockerfile is created on the fly with all instructions extracted from the configuration given.</p>\n</div>\n<div id=\"external-dockerfile\" class=\"paragraph\">\n<div class=\"title\">External Dockerfile or Docker archive</div>\n<p>Alternatively an external Dockerfile template or Docker archive can be used. This mode is switched on by using one of these three configuration options within</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><strong>contextDir</strong> specifies docker build context if an external dockerfile is located outside of Docker build context. If not specified, Dockerfile’s parent directory is used as build context.</p>\n</li>\n<li>\n<p><strong>dockerFile</strong> specifies a specific Dockerfile path. The Docker build context directory is set to <code>contextDir</code> if given. If not the directory by default is the directory in which the Dockerfile is stored.</p>\n</li>\n<li>\n<p><strong>dockerArchive</strong> specifies a previously saved image archive to load directly. If a <code>dockerArchive</code> is provided, no <code>dockerFile</code> must be given.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>All paths can be either absolute or relative paths. A relative path is looked up in <code>${project.basedir}/src/main/docker</code> by default. You can make it easily an absolute path by using <code>${project.basedir}</code> in your configuration.</p>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Adding assemblies in Dockerfile mode</div>\n<p>You can also use an assembly if specified in an <a href=\"#build-assembly\">assembly configuration</a>.\nHowever, you need to add the files on your own in the Dockerfile with an <code>ADD</code> or <code>COPY</code> command.\nThe files of the assembly are stored in a build context relative directory <code>maven/</code> but can be changed by changing the assembly name with the option <code><name></code> in the assembly configuration.</p>\n</div>\n<div class=\"paragraph\">\n<p>E.g. the files can be added with</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-dockerfile\" data-lang=\"dockerfile\">COPY maven/ /my/target/directory</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>so that the assembly files will end up in <code>/my/target/directory</code> within the container.</p>\n</div>\n<div class=\"paragraph\">\n<p>If this directory contains a <code>.maven-dockerignore</code> (or alternatively, a <code>.maven-dockerexclude</code> file), then it is used for excluding files for the build. Each line in this file is treated as a <a href=\"http://ant.apache.org/manual/Types/fileset.html\">FileSet exclude pattern</a> as used by the <a href=\"http://maven.apache.org/plugins/maven-assembly-plugin\">maven-assembly-plugin</a>. It is similar to <code>.dockerignore</code> when using Docker but has a slightly different syntax (hence the different name).\n<a href=\"#ex-build-dockerexclude\">Example <code>.maven-dockerexclude</code> or <code>.maven-dockerignore</code></a> is an example which excludes all compiled Java classes.</p>\n</div>\n<div id=\"ex-build-dockerexclude\" class=\"exampleblock\">\n<div class=\"title\">Example 1. Example <code>.maven-dockerexclude</code> or <code>.maven-dockerignore</code></div>\n<div class=\"content\">\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code>target/classes/** <i class=\"conum\" data-value=\"1\"></i><b>(1)</b></code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td>Exclude all compiled classes</td>\n</tr>\n</table>\n</div>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>If this directory contains a <code>.maven-dockerinclude</code> file, then it is used for including only those files for the build. Each line in this file is also treated as a <a href=\"http://ant.apache.org/manual/Types/fileset.html\">FileSet exclude pattern</a> as used by the <a href=\"http://maven.apache.org/plugins/maven-assembly-plugin\">maven-assembly-plugin</a>. <a href=\"#ex-build-dockerinclude\">Example <code>.maven-dockerinclude</code></a> shows how to include only jar file that have build to the Docker build context.</p>\n</div>\n<div id=\"ex-build-dockerinclude\" class=\"exampleblock\">\n<div class=\"title\">Example 2. Example <code>.maven-dockerinclude</code></div>\n<div class=\"content\">\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code>target/*.jar <i class=\"conum\" data-value=\"1\"></i><b>(1)</b></code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td>Only add jar file to you Docker build context.</td>\n</tr>\n</table>\n</div>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Except for the <a href=\"#build-assembly\">assembly configuration</a> all other configuration options are ignored for now.</p>\n</div>\n<div id=\"simple-dockerfile-build\" class=\"paragraph\">\n<div class=\"title\">Simple Dockerfile build</div>\n<p>When only a single image should be built with a Dockerfile no XML configuration is needed at all.\nAll what need to be done is to place a <code>Dockerfile</code> into the top-level module directory, alongside to <code>pom.xml</code>.\nYou can still configure <a href=\"#global-configuration\">global aspects</a> in the plugin configuration, but as soon as you add an <code><image></code> in the XML configuration, you need to configure also the build explicitly.</p>\n</div>\n<div class=\"paragraph\">\n<p>The image name is by default set from the Maven coordinates (<code>%g/%a:%l</code>, see <a href=\"#image-name\">Image Name </a> for an explanation of the params which are essentially the Maven GAV)\nThis name can be set with the property <code>jkube.image.name</code>.</p>\n</div>\n<div id=\"build-filtering\" class=\"paragraph\">\n<div class=\"title\">Filtering</div>\n<p>kubernetes-maven-plugin filters given Dockerfile with Maven properties, much like the <code>maven-resource-plugin</code> does. Filtering is enabled by default and can be switched off with a build config <code><filter>false</filter></code>. Properties which we want to replace are specified with the <code>${..}</code> syntax.\nReplacement includes Maven project properties such as <code>${project.artifactId}</code>, properties set in the build, command-line properties, and system properties. Unresolved properties remain untouched.</p>\n</div>\n<div class=\"paragraph\">\n<p>This partial replacement means that you can easily mix it with Docker build arguments and environment variable reference, but you need to be careful.\nIf you want to be more explicit about the property delimiter to clearly separate Docker properties and Maven properties you can redefine the delimiter.\nIn general, the <code>filter</code> option can be specified the same way as delimiters in the resource plugin.\nIn particular, if this configuration contains a * then the parts left, and right of the asterisks are used as delimiters.</p>\n</div>\n<div class=\"paragraph\">\n<p>For example, the default <code><filter>${*}</filter></code> parse Maven properties in the format that we know.\nIf you specify a single character for <code><filter></code> then this delimiter is taken for both, the start and the end.\nE.g a <code><filter>@</filter></code> triggers on parameters in the format <code>@…​@</code>, much like in the <code>maven-invoker-plugin</code>.\nUse something like this if you want to clearly separate from Docker builds args.\nThis form of property replacement works for Dockerfile only.\nFor replacing other data in other files targeted for the Docker image, please use the <code>maven-resource-plugin</code> or an <a href=\"#build-assembly\">assembly configuration</a> with filtering to make them available in the docker build context.</p>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Example</div>\n<p>The following example replaces all properties in the format <code>@property@</code> within the Dockerfile.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <configuration>\n <images>\n <image>\n <name>user/demo</name>\n <build>\n <filter>@</filter>\n </build>\n </image>\n </images>\n </configuration>\n ...\n</plugin></code></pre>\n</div>\n</div>\n<div id=\"build-plugin\" class=\"paragraph\">\n<div class=\"title\">Build Plugins</div>\n<p>This plugin supports so call <strong>dmp-plugins</strong> which are used during the build phase.\ndmp-plugins are enabled by just declaring a dependency in the plugin declaration:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n\n <dependencies>\n <dependency>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>run-java-sh</artifactId>\n <version>1.2.2</version>\n </dependency>\n </dependencies>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code>org.eclipse.jkube.runsh.RunShLoader</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>During a build with <code>kubernetes-maven-plugin:build</code>, those classes are loaded and certain fixed method are called.</p>\n</div>\n<div class=\"paragraph\">\n<p>The following methods are supported:</p>\n</div>\n<table id=\"build-plugin-methods\" class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 83.3334%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Method</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>addExtraFiles</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A <em>static</em> method called by dmp with a single <code>File</code> argument. This will point to a directory <code>docker-extra</code> which can be referenced easily by a Dockerfile or an assembly. A dmp plugin typically will create an own subdirectory to avoid a clash with other dmp-plugins.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>If a configured plugin does not provide method of this name and signature, then it will be simply ignored.\nAlso, no interface needs to be implemented to keep the coupling low.</p>\n</div>\n<div class=\"paragraph\">\n<p>The following official dmp-plugins are known and supported:</p>\n</div>\n<table id=\"build-plugins-official\" class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 71.4286%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Name</th>\n<th class=\"tableblock halign-left valign-top\">G,A</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"https://github.com/fabric8io-images/run-java-sh\">run-java.sh</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.io</code>, <code>run-java</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">General purpose startup script fo running Java applications. The dmp plugin creates a\n <code>target/docker-extra/run-java/run-java.sh</code> which can be included in a Dockerfile (see the example above).\n See the <a href=\"https://github.com/fabric8io-images/run-java-sh\">run-java.sh Documentation</a> for more details.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Check out <code>samples/run-java</code> for a fully working example.</p>\n</div>\n<div class=\"paragraph\">\n<p>All build relevant configuration is contained in the <code><build></code> section\nof an image configuration. The following configuration options are supported:</p>\n</div>\n<table id=\"config-image-build\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 12. Build configuration (<a href=\"#config-image\"><image> </a>)</caption>\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 83.3334%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#config-image-build-assembly\"><strong>assembly</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Specifies the assembly configuration as described in <a href=\"#build-assembly\">Build Assembly</a></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#build-buildargs\"><strong>args</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Map specifying the value of <a href=\"https://docs.docker.com/engine/reference/commandline/build/#set-build-time-variables-build-arg\">Docker build args</a>\nwhich should be used when building the image with an external Dockerfile which uses build arguments. The key-value syntax is the same as when defining Maven properties (or <code>labels</code> or <code>env</code>).\nThis argument is ignored when no external Dockerfile is used. Build args can also be specified as properties as\ndescribed in <a href=\"#build-buildargs\">Build Args</a></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>buildOptions</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Map specifying the build options to provide to the docker daemon when building the image. These options map to the ones listed as query parameters in the\n<a href=\"https://docs.docker.com/engine/reference/api/docker_remote_api_v1.24/#build-image-from-a-dockerfile\">Docker Remote API</a> and are restricted to simple options\n(e.g.: memory, shmsize). If you use the respective configuration options for build options natively supported by the build configuration (i.e. <code>noCache</code>, <code>cleanup=remove</code> for buildoption <code>forcerm=1</code> and <code>args</code> for build args) then these will override any corresponding options given here. The key-value syntax is the same as when defining environment variables or labels as described in <a href=\"#misc-env\">Setting Environment Variables and Labels</a>.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>cleanup</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Cleanup dangling (untagged) images after each build (including any containers created from them). Default is <code>try</code> which tries to remove the old image, but doesn’t fail the build if this is not possible because e.g. the image is still used by a running container. Use <code>remove</code> if you want to fail the build and <code>none</code> if no cleanup is requested.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a id=\"context-dir\"></a><strong>contextDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Path to a directory used for the build’s context. You can specify the <code>Dockerfile</code> to use with <strong>dockerFile</strong>, which by default is the Dockerfile found in the <code>contextDir</code>. The Dockerfile can be also located outside of the <code>contextDir</code>, if provided with an absolute file path. See <a href=\"#external-dockerfile\">External Dockerfile</a> for details.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#misc-startup\"><strong>cmd</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A command to execute by default (i.e. if no command is provided when a container for this image is started). See <a href=\"#misc-startup\">Startup Arguments</a> for details.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>compression</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The compression mode how the build archive is transmitted to the docker daemon (<code>k8s:build</code>) and how docker build archives are attached to this build as sources (<code>k8s:source</code>). The value can be <code>none</code> (default), <code>gzip</code> or <code>bzip2</code>.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>dockerFile</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Path to a <code>Dockerfile</code> which also triggers <em>Dockerfile mode</em>. See <a href=\"#external-dockerfile\">External Dockerfile</a> for details.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>dockerArchive</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Path to a saved image archive which is then imported. See <a href=\"#external-dockerfile\">Docker archive</a> for details.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#misc-startup\"><strong>entryPoint</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">An entrypoint allows you to configure a container that will run as an executable. See <a href=\"#misc-startup\">Startup Arguments</a> for details.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#misc-env\"><strong>env</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The environments as described in <a href=\"#misc-env\">Setting Environment Variables and Labels</a>.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>filter</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Enable and set the delimiters for property replacements. By default properties in the format <code>${..}</code> are replaced with Maven properties. You can switch off property replacement by setting this property to <code>false</code>. When using a single char like <code>@</code> then this is used as a delimiter (e.g <code>@…​@</code>). See <a href=\"#build-filtering\">Filtering</a> for more details.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a id=\"build-config-from\"></a><strong>from</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The base image which should be used for this image. If not given this default to <code>busybox:latest</code> and is suitable for a pure data image.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a id=\"build-config-from-ext\"></a><strong>fromExt</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>Extended definition for a base image. This field holds a map of defined in <code><key>value</key></code> format. The known keys are:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code><name></code> : Name of the base image</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>A provided <code><from></code> takes precedence over the name given here. This tag is useful for extensions of this plugin.</p>\n</div></div></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#build-healthcheck\"><strong>healthCheck</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Definition of a health check as described in <a href=\"#build-healthcheck\">Healthcheck</a></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>imagePullPolicy</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Specific pull policy for the base image. This overwrites any global pull policy.\n See the global configuration option <a href=\"#image-pull-policy\">imagePullPolicy</a> for the possible values and the default.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#misc-env\"><strong>labels</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Labels as described in <a href=\"#misc-env\">Setting Environment Variables and Labels</a>.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>maintainer</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The author (<code>MAINTAINER</code>) field for the generated image</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>noCache</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Don’t use Docker’s build cache. This can be overwritten by setting a system property <code>docker.noCache</code> when running Maven.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>cacheFrom</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A list of <code><image></code> elements specifying image names to use as cache sources.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>optimise</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">if set to true then it will compress all the <code>runCmds</code> into a single <code>RUN</code> directive so that only one image layer is created.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>ports</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The exposed ports which is a list of <code><port></code> elements, one for each port to expose. Whitespace is trimmed from each element and empty elements are ignored. The format can be either pure numerical (\"8080\") or with the protocol attached (\"8080/tcp\").</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>shell</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Shell to be used for the <strong>runCmds</strong>. It contains <strong>arg</strong> elements which are defining the executable and its params.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>runCmds</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Commands to be run during the build process. It contains <strong>run</strong> elements which are passed to the shell. Whitespace is trimmed from each element and empty elements are ignored. The run commands are inserted right after the assembly and after <strong>workdir</strong> into the Dockerfile.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skip</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">if set to true disables building of the image. This config option is best used together with a maven property</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipTag</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set to <code>true</code> this plugin won’t add any tags to images.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>tags</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">List of additional <code>tag</code> elements with which an image is to be tagged after the build. Whitespace is trimmed from each element and empty elements are ignored.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>user</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">User to which the Dockerfile should switch to the end (corresponds to the <code>USER</code> Dockerfile directive).</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>volumes</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">List of <code>volume</code> elements to create a container volume. Whitespace is trimmed from each element and empty elements are ignored.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>workdir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Directory to change to when starting the container.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>From this configuration this Plugin creates an in-memory Dockerfile,\ncopies over the assembled files and calls the Docker daemon via its\nremote API.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><build>\n <from>java:8u40</from>\n <maintainer>john.doe@example.com</maintainer>\n <tags>\n <tag>latest</tag>\n <tag>${project.version}</tag>\n </tags>\n <ports>\n <port>8080</port>\n </ports>\n <volumes>\n <volume>/path/to/expose</volume>\n </volumes>\n <buildOptions>\n <shmsize>2147483648</shmsize>\n </buildOptions>\n\n <shell>\n <exec>\n <arg>/bin/sh</arg>\n <arg>-c</arg>\n </exec>\n </shell>\n <runCmds>\n <run>groupadd -r appUser</run>\n <run>useradd -r -g appUser appUser</run>\n </runCmds>\n\n <entryPoint>\n <!-- exec form for ENTRYPOINT -->\n <exec>\n <arg>java</arg>\n <arg>-jar</arg>\n <arg>/opt/demo/server.jar</arg>\n </exec>\n </entryPoint>\n\n <assembly>\n <mode>dir</mode>\n <targetDir>/opt/demo</targetDir>\n <descriptor>assembly.xml</descriptor>\n </assembly>\n</build></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>In order to see the individual build steps you can switch on <code>verbose</code> mode either by setting the property\n<code>jkube.docker.verbose</code> or by using <code><verbose>true</verbose></code> in the <a href=\"#build-goal-configuration\">Build Goal configuration</a></p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"build-assembly\">5.2.6. Assembly</h4>\n<div class=\"paragraph\">\n<p>The <code><assembly></code> element within <code><build></code> element has an XML structure and defines how build artifacts and other files\ncan be added to the Docker image.</p>\n</div>\n<table id=\"config-image-build-assembly\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 13. Assembly Configuration (<a href=\"#config-image\"><image> </a> : <a href=\"#config-image-build\"><build> </a>)</caption>\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 83.3334%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>name</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Assembly name, which is <code>maven</code> by default. This name is used for the archives and directories created during the build.\n This directory holds the files specified by the assembly. If an <a href=\"#external-dockerfile\">external Dockerfile</a> is used then\n this name is also the relative directory which contains the assembly files.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>targetDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Directory under which the files and artifacts contained in the assembly will be copied within the container.\n The default value for this is <code>/<assembly name></code>, so <code>/maven</code> if <strong>name</strong> is not set to a different value.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#build-assembly-inline\"><strong>inline</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Inlined assembly descriptor as described in <a href=\"#build-assembly-inline\">Assembly - Inline</a> below.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>exportTargetDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Specification whether the <code>targetDir</code> should be exported as a volume. This value is <code>true</code> by default except in the\n case the <code>targetDir</code> is set to the container root (<code>/</code>). It is also <code>false</code> by default when a base image is used with\n <code>from</code> since exporting makes no sense in this case and will waste disk space unnecessarily.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>excludeFinalOutputArtifact</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">By default, the project’s final artifact will be included in the assembly, set this flag to true in case the\n artifact should be excluded from the assembly.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>mode</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>Mode how the how the assembled files should be collected:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>dir</code> : Files are simply copied (default),</p>\n</li>\n<li>\n<p><code>tar</code> : Transfer via tar archive</p>\n</li>\n<li>\n<p><code>tgz</code> : Transfer via compressed tar archive</p>\n</li>\n<li>\n<p><code>zip</code> : Transfer via ZIP archive</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>The archive formats have the advantage that file permission can be preserved better (since the copying is independent\nfrom the underlying files systems), but might triggers internal bugs from the Maven assembler (as it has been reported\nin <a href=\"https://github.com/fabric8io/docker-maven-plugin/issues/171\">#171</a>)</p>\n</div></div></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>permissions</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>Permission of the files to add:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>ignore</code> to use the permission as found on files regardless on any\nassembly configuration</p>\n</li>\n<li>\n<p><code>keep</code> to respect the assembly provided permissions</p>\n</li>\n<li>\n<p><code>exec</code> for setting the executable bit on all files (required for Windows when using an assembly mode <code>dir</code>)</p>\n</li>\n<li>\n<p><code>auto</code> to let the plugin select <code>exec</code> on Windows and <code>keep</code> on others.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p><code>keep</code> is the default value.</p>\n</div></div></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>tarLongFileMode</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Sets the TarArchiver behaviour on file paths with more than 100 characters length. Valid values are: \"warn\"(default), \"fail\", \"truncate\", \"gnu\", \"posix\", \"posix_warn\" or \"omit\"</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>user</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>User and/or group under which the files should be added. The user must already exist in the base image.</p>\n</div>\n<div class=\"paragraph\">\n<p>It has the general format <code>user[:group[:run-user]]</code>. The user and group can be given either as numeric user- and group-id or as names. The group id is optional.</p>\n</div>\n<div class=\"paragraph\">\n<p>If a third part is given, then the build changes to user <code>root</code> before changing the ownerships, changes the ownerships and then change to user <code>run-user</code> which is then used for the final command to execute. This feature might be needed, if the base image already changed the user (e.g. to 'jboss') so that a <code>chown</code> from root to this user would fail.</p>\n</div>\n<div class=\"paragraph\">\n<p>For example, the image <code>jboss/wildfly</code> use a \"jboss\" user under which all commands are executed. Adding files in Docker always happens under the UID root. These files can only be changed to \"jboss\" is the <code>chown</code> command is executed as root. For the following commands to be run again as \"jboss\" (like the final <code>standalone.sh</code>), the plugin switches back to user <code>jboss</code> (this is this \"run-user\") after changing the file ownership. For this example a specification of\n<code>jboss:jboss:jboss</code> would be required.</p>\n</div></div></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>In the event you do not need to include any artifacts with the image, you may safely omit this element from the configuration.</p>\n</div>\n<div class=\"sect4\">\n<h5 id=\"build-assembly-inline\">Assembly - Inline</h5>\n<div class=\"paragraph\">\n<p>Inlined assembly description with a format very similar to\n<a href=\"https://maven.apache.org/plugins/maven-assembly-plugin/assembly.html\">Maven Assembly Plugin</a>.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 14. Assembly - Inline (<a href=\"#config-image\"><image> </a> : <a href=\"#config-image-build\"><build> </a> : <a href=\"#config-image-build-assembly\"><assembly> </a>)</caption>\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 83.3334%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>id</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Unique ID for the assembly.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>files</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>List of files for the assembly.</p>\n</div>\n<div class=\"paragraph\">\n<p>Each file has the following fields:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>source</code>: Absolute or relative path from the project’s directory of the file to be included in the assembly.</p>\n</li>\n<li>\n<p><code>outputDirectory</code>: Output directory relative to the root of the root directory of the assembly.</p>\n</li>\n<li>\n<p><code>destName</code>: Destination filename in the outputDirectory.</p>\n</li>\n<li>\n<p><code>fileMode</code>: Similar to a UNIX permission, sets the file mode of the file included.</p>\n</li>\n</ul>\n</div></div></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>fileSets</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>List of filesets for the Assembly.</p>\n</div>\n<div class=\"paragraph\">\n<p>Each fileset has the following fields:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>directory</code>: Absolute or relative location from the project’s directory.</p>\n</li>\n<li>\n<p><code>outputDirectory</code>: Output directory relative to the root of the root directory of the assembly fileSet.</p>\n</li>\n<li>\n<p><code>includes</code>: A set of files and directories to include.</p>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>If none is present, then everything is included.</p>\n</li>\n<li>\n<p>Files can be referenced by using their complete path name.</p>\n</li>\n<li>\n<p>Wildcards are also supported, patterns will be matched using\n<a href=\"https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/nio/file/FileSystem.html#getPathMatcher(java.lang.String)\">\nFileSystem#getPathMatcher</a> <code>glob</code> syntax.</p>\n</li>\n</ul>\n</div>\n</li>\n<li>\n<p><code>excludes</code>: A set of files and directory to exclude.</p>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>If none is present, then there are no exclusions.</p>\n</li>\n</ul>\n</div>\n</li>\n<li>\n<p><code>fileMode</code>: Similar to a UNIX permission, sets the file mode of the files included.</p>\n</li>\n<li>\n<p><code>directoryMode</code>: Similar to a UNIX permission, sets the directory mode of the directories included.</p>\n</li>\n</ul>\n</div></div></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>baseDirectory</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Base directory from which to resolve the Assembly files and filesets.</p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"misc-env\">5.2.7. Environment and Labels</h4>\n<div class=\"paragraph\">\n<p>When creating a container one or more environment variables can be set via configuration with the <code>env</code> parameter</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><env>\n <JAVA_HOME>/opt/jdk8</JAVA_HOME>\n <CATALINA_OPTS>-Djava.security.egd=file:/dev/./urandom</CATALINA_OPTS>\n</env></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>If you put this configuration into profiles you can easily create various test variants with a single image (e.g. by switching the JDK or whatever).</p>\n</div>\n<div class=\"paragraph\">\n<p>It is also possible to set the environment variables from the outside of the plugin’s configuration with the parameter <code>envPropertyFile</code>. If given, this property file is used to set the environment variables where the keys and values specify the environment variable. Environment variables specified in this file override any environment variables specified in the configuration.</p>\n</div>\n<div class=\"paragraph\">\n<p>Labels can be set inline the same way as environment variables:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><labels>\n <com.example.label-with-value>foo</com.example.label-with-value>\n <version>${project.version}</version>\n <artifactId>${project.artifactId}</artifactId>\n</labels></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"misc-startup\">5.2.8. Startup Arguments</h4>\n<div class=\"paragraph\">\n<p>Using <code>entryPoint</code> and <code>cmd</code> it is possible to specify the <a href=\"https://docs.docker.com/reference/builder/#entrypoint\">entry point</a>\nor <a href=\"https://docs.docker.com/reference/builder/#cmd\">cmd</a> for a container.</p>\n</div>\n<div class=\"paragraph\">\n<p>The difference is, that an <code>entrypoint</code> is the command that always be executed, with the <code>cmd</code> as argument. If no <code>entryPoint</code> is provided, it defaults to <code>/bin/sh -c</code> so any <code>cmd</code> given is executed with a shell. The arguments given to <code>docker run</code> are always given as arguments to the\n<code>entrypoint</code>, overriding any given <code>cmd</code> option. On the other hand if no extra arguments are given to <code>docker run</code> the default <code>cmd</code> is used as argument to <code>entrypoint</code>.</p>\n</div>\n<div class=\"sidebarblock\">\n<div class=\"content\">\n<div class=\"paragraph\">\n<p>See this <a href=\"http://stackoverflow.com/questions/21553353/what-is-the-difference-between-cmd-and-entrypoint-in-a-dockerfile\">stackoverflow question</a> for a detailed explanation.</p>\n</div>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>An entry point or command can be specified in two alternative formats:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 15. Entrypoint and Command Configuration</caption>\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 83.3334%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Mode</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>shell</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Shell form in which the whole line is given to <code>shell -c</code> for interpretation.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>exec</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">List of arguments (with inner <code><args></code>) arguments which will be given to the <code>exec</code> call directly without any shell interpretation.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Either shell or params should be specified.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><entryPoint>\n <!-- shell form -->\n <shell>java -jar $HOME/server.jar</shell>\n</entryPoint></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>or</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><entryPoint>\n <!-- exec form -->\n <exec>\n <arg>java</arg>\n <arg>-jar</arg>\n <arg>/opt/demo/server.jar</arg>\n </exec>\n</entryPoint></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This can be formulated also more dense with:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><!-- shell form -->\n<entryPoint>java -jar $HOME/server.jar</entryPoint></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>or</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><entryPoint>\n <!-- exec form -->\n <arg>java</arg>\n <arg>-jar</arg>\n <arg>/opt/demo/server.jar</arg>\n</entryPoint></code></pre>\n</div>\n</div>\n<div class=\"dlist\">\n<dl>\n<dt class=\"hdlist1\">INFO</dt>\n<dd>\n<p>Startup arguments are not used in S2I builds</p>\n</dd>\n</dl>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"build-buildargs\">5.2.9. Build Args</h4>\n<div id=\"property-buildargs\" class=\"paragraph\">\n<p>As described in section <a href=\"#build-configuration\">Configuration</a> for external Dockerfiles <a href=\"https://docs.docker.com/engine/reference/commandline/build/#set-build-time-variables-build-arg\">Docker build arg</a> can be used. In addition to the\nconfiguration within the plugin configuration you can also use properties to specify them:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Set a system property when running Maven, eg.: <code>-Ddocker.buildArg.http_proxy=http://proxy:8001</code>. This is especially\nuseful when using predefined Docker arguments for setting proxies transparently.</p>\n</li>\n<li>\n<p>Set a project property within the <code>pom.xml</code>, eg.:</p>\n</li>\n</ul>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><docker.buildArg.myBuildArg>myValue</docker.buildArg.myBuildArg></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Please note that the system property setting will always override the project property. Also note that for all\nproperties which are not Docker <a href=\"https://docs.docker.com/engine/reference/builder/#arg\">predefined</a> properties, the\nexternal Dockerfile must contain an <code>ARGS</code> instruction.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"build-healthcheck\">5.2.10. Healthcheck</h4>\n<div class=\"paragraph\">\n<p>Healthchecks has been introduced since Docker 1.12 and are a way to tell Docker how to test a container to check that it’s still working. With a health check you specify a command which is periodically executed and checked for its return value. If the healtcheck return with an exit 0 the container is considered to be healthy, if it returns with 1 then the container is not working correctly.</p>\n</div>\n<div class=\"paragraph\">\n<p>The healtcheck configuration can have the following options</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 16. Healthcheck Configuration</caption>\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 83.3334%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>cmd</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Command to execute, which can be given in an shell or exec format as described in <a href=\"#misc-startup\">Startup Arguments</a>.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>interval</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Interval for how often to run the healthcheck. The time is specified in seconds, but a time unit can be appended to change this.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>mode</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Mode of the healthcheck. This can be <code>cmd</code> which is the default and specifies that the health check should be executed. Or <code>none</code> to disable a health check from the base image. Only use this option with <code>none</code> for disabling some healthcheck from the base image.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>retries</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">How many retries should be performed before the container is to be considered unhealthy.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>startPeriod</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Initialization time for containers that need time to bootstrap. Probe failure during that period will not be counted towards the maximum number of retries. However, if a health check succeeds during the start period, the container is considered started and all consecutive failures will be counted towards the maximum number of retries. Given in seconds, but another time unit can be appended.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>timeout</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Timeout after which healthckeck should be stopped and considered to have failed. Given in seconds, but another time unit can be appended.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>The following example queries an URL every 10s as an healthcheck:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><healthCheck>\n <!-- Check every 5 minutes -->\n <interval>5m</interval>\n <!-- Fail if no response after 3 seconds -->\n <timeout>3s</timeout>\n <!-- Allow 30 minutes for the container to start before being flagged as unhealthy -->\n <startPeriod>30m</startPeriod>\n <!-- Fail 3 times until the container is considerd unhealthy -->\n <retries>3</retries>\n <!-- Command to execute in shell form -->\n <cmd>curl -f http://localhost/ || exit 1</cmd>\n</healthCheck></code></pre>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"jkube:push\">5.3. <strong>k8s:push</strong></h3>\n<div class=\"admonitionblock warning\">\n<table>\n<tr>\n<td class=\"icon\">\n<i class=\"fa icon-warning\" title=\"Warning\"></i>\n</td>\n<td class=\"content\">\nSection needs review and rearrangements\n</td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<p>This goal uploads images to the registry which have a <code><build></code> configuration section. The images to push can be restricted with\nthe global option <code>filter</code> (see <a href=\"#build-goal-configuration\">Build Goal Configuration</a> for details). The registry to push is by\ndefault <code>docker.io</code> but can be specified as part of the images’s <code>name</code> the Docker way.\nE.g. <code>docker.test.org:5000/data:1.5</code> will push the image <code>data</code> with tag <code>1.5</code> to the registry <code>docker.test.org</code> at port\n<code>5000</code>. Registry credentials (i.e. username and password) can be specified in multiple ways as described in section <a href=\"#authentication\">Authentication</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>By default a progress meter is printed out on the console, which is omitted when using Maven in batch mode (option <code>-B</code>).\nA very simplified progress meter is provided when using no color output (i.e. with <code>-Djkube.useColor=false</code>).</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 17. Push options</caption>\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 71.4285%;\">\n<col style=\"width: 14.2858%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipPush</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set to <code>true</code> the plugin won’t push any images that have been built.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skip.push</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipTag</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set to <code>true</code> this plugin won’t push any tags</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skip.tag</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>pushRegistry</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The registry to use when pushing the image. See <a href=\"#registry\">Registry Handling</a> for\nmore details.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.push.registry</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>retries</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">How often should a push be retried before giving up. This useful for flaky registries which tend to return 500 error codes from time to time. The default is 0 which means no retry at all.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.push.retries</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect2\">\n<h3 id=\"jkube:apply\">5.4. <strong>k8s:apply</strong></h3>\n<div class=\"paragraph\">\n<p>This goal applies the resources created with <a href=\"#jkube:resource\"><strong>k8s:resource</strong></a> to a connected Kubernetes cluster. It’s similar to <a href=\"#jkube:deploy\"><strong>k8s:deploy</strong></a> but does not the full deployment cycle of creating the resource, creating the application image and sending the resource descriptors to the clusters. This goal can be easily bound to <code><executions></code> within the plugin’s configuration and binds by default to the <code>install</code> lifecycle phase.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn k8s:apply</code></pre>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"Supported-Properties-Apply\">5.4.1. Supported Properties For Apply goal</h4>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 18. Other options available with apply goal</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>recreate</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Should we update resources by deleting them first and then creating them again.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.recreate</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>kubernetesManifest</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The generated kubernetes YAML file.</p>\n<p class=\"tableblock\"> Defaults to <code>${basedir}/target/classes/META-INF/jkube/kubernetes.yml</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.kubernetesManifest</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>create</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Should we create new resources.</p>\n<p class=\"tableblock\"> Defaults to <code>true</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.deploy.create</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>rolling</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Should we use rolling updates to apply changes.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.rolling</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>failOnNoKubernetesJson</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Should we fail if there is no Kubernetes JSON.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.deploy.failOnNoKubernetesJson</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>servicesOnly</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">In services only mode we only process services so that those can be recursively created/updated first before\n creating/updating any pods and replication controllers.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.deploy.servicesOnly</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>ignoreServices</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Do we want to ignore services. This is particularly useful when in recreate mode to let you easily recreate all the\n ReplicationControllers and Pods but leave any service definitions alone to avoid changing the portalIP addresses and\n breaking existing pods using the service.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.deploy.ignoreServices</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>processTemplatesLocally</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Process templates locally in Java so that we can apply OpenShift templates on any Kubernetes environment.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.deploy.processTemplatesLocally</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>deletePods</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Should we delete all the pods if we update a Replication Controller.</p>\n<p class=\"tableblock\"> Defaults to <code>true</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.deploy.deletePods</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>ignoreRunningOAuthClients</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Do we want to ignore OAuthClients which are already running?. OAuthClients are shared across namespaces so we should\n not try to update or create/delete global oauth clients.</p>\n<p class=\"tableblock\"> Defaults to <code>true</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.deploy.ignoreRunningOAuthClients</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>jsonLogDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The folder we should store any temporary json files or results.</p>\n<p class=\"tableblock\"> Defaults to <code>${basedir}/target/jkube/applyJson</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.deploy.jsonLogDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>waitSeconds</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">How many seconds to wait for a URL to be generated for a service.</p>\n<p class=\"tableblock\"> Defaults to <code>5</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.serviceUrl.waitSeconds</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>resourceDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Folder where to find project specific files.</p>\n<p class=\"tableblock\"> Defaults to <code>${basedir}/src/main/jkube</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.resourceDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>environment</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Environment name where resources are placed. For example, if you set this property to dev and resourceDir is the\n default one, jkube will look at <code>src/main/jkube/dev</code>.</p>\n<p class=\"tableblock\"> Defaults to <code>null</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.environment</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipApply</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Skip applying the resources.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skip.apply</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"jkube:helm\">5.5. <strong>k8s:helm</strong></h3>\n<div class=\"paragraph\">\n<p>This goal is for creating\n<a href=\"https://helm.sh/docs/topics/charts\">Helm charts</a>\nfor your Maven project so that you can install, update or delete your app in Kubernetes\nusing <a href=\"https://github.com/helm/helm\">Helm</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>For creating a Helm chart you simply call <code>k8s:helm</code> goal on the command line:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn k8s:resource k8s:helm</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The <code>k8s:resource</code> goal is required to create the resource descriptors which are included in the Helm chart.\nIf you have already built the resource then you can omit this goal.</p>\n</div>\n<div class=\"paragraph\">\n<p>The configuration is defined in a <code><helm></code> section within the plugin’s configuration:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example Helm configuration</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <configuration>\n <helm>\n <chart>Jenkins</chart>\n <keywords>ci,cd,server</keywords>\n </helm>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This configuration section knows the following sub-elements in order to configure your Helm chart.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 19. Helm configuration</caption>\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 71.4285%;\">\n<col style=\"width: 14.2858%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>chart</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Chart name, which is <code>${project.artifactId}</code> if not provided.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.chart</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>version</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Chart SemVer version, which is <code>${project.version}</code> if not provided.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.version</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>description</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Chart single-sentence description, which is <code>${project.description}</code> if not provided.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.description</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>home</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Chart URL for this project’s home page, which is <code>${project.url}</code> if not provided.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.home</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>sources</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Chart list of URLs to source code for this project, defaults to the list of <code>${project.scm.url}</code> if not provided.</p></td>\n<td class=\"tableblock halign-left valign-top\"></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>maintainers</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Chart list of maintainers (name+email), defaults to the list of\n `${project.developers.name}:${project.developers.name}`if not provided.</p></td>\n<td class=\"tableblock halign-left valign-top\"></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>icon</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Chart URL to an SVG or PNG image to be used as an icon, default is extracted from the kubernetes manifest\n (<code>kubernetes.yml</code>) <code>jkube.io/iconUrl</code> annotation if not provided.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.icon</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>keywords</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Comma separated list of keywords to add to the chart.</p></td>\n<td class=\"tableblock halign-left valign-top\"></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>engine</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The template engine to use.</p></td>\n<td class=\"tableblock halign-left valign-top\"></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>additionalFiles</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The list of additional files to be included in the Chart archive. Any file named <code>README</code> or <code>LICENSE</code> will <strong>always</strong>\n be included by default.</p></td>\n<td class=\"tableblock halign-left valign-top\"></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>type</strong> / <strong>types</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Platform for which to generate the chart. By default this is <code>kubernetes</code>, but can be also <code>openshift</code> for using\n OpenShift specific resources in the chart. You can also add both values as a comma separated list.</p>\n<p class=\"tableblock\"> <em>Please note that there is no OpenShift support yet for charts, so this is experimental.</em></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.type</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>sourceDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Where to find the resource descriptors generated with <code>k8s:resource</code>.\n By default this is <code>${basedir}/target/classes/META-INF/jkube., which is also the output directory used by `k8s:resource</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.sourceDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>outputDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Where to create the Helm chart, which is <code>${basedir}/target/jkube/helm</code> by default for Kubernetes\n and <code>${basedir}/target/jkube/helmshift</code> for OpenShift.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.outputDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>tarballOutputDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Where to create the the Helm chart archive, which is <code>${basedir}/target</code> if not provided.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.tarballOutputDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>chartExtension</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Helm chart file extension (<code>tgz</code>, <code>tar.bz</code>, <code>tar.bzip2</code>, <code>tar.bz2</code>), default value is <code>tar.gz</code> if not provided.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.chartExtension</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>In a next step you can install this via the <a href=\"https://github.com/helm/helm/releases\">helm command line tool</a> as follows:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">helm install nameForChartInRepository target/jkube/helm/${chartName}/kubernetes</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>or</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre>helm install target/jkube/helm/${chartName}/kubernetes --generate-name</pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>To add the <code>helm</code> goal to your project so that it is automatically executed just add the <code>helm</code> goal to the <code>executions</code>\nsection of the <code>kubernetes-maven-plugin</code> section of your <code>pom.xml</code>.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Add helm goal</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n\n <!-- ... -->\n\n <executions>\n <execution>\n <goals>\n <goal>resource</goal>\n <goal>helm</goal>\n <goal>build</goal>\n <goal>deploy</goal>\n </goals>\n </execution>\n </executions>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>In addition, this goal will also create a tar-archive below <code>${basedir}/target</code> which contains the chart with its template.\nThis tar is added as an artifact with classifier <code>helm</code> to the build (<code>helmshift</code> for the OpenShift mode).</p>\n</div>\n<div class=\"sect3\">\n<h4 id=\"helm-multi-module\">5.5.1. Multi-module projects</h4>\n<div class=\"paragraph\">\n<p>In multi-module Maven projects, some configuration default values differ from what you may expect.</p>\n</div>\n<div class=\"paragraph\">\n<p>Given a project with a parent module and at least a child module, if you run the helm goal within the child\nmodule, values for <code>home</code> and <code>sources</code> will get the submodule’s artifactId appended.</p>\n</div>\n<div class=\"paragraph\">\n<p>This behavior is normal, since the helm goal is executed in the scope of the submodule. The Maven\nvariables from which JKube extracts these defaults (<code>${project.url}</code> and <code>${project.scm.url}</code>)\nalready contain the appended submodule’s artifactId.</p>\n</div>\n<div class=\"paragraph\">\n<p>In order to prevent this, there are several alternatives:</p>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Manual configuration</div>\n<p>Provide the configuration manually for these values:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <configuration>\n <helm>\n <home>https://valid-home-with-no-appended-values.example.com</home>\n <sources>\n <source>https://github.com/valid-repo/with-no-appended-values</source>\n </sources>\n </helm>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Manual configuration using properties in child module</div>\n<p>Following the previous approach, if you don’t want to hardcode the values, or if you\nalready defined them in the parent module you can proceed with the following configuration\nin the <strong>child</strong> module:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><properties>\n <!-- ... -->\n <helm.home>${project.parent.url}</helm.home>\n <helm.source>${project.parent.scm.url}</helm.source>\n</properties>\n<!-- ... -->\n<plugin>\n <configuration>\n <helm>\n <home>${helm.home}</home>\n <sources>\n <source>${helm.source}</source>\n </sources>\n </helm>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Configure inheritance in parent project for the affected elements</div>\n<p>Configure inheritance of the <code>project</code> and <code>scm</code> elements in the <strong>parent</strong> module:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><project xmlns=\"http://maven.apache.org/POM/4.0.0\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\n xsi:schemaLocation=\"http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd\"\n child.project.url.inherit.append.path=\"false\"\n >\n<!-- ... -->\n <url>https://jkube.example.com</url>\n <scm child.scm.url.inherit.append.path=\"false\">\n <url>https://github.com/eclipse/jkube</url>\n </scm>\n<!-- ... -->\n</project></code></pre>\n</div>\n</div>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"goals-overview-develop\">6. Development Goals</h2>\n<div class=\"sectionbody\">\n<div class=\"sect2\">\n<h3 id=\"jkube:deploy\">6.1. <strong>k8s:deploy</strong></h3>\n<div class=\"paragraph\">\n<p>This is the main goal for building your docker image, generating the kubernetes resources and deploying them into the cluster (insofar your pom.xml is set up correct; keep reading :)).</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn k8s:deploy</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This goal is designed to run <a href=\"#jkube:build\"><strong>k8s:build</strong></a> and <a href=\"#jkube:resource\"><strong>k8s:resource</strong></a> before the deploy <strong>if</strong> you have the goals bound in your pom.xml:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n <version>1.0.2</version>\n\n <!-- Connect k8s:resource, k8s:build and k8s:helm to lifecycle phases -->\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>build</goal>\n <goal>helm</goal>\n </goals>\n </execution>\n </executions>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Effectively this builds your project then invokes these goals:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><a href=\"#jkube:build\"><strong>k8s:build</strong></a></p>\n</li>\n<li>\n<p><a href=\"#jkube:apply\"><strong>k8s:apply</strong></a></p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>By default the behaviour of resource goal is it generates <code>route.yml</code> for a service if you have not done any configuration changes. Sometimes there may be case when you want to generate route.yml but do not want to create route resource on OpenShift Cluster. This can be achieved by the following configuration.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example for not generating route resource on your cluster</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n <version>1.0.2</version>\n <configuration>\n <enricher>\n <excludes>\n <exclude>jkube-expose</exclude>\n </excludes>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"jkube:undeploy\">6.2. <strong>k8s:undeploy</strong></h3>\n<div class=\"paragraph\">\n<p>This goal is for deleting the kubernetes resources that you deployed via the <a href=\"#jkube:apply\"><strong>k8s:apply</strong></a> or <a href=\"#jkube:deploy\"><strong>k8s:deploy</strong></a> goals</p>\n</div>\n<div class=\"paragraph\">\n<p>It iterates through all the resources generated by the <a href=\"#jkube:resource\"><strong>k8s:resource</strong></a> goal and deletes them from your current kubernetes cluster.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn k8s:undeploy</code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"jkube:log\">6.3. <strong>k8s:log</strong></h3>\n<div class=\"paragraph\">\n<p>This goal tails the log of the app that you deployed via the <a href=\"#jkube:deploy\"><strong>k8s:deploy</strong></a> goal</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn k8s:log</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>You can then terminate the output by hitting <code>Ctrl+C</code></p>\n</div>\n<div class=\"paragraph\">\n<p>If you wish to get the log of the app and then terminate immediately then try:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn k8s:log -Djkube.log.follow=false</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This lets you pipe the output into grep or some other tool</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn k8s:log -Djkube.log.follow=false | grep Exception</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>If your app is running in multiple pods you can configure the pod name to log via the <code>jkube.log.pod</code> property, otherwise it defaults to the latest pod:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn k8s:log -Djkube.log.pod=foo</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>If your pod has multiple containers you can configure the container name to log via the <code>jkube.log.container</code> property, otherwise it defaults to the first container:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn k8s:log -Djkube.log.container=foo</code></pre>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"Supported-Properties-Log\">6.3.1. Supported Properties for Log goal</h4>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 20. Options available with log goal</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>logFollow</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Get follow logs for your application inside Kubernetes.</p>\n<p class=\"tableblock\"> Defaults to <code>true</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.log.follow</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>logContainer</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Get logs of some specific container inside your application Deployment.</p>\n<p class=\"tableblock\"> Defaults to <code>null</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.log.container</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>logPod</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Get logs of some specific pod inside your application Deployment.</p>\n<p class=\"tableblock\"> Defaults to <code>null</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.log.pod</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"jkube:debug\">6.4. <strong>k8s:debug</strong></h3>\n<div class=\"paragraph\">\n<p>This goal enables debugging in your Java app and then port forwards from localhost to the latest running pod of your app so that you can easily debug your app from your Java IDE.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn k8s:debug</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Then follow the on screen instructions.</p>\n</div>\n<div class=\"paragraph\">\n<p>The default debug port is <code>5005</code>. If you wish to change the local port to use for debugging then pass in the <code>jkube.debug.port</code> parameter:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn k8s:debug -Djkube.debug.port=8000</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Then in your IDE you start a Remote debug execution using this remote port using localhost and you should be able to set breakpoints and step through your code.</p>\n</div>\n<div class=\"paragraph\">\n<p>This lets you debug your apps while they are running inside a Kubernetes cluster - for example if you wish to debug a REST endpoint while another pod is invoking it.</p>\n</div>\n<div class=\"paragraph\">\n<p>Debug is enabled via the <code>JAVA_ENABLE_DEBUG</code> environment variable being set to <code>true</code>. This environment variable is used for all the standard Java docker images used by Spring Boot, flat classpath and executable JAR projects and Wildfly Swarm. If you use your own custom docker base image you may wish to also respect this environment variable too to enable debugging.</p>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_speeding_up_debugging\">6.4.1. Speeding up debugging</h4>\n<div class=\"paragraph\">\n<p>By default the <code>k8s:debug</code> goal has to edit your Deployment to enable debugging then wait for a pod to start. It might be in development you frequently want to debug things and want to speed things up a bit.</p>\n</div>\n<div class=\"paragraph\">\n<p>If so you can enable debug mode for each build via the <code>jkube.debug.enabled</code> property.</p>\n</div>\n<div class=\"paragraph\">\n<p>e.g. you can pass this property on the command line:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn k8s:deploy -Djkube.debug.enabled=true</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Or you can add something like this to your <code>~/.m2/settings.xml</code> file so that you enable debug mode for all maven builds on your laptop by using a profile :</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><?xml version=\"1.0\"?>\n<settings>\n <profiles>\n <profile>\n <id>enable-debug</id>\n <activation>\n <activeByDefault>true</activeByDefault>\n </activation>\n <properties>\n <jkube.debug.enabled>true</jkube.debug.enabled>\n </properties>\n </profile>\n </profiles>\n</settings></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Then whenever you type the <code>k8s:debug</code> goal there is no need for the maven goal to edit the <code>Deployment</code> and wait for a pod to restart; we can immediately start debugging when you type:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn k8s:debug</code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_debugging_with_suspension\">6.4.2. Debugging with suspension</h4>\n<div class=\"paragraph\">\n<p>The <code>k8s:debug</code> goal allows to attach a remote debugger to a running container, but the application is free to execute when the debugger is not attached.\nIn some cases, you may want to have complete control on the execution, e.g. to investigate the application behavior at startup. This can be done using the <code>jkube.debug.suspend</code> flag:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn k8s:debug -Djkube.debug.suspend</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The suspend flag will set the <code>JAVA_DEBUG_SUSPEND</code> environment variable to <code>true</code> and <code>JAVA_DEBUG_SESSION</code> to a random number in your deployment.\nWhen the <code>JAVA_DEBUG_SUSPEND</code> environment variable is set, standard docker images will use <code>suspend=y</code> in the JVM startup options for debugging.</p>\n</div>\n<div class=\"paragraph\">\n<p>The <code>JAVA_DEBUG_SESSION</code> environment variable is always set to a random number (each time you run the debug goal with the suspend flag) in order to tell Kubernetes to restart the pod.\nThe remote application will start only after a remote debugger is attached. You can use the remote debugging feature of your IDE to connect (on <code>localhost</code>, port <code>5005</code> by default).</p>\n</div>\n<div class=\"admonitionblock warning\">\n<table>\n<tr>\n<td class=\"icon\">\n<i class=\"fa icon-warning\" title=\"Warning\"></i>\n</td>\n<td class=\"content\">\nThe <code>jkube.debug.suspend</code> flag will disable readiness probes in the Kubernetes deployment in order to start port-forwarding during the early phases of application startup\n</td>\n</tr>\n</table>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"Supported-Properties-Debug\">6.4.3. Supported Properties For Debug Goal</h4>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 21. Options available with debug goal</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>debugPort</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Default port available for debugging your application inside Kubernetes.</p>\n<p class=\"tableblock\"> Defaults to <code>5005</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.debug.port</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>debugSuspend</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Disables readiness probes in Kubernetes Deployment in order to start port forwarding during early phases of\n application startup.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.debug.suspend</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"jkube:watch\">6.5. <strong>k8s:watch</strong></h3>\n<div class=\"paragraph\">\n<p>This goal is used to monitor the project workspace for changes and automatically trigger a redeploy of the application\nrunning on Kubernetes. There are two kinds of watchers present at the moment:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Docker Image Watcher(watches docker images)</p>\n</li>\n<li>\n<p>Spring Boot Watcher(based on Spring Boot Devtools)</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>Before entering the watch mode, this goal must generate the docker image and the Kubernetes resources\n(optionally including some development libraries/configuration),\nand deploy the app on Kubernetes. Lifecycle bindings should be configured as follows to allow\nthe generation of such resources.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Lifecycle bindings for k8s:watch</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n\n <!-- ... -->\n\n <executions>\n <execution>\n <goals>\n <goal>resource</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>For any application having <code>resource</code> and <code>build</code> goals bound to the lifecycle, the following\ncommand can be used to run the watch task.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-bash\" data-lang=\"bash\">mvn k8s:watch</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This plugin supports different watcher providers, enabled automatically if the project satisfies certain conditions.</p>\n</div>\n<div class=\"paragraph\">\n<p>Watcher providers can also be configured manually. The <a href=\"#generator-example\">Generator example</a> is a good blueprint, simply replace <code><generator></code> with <code><watcher></code>. The configuration is structurally identical.</p>\n</div>\n<div class=\"sect3\">\n<h4 id=\"watcher-spring-boot\">6.5.1. Spring Boot</h4>\n<div class=\"paragraph\">\n<p>This watcher is enabled by default for all Spring Boot projects. It performs the following actions:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>deploys your application with Spring Boot DevTools enabled</p>\n</li>\n<li>\n<p>tails the log of the latest running pod for your application</p>\n</li>\n<li>\n<p>watches the local development build of your Spring Boot based application and then triggers a reload of the application when there are changes</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>You need to make sure that <code>devtools</code> is included in the repacked archive, as shown in the following listing:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.springframework.boot</groupId>\n <artifactId>spring-boot-maven-plugin</artifactId>\n <configuration>\n <excludeDevtools>false</excludeDevtools>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Then you need to set a <code>spring.devtools.remote.secret</code> in application.properties, as shown in the following example:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre>spring.devtools.remote.secret=mysecret</pre>\n</div>\n</div>\n<div class=\"admonitionblock warning\">\n<table>\n<tr>\n<td class=\"icon\">\n<i class=\"fa icon-warning\" title=\"Warning\"></i>\n</td>\n<td class=\"content\">\nSpring devtools automatically ignores projects named <code>spring-boot</code>, <code>spring-boot-devtools</code>,\n <code>spring-boot-autoconfigure</code>, <code>spring-boot-actuator</code>, <code>and spring-boot-starter</code>\n</td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<p>You can try it on any spring boot application via:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn k8s:watch</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Once the goal starts up the spring boot RemoteSpringApplication it will watch for local development changes.</p>\n</div>\n<div class=\"paragraph\">\n<p>e.g. if you edit the java code of your app and then build it via something like this:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn package</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>You should see your app reload on the fly in the shell running the <a href=\"#jkube:watch\"><strong>k8s:watch</strong></a> goal!</p>\n</div>\n<div class=\"paragraph\">\n<p>There is also support for LiveReload as well.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"watcher-docker-image\">6.5.2. Docker Image</h4>\n<div class=\"paragraph\">\n<p>This is a generic watcher that can be used in Kubernetes mode only. Once activated, it listens for changes in the project workspace\n in order to trigger a redeploy of the application. This enables rebuilding of images and restarting of containers in case of updates.</p>\n</div>\n<div class=\"paragraph\">\n<p>There are five watch modes, which can be specified in multiple ways:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>build</code>: Automatically rebuild one or more Docker images when one of the files selected by an assembly changes. This works for all files included in assembly.</p>\n</li>\n<li>\n<p><code>run</code>: Automatically restart your application when their associated images change.</p>\n</li>\n<li>\n<p><code>copy</code>: Copy changed files into the running container. This is the fast way to update a container, however the target container must support hot deploy, too so that it makes sense. Most application servers like Tomcat supports this.</p>\n</li>\n<li>\n<p><code>both</code>: Enables both <code>build</code> and <code>run</code>. <strong>This is the default</strong>.</p>\n</li>\n<li>\n<p><code>none</code>: Image is completely ignored for watching.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>The watcher can be activated e.g. by running this command in another shell:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn package</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The watcher will detect that the binary artifact has changed and will first rebuild the docker image,\nthen start a redeploy of the Kubernetes pod.</p>\n</div>\n<div class=\"paragraph\">\n<p>It uses the watch feature of the <a href=\"https://dmp.fabric8.io/#docker:watch\">docker-maven-plugin</a> under the hood.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"Supported-Properties-Watch\">6.5.3. Supported Properties for Watch goal</h4>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 22. Options available with watch goal</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>kubernetesManifest</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The generated kubernetes YAML file.</p>\n<p class=\"tableblock\"> Defaults to <code>${basedir}/target/classes/META-INF/jkube/kubernetes.yml</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.kubernetesManifest</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>watchMode</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>How to watch for image changes.</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>copy</code>: Copy watched artifacts into container</p>\n</li>\n<li>\n<p><code>build</code>: Build only images</p>\n</li>\n<li>\n<p><code>run</code>: Run images</p>\n</li>\n<li>\n<p><code>both</code>: Build and run images</p>\n</li>\n<li>\n<p><code>none</code>: Neither build nor run</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>Defaults to <code>both</code>.</p>\n</div></div></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.watch.mode</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>watchInterval</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Interval in milliseconds (how often to check for changes).</p>\n<p class=\"tableblock\"> Defaults to <code>5000</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.watch.interval</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>keepRunning</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set to true all containers will be kept running after k8s:watch has been stopped.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.watch.keepRunning</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>watchPostGoal</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A maven goal which should be called if a rebuild or a restart has been performed.</p>\n<p class=\"tableblock\"> This goal must have the format <code><pluginGroupId>:<pluginArtifactId>:<goal></code> and the plugin must be\n configured in the pom.xml.</p>\n<p class=\"tableblock\"> For example a post-goal <code>com.example:group:delete-pods</code> will trigger the <code>delete-pods</code>\n goal of this hypothetic example.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.watch.postGoal</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>watchPostExec</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A command which is executed within the container after files are copied into this container\n when watchMode is copy. Note that this container must be running.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.watch.postExec</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>keepContainer</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If this is set to <code>false</code> (and <code>keepRunning</code> is disabled) then all containers will be removed after\n they have been stopped.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.watch.keepContainer</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>removeVolumes</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set to <code>true</code> remove any volumes associated with the container as well.</p>\n<p class=\"tableblock\"> This option will be ignored if either <code>keepContainer</code> or <code>keepRunning</code> is <code>true</code>.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.watch.removeVolumes</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>watchShowLogs</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set to <code>true</code>, logs will be shown for watched container.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.watch.showLogs</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>watchFollow</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If <code>watchShowLogs</code> is set to <code>false</code>, and there is a run image configuration, logs are followed\n if set to <code>true</code>.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.watch.follow</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"generators\">7. Generators</h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>The usual way to define Docker images is with the plugin configuration as explained in <a href=\"#jkube:build\"><strong>k8s:build</strong></a>. This can either be done completely within the <code>pom.xml</code> or by referring to an external Dockerfile. Since kubernetes-maven-plugin includes <a href=\"https://github.com/jkubeio/docker-maven-plugin\">docker-maven-plugin</a> the way by which images are built is identical.</p>\n</div>\n<div class=\"paragraph\">\n<p>However, this plugin provides an additional route for defining image configurations. This is done by so called <em>Generators</em>. A generator is a Java component providing an auto-detection mechanism for certain build types like a Spring Boot build or a plain Java build. As soon as a <em>Generator</em> detects that it is applicable it will be called with the list of images configured in the <code>pom.xml</code>. Typically a generator only creates dynamically a new image configuration if this list is empty. But a generator is free to also add new images to an existing list or even change the current image list.</p>\n</div>\n<div class=\"paragraph\">\n<p>You can easily create your own generator as explained in <a href=\"#generators-api\">Generator API</a>. This section will focus on existing generators and how you can configure them.</p>\n</div>\n<div class=\"paragraph\">\n<p>The included <em>Generators</em> are enabled by default, but you can easily disable them or only select a certain set of generators. Each generator has a <em>name</em>, which is unique for a generator.</p>\n</div>\n<div class=\"paragraph\">\n<p>The generator configuration is embedded in a <code><generator></code> configuration section:</p>\n</div>\n<div id=\"generator-example\" class=\"listingblock\">\n<div class=\"title\">Example for a generator configuration</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n ....\n <configuration>\n ....\n <generator> <i class=\"conum\" data-value=\"1\"></i><b>(1)</b>\n <includes> <i class=\"conum\" data-value=\"2\"></i><b>(2)</b>\n <include>spring-boot</include>\n </includes>\n <config> <i class=\"conum\" data-value=\"3\"></i><b>(3)</b>\n <spring-boot> <i class=\"conum\" data-value=\"4\"></i><b>(4)</b>\n <alias>ping</alias>\n </spring-boot>\n </config>\n </generator>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td>Start of generators' configuration.</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"2\"></i><b>2</b></td>\n<td>Generators can be included and excluded. Includes have precedence, and the generators are called in the given order.</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"3\"></i><b>3</b></td>\n<td>Configuration for individual generators.</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"4\"></i><b>4</b></td>\n<td>The config is a map of supported config values. Each section is embedded in a tag named after the generator.</td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<p>The following sub-elements are supported:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 23. Generator configuration</caption>\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 85.7143%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code><includes></code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Contains one ore more <code><include></code> elements with generator names which should be included. If given only this list of generators are included in this given order. The order is important because by default only the first matching generator kicks in. The generators from every active profile are included, too. However the generators listed here are moved to the front of the list, so that they are called first. Use the profile <code>raw</code> if you want to explicitly set the complete list of generators.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code><excludes></code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Holds one or more <code><exclude></code> elements with generator names to exclude. If set then all detected generators are used except the ones mentioned in this section.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code><config></code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Configuration for all generators. Each generator support a specific set of configuration values as described in the documentation. The subelements of this section are generator names to configure. E.g. for generator <code>spring-boot</code>, the sub-element is called <code><spring-boot></code>. This element then holds the specific generator configuration like <code><name></code> for specifying the final image name. See above for an example. Configuration coming from profiles are merged into this config, but not overriding the configuration specified here.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Beside specifying generator configuration in the plugin’s configuration it can be set directly with properties, too:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example generator property config</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn -Djkube.generator.java-exec.webPort=8082</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The general scheme is a prefix <code>jkube.generator.</code> followed by the unique generator name and then the generator specific key.</p>\n</div>\n<div class=\"paragraph\">\n<p>In addition to the provided default <em>Generators</em> described in the next section <a href=\"#generators-default\">Default Generators</a>, custom generators can be easily added. There are two ways to include generators:</p>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Plugin dependency</div>\n<p>You can declare the generator holding jars as dependency to this plugin as shown in this example</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <artifactId>kubernetes-maven-plugin</artifactId>\n ....\n <dependencies>\n <dependency>\n <groupId>io.acme</groupId>\n <artifactId>mygenerator</artifactId>\n <version>1.0</version>\n </dependency>\n </dependencies>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Compile time dependency</div>\n<p>Alternatively and if your application code comes with a custom generator you can set the global configuration option <code>useProjectClasspath</code> (property: <code>jkube.useProjectClasspath</code>) to true. In this case also the project artifact and its dependencies are looked up for <em>Generators</em>. See <a href=\"#generators-api\">Generator API</a> for details how to write your own generators.</p>\n</div>\n<div class=\"sect2\">\n<h3 id=\"generators-default\">7.1. Default Generators</h3>\n<div class=\"paragraph\">\n<p>All default generators examine the build information for certain aspects and generate a Docker build configuration on the fly. They can be configured to a certain degree, where the configuration is generator specific.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 24. Default Generators</caption>\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 66.6668%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Generator</th>\n<th class=\"tableblock halign-left valign-top\">Name</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-java-exec\">Java Applications</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>java-exec</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Generic generator for flat classpath and fat-jar Java applications</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-spring-boot\">Spring Boot</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>spring-boot</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Spring Boot specific generator</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-wildfly-swarm\">Wildfly Swarm</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>wildfly-swarm</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Generator for Wildfly Swarm apps</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-thorntail-v2\">Thorntail v2</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>thorntail-v2</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Generator for Thorntail v2 apps</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-vertx\">Vert.x</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Generator for Vert.x applications</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-karaf\">Karaf</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>karaf</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Generator for Karaf based apps</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-webapp\">Web applications</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>webapps</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Generator for WAR based applications supporting Tomcat, Jetty and Wildfly base images</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-quarkus\">Quarkus</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>Quarkus</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Generator for Quarkus based applications</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-openliberty\">Open Liberty</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>openliberty</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Generator for Open Liberty applications</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-wildfly-jar\">WildFly Bootable JAR</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>wildfly-jar</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Generator for WildFly Bootable JAR applications</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>There are some configuration options which are shared by all generators:</p>\n</div>\n<table id=\"generator-options-common\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 25. Common generator options</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>add</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">When set to <code>true</code>, then the generator <em>adds</em> to an existing image configuration. By default this is disabled, so\n that a generator only kicks in when there are no other image configurations in the build, which are either configured\n directly for a <code>k8s:build</code> or already added by a generator which has been run previously.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.add</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>alias</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">An alias name for referencing this image in various other parts of the configuration. This is also used in the log\n output. The default alias name is the name of the generator.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.alias</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>from</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">This is the base image from where to start when creating the images. By default the generators make an opinionated\n decision for the base image which are described in the respective generator section.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.from</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>fromMode</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Whe using OpenShift S2I builds the base image can be either a plain docker image (mode: <code>jib</code>) or a reference to an\n <a href=\"https://docs.openshift.com/container-platform/3.3/architecture/core_concepts/builds_and_image_streams.html\"> ImageStreamTag</a>\n (mode: <code>istag</code>). In the case of an ImageStreamTag, <code>from</code> has to be specified in the form <code>namespace/image-stream:tag</code>.\n The mode takes only effect when running in OpenShift mode.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.fromMode</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>name</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Docker image name used when doing Docker builds. For OpenShift S2I builds its the name of the image stream. This\n can be a pattern as descibed in <a href=\"#image-name-placeholders\">Name Placeholders</a>. The default is <code>%g/%a:%l</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.name</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>registry</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A optional Docker registry used when doing Docker builds. It has no effect for OpenShift S2I builds.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.registry</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>When used as properties they can be directly referenced with the property names above.</p>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-java-exec\">7.1.1. Java Applications</h4>\n<div class=\"paragraph\">\n<p>One of the most generic <em>Generators</em> is the <code>java-exec</code> generator.\nIt is responsible for starting up arbitrary Java application.\nIt knows how to deal with fat-jar applications where the application and all dependencies are included within a single jar and the <code>MANIFEST.MF</code> within the jar references a main class.\nBut also flat classpath applications, where the dependencies are separate jar files and a main class is given.</p>\n</div>\n<div class=\"paragraph\">\n<p>If no main class is explicitly configured, the plugin first attempts to locate a fat jar.\nIf the Maven build creates a JAR file with a <code>META-INF/MANIFEST.MF</code> containing a <code>Main-Class</code> entry, then this is considered to be the fat jar to use.\nIf there are more than one of such files then the largest one is used.</p>\n</div>\n<div class=\"paragraph\">\n<p>If a main class is configured (see below) then the image configuration will contain the application jar plus all dependency jars.\nIf no main class is configured as well as no fat jar being detected, then this <em>Generator</em> tries to detect a single main class by searching for <code>public static void main(String args[])</code> among the application classes. If exactly one class is found this is considered to be the main class. If no or more than one is found the <em>Generator</em> finally does nothing.</p>\n</div>\n<div class=\"paragraph\">\n<p>It will use the following base image by default, but as explained <a href=\"#generator-options-common\">above</a> and can be changed with the <code>from</code> configuration.</p>\n</div>\n<table id=\"generator-java-exec-from\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 26. Java Base Images</caption>\n<colgroup>\n<col style=\"width: 7.6923%;\">\n<col style=\"width: 30.7692%;\">\n<col style=\"width: 30.7692%;\">\n<col style=\"width: 30.7693%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\"></th>\n<th class=\"tableblock halign-left valign-top\">Docker Build</th>\n<th class=\"tableblock halign-left valign-top\">S2I Build</th>\n<th class=\"tableblock halign-left valign-top\">ImageStream</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>Community</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>quay.io/jkube/jkube-java-binary-s2i</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>quay.io/jkube/jkube-java-binary-s2i</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube-java</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>These images always refer to the latest tag.</p>\n</div>\n<div class=\"paragraph\">\n<p>When a <code>fromMode</code> of <code>istag</code> is used to specify an <code>ImageStreamTag</code> and when no <code>from</code> is given, then as default the\n<code>ImageStreamTag</code> <code>jkube-java</code> in the namespace <code>openshift</code> is chosen.\nBy default, <code>fromMode = \"docker\"</code> which use the a plain Docker image reference for the S2I builder image.</p>\n</div>\n<div class=\"paragraph\">\n<p>Beside the common configuration parameters described in the table <a href=\"#generator-options-common\">common generator options</a>\nthe following additional configuration options are recognized:</p>\n</div>\n<table id=\"generator-java-exec-options\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 27. Java Application configuration options</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>targetDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Directory within the generated image where to put the detected artefacts into. Change this only if the base image is\n changed, too.</p>\n<p class=\"tableblock\"> Defaults to <code>/deployments</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.java-exec.targetDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>jolokiaPort</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Port of the Jolokia agent exposed by the base image. Set this to 0 if you don’t want to expose the Jolokia port.</p>\n<p class=\"tableblock\"> Defaults to <code>8778</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.java-exec.jolokiaPort</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>mainClass</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Main class to call. If not given first a check is performed to detect a fat-jar (see above). Next a class is looked up\n by scanning <code>target/classes</code> for a single class with a main method. If no such class is found or if more than one is\n found, then this generator does nothing.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.java-exec.mainClass</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>prometheusPort</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Port of the Prometheus jmx_exporter exposed by the base image. Set this to 0 if you don’t want to expose the Prometheus\n port.</p>\n<p class=\"tableblock\"> Defaults to <code>9779</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.java-exec.prometheusPort</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>webPort</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Port to expose as service, which is supposed to be the port of a web application. Set this to 0 if you don’t want to\n expose a port.</p>\n<p class=\"tableblock\"> Defaults to <code>8080</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.java-exec.webPort</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>The exposed ports are typically later on use by <a href=\"#enrichers\">Enrichers</a> to create default Kubernetes or OpenShift services.</p>\n</div>\n<div class=\"paragraph\">\n<p>You can add additional files to the target image within <code>baseDir</code> by placing files into <code>src/main/jkube-includes</code>.\nThese will be added with mode <code>0644</code>, while everything in <code>src/main/jkube-includes/bin</code> will be added with <code>0755</code>.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-spring-boot\">7.1.2. Spring Boot</h4>\n<div class=\"paragraph\">\n<p>This generator is called <code>spring-boot</code> and gets activated when it finds a <code>spring-boot-maven-plugin</code> in the pom.xml.</p>\n</div>\n<div class=\"paragraph\">\n<p>This generator is based on the <a href=\"#generator-java-exec\">Java Application</a> Generator and inherits all of its configuration values. The generated container port is read from the <code>server.port</code> property <code>application.properties</code>, defaulting to <code>8080</code> if it is not found. It also uses the same default images as the <a href=\"#generator-java-exec-from\">java-exec Generator</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>Beside the <a href=\"#generator-options-common\">common generator options</a> and the <a href=\"#generator-java-exec-options\">java-exec options</a> the following additional configuration is recognized:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 28. Spring-Boot configuration options</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>color</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set, force the use of color in the Spring Boot console output.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.spring-boot.color</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>The generator adds Kubernetes liveness and readiness probes pointing to either the management or server port as read from the <code>application.properties</code>.\nIf the <code>management.port</code> (for Spring Boot 1) or <code>management.server.port</code> (for Spring Boot 2) and <code>management.ssl.key-store</code> (for Spring Boot 1) or <code>management.server.ssl.key-store</code> (for Spring Boot 2) properties are set in <code>application.properties</code> otherwise or <code>server.ssl.key-store</code> property is set in <code>application.properties</code> then the probes are automatically set to use <code>https</code>.</p>\n</div>\n<div class=\"paragraph\">\n<p>The generator works differently when called together with <code>k8s:watch</code>.\nIn that case it enables support for <a href=\"http://docs.spring.io/spring-boot/docs/current/reference/html/using-boot-devtools.html\">Spring Boot Developer Tools</a> which allows for hot reloading of the Spring Boot app.\nIn particular, the following steps are performed:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>If a secret token is not provided within the Spring Boot application configuration <code>application.properties</code> or <code>application.yml</code> with the key <code>spring.devtools.remote.secret</code> then a custom secret token is created and added to <code>application.properties</code></p>\n</li>\n<li>\n<p>Add <code>spring-boot-devtools.jar</code> as <code>BOOT-INF/lib/spring-devtools.jar</code> to the spring-boot fat jar.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>Since during <code>k8s:watch</code> the application itself within the <code>target/</code> directory is modified for allowing easy reloading you must ensure that you do a <code>mvn clean</code> before building an artifact which should be put into production.\nSince the released version are typically generated with a CI system which does a clean build anyway this should be only a theoretical problem.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-wildfly-swarm\">7.1.3. Wildfly Swarm</h4>\n<div class=\"paragraph\">\n<p>The WildFly Swarm generator detects a WildFly Swarm build and disables the Prometheus Java agent because of this <a href=\"https://issues.jboss.org/browse/THORN-1859\">issue</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>Otherwise this generator is identical to the <a href=\"#generator-java-exec\">java-exec generator</a>.\nIt supports the <a href=\"#generator-options-common\">common generator options</a> and the <a href=\"#generator-java-exec-options\"><code>java-exec</code> options</a>.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-thorntail-v2\">7.1.4. Thorntail v2</h4>\n<div class=\"paragraph\">\n<p>The Thorntail v2 generator detects a Thorntail v2 build and disables the Prometheus Java agent because of this <a href=\"https://issues.jboss.org/browse/THORN-1859\">issue</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>Otherwise this generator is identical to the <a href=\"#generator-java-exec\">java-exec generator</a>. It supports the <a href=\"#generator-options-common\">common generator options</a> and the <a href=\"#generator-java-exec-options\"><code>java-exec</code> options</a>.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-vertx\">7.1.5. Vert.x</h4>\n<div class=\"paragraph\">\n<p>The Vert.x generator detects an application using Eclipse Vert.x. It generates the metadata to start the application as a fat jar.</p>\n</div>\n<div class=\"paragraph\">\n<p>Currently, this generator is enabled if:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>you are using the Vert.x Maven Plugin (<a href=\"https://github.com/reactiverse/vertx-maven-plugin\" class=\"bare\">https://github.com/reactiverse/vertx-maven-plugin</a>)</p>\n</li>\n<li>\n<p>you are depending on <code>io.vertx:vertx-core</code> and uses the Maven Shader plugin</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>Otherwise this generator is identical to the <a href=\"#generator-java-exec\">java-exec generator</a>. It supports the <a href=\"#generator-options-common\">common generator options</a> and the <a href=\"#generator-java-exec-options\"><code>java-exec</code> options</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>The generator automatically:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>enable metrics and JMX publishing of the metrics when <code>io.vertx:vertx-dropwizard-metrics</code> is in the project’s classpath / dependencies.</p>\n</li>\n<li>\n<p>enable clustering when a Vert.x cluster manager is available in the project’s classpath / dependencies. this is done by appending <code>-cluster</code> to the command line.</p>\n</li>\n<li>\n<p>Force IPv4 stack when <code>vertx-infinispan</code> is used.</p>\n</li>\n<li>\n<p>Disable the async DNS resolver to fallback to the regular JVM DNS resolver.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>You can pass application parameter by setting the <code>JAVA_ARGS</code> env variable. You can pass system properties either using the same variable or using <code>JAVA_OPTIONS</code>. For instance, create <code>src/main/jkube/deployment.yml</code> with the following content to configure <code>JAVA_ARGS</code>:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">spec:\n template:\n spec:\n containers:\n - env:\n - name: JAVA_ARGS\n value: \"-Dfoo=bar -cluster -instances=2\"</code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-karaf\">7.1.6. Karaf</h4>\n<div class=\"paragraph\">\n<p>This generator named <code>karaf</code> kicks in when the build uses a <code>karaf-maven-plugin</code>. By default the following base images are used:</p>\n</div>\n<table id=\"generator-karaf-from\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 29. Karaf Base Images</caption>\n<colgroup>\n<col style=\"width: 7.6923%;\">\n<col style=\"width: 30.7692%;\">\n<col style=\"width: 30.7692%;\">\n<col style=\"width: 30.7693%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\"></th>\n<th class=\"tableblock halign-left valign-top\">Docker Build</th>\n<th class=\"tableblock halign-left valign-top\">S2I Build</th>\n<th class=\"tableblock halign-left valign-top\">ImageStream</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>Community</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>quay.io/jkube/jkube-karaf-binary-s2i</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>quay.io/jkube/jkube-karaf-binary-s2i</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube-karaf</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>When a <code>fromMode</code> of <code>istag</code> is used to specify an <code>ImageStreamTag</code> and when no <code>from</code> is given, then as default the\n<code>ImageStreamTag</code> <code>jkube-karaf</code> in the namespace <code>openshift</code> is chosen.</p>\n</div>\n<div class=\"paragraph\">\n<p>In addition to the <a href=\"#generator-options-common\">common generator options</a> this generator can be configured with the following options:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 30. Karaf configuration options</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>baseDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Directory within the generated image where to put the detected artifacts into. Change this only if the base image is\n changed, too.</p>\n<p class=\"tableblock\"> Defaults to <code>/deployments</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.karaf.baseDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>webPort</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Port to expose as service, which is supposed to be the port of a web application. Set this to 0 if you don’t want to\nexpose a port.</p>\n<p class=\"tableblock\"> Defaults to <code>8080</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.karaf.webPort</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-webapp\">7.1.7. Web Applications</h4>\n<div class=\"paragraph\">\n<p>The <code>webapp</code> generator tries to detect WAR builds and selects a base servlet container image based on the configuration found in the <code>pom.xml</code>:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>A <strong>Tomcat</strong> base image is selected when a <code>tomcat6-maven-plugin</code> or <code>tomcat7-maven-plugin</code> is present or when a <code>META-INF/context.xml</code> could be found in the classes directory.</p>\n</li>\n<li>\n<p>A <strong>Jetty</strong> base image is selected when a <code>jetty-maven-plugin</code> is present or one of the files <code>WEB-INF/jetty-web.xml</code> or <code>WEB-INF/jetty-logging.properties</code> is found.</p>\n</li>\n<li>\n<p>A <strong>Wildfly</strong> base image is chosen for a given <code>jboss-as-maven-plugin</code> or <code>wildfly-maven-plugin</code> or when a Wildfly specific deployment descriptor like <code>jboss-web.xml</code> is found.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>The base images chosen are:</p>\n</div>\n<table id=\"generator-webapp-from\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 31. Webapp Base Images</caption>\n<colgroup>\n<col style=\"width: 11.1111%;\">\n<col style=\"width: 44.4444%;\">\n<col style=\"width: 44.4445%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\"></th>\n<th class=\"tableblock halign-left valign-top\">Docker Build</th>\n<th class=\"tableblock halign-left valign-top\">S2I Build</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>Tomcat</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>quay.io/jkube/jkube-tomcat9-binary-s2i</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>quay.io/jkube/jkube-tomcat9-binary-s2i</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>Jetty</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>quay.io/jkube/jkube-jetty9-binary-s2i</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>quay.io/jkube/jkube-jetty9-binary-s2i</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>Wildfly</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jboss/wildfly</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"https://github.com/wildfly/wildfly-s2i\"><code>quay.io/wildfly/wildfly-centos7</code></a></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>In addition to the <a href=\"#generator-options-common\">common generator options</a> this generator can be configured with the following options:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 32. Webapp configuration options</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>server</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Fix server to use in the base image. Can be either <strong>tomcat</strong>, <strong>jetty</strong> or <strong>wildfly</strong>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.webapp.server</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>targetDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Where to put the war file into the target image. By default its selected by the base image chosen but can be\n overwritten with this option.</p>\n<p class=\"tableblock\"> Defaults to <code>/deployments</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.webapp.targetDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>user</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">User and/or group under which the files should be added. The syntax of this options is descriped in\n <a href=\"#config-image-build-assembly-user\">Assembly Configuration</a>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.webapp.user</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>path</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Context path with which the application can be reached by default.</p>\n<p class=\"tableblock\"> Defaults to <code>/</code> (root context).</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.webapp.path</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>cmd</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Command to use to start the container. By default the base images startup command is used.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.webapp.cmd</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>ports</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Comma separated list of ports to expose in the image and which eventually are translated later to Kubernetes services.\n The ports depend on the base image and are selected automatically. But they can be overridden here.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.webapp.ports</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-quarkus\">7.1.8. Quarkus</h4>\n<div class=\"paragraph\">\n<p>The <code>Quarkus</code> generator tried to detect quarkus based projects looking at project <code>pom.xml</code>:</p>\n</div>\n<div class=\"paragraph\">\n<p>The base images chosen are:</p>\n</div>\n<table id=\"generator-quarkus-from\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 33. Webapp Base Images</caption>\n<colgroup>\n<col style=\"width: 11.1111%;\">\n<col style=\"width: 44.4444%;\">\n<col style=\"width: 44.4445%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\"></th>\n<th class=\"tableblock halign-left valign-top\">Docker Build</th>\n<th class=\"tableblock halign-left valign-top\">S2I Build</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>Native</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>registry.access.redhat.com/ubi8/ubi-minimal:8.1</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">---</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>Normal Build</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>openjdk:11</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">---</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"admonitionblock important\">\n<table>\n<tr>\n<td class=\"icon\">\n<i class=\"fa icon-important\" title=\"Important\"></i>\n</td>\n<td class=\"content\">\n<div class=\"paragraph\">\n<p>S2I builds are currently not yet supported for the Quarkus generator.</p>\n</div>\n</td>\n</tr>\n</table>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-openliberty\">7.1.9. Open Liberty</h4>\n<div class=\"paragraph\">\n<p>The Open Liberty generator runs when the Open Liberty plugin is enabled in the maven build.</p>\n</div>\n<div class=\"paragraph\">\n<p>The generator is similar to the <a href=\"#generator-java-exec\">java-exec generator</a>. It supports the <a href=\"#generator-options-common\">common generator options</a> and the <a href=\"#generator-java-exec-options\"><code>java-exec</code> options</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>For Open Liberty, the default value of webPort is 9080.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-wildfly-jar\">7.1.10. Wildfly JAR Generator</h4>\n<div class=\"paragraph\">\n<p>The Wildfly JAR generator detects a WildFly Bootable JAR build and disables the Jolokia and Prometheus Java agent.</p>\n</div>\n<div class=\"paragraph\">\n<p>Otherwise this generator is identical to the <a href=\"#generator-java-exec\">java-exec generator</a>. It supports the <a href=\"#generator-options-common\">common generator options</a> and the <a href=\"#generator-java-exec-options\"><code>java-exec</code> options</a>.</p>\n</div>\n<div class=\"sect4\">\n<h5 id=\"_support_for_slim_bootable_jar\">Support for slim Bootable JAR</h5>\n<div class=\"paragraph\">\n<p>A slim Bootable JAR is a JAR that retrieves JBoss module artifacts from a Maven local cache. Such JAR are smaller and start faster. The WildFly JAR generator\nhas a builtin support to install a maven local cache in the image.</p>\n</div>\n<div class=\"paragraph\">\n<p>In order to build a slim Bootable JAR, configure the <em>wildfly-jar-maven-plugin</em> for slim server and maven local cache generation:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre> <plugin>\n <groupId>org.wildfly.plugins</groupId>\n <artifactId>wildfly-jar-maven-plugin</artifactId>\n <configuration>\n <plugin-options>\n <!-- Build a slim Bootable JAR -->\n <jboss-maven-dist/>\n <!-- Path to the Maven local cache that the plugin generates during build.\n It contains JBoss module artifacts required by the server. -->\n <jboss-maven-repo>target/myapp-repo</jboss-maven-repo>\n </plugin-options>\n ...\n </configuration>\n <executions>\n <execution>\n <goals>\n <goal>package</goal>\n </goals>\n </execution>\n </executions>\n </plugin></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The generator detects the path of the generated maven local repository directory\n(value of the <em><jboss-maven-repo></em> element) and copies it into the image <em>/deployments/<repo directory name></em> directory.\nNB: A relative path is considered relative to the maven project base directory.</p>\n</div>\n<div class=\"paragraph\">\n<p>In order for the Bootable JAR to retrieve the JBoss modules artifacts, the java\noption <em>-Dmaven.repo.local=/deployments/<repo directory name></em> is automatically added to the launch options.</p>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"generators-api\">7.2. Generator API</h3>\n<div class=\"admonitionblock warning\">\n<table>\n<tr>\n<td class=\"icon\">\n<i class=\"fa icon-warning\" title=\"Warning\"></i>\n</td>\n<td class=\"content\">\nThe API is still a bit in flux and will be documented later. Please refer to the\n <a href=\"https://github.com/eclipse/jkube/blob/master/jkube-kit/generator/api/src/main/java/org/eclipse/jkube/generator/api/Generator.java\">Generator</a>\n Interface in the meantime.\n</td>\n</tr>\n</table>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"enrichers\">8. Enrichers</h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>Enriching is the complementary concept to <a href=\"#generators\">Generators</a>. Whereas Generators are used to create and customize Docker images, Enrichers are use to create and customize Kubernetes resource objects.</p>\n</div>\n<div class=\"paragraph\">\n<p>There are a lot of similarities to Generators:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Each Enricher has a unique name.</p>\n</li>\n<li>\n<p>Enrichers are looked up automatically from the plugin dependencies and there is a set of default enrichers delivered with this plugin.</p>\n</li>\n<li>\n<p>Enrichers are configured the same ways as generators</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>The <a href=\"#generator-example\">Generator example</a> is a good blueprint, simply replace <code><generator></code> with <code><enricher></code>. The configuration is structural identical:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 34. Enricher configuration</caption>\n<colgroup>\n<col style=\"width: 25%;\">\n<col style=\"width: 75%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code><includes></code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Contains one ore more <code><include></code> elements with enricher names which should be included. If given, only this list of enrichers are included in this order. The enrichers from every active profile are included, too. However the enrichers listed here are moved to the front of the list, so that they are called first. Use the profile <code>raw</code> if you want to explicitly set the complete list of enrichers.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code><excludes></code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Holds one or more <code><exclude></code> elements with enricher names to exclude. This means all the detected enrichers are used except the ones mentioned in this section.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code><config></code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Configuration for all enrichers. Each enricher supports a specific set of configuration values as described in its documentation. The subelements of this section are enricher names. E.g. for enricher <code>jkube-service</code>, the sub-element is called <code><jkube-service></code>. This element then holds the specific enricher configuration like <code><name></code> for the service name. Configuration coming from profiles are merged into this config, but not overriding the configuration specified here.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>This plugin comes with a set of default enrichers. In addition custom enrichers can be easily added by providing implementation of the <a href=\"#enricher-api\">Enricher API</a> and adding these as a dependency to the build.</p>\n</div>\n<div class=\"sect2\">\n<h3 id=\"enrichers-default\">8.1. Default Enrichers</h3>\n<div class=\"paragraph\">\n<p>kubernetes-maven-plugin comes with a set of enrichers which are enabled by default. There are two categories of default enrichers:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><a href=\"#enrichers-generic\"><strong>Generic Enrichers</strong></a> are used to add default resource object when they are missing or add common\nmetadata extracted from the given build information.</p>\n</li>\n<li>\n<p><a href=\"#enrichers-specific\"><strong>Specific Enrichers</strong></a> are enrichers which are focused on a certain tech stack that they detect.</p>\n</li>\n</ul>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 35. Default Enrichers Overview</caption>\n<colgroup>\n<col style=\"width: 22.2222%;\">\n<col style=\"width: 77.7778%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Enricher</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-configmap-file\">jkube-configmap-file</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add ConfigMap elements defined as XML or as annotation.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-container-env-java-options\">jkube-container-env-java-options</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Merges <code>JAVA_OPTIONS</code> environment variable defined in <a href=\"#config-image-build\">Build configuration (<a href=\"#config-image\"><image> </a>)</a>\n environment (<code>env</code>) with <code>Container</code> <code>JAVA_OPTIONS</code> environment variable added\n by other enrichers, XML configuration or fragment.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-controller\">jkube-controller</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Create default controller (replication controller, replica set or deployment <a href=\"https://kubernetes.io/docs/concepts/workloads/controllers/\">Kubernetes doc</a>) if missing.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-dependency\">jkube-dependency</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Examine build dependencies for <code>kubernetes.yml</code> and add the objects found therein.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-git\">jkube-git</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Check local <code>.git</code> directory and add build information as annotations.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-image\">jkube-image</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add the image name into a <code>PodSpec</code> of replication controller, replication sets and deployments, if missing.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-maven-issue-mgmt-enricher\">jkube-maven-issue-mgmt</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add Maven Issue Management information as annotations to the kubernetes/openshift resources</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-maven-scm-enricher\">jkube-maven-scm-enricher</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add Maven SCM information as annotations to the kubernetes/openshift resources</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-name\">jkube-name</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add a default name to every object which misses a name.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-pod-annotation\">jkube-pod-annotation</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Copy over annotations from a <code>Deployment</code> to a <code>Pod</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-portname\">jkube-portname</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add a default portname for commonly known service.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-project-label\">jkube-project-label</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add Maven coordinates as labels to all objects.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-prometheus\">jkube-prometheus</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add Prometheus annotations.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-revision-history-enricher\">jkube-revision-history</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add revision history limit (<a href=\"https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#revision-history-limit\">Kubernetes doc</a>) as a deployment spec property to the Kubernetes/OpenShift resources.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-secret-file\">jkube-secret-file</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add Secret elements defined as annotation.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-service\">jkube-service</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Create a default service if missing and extract ports from the Docker image configuration.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-serviceaccount\">jkube-serviceaccount</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add a ServiceAccount defined as XML or mentioned in resource fragment.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-triggers-annotation\">jkube-triggers-annotation</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add ImageStreamTag change triggers on Kubernetes resources such as StatefulSets, ReplicaSets and DaemonSets using the <code>image.openshift.io/triggers</code> annotation.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"sect3\">\n<h4 id=\"enrichers-generic\">8.1.1. Generic Enrichers</h4>\n<div class=\"paragraph\">\n<p>Default generic enrichers are used for adding missing resources or adding metadata to given resource objects.\nThe following default enhancers are available out of the box.</p>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-configmap-file\">jkube-configmap-file</h5>\n<div class=\"paragraph\">\n<p>This enricher adds ConfigMap defined as <code>resources</code> in plugin configuration and/or resolves file content from an annotation.</p>\n</div>\n<div class=\"paragraph\">\n<p>As XML you can define:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">pom.xml</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><configuration>\n <resources>\n <configMap>\n <name>myconfigmap</name>\n <entries>\n <entry>\n <name>A</name>\n <value>B</value>\n </entry>\n </entries>\n </configMap>\n </resources>\n</configuration></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This creates a ConfigMap data with key <code>A</code> and value <code>B</code>.</p>\n</div>\n<div class=\"paragraph\">\n<p>You can also use <code>file</code> tag to refer to the content of a file.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><configuration>\n <resources>\n <configMap>\n <name>configmap-test</name>\n <entries>\n <entry>\n <file>src/test/resources/test-application.properties</file>\n </entry>\n </entries>\n </configMap>\n </resources>\n</configuration></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This creates a ConfigMap with key <code>test-application.properties</code> and value the content of the <code>src/test/resources/test-application.properties</code> file.\nIf you set <code>name</code> tag then this is used as key instead of the filename.</p>\n</div>\n<div class=\"paragraph\">\n<p>If you are defining a custom <code>ConfigMap</code> file, you can use an annotation to define a file name as key and its content as the value:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">metadata:\n name: ${project.artifactId}\n annotations:\n maven.jkube.io/cm/application.properties: src/test/resources/test-application.properties</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This creates a <code>ConfigMap</code> data with key <code>application.properties</code> (part defined after <code>cm</code>) and value the content of <code>src/test/resources/test-application.properties</code> file.</p>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-container-env-java-options\">jkube-container-env-java-options</h5>\n<div class=\"paragraph\">\n<p>Merges <code>JAVA_OPTIONS</code> environment variable defined in <a href=\"#config-image-build\">Build configuration (<a href=\"#config-image\"><image> </a>)</a>\nenvironment (<code>env</code>) with <code>Container</code> <code>JAVA_OPTIONS</code> environment variable added\nby other enrichers, XML configuration or fragment.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Option</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>disable</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Disabled the enricher, any <code>JAVA_OPTIONS</code> environment variable defined by an enricher,\n XML configuration or YAML fragment will override the one defined by the generator\n or Image Build configuration.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-container-env-java-options.disable</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-controller\">jkube-controller</h5>\n<div class=\"paragraph\">\n<p>This enricher is used to ensure that a controller is present.\nThis can be either directly configured with fragments or with the XML configuration.\nAn explicit configuration always takes precedence over auto detection.\nSee <a href=\"https://kubernetes.io/docs/concepts/workloads/controllers/\">Kubernetes doc</a> for more information on types of controllers.</p>\n</div>\n<div class=\"paragraph\">\n<p>The following configuration parameters can be used to influence the behaviour of this enricher:</p>\n</div>\n<table id=\"enricher-jkube-controller\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 36. Default controller enricher</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>name</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Name of the Controller. Kubernetes Controller names must start with a letter. If the maven artifactId starts with a\n digit, <code>s</code> will be prefixed.</p>\n<p class=\"tableblock\"> Defaults to <code>${project.artifactId}</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-controller.name</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>pullPolicy</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Image pull policy to use for the container. One of: <em>IfNotPresent</em>, <em>Always</em>.</p>\n<p class=\"tableblock\"> Defaults to <code>IfNotPresent</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-controller.pullPolicy</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>type</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Type of Controller to create. One of: <em>ReplicationController</em>, <em>ReplicaSet</em>, <em>Deployment</em>, <em>DeploymentConfig</em>,\n <em>StatefulSet</em>, <em>DaemonSet</em>, <em>Job</em>.</p>\n<p class=\"tableblock\"> Defaults to <code>Deployment</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-controller.type</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>replicaCount</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Number of replicas for the container.</p>\n<p class=\"tableblock\"> Defaults to <code>1</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-controller.replicaCount</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-service\">jkube-service</h5>\n<div class=\"paragraph\">\n<p>This enricher is used to ensure that a service is present.\nThis can be either directly configured with fragments or with the XML configuration, but it can be also automatically inferred by looking at the ports exposed by an image configuration.\nAn explicit configuration always takes precedence over auto detection. For enriching an existing service this enricher actually works only on a configured service which matches with the configured (or inferred) service name.</p>\n</div>\n<div class=\"paragraph\">\n<p>The following configuration parameters can be used to influence the behaviour of this enricher:</p>\n</div>\n<table id=\"enricher-jkube-service\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 37. Default service enricher</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>name</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Service name to enrich by default. If not given here or configured elsewhere, the artifactId is used.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-service.name</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>headless</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Whether a headless service without a port should be configured. A headless service has the <code>ClusterIP</code> set to <code>None</code>\n and will be only used if no ports are exposed by the image configuration or by the configuration <code>port</code>.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-service.headless</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>expose</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set to true, a label <code>expose</code> with value <code>true</code> is added which can be picked up by the jkube.\n <a href=\"https://github.com/jenkins-x/exposecontroller\">expose-controller</a> to expose the service to the outside by various means.\n See the documentation of expose-controller for more details.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-service.expose</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>type</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Kubernetes / OpenShift service type to set like <em>LoadBalancer</em>, <em>NodePort</em> or <em>ClusterIP</em>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-service.type</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>port</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The service port to use. By default the same port as the ports exposed in the image configuration is used, but can be\n changed with this parameter. See <a href=\"#jkube-service-ports\">below</a> for a detailed description of the format which can be\n put into this variable.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-service.port</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>multiPort</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Set this to <code>true</code> if you want all ports to be exposed from an image configuration. Otherwise only the first port is\n used as a service port.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-service.multiPort</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>protocol</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Default protocol to use for the services. Must be <code>tcp</code> or <code>udp</code>.</p>\n<p class=\"tableblock\"> Defaults to <code>tcp</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-service.protocol</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>normalizePort</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Normalize the port numbering of the service to common and conventional port numbers.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-service.normalizePort</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Following is the Port mapping that comes in effect, when normalizePort option is set true.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 50%;\">\n<col style=\"width: 50%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Original Port</th>\n<th class=\"tableblock halign-left valign-top\">Normalized Port</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">8080</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">80</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">8081</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">80</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">8181</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">80</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">8180</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">80</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">8443</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">443</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">443</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">443</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>You specify the properties like for any enricher within the enrichers configuration like in</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><configuration>\n <!-- ... -->\n <enricher>\n <config>\n <jkube-service>\n <name>my-service</name>\n <type>NodePort</type>\n <multiPort>true</multiPort>\n </jkube-service>\n </config>\n </enricher>\n</configuration></code></pre>\n</div>\n</div>\n<div id=\"jkube-service-ports\" class=\"paragraph\">\n<div class=\"title\">Port specification</div>\n<p>With the option <code>port</code> you can influence the mapping how ports are mapped from the pod to the service.\nBy default and if this option is not given the ports exposed are dictated by the ports exposed from the Docker images contained in the pods.\nRemember, each image configured can be part of the pod.\nHowever you can expose also completely different ports as the images meta data declare.</p>\n</div>\n<div class=\"paragraph\">\n<p>The property <code>port</code> can contain a comma separated list of mappings of the following format:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-text\" data-lang=\"text\"><servicePort1>:<targetPort1>/<protocol>,<servicePort2>:<targetPort2>/<protocol>,....</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>where the <code>targetPort</code> and <code><protocol></code> specification is optional. These ports are overlayed over the ports exposed by the images, in the given order.</p>\n</div>\n<div class=\"paragraph\">\n<p>This is best explained by some examples.</p>\n</div>\n<div class=\"paragraph\">\n<p>For example if you have a pod which exposes a Microservice on port 8080 and you want to expose it as a service on port 80 (so that it can be accessed with <code><a href=\"http://myservice\" class=\"bare\">http://myservice</a></code>) you can simply use the following enricher configuration:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><configuration>\n <enricher>\n <config>\n <jkube-service>\n <name>myservice</name>\n <port>80:8080</port> <i class=\"conum\" data-value=\"1\"></i><b>(1)</b>\n </jkube-service>\n </config>\n </enricher>\n</configuration></code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td>80 is the service port, 8080 the port opened in from the pod’s images</td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<p>If your pod <em>exposes</em> their ports (which e.g. all generator do), then you can even omit the 8080 here (i.e. <code><port>80</port></code>).\nIn this case the <em>first</em> port exposed will be mapped to port 80, all other exposed ports will be omitted.</p>\n</div>\n<div class=\"paragraph\">\n<p>By default an automatically generated service only exposes the first port, even when more ports are exposed.\nWhen you want to map multiple ports you need to set the config option <code><multiPort>true</multiPort></code>.\nIn this case you can also provide multiple mappings as a comma separated list in the <code><port></code> specification where each element of the list are the mapping for the first, second, …​ port.</p>\n</div>\n<div class=\"paragraph\">\n<p>A more (and bit artificially constructed) specification could be <code><port>80,9779:9779/udp,443</port></code>.\nAssuming that the image exposes ports <code>8080</code> and <code>8778</code> (either directly or via <a href=\"#generators\">generators</a>) and we have switched on multiport mode, then the following service port mappings will be performed for the automatically generated service:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Pod port 8080 is mapped to service port 80.</p>\n</li>\n<li>\n<p>Pod port 9779 is mapped to service port 9779 with protocol UDP. Note how this second entry overrides the pod exposed port 8778.</p>\n</li>\n<li>\n<p>Pod port 443 is mapped to service port 443.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>This example shows also the mapping rules:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Port specification in <code>port</code> always override the port metadata of the contained Docker images (i.e. the ports exposed)</p>\n</li>\n<li>\n<p>You can always provide a complete mapping with <code>port</code> on your own</p>\n</li>\n<li>\n<p>The ports exposed by the images serve as <em>default values</em> which are used if not specified by this configuration option.</p>\n</li>\n<li>\n<p>You can map ports which are <em>not</em> exposed by the images by specifying them as target ports.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>Multiple ports are <strong>only</strong> mapped when <em>multiPort</em> mode is enabled (which is switched off by default). If <em>multiPort</em> mode is disabled, only the first port from the list of mapped ports calculated as above is taken.</p>\n</div>\n<div class=\"paragraph\">\n<p>When you set <code>legacyPortMapping</code> to true than ports 8080 to 9090 are mapped to port 80 automatically if not explicitly mapped via <code><em>port</em></code>. I.e. when an image exposes port 8080 with a legacy mapping this mapped to a service port 80, not 8080. You <em>should not</em> switch this on for any good reason. In fact it might be that this option can vanish anytime.</p>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-image\">jkube-image</h5>\n\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-name\">jkube-name</h5>\n\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-portname\">jkube-portname</h5>\n\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-pod-annotation\">jkube-pod-annotation</h5>\n\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-project-label\">jkube-project-label</h5>\n<div class=\"paragraph\">\n<p>Enricher that adds standard labels and selectors to generated resources (e.g. <code>app</code>, <code>group</code>, <code>provider</code>, <code>version</code>).</p>\n</div>\n<div class=\"paragraph\">\n<p>The <code>jkube-project-label</code> enricher supports the following configuration options:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Option</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>useProjectLabel</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Enable this flag to turn on the generation of the old <code>project</code> label in Kubernetes resources. The <code>project</code> label has\nbeen replaced by the <code>app</code> label in newer versions of the plugin.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-project-label.useProjectLabel</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>app</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Makes it possible to define a custom <code>app</code> label used in the generated resource files used for deployment.</p>\n<p class=\"tableblock\">Defaults to the Maven <code>project.artifactId</code> property.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-project-label.app</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>The project labels which are already specified in the input fragments are not overridden by the enricher.</p>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-git\">jkube-git</h5>\n<div class=\"paragraph\">\n<p>Enricher that adds info from .git directory as annotations.</p>\n</div>\n<div class=\"paragraph\">\n<p>The git branch & latest commit on the branch are annotated as <code>jkube.io/git-branch</code> & <code>jkube.io/git-commit</code>.\n<code>jkube.io/git-url</code> is annotated as the URL of your configured remote.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Option</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>gitRemote</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Configures the git remote name, whose URL you want to annotate as 'git-url'.</p>\n<p class=\"tableblock\"> Defaults to <code>origin</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-git.gitRemote</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-dependency\">jkube-dependency</h5>\n\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-volume-permission\">jkube-volume-permission</h5>\n<div class=\"paragraph\">\n<p>Enricher which fixes the permission of persistent volume mount with the help of an init container.</p>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-openshift-autotls\">jkube-openshift-autotls</h5>\n<div class=\"paragraph\">\n<p>Enricher which adds appropriate annotations and volumes to enable OpenShift’s automatic\n<a href=\"https://docs.openshift.org/latest/dev_guide/secrets.html#service-serving-certificate-secrets\">Service Serving Certificate Secrets</a>.\nThis enricher adds an init container to convert the service serving certificates from PEM (the format that OpenShift generates them in) to\na JKS-format Java keystore ready for consumption in Java services.</p>\n</div>\n<div class=\"paragraph\">\n<p>This enricher is disabled by default. In order to use it, you must configure the kubernetes-maven-plugin to use this enricher:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n <version>1.0.2</version>\n <executions>\n <execution>\n <goals>\n <goal>resource</goal>\n </goals>\n </execution>\n </executions>\n <configuration>\n <enricher>\n <includes>\n <include>jkube-openshift-autotls</include>\n </includes>\n <config>\n <jkube-openshift-autotls>\n <!-- ... -->\n </jkube-openshift-autotls>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The auto-TLS enricher supports the following configuration options:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>tlsSecretName</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The name of the secret to be used to store the generated service serving certs.</p>\n<p class=\"tableblock\"> Defaults to <code><project.artifactId>-tls</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.tlsSecretName</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>tlsSecretVolumeMountPoint</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Where the service serving secret should be mounted to in the pod.</p>\n<p class=\"tableblock\"> Defaults to <code>/var/run/secrets/jkube.io/tls-pem</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.tlsSecretName</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>tlsSecretVolumeName</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The name of the secret volume.</p>\n<p class=\"tableblock\"> Defaults to <code>tls-pem</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.tlsSecretVolumeName</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>jksVolumeMountPoint</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Where the generated keystore volume should be mounted to in the pod.</p>\n<p class=\"tableblock\"> Defaults to <code>/var/run/secrets/jkube.io/tls-jks</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.the</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>jksVolumeName</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The name of the keystore volume.</p>\n<p class=\"tableblock\"> Defaults to <code>tls-jks</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.jksVolumeName</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>pemToJKSInitContainerImage</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The name of the image used as an init container to convert PEM certificate/key to Java keystore.</p>\n<p class=\"tableblock\"> Defaults to <code>jimmidyson/pemtokeystore:v0.1.0</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.pemToJKSInitContainerImage</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>pemToJKSInitContainerName</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">the name of the init container to convert PEM certificate/key to Java keystore.</p>\n<p class=\"tableblock\"> Defaults to <code>tls-jks-converter</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.pemToJKSInitContainerName</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>keystoreFileName</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The name of the generated keystore file.</p>\n<p class=\"tableblock\"> Defaults to <code>keystore.jks</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.keystoreFileName</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>keystorePassword</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The password to use for the generated keystore.</p>\n<p class=\"tableblock\"> Defaults to <code>changeit</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.keystorePassword</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>keystoreCertAlias</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The alias in the keystore used for the imported service serving certificate.</p>\n<p class=\"tableblock\"> Defaults to <code>server</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.keystoreCertAlias</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-prometheus\">jkube-prometheus</h5>\n<div class=\"paragraph\">\n<p>This enricher adds Prometheus annotation like:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">apiVersion: v1\nkind: List\nitems:\n- apiVersion: v1\n kind: Service\n metadata:\n annotations:\n prometheus.io/scrape: \"true\"\n prometheus.io/port: 9779\n prometheus.io/path: \"/metrics\"</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>By default the enricher inspects the images' BuildConfiguration and add the annotations if the port 9779 is listed.\nYou can force the plugin to add annotations by setting enricher’s config <code><code>prometheusPort</code></code></p>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-maven-scm-enricher\">jkube-maven-scm-enricher</h5>\n<div class=\"paragraph\">\n<p>This enricher adds additional <a href=\"https://maven.apache.org/pom.html#SCM\">SCM</a> related metadata to all objects supporting annotations.\nThese metadata will be added only if <a href=\"https://maven.apache.org/pom.html#SCM\">SCM</a> information is present in the maven <code>pom.xml</code> of the project.</p>\n</div>\n<div class=\"paragraph\">\n<p>The following annotations will be added to the objects that supports annotations,</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 38. Maven SCM Enrichers Annotation Mapping</caption>\n<colgroup>\n<col style=\"width: 28.5714%;\">\n<col style=\"width: 28.5714%;\">\n<col style=\"width: 42.8572%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Maven SCM Info</th>\n<th class=\"tableblock halign-left valign-top\">Annotation</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">scm/connection</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">jkube.io/scm-con-url</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The SCM connection that will be used to connect to the project’s SCM</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">scm/developerConnection</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">jkube.io/scm-devcon-url</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The SCM Developer Connection that will be used to connect to the project’s developer SCM</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">scm/tag</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">jkube.io/scm-tag</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The SCM tag that will be used to checkout the sources, like HEAD dev-branch etc.,</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">scm/url</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">jkube.io/scm-url</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The SCM web url that can be used to browse the SCM over web browser</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Lets say you have a maven pom.xml with the following scm information,</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><scm>\n <connection>scm:git:git://github.com/jkubeio/kubernetes-maven-plugin.git</connection>\n <developerConnection>scm:git:git://github.com/jkubeio/kubernetes-maven-plugin.git</developerConnection>\n <url>git://github.com/jkubeio/kubernetes-maven-plugin.git</url>\n</scm></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This information will be enriched as annotations in the generated manifest like,</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\"># ...\n kind: Service\n metadata:\n annotations\n jkube.io/scm-con-url: \"scm:git:git://github.com/jkubeio/kubernetes-maven-plugin.git\"\n jkube.io/scm-devcon-url: \"scm:git:git://github.com/jkubeio/kubernetes-maven-plugin.git\"\n jkube.io/scm-tag: \"HEAD\"\n jkube.io/scm-url: \"git://github.com/jkubeio/kubernetes-maven-plugin.git\"\n# ...</code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-maven-issue-mgmt-enricher\">jkube-maven-issue-mgmt</h5>\n<div class=\"paragraph\">\n<p>This enricher adds additional <a href=\"https://maven.apache.org/pom.html#Issue_Management\">Issue Management</a> related metadata to\nall objects supporting annotations.\nThese metadata will be added only if the <a href=\"https://maven.apache.org/pom.html#Issue_Management\">Issue Management</a>\ninformation is available in the <code>pom.xml</code> of the Maven project.</p>\n</div>\n<div class=\"paragraph\">\n<p>The following annotations will be added to the objects that support these annotations,</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 39. Maven Issue Tracker Enrichers Annotation Mapping</caption>\n<colgroup>\n<col style=\"width: 28.5714%;\">\n<col style=\"width: 28.5714%;\">\n<col style=\"width: 42.8572%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Maven Issue Tracker Info</th>\n<th class=\"tableblock halign-left valign-top\">Annotation</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">issueManagement/system</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">jkube.io/issue-system</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Issue Management system like Bugzilla, JIRA, GitHub etc.,</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">issueManagement/url</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">jkube.io/issue-tracker-url</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Issue Management url e.g. GitHub Issues Url</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Lets say you have a maven pom.xml with the following issue management information,</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><issueManagement>\n <system>GitHub</system>\n <url>https://github.com/reactiverse/vertx-maven-plugin/issues/</url>\n</issueManagement></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This information will be enriched as annotations in the generated manifest like,</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\"># ...\n kind: Service\n metadata:\n annotations:\n jkube.io/issue-system: \"GitHub\"\n jkube.io/issue-tracker-url: \"https://github.com/reactiverse/vertx-maven-plugin/issues/\"\n# ...</code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-revision-history-enricher\">jkube-revision-history</h5>\n<div class=\"paragraph\">\n<p>This enricher adds <code>spec.revisionHistoryLimit</code> property to deployment spec of Kubernetes/OpenShift resources.\nA deployment’s revision history is stored in the replica sets, that specifies the number of old ReplicaSets to retain in order to allow rollback.\nFor more information read <a href=\"https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#revision-history-limit\">Kubernetes documentation</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>The following configuration parameters can be used to influence the behaviour of this enricher:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 40. Default revision history enricher</caption>\n<colgroup>\n<col style=\"width: 20%;\">\n<col style=\"width: 40%;\">\n<col style=\"width: 40%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>limit</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Number of revision histories to retain.</p>\n<p class=\"tableblock\"> Defaults to <code>2</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-revision-history.limit</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Just as any other enricher you can specify required properties with in the enricher’s configuration as below,</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><!-- ... -->\n<enricher>\n <config>\n <jkube-revision-history>\n <limit>8</limit>\n </jkube-revision-history>\n </config>\n</enricher>\n<!-- ... --></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This information will be enriched as spec property in the generated manifest like,</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\"># ...\nkind: Deployment\nspec:\n revisionHistoryLimit: 8\n# ...</code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-triggers-annotation\">jkube-triggers-annotation</h5>\n<div class=\"paragraph\">\n<p>This enricher adds ImageStreamTag change triggers on Kubernetes resources that support the <code>image.openshift.io/triggers</code> annotation, such as StatefulSets, ReplicaSets and DaemonSets.</p>\n</div>\n<div class=\"paragraph\">\n<p>The trigger is added to all containers that apply, but can be restricted to a limited set of containers using the following configuration:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><!-- ... -->\n<enricher>\n <config>\n <jkube-triggers-annotation>\n <containers>container-name-1,c2</containers>\n </jkube-triggers-annotation>\n </config>\n</enricher>\n<!-- ... --></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-secret-file\">jkube-secret-file</h5>\n<div class=\"paragraph\">\n<p>This enricher adds Secret defined as file content from an annotation.</p>\n</div>\n<div class=\"paragraph\">\n<p>If you are defining a custom <code>Secret</code> file, you can use an annotation to define a file name as key and its content as the value:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">metadata:\n name: ${project.artifactId}\n annotations:\n maven.jkube.io/secret/application.properties: src/test/resources/test-application.properties</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This creates a <code>Secret</code> data with the key <code>application.properties</code> (part defined after <code>secret</code>) and value content of\n<code>src/test/resources/test-application.properties</code> file (base64 encoded).</p>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-serviceaccount\">jkube-serviceaccount</h5>\n\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"enrichers-specific\">8.1.2. Specific Enrichers</h4>\n<div class=\"paragraph\">\n<p>Specific enrichers provide resource manifest enhancement for a certain tech stack that they detect.</p>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-healthcheck-karaf\">jkube-healthcheck-karaf</h5>\n<div class=\"paragraph\">\n<p>This enricher adds kubernetes readiness and liveness probes with Apache Karaf. This requires that\n<code>jkube.karaf-checks</code> has been enabled in the Karaf startup features.</p>\n</div>\n<div class=\"paragraph\">\n<p>The enricher will use the following settings by default:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>port = <code>8181</code></p>\n</li>\n<li>\n<p>scheme = <code>HTTP</code></p>\n</li>\n<li>\n<p>failureThreshold = <code>3</code></p>\n</li>\n<li>\n<p>successThreshold = <code>1</code></p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>and use paths <code>/readiness-check</code> for readiness check and <code>/health-check</code> for liveness check.</p>\n</div>\n<div class=\"paragraph\">\n<p>These options cannot be configured.</p>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-healthcheck-spring-boot\">jkube-healthcheck-spring-boot</h5>\n<div class=\"paragraph\">\n<p>This enricher adds kubernetes readiness and liveness probes with Spring Boot. This requires the following dependency\nhas been enabled in Spring Boot</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><dependency>\n <groupId>org.springframework.boot</groupId>\n <artifactId>spring-boot-starter-actuator</artifactId>\n</dependency></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The enricher will try to discover the settings from the <code>application.properties</code> / <code>application.yaml</code> Spring Boot configuration file.</p>\n</div>\n<div class=\"paragraph\">\n<p>The port number is read from the <code>management.port</code> option, and will use the default value of <code>8080</code>\nThe scheme will use HTTPS if <code>server.ssl.key-store</code> option is in use, and fallback to use <code>HTTP</code> otherwise.</p>\n</div>\n<div class=\"paragraph\">\n<p>The enricher will use the following settings by default:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>readinessProbeInitialDelaySeconds</code> : <code>10</code></p>\n</li>\n<li>\n<p><code>readinessProbePeriodSeconds</code> : <em><kubernetes-default></em></p>\n</li>\n<li>\n<p><code>livenessProbeInitialDelaySeconds</code> : <code>180</code></p>\n</li>\n<li>\n<p><code>livenessProbePeriodSeconds</code> : <em><kubernetes-default></em></p>\n</li>\n<li>\n<p><code>timeoutSeconds</code> : <em><kubernetes-default></em></p>\n</li>\n<li>\n<p><code>failureThreshold</code>: <code>3</code></p>\n</li>\n<li>\n<p><code>successThreshold</code>: <code>1</code></p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>These values can be configured by the enricher in the <code>kubernetes-maven-plugin</code> configuration as shown below:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n <version>1.0.2</version>\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>helm</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n <configuration>\n <enricher>\n <config>\n <jkube-healthcheck-spring-boot>\n <timeoutSeconds>5</timeoutSeconds>\n <readinessProbeInitialDelaySeconds>30</readinessProbeInitialDelaySeconds>\n <failureThreshold>3</failureThreshold>\n <successThreshold>1</successThreshold>\n </jkube-healthcheck-spring-boot>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-healthcheck-thorntail-v2\">jkube-healthcheck-thorntail-v2</h5>\n<div class=\"paragraph\">\n<p>This enricher adds kubernetes readiness and liveness probes with Thorntail v2. This requires the following fraction\nhas been enabled in Thorntail</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><dependency>\n <groupId>io.thorntail</groupId>\n <artifactId>microprofile-health</artifactId>\n</dependency></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The enricher will use the following settings by default:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>port = <code>8080</code></p>\n</li>\n<li>\n<p>scheme = <code>HTTP</code></p>\n</li>\n<li>\n<p>path = <code>/health</code></p>\n</li>\n<li>\n<p>failureThreshold = <code>3</code></p>\n</li>\n<li>\n<p>successThreshold = <code>1</code></p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>These values can be configured by the enricher in the <code>kubernetes-maven-plugin</code> configuration as shown below:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n <version>1.0.2</version>\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>helm</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n <configuration>\n <enricher>\n <config>\n <jkube-healthcheck-thorntail>\n <port>4444</port>\n <scheme>HTTPS</scheme>\n <path>health/myapp</path>\n <failureThreshold>3</failureThreshold>\n <successThreshold>1</successThreshold>\n </jkube-healthcheck-thorntail>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-healthcheck-vertx\">jkube-healthcheck-vertx</h5>\n<div class=\"paragraph\">\n<p>This enricher adds kubernetes readiness and liveness probes with Eclipse Vert.x applications.\nThe readiness probe lets Kubernetes detect when the application is ready, while the liveness probe allows Kubernetes to\nverify that the application is still alive.</p>\n</div>\n<div class=\"paragraph\">\n<p>This enricher allows configuring the readiness and liveness probes. The following probe types are supported:\n<code>http</code> (emit HTTP requests), <code>tcp</code> (open a socket), <code>exec</code> (execute a command).</p>\n</div>\n<div class=\"paragraph\">\n<p>By default, this enricher uses the same configuration for liveness and readiness probes. But specific configurations can\nbe provided too. The configurations can be overridden using project’s properties.</p>\n</div>\n<div class=\"sect5\">\n<h6 id=\"_using_the_jkube_healthcheck_vertx_enricher\">Using the jkube-healthcheck-vertx enricher</h6>\n<div class=\"paragraph\">\n<p>The enricher is automatically executed if your project uses the <code>vertx-maven-plugin</code> or depends on <code>io.vertx:vertx-core</code>.\nHowever, by default, no health check will be added to your deployment unless configured explicitly.</p>\n</div>\n</div>\n<div class=\"sect5\">\n<h6 id=\"_minimal_configuration\">Minimal configuration</h6>\n<div class=\"paragraph\">\n<p>The minimal configuration to add health checks is the following:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n <version>1.0.2</version>\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>helm</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n <configuration>\n <enricher>\n <config>\n <jkube-healthcheck-vertx>\n <path>/health</path>\n </jkube-healthcheck-vertx>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>It configures the readiness and liveness health checks using HTTP requests on the port <code>8080</code> (default port) and on the\npath <code>/health</code>. The defaults are:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>port = <code>8080</code> (for HTTP)</p>\n</li>\n<li>\n<p>scheme = <code>HTTP</code></p>\n</li>\n<li>\n<p>path = <em>none</em> (disabled)</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>the previous configuration can also be given use project’s properties:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><properties>\n <vertx.health.path>/health</vertx.health.path>\n</properties></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect5\">\n<h6 id=\"_configuring_differently_the_readiness_and_liveness_health_checks\">Configuring differently the readiness and liveness health checks</h6>\n<div class=\"paragraph\">\n<p>You can provide two different configuration for the readiness and liveness checks:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n <version>1.0.2</version>\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>helm</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n <configuration>\n <enricher>\n <config>\n <jkube-healthcheck-vertx>\n <readiness>\n <path>/ready</path>\n </readiness>\n <liveness>\n <path>/health</path>\n </liveness>\n </jkube-healthcheck-vertx>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>You can also use the <code>readiness</code> and <code>liveness</code> chunks in user properties:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><properties>\n <vertx.health.readiness.path>/ready</vertx.health.readiness.path>\n <vertx.health.liveness.path>/ready</vertx.health.liveness.path>\n</properties></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Shared (generic) configuration can be set outside of the specific configuration. For instance, to use the port 8081:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n <version>1.0.2</version>\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>helm</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n <configuration>\n <enricher>\n <config>\n <jkube-healthcheck-vertx>\n <port>8081</port>\n <readiness>\n <path>/ready</path>\n </readiness>\n <liveness>\n <path>/health</path>\n </liveness>\n </jkube-healthcheck-vertx>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Or:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><properties>\n <vertx.health.port>8081</vertx.health.port>\n <vertx.health.readiness.path>/ready</vertx.health.readiness.path>\n <vertx.health.liveness.path>/ready</vertx.health.liveness.path>\n</properties></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect5\">\n<h6 id=\"_configuration_structure\">Configuration Structure</h6>\n<div class=\"paragraph\">\n<p>The configuration is structured as follows</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><config>\n <jkube-healthcheck-vertx>\n <!-- Generic configuration, applied to both liveness and readiness -->\n <path>/both</path>\n <liveness>\n <!-- Specific configuration for the liveness probe -->\n <port-name>ping</port-name>\n </liveness>\n <readiness>\n <!-- Specific configuration for the readiness probe -->\n <port-name>ready</port-name>\n </readiness>\n </jkube-healthcheck-vertx>\n</config></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The same structure is used in project’s properties:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><properties>\n <!-- Generic configuration given as vertx.health.$attribute -->\n <vertx.health.path>/both</vertx.health.path>\n <!-- Specific liveness configuration given as vertx.health.liveness.$attribute -->\n <vertx.health.liveness.port-name>ping</vertx.health.liveness.port-name>\n <!-- Specific readiness configuration given as vertx.health.readiness.$attribute -->\n <vertx.health.readiness.port-name>ready</vertx.health.readiness.port-name>\n</properties></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p><strong>Important</strong>: Project’s plugin configuration override the project’s properties.\nThe overriding rules are:\n<em>specific configuration</em> > <em>specific properties</em> > <em>generic configuration</em> > <em>generic properties</em>.</p>\n</div>\n</div>\n<div class=\"sect5\">\n<h6 id=\"_probe_configuration\">Probe configuration</h6>\n<div class=\"paragraph\">\n<p>You can configure the different aspects of the probes. These attributes can be configured for both the readiness and\nliveness probes or be specific to one.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 41. Vert.x HealthCheck Enricher probe configuration</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 62.5%;\">\n<col style=\"width: 25%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>type</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The probe type among <code>http</code> (default), <code>tcp</code> and <code>exec</code>.</p>\n<p class=\"tableblock\"> Defaults to <code>http</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.type</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.type</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>initial-delay</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Number of seconds after the container has started before probes are initiated.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.initial-delay</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.initial-delay</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>period</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">How often (in seconds) to perform the probe.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.period</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.period</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>timeout</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Number of seconds after which the probe times out.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.timeout</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.timeout</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>success-threshold</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Minimum consecutive successes for the probe to be considered successful after having failed.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.success-threshold</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.success-threshold</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>failure-threshold</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Minimum consecutive failures for the probe to be considered failed after having succeeded.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.failure-threshold</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.failure-threshold</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>More details about probes are available on <a href=\"https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/\" class=\"bare\">https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/</a>.</p>\n</div>\n</div>\n<div class=\"sect5\">\n<h6 id=\"_http_specific_probe_configuration\">HTTP specific probe configuration</h6>\n<div class=\"paragraph\">\n<p>When using HTTP <code>GET</code> requests to determine readiness or liveness, several aspects can be configured. HTTP probes are used by default. To be more specific set the <code>type</code> attribute to <code>http</code>.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 42. Vert.x HealthCheck Enricher HTTP probe configuration</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 62.5%;\">\n<col style=\"width: 25%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>scheme</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Scheme to use for connecting to the host.</p>\n<p class=\"tableblock\"> Defaults to <code>HTTP</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.scheme</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.scheme</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>path</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Path to access on the HTTP server. An empty path disable the check.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.path</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.path</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>headers</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Custom headers to set in the request. HTTP allows repeated headers. It cannot be configured using project’s properties.\n An example is available below.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.headers</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.headers</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>port</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Port number to access the container. A 0 or negative number disables the check.</p>\n<p class=\"tableblock\"> Defaults to <code>8080</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.port</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.port</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>port-name</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Name of the port to access on the container. If neither the <code>port</code> nor the <code>port-name</code> is set, the check is disabled.\n If both are set the configuration is considered invalid.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.port-name</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.port-name</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Here is an example of HTTP probe configuration:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><config>\n <jkube-healthcheck-vertx>\n <initialDelay>3</initialDelay>\n <period>3</period>\n <liveness>\n <port>8081</port>\n <path>/ping</path>\n <scheme>HTTPS</scheme>\n <headers>\n <X-Custom-Header>Awesome</X-Custom-Header>\n </headers>\n </liveness>\n <readiness>\n <!-- disable the readiness probe -->\n <port>-1</port>\n </readiness>\n </jkube-healthcheck-vertx>\n</config></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect5\">\n<h6 id=\"_tcp_specific_probe_configuration\">TCP specific probe configuration</h6>\n<div class=\"paragraph\">\n<p>You can also configure the probes to just open a socket on a specific port. The <code>type</code> attribute must be set to <code>tcp</code>.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 43. Vert.x HealthCheck Enricher TCP probe configuration</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 62.5%;\">\n<col style=\"width: 25%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>port</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Port number to access the container. A 0 or negative number disables the check.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.port</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.port</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>port-name</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Name of the port to access on the container. If neither the <code>port</code> nor the <code>port-name</code> is set, the check is disabled.\n If both are set the configuration is considered invalid.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.port-name</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.port-name</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>For example:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><config>\n <jkube-healthcheck-vertx>\n <initialDelay>3</initialDelay>\n <period>3</period>\n <liveness>\n <type>tcp</type>\n <port>8081</port>\n </liveness>\n <readiness>\n <!-- use HTTP Get probe -->\n <path>/ping</path>\n <port>8080</port>\n </readiness>\n </jkube-healthcheck-vertx>\n</config></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect5\">\n<h6 id=\"_exec_probe_configuration\">Exec probe configuration</h6>\n<div class=\"paragraph\">\n<p>You can also configure the probes to execute a command. If the command succeeds, it returns 0, and Kubernetes consider the pod to be alive and healthy. If the command returns a non-zero value, Kubernetes kills the pod and restarts it. To use a command, you must set the <code>type</code> attribute to <code>exec</code>:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><config>\n <jkube-healthcheck-vertx>\n <initialDelay>3</initialDelay>\n <period>3</period>\n <liveness>\n <type>exec</type>\n <command>\n <cmd>cat</cmd>\n <cmd>/tmp/healthy</cmd>\n </command>\n </liveness>\n <readiness>\n <-- use HTTP Get probe -->\n <path>/ping</path>\n <port>8080</port>\n </readiness>\n </jkube-healthcheck-vertx>\n</config></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>As you can see in the snippet above the command is passed using the <code>command</code> attribute. This attribute cannot be\nconfigured using project’s properties. An empty command disables the check.</p>\n</div>\n</div>\n<div class=\"sect5\">\n<h6 id=\"_disabling_health_checks\">Disabling health checks</h6>\n<div class=\"paragraph\">\n<p>You can disable the checks by setting:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>the <code>port</code> to 0 or to a negative number for <code>http</code> and <code>tcp</code> probes</p>\n</li>\n<li>\n<p>the <code>command</code> to an empty list for <code>exec</code></p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>In the first case, you can use project’s properties to disable them:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><!-- Disables <code>tcp</code> and <code>http</code> probes -->\n<vertx.health.port>-1</vertx.health.port></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>For <code>http</code> probes, an empty or not set <code>path</code> also disable the probe.</p>\n</div>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-healthcheck-webapp\">jkube-healthcheck-webapp</h5>\n<div class=\"paragraph\">\n<p>This enricher adds kubernetes readiness and liveness probes with WebApp. This requires that you have <code>maven-war-plugin</code> set.</p>\n</div>\n<div class=\"paragraph\">\n<p>The enricher will use the following settings by default:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>port = <code>8080</code></p>\n</li>\n<li>\n<p>scheme = <code>HTTP</code></p>\n</li>\n<li>\n<p>path = ``</p>\n</li>\n<li>\n<p>initialReadinessDelay = 10</p>\n</li>\n<li>\n<p>initialLivenessDelay = 180</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>If <code>path</code> attribute is not set (default value) then this enricher is disabled.</p>\n</div>\n<div class=\"paragraph\">\n<p>These values can be configured by the enricher in the <code>kubernetes-maven-plugin</code> configuration as shown below:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n <version>1.0.2</version>\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>helm</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n <configuration>\n <enricher>\n <config>\n <jkube-healthcheck-webapp>\n <path>/</path>\n </jkube-healthcheck-webapp>\n </config>\n </enricher>\n </configuration>\n <!-- ... -->\n</plugin></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-healthcheck-wildfly-swarm\">jkube-healthcheck-wildfly-swarm</h5>\n<div class=\"paragraph\">\n<p>This enricher adds kubernetes readiness and liveness probes with WildFly Swarm. This requires the following fraction\nhas been enabled in WildFly Swarm</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><dependency>\n <groupId>org.wildfly.swarm</groupId>\n <artifactId>microprofile-health</artifactId>\n</dependency></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The enricher will use the following settings by default:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>port = <code>8080</code></p>\n</li>\n<li>\n<p>scheme = <code>HTTP</code></p>\n</li>\n<li>\n<p>path = <code>/health</code></p>\n</li>\n<li>\n<p>failureThreshold = <code>3</code></p>\n</li>\n<li>\n<p>successThreshold = <code>1</code></p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>These values can be configured by the enricher in the <code>kubernetes-maven-plugin</code> configuration as shown below:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n <version>1.0.2</version>\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>helm</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n <configuration>\n <enricher>\n <config>\n <jkube-healthcheck-wildfly-swarm>\n <port>4444</port>\n <scheme>HTTPS</scheme>\n <path>health/myapp</path>\n <failureThreshold>3</failureThreshold>\n <successThreshold>1</successThreshold>\n </jkube-healthcheck-wildfly-swarm>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-healthcheck-wildfly-jar\">jkube-healthcheck-wildfly-jar</h5>\n<div class=\"paragraph\">\n<p>This enricher adds kubernetes readiness and liveness probes to WildFly JAR applications. Probes depend on the WildFly <em>microprofile-health</em> subsystem\n<em>/health/ready</em> and <em>/health/live</em> endpoints.\nWhen the WildFly Bootable JAR Maven plugin is configured with the <em><cloud></em> configuration item, <em>microprofile_health</em> subsystem\nis enforced in the bootable JAR server configuration.</p>\n</div>\n<div class=\"paragraph\">\n<p>This enricher looks for the <em><cloud></em> configuration item presence in the bootable JAR Maven plugin in order to add health check probes.\nIf <em><cloud></em> item has not been defined, you can still enforce the generation of readiness and liveness probes by setting <em>enforceProbes=true</em>.</p>\n</div>\n<div class=\"paragraph\">\n<p>The enricher will use the following settings by default:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>port = <code>9990</code></p>\n</li>\n<li>\n<p>scheme = <code>HTTP</code></p>\n</li>\n<li>\n<p>readinessPath = <code>/health/ready</code></p>\n</li>\n<li>\n<p>livenessPath = <code>/health/live</code></p>\n</li>\n<li>\n<p>livenessInitialDelay = <code>60</code></p>\n</li>\n<li>\n<p>readinessIntialDelay = <code>10</code></p>\n</li>\n<li>\n<p>failureThreshold = <code>3</code></p>\n</li>\n<li>\n<p>successThreshold = <code>1</code></p>\n</li>\n<li>\n<p>enforceProbes = 'false'</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>Setting the <code>port</code> to 0 or to a negative number disables liveness and readiness probes.</p>\n</div>\n<div class=\"paragraph\">\n<p>These values can be configured by the enricher in the <code>kubernetes-maven-plugin</code> configuration as shown below:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n <version>1.0.2</version>\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n <configuration>\n <enricher>\n <config>\n <jkube-healthcheck-wildfly-jar>\n <port>4444</port>\n <scheme>HTTPS</scheme>\n <livenessPath>/myapp/live</livenessPath>\n <failureThreshold>3</failureThreshold>\n <successThreshold>1</successThreshold>\n </jkube-healthcheck-wildfly-jar>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"_enricher_api\">8.2. Enricher API</h3>\n<div class=\"paragraph\">\n<p><em>How to write your own enrichers and install them.</em></p>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"profiles\">9. Profiles</h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>Profiles can be used to combine a set of enrichers and generators and to give this combination a referable name.</p>\n</div>\n<div class=\"paragraph\">\n<p>Profiles are defined in YAML. The following example shows a simple profiles which uses only the\n<a href=\"#generator-spring-boot\">Spring Boot generator</a> and some enrichers adding for adding default resources:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Profile Definition</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">- name: my-spring-boot-apps <i class=\"conum\" data-value=\"1\"></i><b>(1)</b>\n generator: <i class=\"conum\" data-value=\"2\"></i><b>(2)</b>\n includes:\n - spring-boot\n enricher: <i class=\"conum\" data-value=\"3\"></i><b>(3)</b>\n includes: <i class=\"conum\" data-value=\"4\"></i><b>(4)</b>\n # Default Deployment object\n - jkube-controller\n # Add a default service\n - jkube-service\n excludes: <i class=\"conum\" data-value=\"5\"></i><b>(5)</b>\n - jkube-icon\n config: <i class=\"conum\" data-value=\"6\"></i><b>(6)</b>\n jkube-service:\n # Expose service as NodePort\n type: NodePort\n order: 10 <i class=\"conum\" data-value=\"7\"></i><b>(7)</b>\n- name: another-profile\n# ....</code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td>Profile’s name</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"2\"></i><b>2</b></td>\n<td><a href=\"#generators\">Generators</a> to use</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"3\"></i><b>3</b></td>\n<td><a href=\"#enrichers\">Enrichers</a> to use</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"4\"></i><b>4</b></td>\n<td>List of enricher to <strong>include</strong> in that given order</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"5\"></i><b>5</b></td>\n<td>List of enricher to <strong>exclude</strong></td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"6\"></i><b>6</b></td>\n<td>Configuration for services an enrichers</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"7\"></i><b>7</b></td>\n<td>An order which influences the way how profiles with the same name are merged</td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<p>Each <code>profiles.yml</code> has a list of profiles which are defined with these elements:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 44. Profile elements</caption>\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 85.7143%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>name</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Profile name. This plugin comes with a set of <a href=\"#profiles-predefined\">predefined profiles</a>. Those profiles can be\n extended by defining a custom profile with the same name of the profile to extend.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>generator</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">List of generator definitions. See <a href=\"#generator-enricher-definition\">below</a> for the format of these definitions.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>enricher</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">List of enrichers definitions. See <a href=\"#generator-enricher-definition\">below</a> for the format of these definitions.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>order</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The order of the profile which is used when profiles of the same name are merged.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"sect2\">\n<h3 id=\"generator-enricher-definition\">9.1. Generator and Enricher definitions</h3>\n<div class=\"paragraph\">\n<p>The definition of generators and enrichers in the profile follows the same format:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 45. Generator and Enericher definition</caption>\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 85.7143%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>includes</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">List of generators or enrichers to include. The order in the list determines the order in which the processors are applied.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>excludes</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">List of generators or enrichers. These have precedences over <em>includes</em> and will exclude a processor even when referenced in an <em>includes</em> sections</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>config</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Configuration for generators or enrichers. This is a map where the keys are the name of the processor to configure and the value is again a map with configuration keys and values specific to the processor. See the documentation of the respective generator or enricher for the available configuration keys.</p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect2\">\n<h3 id=\"profiles-lookup-order\">9.2. Lookup order</h3>\n<div class=\"paragraph\">\n<p>Profiles can be defined externally either directly as a build resource in <code>src/main/jkube/profiles.yml</code> or provided as part of a plugin’s dependency where it is supposed to be included as <code>META-INF/jkube/profiles.yml</code>. Multiple profiles can be include in these <code>profiles.yml</code> descriptors as a list:</p>\n</div>\n<div class=\"paragraph\">\n<p>If a profile is <a href=\"#profiles-using\">used</a> then it is looked up from various places in the following order:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>From the compile and plugin classpath from <code>META-INF/jkube/profiles-default.yml</code>. These files are reserved for profiles defined by this plugin</p>\n</li>\n<li>\n<p>From the compile and plugin classpath from <code>META-INF/jkube/profiles.yml</code>. Use this location for defining your custom profiles which you want to include via dependencies.</p>\n</li>\n<li>\n<p>From the project in <code>src/main/jkube/profiles.yml</code>. The directory can be tuned with the plugin option <code>resourceDir</code> (property: <code>jkube.resourceDir</code>)</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>When multiple profiles of the same name are found, then these profiles are merged. If profile have an order number, then the <em>higher</em> order takes precedences when merging profiles.</p>\n</div>\n<div class=\"paragraph\">\n<p>For <em>includes</em> of the same processors, the processor is moved to the earliest position. E.g consider the following two profiles with the name <code>my-profile</code></p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Profile A</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">name: my-profile\nenricher:\n includes: [ e1, e2 ]</code></pre>\n</div>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Profile B</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">name: my-profile\nenricher:\n includes: [ e3, e1 ]\norder: 10</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>then when merged results in the following profile (when no order is given, it defaults to 0):</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Profile merged</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">name: my-profile\nenricher:\n includes: [ e1, e2, e3 ]\norder: 10</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Profile with the same order number are merged according to the lookup order described above, where the latter profile is supposed to have a higher order.</p>\n</div>\n<div class=\"paragraph\">\n<p>The configuration for enrichers and generators are merged, too, where higher order profiles override configuration values with the same key of lower order profile configuration.</p>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"profiles-using\">9.3. Using Profiles</h3>\n<div class=\"paragraph\">\n<p>Profiles can be selected by defining them in the plugin configuration, by giving a system property or by using\n<a href=\"#profiles-resource-fragments\">special directories</a> in the directory holding the resource fragments.</p>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Profile used in plugin configuration</div>\n<p>Here is an example how the profile can be used in a plugin configuration:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n <configuration>\n <profile>my-spring-boot-apps</profile> <i class=\"conum\" data-value=\"1\"></i><b>(1)</b>\n <!-- ... -->\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td>Name which select the profile from the <code>profiles.yml</code></td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Profile as system property</div>\n<p>Alternatively a profile can be also specified on the command line when calling Maven:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn -Djkube.profile=my-spring-boot-apps k8s:build k8s:deploy</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>If a configuration for enrichers and generators are provided as part of the plugin’s <code><configuration></code> then this takes precedence over any profile specified.</p>\n</div>\n<div id=\"profiles-resource-fragments\" class=\"paragraph\">\n<div class=\"title\">Profiles for resource fragments</div>\n<p>Profiles are also very useful when used together with resource fragments in <code>src/main/jkube</code>. By default the resource objects defined here are enriched with the configured profile (if any). A different profile can be selected easily by using a sub directory within <code>src/main/jkube</code>. The name of each sub directory is interpreted as a profile name and all resource definition files found in this sub directory are enhanced with the enhancers defined in this profile.</p>\n</div>\n<div class=\"paragraph\">\n<p>For example, consider the following directory layout:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code>src/main/k8s:\n app-rc.yml\n app-svc.yml\n raw/ -->\n couchbase-rc.yml\n couchbase-svc.yml</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Here, the resource descriptors <code>app-rc.yml</code> and <code>app-svc.yml</code> are enhanced with the enrichers defined in the main configuration. The files two files <code>couchbase-rc.yml</code> and <code>couchbase-svc.yml</code> in the sub directory <code>raw/</code> instead are enriched with the profile <strong>raw</strong>. This is a predefined profile which includes no enricher at all, so the couchbase resource objects are not enriched and taken over literally. This is an easy way how you can fine tune enrichment for different object set.</p>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"profiles-predefined\">9.4. Predefined Profiles</h3>\n<div class=\"paragraph\">\n<p>This plugin comes with a list of the following predefined profiles:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 46. Predefined Profiles</caption>\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 85.7143%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Profile</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>default</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The default profile which is active if no profile is specified. It consists of a curated set of generator and enrichers. See <a href=\"#profiles-default\">below</a> for the current definition.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>minimal</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">This profile contains no generators and only enrichers for adding default objects (controller and services). No other enrichment is included.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>explicit</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Like default but without adding default objects like controllers and services.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>aggregate</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Includes no generators and only the <a href=\"#jkube-dependency\">jkube-dependency</a> enricher for picking up and combining resources from the compile time dependencies.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>internal-microservice</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Do not expose a port for the service to generate. Otherwise the same as the <em>default</em> profile.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>osio</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Includes everything in the <em>default</em> profile, plus additional enrichers and generators relevant only to <a href=\"https://openshift.io\">OpenShift.io</a>.</p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect2\">\n<h3 id=\"profiles-extended\">9.5. Extending Profiles</h3>\n<div class=\"paragraph\">\n<p>A profile can also extend another profile to avoid repetition e.g of generators if the profile is only about including certain enrichers. For example, for a profile like:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">- name: minimal\n extends: default\n enricher:\n includes:\n - jkube-name\n - jkube-controller\n - jkube-service\n - jkube-image\n - jkube-project-label\n - jkube-debug\n - jkube-namespace\n - jkube-metadata\n - jkube-controller-from-configuration\n - jkube-openshift-deploymentconfig\n - jkube-openshift-project\n - jkube-openshift-service-expose\n - jkube-openshift-route</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>one then would not need to repeat all generators as they are inherited from the <code>default</code> profile.</p>\n</div>\n<div id=\"profiles-default\" class=\"listingblock\">\n<div class=\"title\">Default Profile</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\"># Default profile which is always activated\n- name: default\n enricher:\n # The order given in \"includes\" is the order in which enrichers are called\n includes:\n - jkube-metadata\n - jkube-name\n - jkube-controller\n - jkube-controller-from-configuration\n - jkube-service\n - jkube-namespace\n - jkube-image\n - jkube-portname\n - jkube-project-label\n - jkube-dependency\n - jkube-pod-annotations\n - jkube-git\n - jkube-maven-scm\n - jkube-serviceaccount\n - jkube-maven-issue-mgmt\n # TODO: Documents and verify enrichers below\n - jkube-debug\n - jkube-remove-build-annotations\n - jkube-volume-permission\n - jkube-configmap-file\n - jkube-secret-file\n\n # Route exposure\n - jkube-openshift-service-expose\n - jkube-openshift-route\n - jkube-openshift-deploymentconfig\n - jkube-openshift-project\n\n # Ingress\n - jkube-ingress\n\n # -----------------------------------------\n # TODO: Document and verify enrichers below\n # Health checks\n - jkube-healthcheck-quarkus\n - jkube-healthcheck-spring-boot\n - jkube-healthcheck-wildfly-swarm\n - jkube-healthcheck-thorntail-v2\n - jkube-healthcheck-wildfly-jar\n - jkube-healthcheck-karaf\n - jkube-healthcheck-vertx\n - jkube-healthcheck-docker\n - jkube-healthcheck-webapp\n - jkube-prometheus\n\n # Value merge enrichers\n - jkube-container-env-java-options\n\n # Dependencies shouldn't be enriched anymore, therefore it's last in the list\n - jkube-dependency\n - jkube-revision-history\n - jkube-docker-registry-secret\n - jkube-triggers-annotation\n - jkube-openshift-imageChangeTrigger\n\n generator:\n # The order given in \"includes\" is the order in which generators are called\n includes:\n - quarkus\n - spring-boot\n - wildfly-swarm\n - thorntail-v2\n - wildfly-jar\n - openliberty\n - karaf\n - vertx\n - java-exec\n - webapp\n watcher:\n includes:\n - spring-boot\n - docker-image</code></pre>\n</div>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"access-configuration\">10. Access configuration</h2>\n<div class=\"sectionbody\">\n<div class=\"sect2\">\n<h3 id=\"_docker_access\">10.1. Docker Access</h3>\n<div class=\"paragraph\">\n<p>For Kubernetes builds the kubernetes-maven-plugin uses the Docker remote API so the URL of your Docker Daemon must be specified. The URL can be specified by the dockerHost or machine configuration, or by the <code>DOCKER_HOST</code> environment variable. If not given</p>\n</div>\n<div class=\"paragraph\">\n<p>The Docker remote API supports communication via SSL and\nauthentication with certificates. The path to the certificates can\nbe specified by the certPath or machine configuration, or by the\n<code>DOCKER_CERT_PATH</code> environment variable.</p>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"_openshift_and_kubernetes_access\">10.2. OpenShift and Kubernetes Access</h3>\n<div class=\"paragraph\">\n<p>Plugin reads your <code>kubeconfig</code> file to read your Kubernetes/OpenShift configuration. By default, <code>kubeconfig</code> file is assumed to be either\nin <code>~/.kube/config</code> or using the environment variable <code>KUBECONFIG</code>.</p>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"registry\">11. Registry handling</h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>Docker uses registries to store images. The registry is typically\nspecified as part of the name. I.e. if the first part (everything\nbefore the first <code>/</code>) contains a dot (<code>.</code>) or colon (<code>:</code>) this part is\ninterpreted as an address (with an optionally port) of a remote\nregistry. This registry (or the default <code>docker.io</code> if no\nregistry is given) is used during push and pull operations. This\nplugin follows the same semantics, so if an image name is specified\nwith a registry part, this registry is contacted. Authentication is\nexplained in the next <a href=\"#authentication\">section</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>There are some situations however where you want to have more\nflexibility for specifying a remote registry. This might be because\nyou do not want to hard code a registry into <code>pom.xml</code> but\nprovide it from the outside with an environment variable or a system\nproperty.</p>\n</div>\n<div class=\"paragraph\">\n<p>This plugin supports various ways of specifying a registry:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>If the image name contains a registry part, this registry is used\nunconditionally and can not be overwritten from the outside.</p>\n</li>\n<li>\n<p>If an image name doesn’t contain a registry, then by default the\ndefault Docker registry <code>docker.io</code> is used for push and pull\noperations. But this can be overwritten through various means:</p>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>If the <code><image></code> configuration contains a <code><registry></code> subelement\nthis registry is used.</p>\n</li>\n<li>\n<p>Otherwise, a global configuration element <code><registry></code> is\nevaluated which can be also provided as system property via\n<code>-Djkube.docker.registry</code>.</p>\n</li>\n<li>\n<p>Finally an environment variable <code>DOCKER_REGISTRY</code> is looked up for\ndetecting a registry.</p>\n</li>\n</ul>\n</div>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>This registry is used for pulling (i.e. for autopull the base image\nwhen doing a <code>k8s:build</code>) and pushing with <code>k8s:push</code>. However,\nwhen these two goals are combined on the command line like in <code>mvn\n-Djkube.docker.registry=myregistry:5000 package k8s:build k8s:push</code>\nthe same registry is used for both operation. For a more fine grained\ncontrol, separate registries for <em>pull</em> and <em>push</em> can be specified.</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>In the plugin’s configuration with the parameters <code><pullRegistry></code> and\n<code><pushRegistry></code>, respectively.</p>\n</li>\n<li>\n<p>With the system properties <code>jkube.docker.pull.registry</code> and\n<code>jkube.docker.push.registry</code>, respectively.</p>\n</li>\n</ul>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><configuration>\n <registry>docker.jolokia.org:443</registry>\n <images>\n <image>\n <!-- Without an explicit registry ... -->\n <name>jolokia/jolokia-java</name>\n <!-- ... hence use this registry -->\n <registry>docker.ro14nd.de</registry>\n <!-- ... -->\n </image>\n <image>\n <name>postgresql</name>\n <!-- No registry in the name, hence use the globally\n configured docker.jolokia.org:443 as registry -->\n <!-- ... -->\n </image>\n <image>\n <!-- Explicitly specified always wins -->\n <name>docker.example.com:5000/another/server</name>\n </image>\n </images>\n</configuration></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>There is some special behaviour when using an externally provided\nregistry like described above:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>When <em>pulling</em>, the image pulled will be also tagged with a repository\nname <strong>without</strong> registry. The reasoning behind this is that this\nimage then can be referenced also by the configuration when the\nregistry is not specified anymore explicitly.</p>\n</li>\n<li>\n<p>When <em>pushing</em> a local image, temporarily a tag including the\nregistry is added and removed after the push. This is required\nbecause Docker can only push registry-named images.</p>\n</li>\n</ul>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"authentication\">12. Authentication</h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>When pulling (via the <code>autoPull</code> mode of <code>k8s:build</code>) or pushing image, it\nmight be necessary to authenticate against a Docker registry.</p>\n</div>\n<div class=\"paragraph\">\n<p>There are five different locations searched for credentials. In order, these are:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Providing system properties <code>jkube.docker.username</code> and <code>jkube.docker.password</code> from the outside.</p>\n</li>\n<li>\n<p>Using a <code><authConfig></code> section in the plugin configuration with <code><username></code> and <code><password></code> elements.</p>\n</li>\n<li>\n<p>Using OpenShift configuration in <code>~/.config/kube</code></p>\n</li>\n<li>\n<p>Using a <code><server></code> configuration in <code>~/.m2/settings.xml</code></p>\n</li>\n<li>\n<p>Login into a registry with <code>docker login</code> (credentials in a credential helper or in <code>~/.docker/config.json</code>)</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>Using the username and password directly in the <code>pom.xml</code> is not\nrecommended since this is widely visible. This is the easiest and\ntransparent way, though. Using an <code><authConfig></code> is straight forward:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <configuration>\n <image>consol/tomcat-7.0</image>\n <!-- ... -->\n <authConfig>\n <username>jolokia</username>\n <password>s!cr!t</password>\n </authConfig>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The system property provided credentials are a good compromise when\nusing CI servers like Jenkins. You simply provide the credentials from\nthe outside:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn -Djkube.docker.username=jolokia -Djkube.docker.password=s!cr!t k8s:push</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The most <em>mavenish</em> way is to add a server to the Maven settings file <code>~/.m2/settings.xml</code>:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><servers>\n <server>\n <id>docker.io</id>\n <username>jolokia</username>\n <password>s!cr!t</password>\n </server>\n <!-- ... -->\n</servers></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The server id must specify the registry to push to/pull from, which by\ndefault is central index <code>docker.io</code> (or <code>index.docker.io</code> / <code>registry.hub.docker.com</code> as fallbacks).\nHere you should add your docker.io account for your repositories. If you have multiple accounts\nfor the same registry, the second user can be specified as part of the ID. In the example above, if you\nhave a second account 'jkubeio' then use an <code><id>docker.io/jkubeio</id></code> for this second entry. I.e. add the\nusername with a slash to the id name. The default without username is only taken if no server entry with\na username appended id is chosen.</p>\n</div>\n<div class=\"paragraph\">\n<p>The most <em>secure</em> way is to rely on docker’s credential store or credential helper and read confidential information\nfrom an external credentials store, such as the native keychain of the operating system. Follow the instruction on\n<a href=\"https://docs.docker.com/engine/reference/commandline/login/#credentials-store\">the docker login documentation</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>As a final fallback, this plugin consults <code>$DOCKER_CONFIG/config.json</code> if <code>DOCKER_CONFIG</code> is set, or <code>~/.docker/config.json</code> if not, and reads credentials stored directly within this\nfile. This unsafe behavior happened when connecting to a registry with the command <code>docker login</code> from the command line\nwith older versions of docker (pre 1.13.0) or when docker is not configured to use a\n<a href=\"https://docs.docker.com/engine/reference/commandline/login/#credentials-store\">credential store</a>.</p>\n</div>\n<div class=\"sect2\">\n<h3 id=\"_pull_vs_push_authentication\">12.1. Pull vs. Push Authentication</h3>\n<div class=\"paragraph\">\n<p>The credentials lookup described above is valid for both push and\npull operations. In order to narrow things down, credentials can be\nprovided for pull or push operations alone:</p>\n</div>\n<div class=\"paragraph\">\n<p>In an <code><authConfig></code> section a sub-section <code><pull></code> and/or <code><push></code>\ncan be added. In the example below the credentials provider are only\nused for image push operations:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <configuration>\n <image>consol/tomcat-7.0</image>\n <!-- ... -->\n <authConfig>\n <push>\n <username>jolokia</username>\n <password>s!cr!t</password>\n </push>\n </authConfig>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>When the credentials are given on the command line as system\nproperties, then the properties <code>jkube.docker.pull.username</code> /\n<code>jkube.docker.pull.password</code> and <code>jkube.docker.push.username</code> /\n<code>jkube.docker.push.password</code> are used for pull and push operations,\nrespectively (when given). Either way, the standard lookup algorithm\nas described in the previous section is used as fallback.</p>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"_openshift_authentication\">12.2. OpenShift Authentication</h3>\n<div class=\"paragraph\">\n<p>When working with the default registry in OpenShift, the credentials\nto authenticate are the OpenShift username and access token. So, a\ntypical interaction with the OpenShift registry from the outside is:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre>oc login\n...\nmvn -Djkube.docker.registry=docker-registry.domain.com:80/default/myimage \\\n -Djkube.docker.username=$(oc whoami) \\\n -Djkube.docker.password=$(oc whoami -t)</pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>(note, that the image’s username part (\"default\" here\") must\ncorrespond to an OpenShift project with the same name to which you\ncurrently connected account has access).</p>\n</div>\n<div class=\"paragraph\">\n<p>This can be simplified by using the system property\n<code>docker.useOpenShiftAuth</code> in which case the plugin does the\nlookup. The equivalent to the example above is</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre>oc login\n...\nmvn -Ddocker.registry=docker-registry.domain.com:80/default/myimage \\\n -Ddocker.useOpenShiftAuth</pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Alternatively the configuration option <code><useOpenShiftAuth></code> can be\nadded to the <code><authConfig></code> section.</p>\n</div>\n<div class=\"paragraph\">\n<p>For dedicated <em>pull</em> and <em>push</em> configuration the system properties\n<code>jkube.docker.pull.useOpenShiftAuth</code> and <code>jkube.docker.push.useOpenShiftAuth</code> are\navailable as well as the configuration option <code><useOpenShiftAuth></code> in\nan <code><pull></code> or <code><push></code> section within the <code><authConfig></code>\nconfiguration.</p>\n</div>\n<div class=\"paragraph\">\n<p>If <code>useOpenShiftAuth</code> is enabled then the OpenShift configuration will be looked up in <code>$KUBECONFIG</code> or, if this environment variable is not set, in <code>~/.kube/config</code>.</p>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"password-encryption\">12.3. Password encryption</h3>\n<div class=\"paragraph\">\n<p>Regardless of which mode you choose you can encrypt password as described\nin the\n<a href=\"http://maven.apache.org/guides/mini/guide-encryption.html\">Maven documentation</a>. Assuming\nthat you have setup a <em>master password</em> in\n<code>~/.m2/security-settings.xml</code> you can create easily encrypt\npasswords:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-bash\" data-lang=\"bash\">$ mvn --encrypt-password\nPassword:\n{QJ6wvuEfacMHklqsmrtrn1/ClOLqLm8hB7yUL23KOKo=}</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This password then can be used in <code>authConfig</code>, <code>docker.password</code>\nand/or the <code><server></code> setting configuration. However, putting an\nencrypted password into <code>authConfig</code> in the <code>pom.xml</code> doesn’t make\nmuch sense, since this password is encrypted with an individual master\npassword.</p>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"extended-authentication\">12.4. Extended Authentication</h3>\n<div class=\"paragraph\">\n<p>Some docker registries require additional steps to authenticate.\n<a href=\"https://docs.aws.amazon.com/AmazonECR/latest/userguide/ECR_GetStarted.html\">Amazon ECR</a> requires using an IAM access key to obtain temporary docker login credentials.\nThe <a href=\"#jkube:push\"><strong>k8s:push</strong></a> and <a href=\"#jkube:build\"><strong>k8s:build</strong></a> goals automatically execute this exchange for any registry of the form\n<em><awsAccountId></em> <strong>.dkr.ecr.</strong> <em><awsRegion></em> <strong>.amazonaws.com</strong>, unless the <code>skipExtendedAuth</code> configuration\n(<code>jkube.docker.skip.extendedAuth</code> property) is set true.</p>\n</div>\n<div class=\"paragraph\">\n<p>Note that for an ECR repository with URI <code>123456789012.dkr.ecr.eu-west-1.amazonaws.com/example/image</code> the d-m-p’s <code>jkube.docker.registry</code> should be set to <code>123456789012.dkr.ecr.eu-west-1.amazonaws.com</code> and <code>example/image</code> is the <code><name></code> of the image.</p>\n</div>\n<div class=\"paragraph\">\n<p>You can use any IAM access key with the necessary permissions in any of the locations mentioned above except <code>~/.docker/config.json</code>.\nUse the IAM <strong>Access key ID</strong> as the username and the <strong>Secret access key</strong> as the password.\nIn case you’re using temporary security credentials provided by the AWS Security Token Service (AWS STS), you have to provide the <strong>security token</strong> as well.\nTo do so, either specify the <code>docker.authToken</code> system property or provide an <code><auth></code> element alongside username & password in the <code>authConfig</code>.</p>\n</div>\n<div class=\"paragraph\">\n<p>In case you are running on an EC2 instance that has an appropriate IAM role assigned\n(e.g. a role that grants the AWS built-in policy <em>AmazonEC2ContainerRegistryPowerUser</em>)\nauthentication information doesn’t need to be provided at all. Instead the instance\nmeta-data service is queried for temporary access credentials supplied by the\nassigned role.</p>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"volume-configuration\">13. Volume Configuration</h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>kubernetes-maven-plugin supports volume configuration in XML format in pom.xml. These are the volume types which are supported:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 47. Supported Volume Types</caption>\n<colgroup>\n<col style=\"width: 4.3478%;\">\n<col style=\"width: 95.6522%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Volume Type</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">hostPath</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Mounts a file or directory from the host node’s filesystem into your pod</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">emptyDir</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Containers in the Pod can all read and write the same files in the emptyDir volume, though that volume can be mounted at the same or different paths in each Container. When a Pod is removed from a node for any reason, the data in the emptyDir is deleted forever.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">gitRepo</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">It mounts an empty directory and clones a git repository into it for your Pod to use.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">secret</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">It is used to pass sensitive information, such as passwords, to Pods.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">nfsPath</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Allows an existing NFS(Network File System) share to be mounted into your Pod.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">gcePdName</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Mounts a Google Compute Engine(GCE) into your Pod. You must create PD using <code>gcloud</code> or GCE API or UI before you can use it.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">glusterFsPath</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Allows a Glusterfs (an open source networked filesystem) volume to be mounted into your Pod.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">persistentVolumeClaim</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Used to mount a PersistentVolume into a Pod.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">awsElasticBlockStore</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Mounts an Amazon Web Services(AWS) EBS Volume into your Pod.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">azureDisk</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Mounts a Microsoft Azure Data Disk into a Pod</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">azureFile</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Mounts a Microsoft Azure File Volume(SMB 2.1 and 3.0 into a Pod.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">cephfs</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Allows an existing CephFS volume to be mounted into your Pod. You must have your own Ceph server running with the share exported before you can use it.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">fc</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Allows existing fibre channel volume to be mounted in a Pod. You must configure FC SAN Zoning to allocate and mask those LUNs (volumes) to the target WWNs beforehand so that Kubernetes hosts can access them.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">flocker</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Flocker is an open source clustered Container data volume manager. A <code>flocker</code> volume allows a Flocker dataset to be mounted into a Pod. You must have your own Flocker installation running before you can use it.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">iscsi</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Allows an existing ISCSI(SCSI over IP) volume to be mounted into your Pod.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">portworxVolume</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A portworxVolume is an elastic block storage layer that runs hyperconverged with Kubernetes.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">quobyte</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Allows existing <code>Quobyte</code> volume to be mounted into your Pod. You must have your own Quobyte setup running the volumes created.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">rbd</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Allows a Rados Block Device volume to be mounted into your Pod.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">scaleIO</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ScaleIO is a software-based storage platform that can use existing hardware to create clusters of scalable shared block networked storage. The scaleIO volume plugin allows deployed Pods to access existing ScaleIO volumes.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">storageOS</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A storageos volume allows an existing StorageOS volume to be mounted into your Pod. You must run the StorageOS container on each node that wants to access StorageOS volumes</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">vsphereVolume</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Used to mount a vSphere VMDK volume into your Pod.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">downwardAPI</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A downwardAPI volume is used to make downward API data available to applications. It mounts a directory and writes the requested data in plain text files.</p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"integrations\">14. Integrations</h2>\n<div class=\"sectionbody\">\n<div class=\"sect2\">\n<h3 id=\"integrations.dekorate\">14.1. Dekorate</h3>\n<div class=\"paragraph\">\n<p><strong>kubernetes-maven-plugin</strong> provides a Zero Configuration approach to delegate deployment manifests\ngeneration to <a href=\"https://github.com/dekorateio/dekorate\">Dekorate</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>Just by adding a dependency to Dekorate library in the <code>pom.xml</code> file, all manifest\ngeneration will be delegated to Dekorate.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"> <dependencies>\n <!-- ... -->\n <dependency>\n <groupId>io.dekorate</groupId>\n <artifactId>option-annotations</artifactId>\n <version>${dekorate.version}</version>\n </dependency>\n <dependency>\n <groupId>io.dekorate</groupId>\n <artifactId>openshift-annotations</artifactId>\n <version>${dekorate.version}</version>\n </dependency>\n <dependency>\n <groupId>io.dekorate</groupId>\n <artifactId>kubernetes-annotations</artifactId>\n <version>${dekorate.version}</version>\n </dependency>\n <dependency>\n <groupId>io.dekorate</groupId>\n <artifactId>dekorate-spring-boot</artifactId>\n <version>${dekorate.version}</version>\n </dependency>\n </dependencies></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>A full example of the integration can be found in the directory\n<a href=\"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-dekorate\">quickstarts/maven/spring-boot-dekorate</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>An <strong>experimental</strong> feature is also provided to merge resources generated both by <strong>kubernetes-maven-plugin</strong>\nand Dekorate. You can activate this feature by using the following flag <code>-Djkube.mergeWithDekorate</code>\nin the command-line, or setting it up as a property (<code><jkube.mergeWithDekorate>true</jkube.mergeWithDekorate></code>).</p>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"_jib_java_image_builder\">14.2. JIB (Java Image Builder)</h3>\n<div class=\"paragraph\">\n<p><strong>kubernetes-maven-plugin</strong> also provides user an option to build container images without having access to any docker daemon.\nYou just need to set <code>jkube.build.strategy</code> property to <code>jib</code>. It will delegate the build process to\n<a href=\"https://github.com/GoogleContainerTools/jib\">JIB</a>. It creates a tarball inside your target directory which can be loaded\ninto any docker daemon afterwards. You may also push the image to your specified registry using push goal with feature flag enabled.</p>\n</div>\n<div class=\"paragraph\">\n<p>You can find more details at <a href=\"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-with-jib\">Spring Boot JIB Quickstart</a>.</p>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"faq\">15. FAQ</h2>\n<div class=\"sectionbody\">\n<div class=\"sect2\">\n<h3 id=\"_general_questions\">15.1. General questions</h3>\n<div class=\"sect3\">\n<h4 id=\"_how_do_i_define_an_environment_variable\">15.1.1. How do I define an environment variable?</h4>\n<div class=\"paragraph\">\n<p>The easiest way is to add a <code>src/main/jkube/deployment.yml</code> file to your project containing something like:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">spec:\n template:\n spec:\n containers:\n -env:\n - name: FOO\n value: bar</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The above will generate an environment variable <code>$FOO</code> of value <code>bar</code></p>\n</div>\n<div class=\"paragraph\">\n<p>For a full list of the environments used in java base images, <a href=\"https://hub.docker.com/r/jkube.java-jboss-openjdk8-jdk\">see this list</a></p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_how_do_i_define_a_system_property\">15.1.2. How do I define a system property?</h4>\n<div class=\"paragraph\">\n<p>The simplest way is to add system properties to the <code>JAVA_OPTIONS</code> environment variable.</p>\n</div>\n<div class=\"paragraph\">\n<p>For a full list of the environments used in java base images, <a href=\"https://hub.docker.com/r/jkube.java-jboss-openjdk8-jdk\">see this list</a></p>\n</div>\n<div class=\"paragraph\">\n<p>e.g. add a <code>src/main/jkube/deployment.yml</code> file to your project containing something like:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">spec:\n template:\n spec:\n containers:\n - env:\n - name: JAVA_OPTIONS\n value: \"-Dfoo=bar -Dxyz=abc\"</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The above will define the system properties <code>foo=bar</code> and <code>xyz=abc</code></p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_how_do_i_mount_a_config_file_from_a_configmap\">15.1.3. How do I mount a config file from a ConfigMap?</h4>\n<div class=\"paragraph\">\n<p>First you need to create your <code>ConfigMap</code> resource via a file <code>src/main/jkube/configmap.yml</code></p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">data:\n application.properties: |\n # spring application properties file\n welcome = Hello from Kubernetes ConfigMap!!!\n dummy = some value</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Then mount the entry in the <code>ConfigMap</code> into your <code>Deployment</code> via a file <code>src/main/jkube/deployment.yml</code></p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">metadata:\n annotations:\n configmap.jkube.io/update-on-change: ${project.artifactId}\nspec:\n replicas: 1\n template:\n spec:\n volumes:\n - name: config\n configMap:\n name: ${project.artifactId}\n items:\n - key: application.properties\n path: application.properties\n containers:\n - volumeMounts:\n - name: config\n mountPath: /deployments/config</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Here is <a href=\"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/external-resources\">an example quickstart doing this</a></p>\n</div>\n<div class=\"paragraph\">\n<p>Note that the annotation <code>configmap.jkube.io/update-on-change</code> is optional; its used if your application is not capable\nof watching for changes in the <code>/deployments/config/application.properties</code> file. In this case if you are also running\nthe <a href=\"https://github.com/fabric8io/configmapcontroller\">configmapcontroller</a> then this will cause a rolling upgrade of your\napplication to use the new <code>ConfigMap</code> contents as you change it.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_how_do_i_use_a_persistent_volume\">15.1.4. How do I use a Persistent Volume?</h4>\n<div class=\"paragraph\">\n<p>First you need to create your <code>PersistentVolumeClaim</code> resource via a file <code>src/main/jkube/foo-pvc.yml</code> where <code>foo</code> is the name of the <code>PersistentVolumeClaim</code>. It might be your app requires multiple vpersistent volumes so you will need multiple <code>PersistentVolumeClaim</code> resources.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">spec:\n accessModes:\n - ReadWriteOnce\n resources:\n requests:\n storage: 100Mi</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Then to mount the <code>PersistentVolumeClaim</code> into your <code>Deployment</code> create a file <code>src/main/jkube/deployment.yml</code></p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">spec:\n template:\n spec:\n volumes:\n - name: foo\n persistentVolumeClaim:\n claimName: foo\n containers:\n - volumeMounts:\n - mountPath: /whatnot\n name: foo</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Where the above defines the <code>PersistentVolumeClaim</code> called <code>foo</code> which is then mounted into the container at <code>/whatnot</code></p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_how_do_i_generate_ingress_for_my_generated_service\">15.1.5. How do I generate Ingress for my generated Service?</h4>\n<div class=\"paragraph\">\n<p><code>Ingress</code> generation is supported by Eclipse JKube for <code>Service</code> objects of type <code>LoadBalancer</code>. In order to generate <code>Ingress</code> you need to enable <code>jkube.createExternalUrls</code> property to <code>true</code> and <code>jkube.domain</code> property to desired host suffix, it would be appended to your service name for host value. You can also also provide a host for it in XML config like this:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n <version>1.0.2</version>\n\n <configuration>\n <resources>\n <routeDomain>org.eclipse.jkube</routeDomain>\n </resources>\n\n <enricher>\n <config>\n <jkube-service>\n <type>LoadBalancer</type>\n </jkube-service>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>You can find an example in our <a href=\"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot\">spring-boot</a> quickstart in <code>kubernetes-with-ingress</code> profile.</p>\n</div>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"appendix\">16. Appendix</h2>\n<div class=\"sectionbody\">\n<div class=\"sect2\">\n<h3 id=\"_kindfilename_type_mapping\">16.1. Kind/Filename Type Mapping</h3>\n<table id=\"appendix-kind-mapping\" class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 50%;\">\n<col style=\"width: 50%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Kind</th>\n<th class=\"tableblock halign-left valign-top\">Filename Type</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">BuildConfig</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>bc</code>, <code>buildconfig</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ClusterRole</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>cr</code>, <code>crole</code>, <code>clusterrole</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ConfigMap</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>cm</code>, <code>configmap</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ClusterRoleBinding</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>crb</code>, <code>clusterrb</code>, <code>clusterrolebinding</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">CronJob</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>cj</code>, <code>cronjob</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">CustomResourceDefinition</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>crd</code>, <code>customerresourcedefinition</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">DaemonSet</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>ds</code>, <code>daemonset</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Deployment</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>deployment</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">DeploymentConfig</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>dc</code>, <code>deploymentconfig</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ImageStream</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>is</code>, <code>imagestream</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ImageStreamTag</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>istag</code>, <code>imagestreamtag</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Ingress</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>ingress</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Job</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>job</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">LimitRange</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>lr</code>, <code>limitrange</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Namespace</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>ns</code>, <code>namespace</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">OAuthClient</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>oauthclient</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">PolicyBinding</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>pb</code>, <code>policybinding</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">PersistentVolume</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>pv</code>, <code>persistentvolume</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">PersistentVolumeClaim</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>pvc</code>, <code>persistemtvolumeclaim</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Project</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>project</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ProjectRequest</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>pr</code>, <code>projectrequest</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ReplicaSet</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>rs</code>, <code>replicaset</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ReplicationController</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>rc</code>, <code>replicationcontroller</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ResourceQuota</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>rq</code>, <code>resourcequota</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Role</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>role</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">RoleBinding</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>rb</code>, <code>rolebinding</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">RoleBindingRestriction</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>rbr</code>, <code>rolebindingrestriction</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Route</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>route</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Secret</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>secret</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Service</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>svc</code>, <code>service</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ServiceAccount</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>sa</code>, <code>serviceaccount</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">StatefulSet</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>statefulset</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Template</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>template</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Pod</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>pd</code>, <code>pod</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect2\">\n<h3 id=\"_custom_kindfilename_mapping\">16.2. Custom Kind/Filename Mapping</h3>\n<div class=\"paragraph\">\n<p>You can add your custom <code>Kind/Filename</code> mappings.\nTo do it you have two approaches:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Setting an environment variable or system property called <code>jkube.mapping</code> pointing out to a <code>.properties</code> files with pairs <code><kind>⇒filename1>, <filename2></code>\nBy default if no environment variable nor system property is set, scan for a file located at classpath <code>/META-INF/jkube.kind-filename-type-mapping-default.properties</code>.</p>\n</li>\n<li>\n<p>By embedding in MOJO configuration the mapping:</p>\n</li>\n</ul>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n <configuration>\n <mappings>\n <mapping>\n <kind>Var</kind>\n <filenameTypes>foo, bar</filenameTypes>\n </mapping>\n </mappings>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n</div>\n</div>\n</div>","document":{"title":"org.eclipse.jkube/kubernetes-maven-plugin","subtitle":""}}},"pageContext":{"id":"081d2529-9b9a-5041-ae97-dcfc63ad4610","langKey":"en"}},"staticQueryHashes":[]}
\ No newline at end of file
+{"componentChunkName":"component---src-templates-doc-jsx","path":"/docs/kubernetes-maven-plugin","result":{"data":{"asciidocCopy":{"html":"<div id=\"preamble\">\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>© 2020 The original authors.</p>\n</div>\n<div id=\"toc\" class=\"toc\">\n<div id=\"toctitle\" class=\"title\">kubernetes-maven-plugin</div>\n<ul class=\"sectlevel1\">\n<li><a href=\"#introduction\">1. Introduction</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#building-images\">1.1. Building Images</a></li>\n<li><a href=\"#resource-descriptors\">1.2. Kubernetes Resources</a></li>\n<li><a href=\"#_configuration\">1.3. Configuration</a></li>\n<li><a href=\"#_examples\">1.4. Examples</a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#zero-config\">1.4.1. Zero-Config</a></li>\n<li><a href=\"#_xml_configuration\">1.4.2. XML Configuration</a></li>\n<li><a href=\"#_resource_fragments\">1.4.3. Resource Fragments</a></li>\n</ul>\n</li>\n</ul>\n</li>\n<li><a href=\"#compatibility-with-Kubernetes\">2. Compatibility with Kubernetes</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#kubernetes-compatibility\">2.1. Kubernetes Compatibility</a></li>\n</ul>\n</li>\n<li><a href=\"#installation\">3. Installation</a></li>\n<li><a href=\"#goals\">4. Goals Overview</a></li>\n<li><a href=\"#goals-overview-build\">5. Build Goals</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#jkube:resource\">5.1. <strong>k8s:resource</strong></a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#resource-labels-annotations\">5.1.1. Labels and Annotations</a></li>\n<li><a href=\"#resource-secrets\">5.1.2. Secrets</a></li>\n<li><a href=\"#resource-validation\">5.1.3. Resource Validation</a></li>\n<li><a href=\"#Supported-Properties-Resource\">5.1.4. Supported Properties for Resource goal</a></li>\n</ul>\n</li>\n<li><a href=\"#jkube:build\">5.2. <strong>k8s:build</strong></a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#build-kubernetes\">5.2.1. Kubernetes Build</a></li>\n<li><a href=\"#build-goal-configuration\">5.2.2. Configuration (XML)</a></li>\n<li><a href=\"#_kubernetes_access_configuration\">5.2.3. Kubernetes Access Configuration</a></li>\n<li><a href=\"#_image_configuration\">5.2.4. Image Configuration</a></li>\n<li><a href=\"#build-configuration\">5.2.5. Build Configuration</a></li>\n<li><a href=\"#build-assembly\">5.2.6. Assembly</a></li>\n<li><a href=\"#misc-env\">5.2.7. Environment and Labels</a></li>\n<li><a href=\"#misc-startup\">5.2.8. Startup Arguments</a></li>\n<li><a href=\"#build-buildargs\">5.2.9. Build Args</a></li>\n<li><a href=\"#build-healthcheck\">5.2.10. Healthcheck</a></li>\n</ul>\n</li>\n<li><a href=\"#jkube:push\">5.3. <strong>k8s:push</strong></a></li>\n<li><a href=\"#jkube:apply\">5.4. <strong>k8s:apply</strong></a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#Supported-Properties-Apply\">5.4.1. Supported Properties For Apply goal</a></li>\n</ul>\n</li>\n<li><a href=\"#jkube:helm\">5.5. <strong>k8s:helm</strong></a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#helm-multi-module\">5.5.1. Multi-module projects</a></li>\n</ul>\n</li>\n</ul>\n</li>\n<li><a href=\"#goals-overview-develop\">6. Development Goals</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#jkube:deploy\">6.1. <strong>k8s:deploy</strong></a></li>\n<li><a href=\"#jkube:undeploy\">6.2. <strong>k8s:undeploy</strong></a></li>\n<li><a href=\"#jkube:log\">6.3. <strong>k8s:log</strong></a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#Supported-Properties-Log\">6.3.1. Supported Properties for Log goal</a></li>\n</ul>\n</li>\n<li><a href=\"#jkube:debug\">6.4. <strong>k8s:debug</strong></a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#_speeding_up_debugging\">6.4.1. Speeding up debugging</a></li>\n<li><a href=\"#_debugging_with_suspension\">6.4.2. Debugging with suspension</a></li>\n<li><a href=\"#Supported-Properties-Debug\">6.4.3. Supported Properties For Debug Goal</a></li>\n</ul>\n</li>\n<li><a href=\"#jkube:watch\">6.5. <strong>k8s:watch</strong></a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#watcher-spring-boot\">6.5.1. Spring Boot</a></li>\n<li><a href=\"#watcher-docker-image\">6.5.2. Docker Image</a></li>\n<li><a href=\"#Supported-Properties-Watch\">6.5.3. Supported Properties for Watch goal</a></li>\n</ul>\n</li>\n</ul>\n</li>\n<li><a href=\"#generators\">7. Generators</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#generators-default\">7.1. Default Generators</a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#generator-java-exec\">7.1.1. Java Applications</a></li>\n<li><a href=\"#generator-spring-boot\">7.1.2. Spring Boot</a></li>\n<li><a href=\"#generator-wildfly-swarm\">7.1.3. Wildfly Swarm</a></li>\n<li><a href=\"#generator-thorntail-v2\">7.1.4. Thorntail v2</a></li>\n<li><a href=\"#generator-vertx\">7.1.5. Vert.x</a></li>\n<li><a href=\"#generator-karaf\">7.1.6. Karaf</a></li>\n<li><a href=\"#generator-webapp\">7.1.7. Web Applications</a></li>\n<li><a href=\"#generator-quarkus\">7.1.8. Quarkus</a></li>\n<li><a href=\"#generator-openliberty\">7.1.9. Open Liberty</a></li>\n<li><a href=\"#generator-wildfly-jar\">7.1.10. Wildfly JAR Generator</a></li>\n</ul>\n</li>\n<li><a href=\"#generators-api\">7.2. Generator API</a></li>\n</ul>\n</li>\n<li><a href=\"#enrichers\">8. Enrichers</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#enrichers-default\">8.1. Default Enrichers</a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#enrichers-generic\">8.1.1. Generic Enrichers</a></li>\n<li><a href=\"#enrichers-specific\">8.1.2. Specific Enrichers</a></li>\n</ul>\n</li>\n<li><a href=\"#_enricher_api\">8.2. Enricher API</a></li>\n</ul>\n</li>\n<li><a href=\"#profiles\">9. Profiles</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#generator-enricher-definition\">9.1. Generator and Enricher definitions</a></li>\n<li><a href=\"#profiles-lookup-order\">9.2. Lookup order</a></li>\n<li><a href=\"#profiles-using\">9.3. Using Profiles</a></li>\n<li><a href=\"#profiles-predefined\">9.4. Predefined Profiles</a></li>\n<li><a href=\"#profiles-extended\">9.5. Extending Profiles</a></li>\n</ul>\n</li>\n<li><a href=\"#access-configuration\">10. Access configuration</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#_docker_access\">10.1. Docker Access</a></li>\n<li><a href=\"#_openshift_and_kubernetes_access\">10.2. OpenShift and Kubernetes Access</a></li>\n</ul>\n</li>\n<li><a href=\"#registry\">11. Registry handling</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#_pull_vs_push_authentication\">11.1. Pull vs. Push Authentication</a></li>\n<li><a href=\"#_openshift_authentication\">11.2. OpenShift Authentication</a></li>\n<li><a href=\"#password-encryption\">11.3. Password encryption</a></li>\n<li><a href=\"#extended-authentication\">11.4. Extended Authentication</a></li>\n</ul>\n</li>\n<li><a href=\"#volume-configuration\">12. Volume Configuration</a></li>\n<li><a href=\"#integrations\">13. Integrations</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#integrations.dekorate\">13.1. Dekorate</a></li>\n<li><a href=\"#_jib_java_image_builder\">13.2. JIB (Java Image Builder)</a></li>\n</ul>\n</li>\n<li><a href=\"#faq\">14. FAQ</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#_general_questions\">14.1. General questions</a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#_how_do_i_define_an_environment_variable\">14.1.1. How do I define an environment variable?</a></li>\n<li><a href=\"#_how_do_i_define_a_system_property\">14.1.2. How do I define a system property?</a></li>\n<li><a href=\"#_how_do_i_mount_a_config_file_from_a_configmap\">14.1.3. How do I mount a config file from a ConfigMap?</a></li>\n<li><a href=\"#_how_do_i_use_a_persistent_volume\">14.1.4. How do I use a Persistent Volume?</a></li>\n<li><a href=\"#_how_do_i_generate_ingress_for_my_generated_service\">14.1.5. How do I generate Ingress for my generated Service?</a></li>\n</ul>\n</li>\n</ul>\n</li>\n<li><a href=\"#appendix\">15. Appendix</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#_kindfilename_type_mapping\">15.1. Kind/Filename Type Mapping</a></li>\n<li><a href=\"#_custom_kindfilename_mapping\">15.2. Custom Kind/Filename Mapping</a></li>\n</ul>\n</li>\n</ul>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"introduction\">1. Introduction</h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>The <strong>kubernetes-maven-plugin</strong> brings your Java applications on to\n<a href=\"http://kubernetes.io/\">Kubernetes</a>.\nIt provides a tight integration into <a href=\"http://maven.apache.org\">Maven</a> and benefits from the build configuration already provided.\nThis plugin focus on two tasks: <em>Building Docker images</em> and <em>creating Kubernetes resource descriptors</em>.\nIt can be configured very flexibly and supports multiple configuration models for creating: A <em>Zero-Config</em> setup allows for a quick ramp-up with some opinionated defaults.\nFor more advanced requirements, an <em>XML configuration</em> provides additional configuration options which can be added to the <code>pom.xml</code>.\nFor the full power, in order to tune all facets of the creation, external <em>resource fragments</em> and <em>Dockerfiles</em> can be used.</p>\n</div>\n<div class=\"sect2\">\n<h3 id=\"building-images\">1.1. Building Images</h3>\n<div class=\"paragraph\">\n<p>The <a href=\"#jkube:build\"><strong>k8s:build</strong></a> goal is for creating Docker images containing the actual application. These then can be deployed later on Kubernetes or OpenShift.\nIt is easy to include build artifacts and their dependencies into these images.\nThis plugin uses the assembly descriptor format similar to the one used in\n<a href=\"http://maven.apache.org/plugins/maven-assembly-plugin/\">maven-assembly-plugin</a> to specify the content which will be added\nto the image.\nThat images can then be pushed to public or private Docker registries with <a href=\"#jkube:push\"><strong>k8s:push</strong></a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>Depending on the operational mode, for building the actual image either a Docker daemon is used directly or an <a href=\"https://docs.openshift.com/enterprise/3.0/architecture/core_concepts/builds_and_image_streams.html#docker-build\">OpenShift Docker Build</a> is performed.</p>\n</div>\n<div class=\"paragraph\">\n<p>A special <a href=\"#jkube:watch\"><strong>k8s:watch</strong></a> goal allows for reacting to code changes to automatically recreate images or copy new artifacts into running containers.</p>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"resource-descriptors\">1.2. Kubernetes Resources</h3>\n<div class=\"paragraph\">\n<p>Kubernetes resource descriptors can be created or generated from <a href=\"#jkube:resource\"><strong>k8s:resource</strong></a>.\nThese files are packaged within the Maven artifacts and can be deployed to a running orchestration platform with <a href=\"#jkube:apply\"><strong>k8s:apply</strong></a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>Typically you only specify a small part of the real resource descriptors which will be enriched by this plugin with various extra information taken from the <code>pom.xml</code>.\nThis drastically reduces boilerplate code for common scenarios.</p>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"_configuration\">1.3. Configuration</h3>\n<div class=\"paragraph\">\n<p>As mentioned already there are three levels of configuration:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><strong>Zero-Config</strong> mode makes some very opinionated decisions based on what is present in the pom.xml like what base image to use or which ports to expose.\nThis is great for starting up things and for keeping quickstart applications small and tidy.</p>\n</li>\n<li>\n<p><strong>XML plugin configuration</strong> mode is similar to what <a href=\"https://dmp.fabric8.io/#example\">docker-maven-plugin</a> provides.\nThis allows for type-safe configuration with IDE support, but only a subset of possible resource descriptor features is provided.</p>\n</li>\n<li>\n<p><strong>Kubernetes & OpenShift resource fragments</strong> are user provided YAML files that can be <em>enriched</em> by the plugin. This allows expert users to use a plain configuration file with all their capabilities, but also to add project specific build information and avoid boilerplate code.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>The following table gives an overview of the different models</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 1. Configuration Models</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 50%;\">\n<col style=\"width: 37.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Model</th>\n<th class=\"tableblock halign-left valign-top\">Docker Images</th>\n<th class=\"tableblock halign-left valign-top\">Resource Descriptors</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>Zero-Config</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generators\">Generators</a> are used to create Docker image configurations. Generators can detect certain aspects of\n the build (e.g. whether Spring Boot is used) and then choose some opinionated defaults like the base image, which\n ports to expose and the startup command. They can be configured, but offer only a few options.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Default <a href=\"#enrichers\">Enrichers</a> will create a default <em>Service</em> and <em>Deployment</em> (<em>DeploymentConfig</em> for OpenShift)\n when no other resource objects are provided. Depending on the image they can detect which port to expose in the\n service. As with Generators, Enrichers support a limited set of configuration options.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>XML configuration</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">kubernetes-maven-plugin inherits the XML based configuration for building images from the\n <a href=\"https://dmp.fabric8.io/#docker:build\">docker-maven-plugin</a> and provides the same functionality. It supports an\n <a href=\"http://maven.apache.org/components/plugins/maven-assembly-plugin/assembly.html\">assembly descriptor</a> for specifying the\n content of the Docker image.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A subset of possible resource objects can be configured with a dedicated XML syntax. With a decent IDE you get\n autocompletion on most objects and inline documentation for the available configuration elements. The provided\n configuration can be still enhanced by Enhancers which is useful for adding e.g. labels and annotations containing\n build or other information.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>Resource Fragments</strong> and <strong>Dockerfiles</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Similarly to the docker-maven-plugin, kubernetes-maven-plugin supports <a href=\"#external-dockerfile\">external Dockerfiles</a> too, which are\n referenced from the plugin configuration.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Resource descriptors can be provided as external YAML files which will build a base skeleton for the applicable resource.</p>\n<p class=\"tableblock\"> The \"skeleton\" is then post-processed by <a href=\"#enrichers\">Enrichers</a> which will complete the skeleton by adding the fields\n each enricher is responsible of (labels, annotations, port information, etc.). Maven properties within these files\n are resolved to their values.</p>\n<p class=\"tableblock\"> With this model you can use every Kubernetes / OpenShift resource objects with all their flexibility, but still get the benefit\n of adding build information.</p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect2\">\n<h3 id=\"_examples\">1.4. Examples</h3>\n<div class=\"paragraph\">\n<p>Let’s have a look at some code. The following examples will demonstrate all three configurations variants:</p>\n</div>\n<div class=\"sect3\">\n<h4 id=\"zero-config\">1.4.1. Zero-Config</h4>\n<div class=\"paragraph\">\n<p>This minimal but full working example <code>pom.xml</code> shows how a simple spring boot application can be dockerized and\nprepared for Kubernetes. The full example can be found in directory\n<a href=\"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/zero-config\">quickstarts/maven/zero-config</a>.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><project>\n <modelVersion>4.0.0</modelVersion>\n\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>jkube-maven-sample-zero-config</artifactId>\n <version>1.0.2</version>\n <packaging>jar</packaging>\n\n <parent>\n <groupId>org.springframework.boot</groupId>\n <artifactId>spring-boot-starter-parent</artifactId> <i class=\"conum\" data-value=\"1\"></i><b>(1)</b>\n <version>1.5.5.RELEASE</version>\n </parent>\n\n <dependencies>\n <dependency>\n <groupId>org.springframework.boot</groupId>\n <artifactId>spring-boot-starter-web</artifactId> <i class=\"conum\" data-value=\"2\"></i><b>(2)</b>\n </dependency>\n </dependencies>\n\n <build>\n <plugins>\n <plugin>\n <groupId>org.springframework.boot</groupId>\n <artifactId>spring-boot-maven-plugin</artifactId> <i class=\"conum\" data-value=\"3\"></i><b>(3)</b>\n </plugin>\n <plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId> <i class=\"conum\" data-value=\"4\"></i><b>(4)</b>\n <version>1.0.2</version>\n </plugin>\n </plugins>\n </build>\n</project></code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td>This minimalistic spring boot application uses the spring-boot parent POM for setting up dependencies and plugins</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"2\"></i><b>2</b></td>\n<td>The Spring Boot web starter dependency enables a simple embedded Tomcat for serving Spring MVC apps</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"3\"></i><b>3</b></td>\n<td>The <code>spring-boot-maven-plugin</code> is responsible for repackaging the application into a fat jar, including all dependencies and the embedded Tomcat</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"4\"></i><b>4</b></td>\n<td>The <code>kubernetes-maven-plugin</code> enables the automatic generation of a Docker image and Kubernetes / OpenShift descriptors including this Spring application.</td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<p>This setup make some opinionated decisions for you:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>As base image <a href=\"https://quay.io/repository/jkube/jkube-java-binary-s2i\">jkube/jkube-java-binary-s2i</a>\nis chosen which enables <a href=\"https://www.jolokia.org\">Jolokia</a> and <a href=\"https://github.com/prometheus/jmx_exporter\">jmx_exporter</a>.\nIt also comes with a sophisticated <a href=\"https://github.com/jboss-openshift/cct_module/tree/master/jboss/container/java/run/bash\">startup script</a>.</p>\n</li>\n<li>\n<p>It will create a Kubernetes <a href=\"http://kubernetes.io/docs/user-guide/deployments/\">Deployment</a> and a\n<a href=\"http://kubernetes.io/docs/user-guide/services/\">Service</a> as resource objects</p>\n</li>\n<li>\n<p>It exports port 8080 as the application service port (and 8778 and 9779 for Jolokia and jmx_exporter access, respectively)</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>These choices can be influenced by configuration options as described in <a href=\"#generator-spring-boot\">Spring Boot Generator</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>To start the Docker image build, you simply run</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-bash\" data-lang=\"bash\">mvn package k8s:build</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This will create the Docker image against a running Docker daemon (which must be accessible either via Unix Socket or\nwith the URL set in <code>DOCKER_HOST</code>). Alternatively, when connected to an OpenShift cluster then a <a href=\"https://docs.openshift.com/enterprise/3.0/using_images/s2i_images/index.html\">S2I</a> build will be performed on OpenShift which at the end creates an\n<a href=\"https://docs.openshift.com/enterprise/3.1/architecture/core_concepts/builds_and_image_streams.html\">ImageStream</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>To deploy the resources to the cluster call</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-bash\" data-lang=\"bash\">mvn k8s:resource k8s:deploy</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>By default a <em>Service</em> and a <em>Deployment</em> object pointing to the created Docker image is created. When running in OpenShift mode, a <em>Service</em> and <em>DeploymentConfig</em> which refers the <em>ImageStream</em> created with <code>k8s:build</code> will be installed.</p>\n</div>\n<div class=\"paragraph\">\n<p>Of course you can bind all those jkube-goals to execution phases as well, so that they are called along with standard lifecycle goals like <code>install</code>. For example, to bind the building of the Kubernetes resource files and the Docker images, add the following goals to the execution of the kubernetes-maven-plugin:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example for lifecycle bindings</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n\n <!-- ... -->\n\n <executions>\n <execution>\n <goals>\n <goal>resource</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>If you’d also like to automatically deploy to Kubernetes each time you do a <code>mvn install</code> you can add the <code>apply</code> goal:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example for lifecycle bindings with automatic deploys for mvn install</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n\n <!-- ... -->\n\n <executions>\n <execution>\n <goals>\n <goal>resource</goal>\n <goal>build</goal>\n <goal>apply</goal>\n </goals>\n </execution>\n </executions>\n</plugin></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_xml_configuration\">1.4.2. XML Configuration</h4>\n<div class=\"admonitionblock warning\">\n<table>\n<tr>\n<td class=\"icon\">\n<i class=\"fa icon-warning\" title=\"Warning\"></i>\n</td>\n<td class=\"content\">\nXML based configuration is only partially implemented and is not recommended for use right now.\n</td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<p>Although the Zero-config mode and its generators can be tweaked with options up to a certain degree, many cases require more flexibility. For such instances, an XML-based plugin configuration can be used, in a way similar to the\n<a href=\"https://dmp.fabric8.io/#configuration\">XML configuration</a> used by <code>docker-maven-plugin</code>.</p>\n</div>\n<div class=\"paragraph\">\n<p>The plugin configuration can be roughly divided into the following sections:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Global configuration options are responsible for tuning the behaviour of plugin goals</p>\n</li>\n<li>\n<p><code><images></code> defines which Docker <a href=\"#image-configuration\">images</a> are used and configured. This section is similar to the\n<a href=\"https://dmp.fabric8.io//#image-configuration\">image configuration</a> of the <code>docker-maven-plugin</code>, except that <code><run></code>\nand <code><external></code> sub-elements are ignored)</p>\n</li>\n<li>\n<p><code><resource></code> defines the resource descriptors for deploying on an OpenShift or Kuberneres cluster.</p>\n</li>\n<li>\n<p><code><generator></code> configures <a href=\"#generators\">generators</a> which are responsible for creating images. Generators are used as an alternative to a dedicated <code><images></code> section.</p>\n</li>\n<li>\n<p><code><enricher></code> configures various aspects of <a href=\"#enrichers\">enrichers</a> for creating or enhancing resource descriptors.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>A working example can be found in the\n<a href=\"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/xml-config\">quickstarts/maven/xml-config</a> directory.\nAn extract of the plugin configuration is shown below:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example for an XML configuration</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><configuration>\n <namespace>test-ns</namespace>\n <images> <i class=\"conum\" data-value=\"1\"></i><b>(1)</b>\n <image>\n <name>xml-config-demo:1.0.0</name>\n <!-- \"alias\" is used to correlate to the containers in the pod spec -->\n <alias>camel-app</alias>\n <build>\n <from>fabric8/java-centos-openjdk8-jre</from>\n <assembly>\n <inline>\n <baseDirectory>/deployments</baseDirectory>\n </inline>\n </assembly>\n <env>\n <JAVA_LIB_DIR>/deployments</JAVA_LIB_DIR>\n <JAVA_MAIN_CLASS>org.apache.camel.cdi.Main</JAVA_MAIN_CLASS>\n </env>\n </build>\n </image>\n </images>\n\n <resources> <i class=\"conum\" data-value=\"2\"></i><b>(2)</b>\n <labels> <i class=\"conum\" data-value=\"3\"></i><b>(3)</b>\n <all>\n <group>quickstarts</group>\n </all>\n </labels>\n\n <replicas>2</replicas> <i class=\"conum\" data-value=\"4\"></i><b>(4)</b>\n <controllerName>${project.artifactId}</controllerName> <i class=\"conum\" data-value=\"5\"></i><b>(5)</b>\n\n <services> <i class=\"conum\" data-value=\"6\"></i><b>(6)</b>\n <service>\n <name>camel-service</name>\n <headless>true</headless>\n </service>\n </services>\n\n <serviceAccounts>\n <serviceAccount>\n <name>build-robot</name>\n </serviceAccount>\n </serviceAccounts>\n </resources>\n</configuration></code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td>Standard XML configuration for building one single Docker image</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"2\"></i><b>2</b></td>\n<td>Kubernetes / OpenShift resources to create</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"3\"></i><b>3</b></td>\n<td>Labels which should be applied globally to all resource objects</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"4\"></i><b>4</b></td>\n<td>Number of replicas desired</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"5\"></i><b>5</b></td>\n<td>Name of controller created by plugin</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"6\"></i><b>6</b></td>\n<td>One or more <a href=\"http://kubernetes.io/docs/user-guide/services/\">Service</a> definitions.</td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<p>The XML resource configuration is based on plain Kubernetes resource objects. When targeting OpenShift, Kubernetes resource descriptors will be automatically converted to their OpenShift counterparts, e.g. a Kubernetes <a href=\"http://kubernetes.io/docs/user-guide/deployments/\">Deployment</a> will be converted to an OpenShift <a href=\"https://docs.openshift.com/container-platform/4.1/applications/deployments/what-deployments-are.html#deployments-and-deploymentconfigs_what-deployments-are\">DeploymentConfig</a>.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_resource_fragments\">1.4.3. Resource Fragments</h4>\n<div class=\"paragraph\">\n<p>The third configuration option is to use an external configuration in form of YAML resource descriptors which are located in the <code>src/main/jkube</code> directory. Each resource gets its own file, which contains a skeleton of a resource descriptor. The plugin will pick up the resource, enrich it and then combine all to a single <code>kubernetes.yml</code> and <code>openshift.yml</code> file. Within these descriptor files you are can freely use any Kubernetes feature.</p>\n</div>\n<div class=\"paragraph\">\n<p>Note: In order to support simultaneously both OpenShift and Kubernetes, there is currently no way to specify OpenShift-only features this way, though this might change in future releases.</p>\n</div>\n<div class=\"paragraph\">\n<p>Let’s have a look at an example from\n<a href=\"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/external-resources\">quickstarts/maven/external-resources</a>.\nThis is a plain Spring Boot application, whose images are auto generated like in the <a href=\"#zero-config\">Zero-Config</a> case.\nThe resource fragments are in <code>src/main/jkube</code>.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example fragment \"deployment.yml\"</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">spec:\n replicas: 1\n template:\n spec:\n volumes:\n - name: config\n gitRepo:\n repository: 'https://github.com/jstrachan/sample-springboot-config.git'\n revision: 667ee4db6bc842b127825351e5c9bae5a4fb2147\n directory: .\n containers:\n - volumeMounts:\n - name: config\n mountPath: /app/config\n env:\n - name: KUBERNETES_NAMESPACE\n valueFrom:\n fieldRef:\n apiVersion: v1\n fieldPath: metadata.namespace\n serviceAccount: ribbon</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>As you can see, there is no <code>metadata</code> section as would be expected for Kubernetes resources because it will be automatically added by the <code>kubernetes-maven-plugin</code>. The object’s <code>Kind</code>, if not given, is automatically derived from the\nfilename. In this case, the <code>kubernetes-maven-plugin</code> will create a <code>Deployment</code> because the file is called <code>deployment.yml</code>. Similar mappings between file names and resource type exist for each supported resource kind, the\ncomplete list of which (along with associated abbreviations) can be found in the <a href=\"#appendix-kind-mapping\">Appendix</a>.</p>\n</div>\n<div class=\"admonitionblock note\">\n<table>\n<tr>\n<td class=\"icon\">\n<i class=\"fa icon-note\" title=\"Note\"></i>\n</td>\n<td class=\"content\">\nNow that sidecar containers are supported in this plugin(if <code>jkube.sidecar</code> is enabled), be careful whenever you’re supplying container name in the resource fragment. If container specified in resource fragment doesn’t have a name or it’s name is equal to default fmp generated application’s container name; it would not be treated as sidecar and it would be merged into main container. However, You can override plugin’s default name for main container via <code>jkube.generator.alias</code> property.\n</td>\n</tr>\n</table>\n</div>\n<hr>\n<div class=\"paragraph\">\n<p>Additionally, if you name your fragment using a name prefix followed by a dash and the mapped file name, the plugin will automatically use that name for your resource. So, for example, if you name your deployment fragment\n<code>myapp-deployment.yml</code>, the plugin will name your resource <code>myapp</code>. In the absence of such provided name for your resource, a name will be automatically derived from your project’s metadata (in particular, its <code>artifactId</code> as specified in your POM).</p>\n</div>\n<div class=\"paragraph\">\n<p>No image is also referenced in this example because the plugin also fills in the image details based on the configured image you are building with (either from a generator or from a dedicated image plugin configuration, as seen before).</p>\n</div>\n<div class=\"admonitionblock note\">\n<table>\n<tr>\n<td class=\"icon\">\n<i class=\"fa icon-note\" title=\"Note\"></i>\n</td>\n<td class=\"content\">\nFor building images there is also an alternative mode using external Dockerfiles, in addition to the XML based configuration. Refer to <a href=\"#build-overview\">k8s:build</a> for details.\n</td>\n</tr>\n</table>\n</div>\n<hr>\n<div class=\"paragraph\">\n<p>Enrichment of resource fragments can be fine-tuned by using profile sub-directories. For more details see <a href=\"#profiles\">Profiles</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>Now that we have seen some examples of the various ways how this plugin can be used, the following sections will describe the plugin goals and extension points in detail.</p>\n</div>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"compatibility-with-Kubernetes\">2. Compatibility with Kubernetes</h2>\n<div class=\"sectionbody\">\n<div class=\"sect2\">\n<h3 id=\"kubernetes-compatibility\">2.1. Kubernetes Compatibility</h3>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 2. Kubernetes Compatibility</caption>\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 16.667%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">KMP</th>\n<th class=\"tableblock halign-left valign-top\">Kubernetes 1.19</th>\n<th class=\"tableblock halign-left valign-top\">Kubernetes 1.18</th>\n<th class=\"tableblock halign-left valign-top\">Kubernetes 1.17</th>\n<th class=\"tableblock halign-left valign-top\">Kubernetes 1.14</th>\n<th class=\"tableblock halign-left valign-top\">Kubernetes 1.12</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">KMP 1.0.2</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">KMP 1.0.1</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">KMP 1.0.0</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">KMP 0.2.0</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">x</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">x</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">KMP 0.1.1</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">x</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">x</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">x</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">KMP 0.1.0</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">x</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">x</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">x</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"installation\">3. Installation</h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>This plugin is available from Maven central and can be connected to\npre- and post-integration phase as seen below. The configuration and\navailable goals are described below.</p>\n</div>\n<div class=\"paragraph\">\n<p>By default, Maven will only search for plugins in the <code>org.apache.maven.plugins</code> and <code>org.codehaus.mojo</code> packages. In order to resolve the provider for the JKube plugin goals, you need to edit <code>~/.m2/settings.xml</code> and add the <code>org.eclipse.jkube</code> namespace so the <code><pluginGroups></code> configuration.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><settings>\n ...\n\n <pluginGroups>\n <pluginGroup>org.eclipse.jkube</pluginGroup>\n </pluginGroups>\n\n ...\n</settings></code></pre>\n</div>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n <version>1.0.2</version>\n\n <configuration>\n ....\n <images>\n <!-- A single's image configuration -->\n <image>\n ...\n <build>\n ....\n </build>\n </image>\n ....\n </images>\n </configuration>\n\n <!-- Connect k8s:resource, k8s:build and k8s:helm to lifecycle phases -->\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>build</goal>\n <goal>helm</goal>\n </goals>\n </execution>\n </executions>\n</plugin></code></pre>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"goals\">4. Goals Overview</h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>This plugin supports a rich set for providing a smooth Java developer experience. These goals can be categorized in multiple groups:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><a href=\"#goals-build\">Build goals</a> are all about creating and managing Kubernetes build artifacts like Docker images or S2I builds.</p>\n</li>\n<li>\n<p><a href=\"#goals-develop\">Development goals</a> target help not only in deploying resource descriptors to the development cluster but also to manage the lifecycle of the development cluster as well.</p>\n</li>\n</ul>\n</div>\n<table id=\"goals-build\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 3. Build Goals</caption>\n<colgroup>\n<col style=\"width: 25%;\">\n<col style=\"width: 75%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Goal</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong><a href=\"#jkube:build\"><strong>k8s:build</strong></a></strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Build images</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong><a href=\"#jkube:push\"><strong>k8s:push</strong></a></strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Push images to a registry</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong><a href=\"#jkube:resource\"><strong>k8s:resource</strong></a></strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Create Kubernetes or OpenShift resource descriptors</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong><a href=\"#jkube:apply\"><strong>k8s:apply</strong></a></strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Apply resources to a running cluster</p></td>\n</tr>\n</tbody>\n</table>\n<table id=\"goals-develop\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 4. Development Goals</caption>\n<colgroup>\n<col style=\"width: 25%;\">\n<col style=\"width: 75%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Goal</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong><a href=\"#jkube:deploy\"><strong>k8s:deploy</strong></a></strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Deploy resources descriptors to a cluster after creating them and building the app. Same as <a href=\"#jkube:apply\"><strong>k8s:apply</strong></a> except that it runs in the background.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong><a href=\"#jkube:undeploy\"><strong>k8s:undeploy</strong></a></strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Undeploy and remove resources descriptors from a cluster.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong><a href=\"#jkube:watch\"><strong>k8s:watch</strong></a></strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Watch for file changes and perform rebuilds and redeployments</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong><a href=\"#jkube:log\"><strong>k8s:log</strong></a></strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Show the logs of the running application</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong><a href=\"#jkube:debug\"><strong>k8s:debug</strong></a></strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Enable remote debugging</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Depending on whether the OpenShift or Kubernetes operational mode is used, the workflow and the performed actions differs :</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 5. Workflows</caption>\n<colgroup>\n<col style=\"width: 11.1111%;\">\n<col style=\"width: 44.4444%;\">\n<col style=\"width: 44.4445%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Use Case</th>\n<th class=\"tableblock halign-left valign-top\">Kubernetes</th>\n<th class=\"tableblock halign-left valign-top\">OpenShift</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Build</p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p><code>k8s:build</code> <code>k8s:push</code></p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Creates an image against an exposed Docker daemon (with a <code>docker.tar</code>)</p>\n</li>\n<li>\n<p>Pushes the image to a registry which is then referenced from the configuration</p>\n</li>\n</ul>\n</div></div></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p><code>k8s:build</code></p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Creates or uses a <code>BuildConfig</code></p>\n</li>\n<li>\n<p>Creates or uses an <code>ImageStream</code> which can be referenced by the deployment descriptors in a <code>DeploymenConfig</code></p>\n</li>\n<li>\n<p>Starts an OpenShift build with a <code>docker.tar</code> as input</p>\n</li>\n</ul>\n</div></div></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Deploy</p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p><code>k8s:deploy</code></p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Applies a Kubernetes resource descriptor to cluster</p>\n</li>\n</ul>\n</div></div></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p><code>k8s:deploy</code></p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Applies an OpenShift resource descriptor to a cluster</p>\n</li>\n</ul>\n</div></div></td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"goals-overview-build\">5. Build Goals</h2>\n<div class=\"sectionbody\">\n<div class=\"sect2\">\n<h3 id=\"jkube:resource\">5.1. <strong>k8s:resource</strong></h3>\n<div class=\"paragraph\">\n<p>This goal generates Kubernetes resources based on your project. It can either be opinionated defaults or\nbased on the configuration provided in XML config or resource fragments in <code>src/main/jkube</code>.\nGenerated resources are in <code>target/classes/META-INF/jkube/kubernetes</code> directory.</p>\n</div>\n<div class=\"sect3\">\n<h4 id=\"resource-labels-annotations\">5.1.1. Labels and Annotations</h4>\n<div class=\"paragraph\">\n<p>Labels and annotations can be easily added to any resource object. This is best explained by an example.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example for label and annotations</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <!-- ... -->\n <configuration>\n <!-- ... -->\n <resources>\n <labels> <i class=\"conum\" data-value=\"1\"></i><b>(1)</b>\n <all> <i class=\"conum\" data-value=\"1\"></i><b>(1)</b>\n <property> <i class=\"conum\" data-value=\"2\"></i><b>(2)</b>\n <name>organisation</name>\n <value>unesco</value>\n </property>\n </all>\n <service> <i class=\"conum\" data-value=\"3\"></i><b>(3)</b>\n <property>\n <name>database</name>\n <value>mysql</value>\n </property>\n <property>\n <name>persistent</name>\n <value>true</value>\n </property>\n </service>\n <replicaSet> <i class=\"conum\" data-value=\"4\"></i><b>(4)</b>\n <!-- ... -->\n </replicaSet>\n <pod> <i class=\"conum\" data-value=\"5\"></i><b>(5)</b>\n <!-- ... -->\n </pod>\n <deployment> <i class=\"conum\" data-value=\"6\"></i><b>(6)</b>\n <!-- ... -->\n </deployment>\n </labels>\n\n <annotations> <i class=\"conum\" data-value=\"7\"></i><b>(7)</b>\n <!-- ... -->\n </annotations>\n <remotes> <i class=\"conum\" data-value=\"8\"></i><b>(8)</b>\n <remote>https://gist.githubusercontent.com/lordofthejars/ac2823cec7831697d09444bbaa76cd50/raw/e4b43f1b6494766dfc635b5959af7730c1a58a93/deployment.yaml</remote>\n </remotes>\n </resource>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td><code><labels></code> section with <code><resources></code> contains labels which should be applied to objects of various kinds</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"2\"></i><b>2</b></td>\n<td>Within <code><all></code> labels which should be applied to <strong>every</strong> object can be specified</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"3\"></i><b>3</b></td>\n<td><code><service></code> labels are used to label services</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"4\"></i><b>4</b></td>\n<td><code><replicaSet></code> labels are for replica set and replication controller</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"5\"></i><b>5</b></td>\n<td><code><pod></code> holds labels for pod specifications in replication controller, replica sets and deployments</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"6\"></i><b>6</b></td>\n<td><code><deployment></code> is for labels on deployments (kubernetes) and deployment configs (openshift)</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"7\"></i><b>7</b></td>\n<td>The subelements are also available for specifying annotations.</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"8\"></i><b>8</b></td>\n<td><code><remotes></code> you can set location of fragments as <code>URL</code>.</td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<p>Labels and annotations can be specified in free form as a map. In this map, the element name is the name of the label or annotation respectively, whereas the content is the value to set.</p>\n</div>\n<div class=\"paragraph\">\n<p>The following subelements are possible for <code><labels></code> and <code><annotations></code> :</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 6. Label and annotation configuration</caption>\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 85.7143%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>all</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">All entries specified in the <code><all></code> sections are applied to all resource objects created.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>deployment</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Labels and annotations applied to <code>Deployment</code> (for Kubernetes).</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>pod</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Labels and annotations applied pod specification as used in <code>ReplicationController</code>, <code>ReplicaSets</code>, <code>Deployments</code> and <code>DeploymentConfigs</code> objects.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>replicaSet</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Labels and annotations applied to <code>ReplicaSet</code> and <code>ReplicationController</code> objects.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>service</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Labels and annotations applied to <code>Service</code> objects.</p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect3\">\n<h4 id=\"resource-secrets\">5.1.2. Secrets</h4>\n<div class=\"paragraph\">\n<p>Once you’ve configured some docker registry credentials into <code>~/.m2/setting.xml</code>, as explained in the\n<a href=\"#authentication\">Authentication</a> section, you can create Kubernetes secrets from a server declaration.</p>\n</div>\n<div class=\"paragraph\">\n<p><strong>XML configuration</strong></p>\n</div>\n<div class=\"paragraph\">\n<p>You can create a secret using xml configuration in the <code>pom.xml</code> file. It should contain the following fields:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">key</th>\n<th class=\"tableblock halign-left valign-top\">required</th>\n<th class=\"tableblock halign-left valign-top\">description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>dockerServerId</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>true</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">the server id which is configured in\n<code>~/.m2/setting.xml</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>name</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>true</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">this will be used as name of the kubernetes secret resource</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>namespace</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>false</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">the secret resource will be applied to the specific\nnamespace, if provided</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>This is best explained by an example.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example for XML configuration</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><properties>\n <jkube.docker.registry>docker.io</docker.registry>\n</properties></code></pre>\n</div>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><configuration>\n <resources>\n <secrets>\n <secret>\n <dockerServerId>${docker.registry}</dockerServerId>\n <name>mydockerkey</name>\n </secret>\n </secrets>\n </resources>\n</configuration></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p><strong>Yaml fragment with annotation</strong></p>\n</div>\n<div class=\"paragraph\">\n<p>You can create a secret using a yaml fragment. You can reference the docker server id with an annotation\n<code>maven.jkube.io/dockerServerId</code>. The yaml fragment file should be put under\nthe <code>src/main/jkube/</code> folder.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">apiVersion: v1\nkind: Secret\nmetadata:\n name: mydockerkey\n namespace: default\n annotations:\n maven.jkube.io/dockerServerId: ${docker.registry}\ntype: kubernetes.io/dockercfg</code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"resource-validation\">5.1.3. Resource Validation</h4>\n<div class=\"paragraph\">\n<p>Resource goal also validates the generated resource descriptors using API specification of <a href=\"https://raw.githubusercontent.com/kubernetes/kubernetes/master/api/openapi-spec/swagger.json\">Kubernetes</a>.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 7. Validation Configuration</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipResourceValidation</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If value is set to <code>true</code> then resource validation is skipped. This may be useful if resource validation is failing\n for some reason but you still want to continue the deployment.</p>\n<p class=\"tableblock\"> Default is <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skipResourceValidation</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>failOnValidationError</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If value is set to <code>true</code> then any validation error will block the plugin execution. A warning will be printed\n otherwise.</p>\n<p class=\"tableblock\"> Default is <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.failOnValidationError</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect3\">\n<h4 id=\"Supported-Properties-Resource\">5.1.4. Supported Properties for Resource goal</h4>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 8. Options available with resource goal</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>profile</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Profile to use. A profile contains the enrichers and generators to use as well as their configuration. Profiles are\n looked up in the classpath and can be provided as yaml files.</p>\n<p class=\"tableblock\"> Defaults to <code>default</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.profile</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>sidecar</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Whether to enable sidecar behavior or not. By default pod specs are merged into main application container.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.sidecar</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipHealthCheck</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Whether to skip health checks addition in generated resources or not.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skipHealthCheck</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>workDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The JKube working directory. Defaults to <code>${project.build.directory}/jkube</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.workDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>environment</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Environment name where resources are placed. For example, if you set this property to dev and resourceDir is the\n default one, plugin will look at <code>src/main/jkube/dev</code>.</p>\n<p class=\"tableblock\"> Defaults to <code>null</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.environment</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>useProjectClassPath</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Should we use the project’s compile time classpath to scan for additional enrichers/generators.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.useProjectClassPath</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>resourceDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Folder where to find project specific files.</p>\n<p class=\"tableblock\"> Defaults to <code>${basedir}/src/main/jkube</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.resourceDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>targetDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The generated Kubernetes manifests target direcotry.</p>\n<p class=\"tableblock\"> Defaults to <code>${project.build.outputDirectory}/META-INF/jkube</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.targetDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>resourceType</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The artifact type for attaching the generated resource file to the project. Can be either 'json' or 'yaml'.</p>\n<p class=\"tableblock\"> Defaults to <code>yaml</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.resourceType</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>mergeWithDekorate</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">When resource generation is delegated to Dekorate, should JKube resources be merged with Dekorate generated ones.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.mergeWithDekorate</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>interpolateTemplateParameters</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Interpolate parameter values from <code>*template.yml</code> fragments in the generated resource list (<code>kubernetes.yml</code>).</p>\n<p class=\"tableblock\"> This is useful when using JKube in combination with Helm.</p>\n<p class=\"tableblock\"> Placeholders for variables defined in template files can be used in the different resource fragments. Helm generated\n charts will contain these placeholders/parameters.</p>\n<p class=\"tableblock\"> For <code>resource</code> goal, these placeholders are replaced in the\n aggregated resource list YAML file (not in the individual generated resources) if this option is enabled.</p>\n<p class=\"tableblock\"> Defaults to <code>true</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.interpolateTemplateParameters</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipResource</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Skip resource generation.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skip.resource</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>createExternalUrls</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Should we create external Ingress for any LoadBalancer Services which don’t already have them.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.createExternalUrls</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>domain</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Domain added to the Service ID when creating Kubernetes Ingresses or OpenShift routes.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.domain</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"jkube:build\">5.2. <strong>k8s:build</strong></h3>\n<div class=\"paragraph\">\n<p>This goal is for building Docker images.</p>\n</div>\n<div class=\"sect3\">\n<h4 id=\"build-kubernetes\">5.2.1. Kubernetes Build</h4>\n<div class=\"paragraph\">\n<p>A normal Docker build is performed by default. The connection configuration to\naccess the Docker daemon is described in <a href=\"#access-configuration\">Access Configuration</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>In order to make the generated images available to the Kubernetes cluster the generated images need to be pushed to a\nregistry with the goal <a href=\"#jkube:push\"><strong>k8s:push</strong></a>. This is not necessary for single node clusters, though as there is no need to\ndistribute images.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"build-goal-configuration\">5.2.2. Configuration (XML)</h4>\n<div class=\"paragraph\">\n<p>The following sections describe the usual configuration, which is similar to the build configuration used in the\n <a href=\"https://dmp.fabric8.io\">docker-maven-plugin</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>In addition a more automatic way for creating predefined build configuration can be performed with so called <a href=\"#generators\">Generators</a>. Generators are very flexible and can be easily created. These are described in an extra <a href=\"#generators\">section</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>Global configuration parameters specify overall behavior common for all images to build. Some of the configuration options are shared with other goals.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 9. Global configuration</caption>\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 71.4285%;\">\n<col style=\"width: 14.2858%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>buildStrategy</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>Defines what build strategy to choose while building container image.\nPossible values are <code>docker</code> and <code>jib</code> out of which <code>docker</code> is default.</p>\n</div></div></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.build.strategy</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>apiVersion</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Use this variable if you are using an older version of docker not compatible with the current default use to\n communicate with the server.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.apiVersion</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>authConfig</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Authentication information when pulling from or pushing to Docker registry. There is a dedicated section\n <a href=\"#authentication\">Authentication</a> for how to do security.</p></td>\n<td class=\"tableblock halign-left valign-top\"></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>autoPull</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>Decide how to pull missing base images or images to start:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>on</code> : Automatic download any missing images (default)</p>\n</li>\n<li>\n<p><code>off</code> : Automatic pulling is switched off</p>\n</li>\n<li>\n<p><code>always</code> : Pull images always even when they already exist locally</p>\n</li>\n<li>\n<p><code>once</code> : For multi-module builds images are only checked once and pulled for the whole build.</p>\n</li>\n</ul>\n</div></div></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.autoPull</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>buildRecreate</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>If the effective <a href=\"#build-mode\">mode</a> is <code>openshift</code> then this option decides how the OpenShift resource objects\n associated with the build should be treated when they already exist:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>buildConfig</code> or <code>bc</code> : Only the BuildConfig is recreated</p>\n</li>\n<li>\n<p><code>imageStream</code> or <code>is</code> : Only the ImageStream is recreated</p>\n</li>\n<li>\n<p><code>all</code> : Both, BuildConfig and ImageStream are recreated</p>\n</li>\n<li>\n<p><code>none</code> : Neither BuildConfig nor ImageStream is recreated</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>The default is <code>none</code>. If you provide the property without value then <code>all</code> is assumed, so everything gets recreated.</p>\n</div></div></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.build.recreate</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a id=\"image-pull-policy\"></a> <strong>imagePullPolicy</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>Specify whether images should be pull when looking for base images while building or images for starting.\nThis property can take the following values (case insensitive):</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>IfNotPresent</code>: Automatic download any missing images (default)</p>\n</li>\n<li>\n<p><code>Never</code> : Automatic pulling is switched off always</p>\n</li>\n<li>\n<p><code>Always</code> : Pull images always even when they already exist locally.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>By default a progress meter is printed out on the console, which is omitted when using Maven in batch mode (option <code>-B</code>). A very simplified progress meter is provided when using no color output (i.e. with <code>-Djkube.useColor=false</code>).</p>\n</div></div></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.imagePullPolicy</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>certPath</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Path to SSL certificate when SSL is used for communicating with the Docker daemon. These certificates are normally\n stored in <code>~/.docker/</code>. With this configuration the path can be set explicitly. If not set, the fallback is first\n taken from the environment variable <code>DOCKER_CERT_PATH</code> and then as last resort <code>~/.docker/</code>. The keys in this are\n expected with it standard names <code>ca.pem</code>, <code>cert.pem</code> and <code>key.pem</code>.\n Please refer to the <a href=\"https://docs.docker.com/articles/https\">Docker documentation</a> for more information about SSL\n security with Docker.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.certPath</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>dockerHost</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>The URL of the Docker Daemon. If this configuration option is not given, then the optional <code><machine></code> configuration\nsection is consulted. The scheme of the URL can be either given directly as <code>http</code> or <code>https</code>\ndepending on whether plain HTTP communication is enabled or SSL should\nbe used. Alternatively the scheme could be <code>tcp</code> in which case the\nprotocol is determined via the IANA assigned port: 2375 for <code>http</code>\nand 2376 for <code>https</code>. Finally, Unix sockets are supported by using\nthe scheme <code>unix</code> together with the filesystem path to the unix socket.</p>\n</div>\n<div class=\"paragraph\">\n<p>The discovery sequence used by the docker-maven-plugin to determine\nthe URL is:</p>\n</div>\n<div class=\"olist arabic\">\n<ol class=\"arabic\">\n<li>\n<p>Value of <strong>dockerHost</strong> (<code>jkube.docker.host</code>)</p>\n</li>\n<li>\n<p>The Docker host associated with the docker-machine named in <code><machine></code>, i.e. the <code>DOCKER_HOST</code> from <code>docker-machine env</code>. See <a href=\"#docker-machine\">below</a> for more information about Docker machine support.</p>\n</li>\n<li>\n<p>The value of the environment variable <code>DOCKER_HOST</code>.</p>\n</li>\n<li>\n<p><code>unix:///var/run/docker.sock</code> if it is a readable socket.</p>\n</li>\n</ol>\n</div></div></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.host</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>filter</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">In order to temporarily restrict the operation of plugin goals this configuration option can be used.\n Typically this will be set via the system property <code>jkube.image.filter</code> when Maven is called. The value can be a single\n image name (either its alias or full name) or it can be a comma separated list with multiple image names. Any name\n which doesn’t refer an image in the configuration will be ignored.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.image.filter</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>machine</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Docker machine configuration. See <a href=\"#docker-machine\">Docker Machine</a> for possible values.</p></td>\n<td class=\"tableblock halign-left valign-top\"></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>maxConnections</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Number of parallel connections are allowed to be opened to the Docker Host. For parsing log output, a connection needs\n to be kept open (as well for the wait features), so don’t put that number to low. Default is 100 which should be\n suitable for most of the cases.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.maxConnections</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>access</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Group of configuration parameters to connect to Kubernetes/OpenShift cluster.</p></td>\n<td class=\"tableblock halign-left valign-top\"></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>outputDirectory</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Default output directory to be used by this plugin.\n The default value is <code>target/docker</code> and is only used for the goal <code>k8s:build</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.build.target.dir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>profile</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Profile to which contains enricher and generators configuration. See <a href=\"#profiles\">Profiles</a> for details.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.profile</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>registry</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Specify globally a registry to use for pulling and pushing images. See <a href=\"#registry\">Registry handling</a> for details.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.registry</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skip</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">With this parameter the execution of this plugin can be skipped completely.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skip</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipBuild</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set not images will be build (which implies also <em>skip.tag</em>) with <code>k8s:build</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skip.build</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipBuildPom</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set the build step will be skipped for modules of type <code>pom</code>. If not set, then by default projects of type <code>pom</code>\n will be skipped if there are no image configurations contained.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skip.build.pom</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipTag</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set to <code>true</code> this plugin won’t add any tags to images that have been built with <code>k8s:build</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skip.tag</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipMachine</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Skip using docker machine in any case</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.skip.machine</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>sourceDirectory</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Default directory that contains the assembly descriptor(s) used by the plugin. The default value is <code>src/main/docker</code>.\n This option is only relevant for the <code>k8s:build</code> goal.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.build.source.dir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>verbose</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Boolean attribute for switching on verbose output like the build steps when doing a Docker build. Default is <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.verbose</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>logDate</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The date format to use when logging messages from Docker. Default is <code>DEFAULT</code> (<code>HH:mm:ss.SSS</code>)</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.logDate</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>logStdout</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Log to stdout regardless if log files are configured or not. Default is <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.logStdout</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_kubernetes_access_configuration\">5.2.3. Kubernetes Access Configuration</h4>\n<div class=\"paragraph\">\n<p>You can configure parameters to define how plugin is going to connect to Kubernetes cluster instead of relying on default parameters.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><configuration>\n <access>\n <username></username>\n <password></password>\n <masterUrl></masterUrl>\n <apiVersion></apiVersion>\n </access>\n</configuration></code></pre>\n</div>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 71.4285%;\">\n<col style=\"width: 14.2858%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>username</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Username on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.username</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>password</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Password on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.password</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>namespace</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Namespace on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.namespace</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>masterUrl</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Master URL on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.masterUrl</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>apiVersion</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Api version on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.apiVersion</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>caCertFile</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">CaCert File on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.caCertFile</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>caCertData</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">CaCert Data on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.caCertData</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>clientCertFile</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Client Cert File on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.clientCertFile</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>clientCertData</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Client Cert Data on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.clientCertData</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>clientKeyFile</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Client Key File on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.clientKeyFile</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>clientKeyData</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Client Key Data on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.clientKeyData</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>clientKeyAlgo</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Client Key Algorithm on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.clientKeyAlgo</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>clientKeyPassphrase</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Client Key Passphrase on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.clientKeyPassphrase</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>trustStoreFile</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Trust Store File on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.trustStoreFile</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>trustStorePassphrase</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Trust Store Passphrase on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.trustStorePassphrase</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>keyStoreFile</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Key Store File on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.keyStoreFile</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>keyStorePassphrase</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Key Store Passphrase on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.keyStorePassphrase</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_image_configuration\">5.2.4. Image Configuration</h4>\n<div class=\"paragraph\">\n<p>The configuration how images should be created a defined in a dedicated <code><images></code> sections. These are specified for\neach image within the <code><images></code> element of the configuration with one <code><image></code> element per image to use.</p>\n</div>\n<div class=\"paragraph\">\n<p>The <code><image></code> element can contain the following sub elements:</p>\n</div>\n<table id=\"config-image\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 10. Image Configuration</caption>\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 83.3334%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#image-name\"><strong>name</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Each <code><image></code> configuration has a mandatory, unique docker\nrepository <em>name</em>. This can include registry and tag parts, but also placeholder parameters. See below for a detailed explanation.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>alias</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Shortcut name for an image which can be used for\nidentifying the image within this configuration. This is used when\nlinking images together or for specifying it with the global <strong>image</strong> configuration element.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#registry\"><strong>registry</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Registry to use for this image. If the <code>name</code> already contains a registry this takes precedence. See <a href=\"#registry\">Registry handling</a> for more details.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#config-image-build\"><strong>build</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Element which contains all the configuration aspects when doing a <a href=\"#jkube:build\"><strong>k8s:build</strong></a>. This element can be omitted if the image is only pulled from a registry e.g. as support for integration tests like database images.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>The <code><build></code> section is mandatory and is explained in <a href=\"#build-configuration\">below</a>.</p>\n</div>\n<div id=\"image-name\" class=\"paragraph\">\n<p>When specifying the image name in the configuration with the <code><name></code> field you can use several placeholders which are replaced during runtime by this plugin. In addition you can use regular Maven properties which are resolved by Maven itself.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 11. Image Names</caption>\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 83.3334%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Placeholder</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>%g</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The last part of the Maven group name, sanitized so that it can be used as username on GitHub. Only the part after the last dot is used. E.g. for a group id <code>org.eclipse.jkube</code> this placeholder would insert <code>jkube</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>%a</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A sanitized version of the artefact id so that it can be used as part of an Docker image name. I.e. it is converted to all lower case (as required by Docker)</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>%v</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The project version. Synonym to <code>${project.version}</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>%l</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If the project version ends with <code>-SNAPSHOT</code> then this placeholder is <code>latest</code>, otherwise its the full version (same as <code>%v</code>)</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>%t</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If the project version ends with <code>-SNAPSHOT</code> this placeholder resolves to <code>snapshot-<timestamp></code> where timestamp has the date format <code>yyMMdd-HHmmss-SSSS</code> (eg <code>snapshot-</code>). This feature is especially useful during development in oder to avoid conflicts when images are to be updated which are still in use. You need to take care yourself of cleaning up old images afterwards, though.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"listingblock\">\n<div class=\"title\">Example for <image></div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><configuration>\n <!-- .... -->\n <images>\n <image> <i class=\"conum\" data-value=\"1\"></i><b>(1)</b>\n <name>%g/jkube-build-demo:0.1</name> <i class=\"conum\" data-value=\"2\"></i><b>(2)</b>\n <alias>service</alias> <i class=\"conum\" data-value=\"3\"></i><b>(3)</b>\n <build>....</build> <i class=\"conum\" data-value=\"4\"></i><b>(4)</b>\n </image>\n <image>\n ....\n </image>\n </images>\n</configuration></code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td>One or more <code><image></code> definitions</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"2\"></i><b>2</b></td>\n<td>The Docker image name used when creating the image. Note that <code>%g</code> would be replaced by project group id.</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"3\"></i><b>3</b></td>\n<td>An alias which can be used in other parts of the plugin to reference to this image. This alias must be unique.</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"4\"></i><b>4</b></td>\n<td>A <code><build></code> section as described in <a href=\"#buid-configuration\">Build Configuration</a></td>\n</tr>\n</table>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"build-configuration\">5.2.5. Build Configuration</h4>\n<div id=\"build-overview\" class=\"paragraph\">\n<p>There are two different modes how images can be built:</p>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Inline plugin configuration</div>\n<p>With an inline plugin configuration all information required to build the image is contained in the plugin configuration. By default its the standard XML based configuration for the plugin but can be switched to a property based configuration syntax as described in the section <a href=\"#external-configuration\">External configuration</a>. The XML configuration syntax is recommended because of its more structured and typed nature.</p>\n</div>\n<div class=\"paragraph\">\n<p>When using this mode, the Dockerfile is created on the fly with all instructions extracted from the configuration given.</p>\n</div>\n<div id=\"external-dockerfile\" class=\"paragraph\">\n<div class=\"title\">External Dockerfile or Docker archive</div>\n<p>Alternatively an external Dockerfile template or Docker archive can be used. This mode is switched on by using one of these three configuration options within</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><strong>contextDir</strong> specifies docker build context if an external dockerfile is located outside of Docker build context. If not specified, Dockerfile’s parent directory is used as build context.</p>\n</li>\n<li>\n<p><strong>dockerFile</strong> specifies a specific Dockerfile path. The Docker build context directory is set to <code>contextDir</code> if given. If not the directory by default is the directory in which the Dockerfile is stored.</p>\n</li>\n<li>\n<p><strong>dockerArchive</strong> specifies a previously saved image archive to load directly. If a <code>dockerArchive</code> is provided, no <code>dockerFile</code> must be given.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>All paths can be either absolute or relative paths. A relative path is looked up in <code>${project.basedir}/src/main/docker</code> by default. You can make it easily an absolute path by using <code>${project.basedir}</code> in your configuration.</p>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Adding assemblies in Dockerfile mode</div>\n<p>You can also use an assembly if specified in an <a href=\"#build-assembly\">assembly configuration</a>.\nHowever, you need to add the files on your own in the Dockerfile with an <code>ADD</code> or <code>COPY</code> command.\nThe files of the assembly are stored in a build context relative directory <code>maven/</code> but can be changed by changing the assembly name with the option <code><name></code> in the assembly configuration.</p>\n</div>\n<div class=\"paragraph\">\n<p>E.g. the files can be added with</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-dockerfile\" data-lang=\"dockerfile\">COPY maven/ /my/target/directory</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>so that the assembly files will end up in <code>/my/target/directory</code> within the container.</p>\n</div>\n<div class=\"paragraph\">\n<p>If this directory contains a <code>.maven-dockerignore</code> (or alternatively, a <code>.maven-dockerexclude</code> file), then it is used for excluding files for the build. Each line in this file is treated as a <a href=\"http://ant.apache.org/manual/Types/fileset.html\">FileSet exclude pattern</a> as used by the <a href=\"http://maven.apache.org/plugins/maven-assembly-plugin\">maven-assembly-plugin</a>. It is similar to <code>.dockerignore</code> when using Docker but has a slightly different syntax (hence the different name).\n<a href=\"#ex-build-dockerexclude\">Example <code>.maven-dockerexclude</code> or <code>.maven-dockerignore</code></a> is an example which excludes all compiled Java classes.</p>\n</div>\n<div id=\"ex-build-dockerexclude\" class=\"exampleblock\">\n<div class=\"title\">Example 1. Example <code>.maven-dockerexclude</code> or <code>.maven-dockerignore</code></div>\n<div class=\"content\">\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code>target/classes/** <i class=\"conum\" data-value=\"1\"></i><b>(1)</b></code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td>Exclude all compiled classes</td>\n</tr>\n</table>\n</div>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>If this directory contains a <code>.maven-dockerinclude</code> file, then it is used for including only those files for the build. Each line in this file is also treated as a <a href=\"http://ant.apache.org/manual/Types/fileset.html\">FileSet exclude pattern</a> as used by the <a href=\"http://maven.apache.org/plugins/maven-assembly-plugin\">maven-assembly-plugin</a>. <a href=\"#ex-build-dockerinclude\">Example <code>.maven-dockerinclude</code></a> shows how to include only jar file that have build to the Docker build context.</p>\n</div>\n<div id=\"ex-build-dockerinclude\" class=\"exampleblock\">\n<div class=\"title\">Example 2. Example <code>.maven-dockerinclude</code></div>\n<div class=\"content\">\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code>target/*.jar <i class=\"conum\" data-value=\"1\"></i><b>(1)</b></code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td>Only add jar file to you Docker build context.</td>\n</tr>\n</table>\n</div>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Except for the <a href=\"#build-assembly\">assembly configuration</a> all other configuration options are ignored for now.</p>\n</div>\n<div id=\"simple-dockerfile-build\" class=\"paragraph\">\n<div class=\"title\">Simple Dockerfile build</div>\n<p>When only a single image should be built with a Dockerfile no XML configuration is needed at all.\nAll what need to be done is to place a <code>Dockerfile</code> into the top-level module directory, alongside to <code>pom.xml</code>.\nYou can still configure <a href=\"#global-configuration\">global aspects</a> in the plugin configuration, but as soon as you add an <code><image></code> in the XML configuration, you need to configure also the build explicitly.</p>\n</div>\n<div class=\"paragraph\">\n<p>The image name is by default set from the Maven coordinates (<code>%g/%a:%l</code>, see <a href=\"#image-name\">Image Name </a> for an explanation of the params which are essentially the Maven GAV)\nThis name can be set with the property <code>jkube.image.name</code>.</p>\n</div>\n<div id=\"build-filtering\" class=\"paragraph\">\n<div class=\"title\">Filtering</div>\n<p>kubernetes-maven-plugin filters given Dockerfile with Maven properties, much like the <code>maven-resource-plugin</code> does. Filtering is enabled by default and can be switched off with a build config <code><filter>false</filter></code>. Properties which we want to replace are specified with the <code>${..}</code> syntax.\nReplacement includes Maven project properties such as <code>${project.artifactId}</code>, properties set in the build, command-line properties, and system properties. Unresolved properties remain untouched.</p>\n</div>\n<div class=\"paragraph\">\n<p>This partial replacement means that you can easily mix it with Docker build arguments and environment variable reference, but you need to be careful.\nIf you want to be more explicit about the property delimiter to clearly separate Docker properties and Maven properties you can redefine the delimiter.\nIn general, the <code>filter</code> option can be specified the same way as delimiters in the resource plugin.\nIn particular, if this configuration contains a * then the parts left, and right of the asterisks are used as delimiters.</p>\n</div>\n<div class=\"paragraph\">\n<p>For example, the default <code><filter>${*}</filter></code> parse Maven properties in the format that we know.\nIf you specify a single character for <code><filter></code> then this delimiter is taken for both, the start and the end.\nE.g a <code><filter>@</filter></code> triggers on parameters in the format <code>@…​@</code>, much like in the <code>maven-invoker-plugin</code>.\nUse something like this if you want to clearly separate from Docker builds args.\nThis form of property replacement works for Dockerfile only.\nFor replacing other data in other files targeted for the Docker image, please use the <code>maven-resource-plugin</code> or an <a href=\"#build-assembly\">assembly configuration</a> with filtering to make them available in the docker build context.</p>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Example</div>\n<p>The following example replaces all properties in the format <code>@property@</code> within the Dockerfile.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <configuration>\n <images>\n <image>\n <name>user/demo</name>\n <build>\n <filter>@</filter>\n </build>\n </image>\n </images>\n </configuration>\n ...\n</plugin></code></pre>\n</div>\n</div>\n<div id=\"build-plugin\" class=\"paragraph\">\n<div class=\"title\">Build Plugins</div>\n<p>This plugin supports so call <strong>dmp-plugins</strong> which are used during the build phase.\ndmp-plugins are enabled by just declaring a dependency in the plugin declaration:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n\n <dependencies>\n <dependency>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>run-java-sh</artifactId>\n <version>1.2.2</version>\n </dependency>\n </dependencies>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code>org.eclipse.jkube.runsh.RunShLoader</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>During a build with <code>kubernetes-maven-plugin:build</code>, those classes are loaded and certain fixed method are called.</p>\n</div>\n<div class=\"paragraph\">\n<p>The following methods are supported:</p>\n</div>\n<table id=\"build-plugin-methods\" class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 83.3334%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Method</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>addExtraFiles</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A <em>static</em> method called by dmp with a single <code>File</code> argument. This will point to a directory <code>docker-extra</code> which can be referenced easily by a Dockerfile or an assembly. A dmp plugin typically will create an own subdirectory to avoid a clash with other dmp-plugins.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>If a configured plugin does not provide method of this name and signature, then it will be simply ignored.\nAlso, no interface needs to be implemented to keep the coupling low.</p>\n</div>\n<div class=\"paragraph\">\n<p>The following official dmp-plugins are known and supported:</p>\n</div>\n<table id=\"build-plugins-official\" class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 71.4286%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Name</th>\n<th class=\"tableblock halign-left valign-top\">G,A</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"https://github.com/fabric8io-images/run-java-sh\">run-java.sh</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.io</code>, <code>run-java</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">General purpose startup script fo running Java applications. The dmp plugin creates a\n <code>target/docker-extra/run-java/run-java.sh</code> which can be included in a Dockerfile (see the example above).\n See the <a href=\"https://github.com/fabric8io-images/run-java-sh\">run-java.sh Documentation</a> for more details.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Check out <code>samples/run-java</code> for a fully working example.</p>\n</div>\n<div class=\"paragraph\">\n<p>All build relevant configuration is contained in the <code><build></code> section\nof an image configuration. The following configuration options are supported:</p>\n</div>\n<table id=\"config-image-build\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 12. Build configuration (<a href=\"#config-image\"><image> </a>)</caption>\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 83.3334%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#config-image-build-assembly\"><strong>assembly</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Specifies the assembly configuration as described in <a href=\"#build-assembly\">Build Assembly</a></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#build-buildargs\"><strong>args</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Map specifying the value of <a href=\"https://docs.docker.com/engine/reference/commandline/build/#set-build-time-variables-build-arg\">Docker build args</a>\nwhich should be used when building the image with an external Dockerfile which uses build arguments. The key-value syntax is the same as when defining Maven properties (or <code>labels</code> or <code>env</code>).\nThis argument is ignored when no external Dockerfile is used. Build args can also be specified as properties as\ndescribed in <a href=\"#build-buildargs\">Build Args</a></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>buildOptions</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Map specifying the build options to provide to the docker daemon when building the image. These options map to the ones listed as query parameters in the\n<a href=\"https://docs.docker.com/engine/reference/api/docker_remote_api_v1.24/#build-image-from-a-dockerfile\">Docker Remote API</a> and are restricted to simple options\n(e.g.: memory, shmsize). If you use the respective configuration options for build options natively supported by the build configuration (i.e. <code>noCache</code>, <code>cleanup=remove</code> for buildoption <code>forcerm=1</code> and <code>args</code> for build args) then these will override any corresponding options given here. The key-value syntax is the same as when defining environment variables or labels as described in <a href=\"#misc-env\">Setting Environment Variables and Labels</a>.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>cleanup</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Cleanup dangling (untagged) images after each build (including any containers created from them). Default is <code>try</code> which tries to remove the old image, but doesn’t fail the build if this is not possible because e.g. the image is still used by a running container. Use <code>remove</code> if you want to fail the build and <code>none</code> if no cleanup is requested.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a id=\"context-dir\"></a><strong>contextDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Path to a directory used for the build’s context. You can specify the <code>Dockerfile</code> to use with <strong>dockerFile</strong>, which by default is the Dockerfile found in the <code>contextDir</code>. The Dockerfile can be also located outside of the <code>contextDir</code>, if provided with an absolute file path. See <a href=\"#external-dockerfile\">External Dockerfile</a> for details.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#misc-startup\"><strong>cmd</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A command to execute by default (i.e. if no command is provided when a container for this image is started). See <a href=\"#misc-startup\">Startup Arguments</a> for details.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>compression</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The compression mode how the build archive is transmitted to the docker daemon (<code>k8s:build</code>) and how docker build archives are attached to this build as sources (<code>k8s:source</code>). The value can be <code>none</code> (default), <code>gzip</code> or <code>bzip2</code>.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>dockerFile</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Path to a <code>Dockerfile</code> which also triggers <em>Dockerfile mode</em>. See <a href=\"#external-dockerfile\">External Dockerfile</a> for details.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>dockerArchive</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Path to a saved image archive which is then imported. See <a href=\"#external-dockerfile\">Docker archive</a> for details.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#misc-startup\"><strong>entryPoint</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">An entrypoint allows you to configure a container that will run as an executable. See <a href=\"#misc-startup\">Startup Arguments</a> for details.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#misc-env\"><strong>env</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The environments as described in <a href=\"#misc-env\">Setting Environment Variables and Labels</a>.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>filter</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Enable and set the delimiters for property replacements. By default properties in the format <code>${..}</code> are replaced with Maven properties. You can switch off property replacement by setting this property to <code>false</code>. When using a single char like <code>@</code> then this is used as a delimiter (e.g <code>@…​@</code>). See <a href=\"#build-filtering\">Filtering</a> for more details.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a id=\"build-config-from\"></a><strong>from</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The base image which should be used for this image. If not given this default to <code>busybox:latest</code> and is suitable for a pure data image.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a id=\"build-config-from-ext\"></a><strong>fromExt</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>Extended definition for a base image. This field holds a map of defined in <code><key>value</key></code> format. The known keys are:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code><name></code> : Name of the base image</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>A provided <code><from></code> takes precedence over the name given here. This tag is useful for extensions of this plugin.</p>\n</div></div></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#build-healthcheck\"><strong>healthCheck</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Definition of a health check as described in <a href=\"#build-healthcheck\">Healthcheck</a></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>imagePullPolicy</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Specific pull policy for the base image. This overwrites any global pull policy.\n See the global configuration option <a href=\"#image-pull-policy\">imagePullPolicy</a> for the possible values and the default.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#misc-env\"><strong>labels</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Labels as described in <a href=\"#misc-env\">Setting Environment Variables and Labels</a>.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>maintainer</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The author (<code>MAINTAINER</code>) field for the generated image</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>noCache</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Don’t use Docker’s build cache. This can be overwritten by setting a system property <code>docker.noCache</code> when running Maven.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>cacheFrom</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A list of <code><image></code> elements specifying image names to use as cache sources.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>optimise</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">if set to true then it will compress all the <code>runCmds</code> into a single <code>RUN</code> directive so that only one image layer is created.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>ports</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The exposed ports which is a list of <code><port></code> elements, one for each port to expose. Whitespace is trimmed from each element and empty elements are ignored. The format can be either pure numerical (\"8080\") or with the protocol attached (\"8080/tcp\").</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>shell</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Shell to be used for the <strong>runCmds</strong>. It contains <strong>arg</strong> elements which are defining the executable and its params.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>runCmds</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Commands to be run during the build process. It contains <strong>run</strong> elements which are passed to the shell. Whitespace is trimmed from each element and empty elements are ignored. The run commands are inserted right after the assembly and after <strong>workdir</strong> into the Dockerfile.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skip</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">if set to true disables building of the image. This config option is best used together with a maven property</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipTag</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set to <code>true</code> this plugin won’t add any tags to images.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>tags</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">List of additional <code>tag</code> elements with which an image is to be tagged after the build. Whitespace is trimmed from each element and empty elements are ignored.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>user</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">User to which the Dockerfile should switch to the end (corresponds to the <code>USER</code> Dockerfile directive).</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>volumes</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">List of <code>volume</code> elements to create a container volume. Whitespace is trimmed from each element and empty elements are ignored.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>workdir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Directory to change to when starting the container.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>From this configuration this Plugin creates an in-memory Dockerfile,\ncopies over the assembled files and calls the Docker daemon via its\nremote API.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><build>\n <from>java:8u40</from>\n <maintainer>john.doe@example.com</maintainer>\n <tags>\n <tag>latest</tag>\n <tag>${project.version}</tag>\n </tags>\n <ports>\n <port>8080</port>\n </ports>\n <volumes>\n <volume>/path/to/expose</volume>\n </volumes>\n <buildOptions>\n <shmsize>2147483648</shmsize>\n </buildOptions>\n\n <shell>\n <exec>\n <arg>/bin/sh</arg>\n <arg>-c</arg>\n </exec>\n </shell>\n <runCmds>\n <run>groupadd -r appUser</run>\n <run>useradd -r -g appUser appUser</run>\n </runCmds>\n\n <entryPoint>\n <!-- exec form for ENTRYPOINT -->\n <exec>\n <arg>java</arg>\n <arg>-jar</arg>\n <arg>/opt/demo/server.jar</arg>\n </exec>\n </entryPoint>\n\n <assembly>\n <mode>dir</mode>\n <targetDir>/opt/demo</targetDir>\n <descriptor>assembly.xml</descriptor>\n </assembly>\n</build></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>In order to see the individual build steps you can switch on <code>verbose</code> mode either by setting the property\n<code>jkube.docker.verbose</code> or by using <code><verbose>true</verbose></code> in the <a href=\"#build-goal-configuration\">Build Goal configuration</a></p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"build-assembly\">5.2.6. Assembly</h4>\n<div class=\"paragraph\">\n<p>The <code><assembly></code> element within <code><build></code> element has an XML structure and defines how build artifacts and other files\ncan be added to the Docker image.</p>\n</div>\n<table id=\"config-image-build-assembly\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 13. Assembly Configuration (<a href=\"#config-image\"><image> </a> : <a href=\"#config-image-build\"><build> </a>)</caption>\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 83.3334%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>name</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Assembly name, which is <code>maven</code> by default. This name is used for the archives and directories created during the build.\n This directory holds the files specified by the assembly. If an <a href=\"#external-dockerfile\">external Dockerfile</a> is used then\n this name is also the relative directory which contains the assembly files.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>targetDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Directory under which the files and artifacts contained in the assembly will be copied within the container.\n The default value for this is <code>/<assembly name></code>, so <code>/maven</code> if <strong>name</strong> is not set to a different value.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#build-assembly-inline\"><strong>inline</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Inlined assembly descriptor as described in <a href=\"#build-assembly-inline\">Assembly - Inline</a> below.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>exportTargetDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Specification whether the <code>targetDir</code> should be exported as a volume. This value is <code>true</code> by default except in the\n case the <code>targetDir</code> is set to the container root (<code>/</code>). It is also <code>false</code> by default when a base image is used with\n <code>from</code> since exporting makes no sense in this case and will waste disk space unnecessarily.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>excludeFinalOutputArtifact</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">By default, the project’s final artifact will be included in the assembly, set this flag to true in case the\n artifact should be excluded from the assembly.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>mode</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>Mode how the how the assembled files should be collected:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>dir</code> : Files are simply copied (default),</p>\n</li>\n<li>\n<p><code>tar</code> : Transfer via tar archive</p>\n</li>\n<li>\n<p><code>tgz</code> : Transfer via compressed tar archive</p>\n</li>\n<li>\n<p><code>zip</code> : Transfer via ZIP archive</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>The archive formats have the advantage that file permission can be preserved better (since the copying is independent\nfrom the underlying files systems), but might triggers internal bugs from the Maven assembler (as it has been reported\nin <a href=\"https://github.com/fabric8io/docker-maven-plugin/issues/171\">#171</a>)</p>\n</div></div></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>permissions</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>Permission of the files to add:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>ignore</code> to use the permission as found on files regardless on any\nassembly configuration</p>\n</li>\n<li>\n<p><code>keep</code> to respect the assembly provided permissions</p>\n</li>\n<li>\n<p><code>exec</code> for setting the executable bit on all files (required for Windows when using an assembly mode <code>dir</code>)</p>\n</li>\n<li>\n<p><code>auto</code> to let the plugin select <code>exec</code> on Windows and <code>keep</code> on others.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p><code>keep</code> is the default value.</p>\n</div></div></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>tarLongFileMode</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Sets the TarArchiver behaviour on file paths with more than 100 characters length. Valid values are: \"warn\"(default), \"fail\", \"truncate\", \"gnu\", \"posix\", \"posix_warn\" or \"omit\"</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>user</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>User and/or group under which the files should be added. The user must already exist in the base image.</p>\n</div>\n<div class=\"paragraph\">\n<p>It has the general format <code>user[:group[:run-user]]</code>. The user and group can be given either as numeric user- and group-id or as names. The group id is optional.</p>\n</div>\n<div class=\"paragraph\">\n<p>If a third part is given, then the build changes to user <code>root</code> before changing the ownerships, changes the ownerships and then change to user <code>run-user</code> which is then used for the final command to execute. This feature might be needed, if the base image already changed the user (e.g. to 'jboss') so that a <code>chown</code> from root to this user would fail.</p>\n</div>\n<div class=\"paragraph\">\n<p>For example, the image <code>jboss/wildfly</code> use a \"jboss\" user under which all commands are executed. Adding files in Docker always happens under the UID root. These files can only be changed to \"jboss\" is the <code>chown</code> command is executed as root. For the following commands to be run again as \"jboss\" (like the final <code>standalone.sh</code>), the plugin switches back to user <code>jboss</code> (this is this \"run-user\") after changing the file ownership. For this example a specification of\n<code>jboss:jboss:jboss</code> would be required.</p>\n</div></div></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>In the event you do not need to include any artifacts with the image, you may safely omit this element from the configuration.</p>\n</div>\n<div class=\"sect4\">\n<h5 id=\"build-assembly-inline\">Assembly - Inline</h5>\n<div class=\"paragraph\">\n<p>Inlined assembly description with a format very similar to\n<a href=\"https://maven.apache.org/plugins/maven-assembly-plugin/assembly.html\">Maven Assembly Plugin</a>.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 14. Assembly - Inline (<a href=\"#config-image\"><image> </a> : <a href=\"#config-image-build\"><build> </a> : <a href=\"#config-image-build-assembly\"><assembly> </a>)</caption>\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 83.3334%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>id</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Unique ID for the assembly.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>files</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>List of files for the assembly.</p>\n</div>\n<div class=\"paragraph\">\n<p>Each file has the following fields:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>source</code>: Absolute or relative path from the project’s directory of the file to be included in the assembly.</p>\n</li>\n<li>\n<p><code>outputDirectory</code>: Output directory relative to the root of the root directory of the assembly.</p>\n</li>\n<li>\n<p><code>destName</code>: Destination filename in the outputDirectory.</p>\n</li>\n<li>\n<p><code>fileMode</code>: Similar to a UNIX permission, sets the file mode of the file included.</p>\n</li>\n</ul>\n</div></div></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>fileSets</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>List of filesets for the Assembly.</p>\n</div>\n<div class=\"paragraph\">\n<p>Each fileset has the following fields:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>directory</code>: Absolute or relative location from the project’s directory.</p>\n</li>\n<li>\n<p><code>outputDirectory</code>: Output directory relative to the root of the root directory of the assembly fileSet.</p>\n</li>\n<li>\n<p><code>includes</code>: A set of files and directories to include.</p>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>If none is present, then everything is included.</p>\n</li>\n<li>\n<p>Files can be referenced by using their complete path name.</p>\n</li>\n<li>\n<p>Wildcards are also supported, patterns will be matched using\n<a href=\"https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/nio/file/FileSystem.html#getPathMatcher(java.lang.String)\">\nFileSystem#getPathMatcher</a> <code>glob</code> syntax.</p>\n</li>\n</ul>\n</div>\n</li>\n<li>\n<p><code>excludes</code>: A set of files and directory to exclude.</p>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>If none is present, then there are no exclusions.</p>\n</li>\n</ul>\n</div>\n</li>\n<li>\n<p><code>fileMode</code>: Similar to a UNIX permission, sets the file mode of the files included.</p>\n</li>\n<li>\n<p><code>directoryMode</code>: Similar to a UNIX permission, sets the directory mode of the directories included.</p>\n</li>\n</ul>\n</div></div></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>baseDirectory</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Base directory from which to resolve the Assembly files and filesets.</p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"misc-env\">5.2.7. Environment and Labels</h4>\n<div class=\"paragraph\">\n<p>When creating a container one or more environment variables can be set via configuration with the <code>env</code> parameter</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><env>\n <JAVA_HOME>/opt/jdk8</JAVA_HOME>\n <CATALINA_OPTS>-Djava.security.egd=file:/dev/./urandom</CATALINA_OPTS>\n</env></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>If you put this configuration into profiles you can easily create various test variants with a single image (e.g. by switching the JDK or whatever).</p>\n</div>\n<div class=\"paragraph\">\n<p>It is also possible to set the environment variables from the outside of the plugin’s configuration with the parameter <code>envPropertyFile</code>. If given, this property file is used to set the environment variables where the keys and values specify the environment variable. Environment variables specified in this file override any environment variables specified in the configuration.</p>\n</div>\n<div class=\"paragraph\">\n<p>Labels can be set inline the same way as environment variables:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><labels>\n <com.example.label-with-value>foo</com.example.label-with-value>\n <version>${project.version}</version>\n <artifactId>${project.artifactId}</artifactId>\n</labels></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"misc-startup\">5.2.8. Startup Arguments</h4>\n<div class=\"paragraph\">\n<p>Using <code>entryPoint</code> and <code>cmd</code> it is possible to specify the <a href=\"https://docs.docker.com/reference/builder/#entrypoint\">entry point</a>\nor <a href=\"https://docs.docker.com/reference/builder/#cmd\">cmd</a> for a container.</p>\n</div>\n<div class=\"paragraph\">\n<p>The difference is, that an <code>entrypoint</code> is the command that always be executed, with the <code>cmd</code> as argument. If no <code>entryPoint</code> is provided, it defaults to <code>/bin/sh -c</code> so any <code>cmd</code> given is executed with a shell. The arguments given to <code>docker run</code> are always given as arguments to the\n<code>entrypoint</code>, overriding any given <code>cmd</code> option. On the other hand if no extra arguments are given to <code>docker run</code> the default <code>cmd</code> is used as argument to <code>entrypoint</code>.</p>\n</div>\n<div class=\"sidebarblock\">\n<div class=\"content\">\n<div class=\"paragraph\">\n<p>See this <a href=\"http://stackoverflow.com/questions/21553353/what-is-the-difference-between-cmd-and-entrypoint-in-a-dockerfile\">stackoverflow question</a> for a detailed explanation.</p>\n</div>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>An entry point or command can be specified in two alternative formats:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 15. Entrypoint and Command Configuration</caption>\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 83.3334%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Mode</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>shell</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Shell form in which the whole line is given to <code>shell -c</code> for interpretation.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>exec</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">List of arguments (with inner <code><args></code>) arguments which will be given to the <code>exec</code> call directly without any shell interpretation.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Either shell or params should be specified.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><entryPoint>\n <!-- shell form -->\n <shell>java -jar $HOME/server.jar</shell>\n</entryPoint></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>or</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><entryPoint>\n <!-- exec form -->\n <exec>\n <arg>java</arg>\n <arg>-jar</arg>\n <arg>/opt/demo/server.jar</arg>\n </exec>\n</entryPoint></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This can be formulated also more dense with:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><!-- shell form -->\n<entryPoint>java -jar $HOME/server.jar</entryPoint></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>or</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><entryPoint>\n <!-- exec form -->\n <arg>java</arg>\n <arg>-jar</arg>\n <arg>/opt/demo/server.jar</arg>\n</entryPoint></code></pre>\n</div>\n</div>\n<div class=\"dlist\">\n<dl>\n<dt class=\"hdlist1\">INFO</dt>\n<dd>\n<p>Startup arguments are not used in S2I builds</p>\n</dd>\n</dl>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"build-buildargs\">5.2.9. Build Args</h4>\n<div id=\"property-buildargs\" class=\"paragraph\">\n<p>As described in section <a href=\"#build-configuration\">Configuration</a> for external Dockerfiles <a href=\"https://docs.docker.com/engine/reference/commandline/build/#set-build-time-variables-build-arg\">Docker build arg</a> can be used. In addition to the\nconfiguration within the plugin configuration you can also use properties to specify them:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Set a system property when running Maven, eg.: <code>-Ddocker.buildArg.http_proxy=http://proxy:8001</code>. This is especially\nuseful when using predefined Docker arguments for setting proxies transparently.</p>\n</li>\n<li>\n<p>Set a project property within the <code>pom.xml</code>, eg.:</p>\n</li>\n</ul>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><docker.buildArg.myBuildArg>myValue</docker.buildArg.myBuildArg></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Please note that the system property setting will always override the project property. Also note that for all\nproperties which are not Docker <a href=\"https://docs.docker.com/engine/reference/builder/#arg\">predefined</a> properties, the\nexternal Dockerfile must contain an <code>ARGS</code> instruction.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"build-healthcheck\">5.2.10. Healthcheck</h4>\n<div class=\"paragraph\">\n<p>Healthchecks has been introduced since Docker 1.12 and are a way to tell Docker how to test a container to check that it’s still working. With a health check you specify a command which is periodically executed and checked for its return value. If the healtcheck return with an exit 0 the container is considered to be healthy, if it returns with 1 then the container is not working correctly.</p>\n</div>\n<div class=\"paragraph\">\n<p>The healtcheck configuration can have the following options</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 16. Healthcheck Configuration</caption>\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 83.3334%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>cmd</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Command to execute, which can be given in an shell or exec format as described in <a href=\"#misc-startup\">Startup Arguments</a>.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>interval</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Interval for how often to run the healthcheck. The time is specified in seconds, but a time unit can be appended to change this.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>mode</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Mode of the healthcheck. This can be <code>cmd</code> which is the default and specifies that the health check should be executed. Or <code>none</code> to disable a health check from the base image. Only use this option with <code>none</code> for disabling some healthcheck from the base image.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>retries</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">How many retries should be performed before the container is to be considered unhealthy.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>startPeriod</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Initialization time for containers that need time to bootstrap. Probe failure during that period will not be counted towards the maximum number of retries. However, if a health check succeeds during the start period, the container is considered started and all consecutive failures will be counted towards the maximum number of retries. Given in seconds, but another time unit can be appended.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>timeout</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Timeout after which healthckeck should be stopped and considered to have failed. Given in seconds, but another time unit can be appended.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>The following example queries an URL every 10s as an healthcheck:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><healthCheck>\n <!-- Check every 5 minutes -->\n <interval>5m</interval>\n <!-- Fail if no response after 3 seconds -->\n <timeout>3s</timeout>\n <!-- Allow 30 minutes for the container to start before being flagged as unhealthy -->\n <startPeriod>30m</startPeriod>\n <!-- Fail 3 times until the container is considerd unhealthy -->\n <retries>3</retries>\n <!-- Command to execute in shell form -->\n <cmd>curl -f http://localhost/ || exit 1</cmd>\n</healthCheck></code></pre>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"jkube:push\">5.3. <strong>k8s:push</strong></h3>\n<div class=\"admonitionblock warning\">\n<table>\n<tr>\n<td class=\"icon\">\n<i class=\"fa icon-warning\" title=\"Warning\"></i>\n</td>\n<td class=\"content\">\nSection needs review and rearrangements\n</td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<p>This goal uploads images to the registry which have a <code><build></code> configuration section. The images to push can be restricted with\nthe global option <code>filter</code> (see <a href=\"#build-goal-configuration\">Build Goal Configuration</a> for details). The registry to push is by\ndefault <code>docker.io</code> but can be specified as part of the images’s <code>name</code> the Docker way.\nE.g. <code>docker.test.org:5000/data:1.5</code> will push the image <code>data</code> with tag <code>1.5</code> to the registry <code>docker.test.org</code> at port\n<code>5000</code>. Registry credentials (i.e. username and password) can be specified in multiple ways as described in section <a href=\"#authentication\">Authentication</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>By default a progress meter is printed out on the console, which is omitted when using Maven in batch mode (option <code>-B</code>).\nA very simplified progress meter is provided when using no color output (i.e. with <code>-Djkube.useColor=false</code>).</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 17. Push options</caption>\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 71.4285%;\">\n<col style=\"width: 14.2858%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipPush</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set to <code>true</code> the plugin won’t push any images that have been built.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skip.push</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipTag</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set to <code>true</code> this plugin won’t push any tags</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skip.tag</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>pushRegistry</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The registry to use when pushing the image. See <a href=\"#registry\">Registry Handling</a> for\nmore details.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.push.registry</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>retries</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">How often should a push be retried before giving up. This useful for flaky registries which tend to return 500 error codes from time to time. The default is 0 which means no retry at all.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.push.retries</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect2\">\n<h3 id=\"jkube:apply\">5.4. <strong>k8s:apply</strong></h3>\n<div class=\"paragraph\">\n<p>This goal applies the resources created with <a href=\"#jkube:resource\"><strong>k8s:resource</strong></a> to a connected Kubernetes cluster. It’s similar to <a href=\"#jkube:deploy\"><strong>k8s:deploy</strong></a> but does not the full deployment cycle of creating the resource, creating the application image and sending the resource descriptors to the clusters. This goal can be easily bound to <code><executions></code> within the plugin’s configuration and binds by default to the <code>install</code> lifecycle phase.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn k8s:apply</code></pre>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"Supported-Properties-Apply\">5.4.1. Supported Properties For Apply goal</h4>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 18. Other options available with apply goal</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>recreate</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Should we update resources by deleting them first and then creating them again.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.recreate</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>kubernetesManifest</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The generated kubernetes YAML file.</p>\n<p class=\"tableblock\"> Defaults to <code>${basedir}/target/classes/META-INF/jkube/kubernetes.yml</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.kubernetesManifest</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>create</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Should we create new resources.</p>\n<p class=\"tableblock\"> Defaults to <code>true</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.deploy.create</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>rolling</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Should we use rolling updates to apply changes.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.rolling</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>failOnNoKubernetesJson</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Should we fail if there is no Kubernetes JSON.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.deploy.failOnNoKubernetesJson</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>servicesOnly</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">In services only mode we only process services so that those can be recursively created/updated first before\n creating/updating any pods and replication controllers.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.deploy.servicesOnly</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>ignoreServices</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Do we want to ignore services. This is particularly useful when in recreate mode to let you easily recreate all the\n ReplicationControllers and Pods but leave any service definitions alone to avoid changing the portalIP addresses and\n breaking existing pods using the service.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.deploy.ignoreServices</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>processTemplatesLocally</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Process templates locally in Java so that we can apply OpenShift templates on any Kubernetes environment.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.deploy.processTemplatesLocally</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>deletePods</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Should we delete all the pods if we update a Replication Controller.</p>\n<p class=\"tableblock\"> Defaults to <code>true</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.deploy.deletePods</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>ignoreRunningOAuthClients</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Do we want to ignore OAuthClients which are already running?. OAuthClients are shared across namespaces so we should\n not try to update or create/delete global oauth clients.</p>\n<p class=\"tableblock\"> Defaults to <code>true</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.deploy.ignoreRunningOAuthClients</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>jsonLogDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The folder we should store any temporary json files or results.</p>\n<p class=\"tableblock\"> Defaults to <code>${basedir}/target/jkube/applyJson</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.deploy.jsonLogDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>waitSeconds</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">How many seconds to wait for a URL to be generated for a service.</p>\n<p class=\"tableblock\"> Defaults to <code>5</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.serviceUrl.waitSeconds</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>resourceDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Folder where to find project specific files.</p>\n<p class=\"tableblock\"> Defaults to <code>${basedir}/src/main/jkube</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.resourceDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>environment</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Environment name where resources are placed. For example, if you set this property to dev and resourceDir is the\n default one, jkube will look at <code>src/main/jkube/dev</code>.</p>\n<p class=\"tableblock\"> Defaults to <code>null</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.environment</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipApply</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Skip applying the resources.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skip.apply</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"jkube:helm\">5.5. <strong>k8s:helm</strong></h3>\n<div class=\"paragraph\">\n<p>This goal is for creating\n<a href=\"https://helm.sh/docs/topics/charts\">Helm charts</a>\nfor your Maven project so that you can install, update or delete your app in Kubernetes\nusing <a href=\"https://github.com/helm/helm\">Helm</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>For creating a Helm chart you simply call <code>k8s:helm</code> goal on the command line:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn k8s:resource k8s:helm</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The <code>k8s:resource</code> goal is required to create the resource descriptors which are included in the Helm chart.\nIf you have already built the resource then you can omit this goal.</p>\n</div>\n<div class=\"paragraph\">\n<p>The configuration is defined in a <code><helm></code> section within the plugin’s configuration:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example Helm configuration</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <configuration>\n <helm>\n <chart>Jenkins</chart>\n <keywords>ci,cd,server</keywords>\n </helm>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This configuration section knows the following sub-elements in order to configure your Helm chart.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 19. Helm configuration</caption>\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 71.4285%;\">\n<col style=\"width: 14.2858%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>chart</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Chart name, which is <code>${project.artifactId}</code> if not provided.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.chart</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>version</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Chart SemVer version, which is <code>${project.version}</code> if not provided.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.version</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>description</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Chart single-sentence description, which is <code>${project.description}</code> if not provided.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.description</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>home</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Chart URL for this project’s home page, which is <code>${project.url}</code> if not provided.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.home</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>sources</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Chart list of URLs to source code for this project, defaults to the list of <code>${project.scm.url}</code> if not provided.</p></td>\n<td class=\"tableblock halign-left valign-top\"></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>maintainers</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Chart list of maintainers (name+email), defaults to the list of\n `${project.developers.name}:${project.developers.name}`if not provided.</p></td>\n<td class=\"tableblock halign-left valign-top\"></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>icon</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Chart URL to an SVG or PNG image to be used as an icon, default is extracted from the kubernetes manifest\n (<code>kubernetes.yml</code>) <code>jkube.io/iconUrl</code> annotation if not provided.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.icon</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>keywords</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Comma separated list of keywords to add to the chart.</p></td>\n<td class=\"tableblock halign-left valign-top\"></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>engine</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The template engine to use.</p></td>\n<td class=\"tableblock halign-left valign-top\"></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>additionalFiles</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The list of additional files to be included in the Chart archive. Any file named <code>README</code> or <code>LICENSE</code> will <strong>always</strong>\n be included by default.</p></td>\n<td class=\"tableblock halign-left valign-top\"></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>type</strong> / <strong>types</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Platform for which to generate the chart. By default this is <code>kubernetes</code>, but can be also <code>openshift</code> for using\n OpenShift specific resources in the chart. You can also add both values as a comma separated list.</p>\n<p class=\"tableblock\"> <em>Please note that there is no OpenShift support yet for charts, so this is experimental.</em></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.type</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>sourceDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Where to find the resource descriptors generated with <code>k8s:resource</code>.\n By default this is <code>${basedir}/target/classes/META-INF/jkube., which is also the output directory used by `k8s:resource</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.sourceDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>outputDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Where to create the Helm chart, which is <code>${basedir}/target/jkube/helm</code> by default for Kubernetes\n and <code>${basedir}/target/jkube/helmshift</code> for OpenShift.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.outputDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>tarballOutputDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Where to create the the Helm chart archive, which is <code>${basedir}/target</code> if not provided.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.tarballOutputDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>chartExtension</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Helm chart file extension (<code>tgz</code>, <code>tar.bz</code>, <code>tar.bzip2</code>, <code>tar.bz2</code>), default value is <code>tar.gz</code> if not provided.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.chartExtension</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>In a next step you can install this via the <a href=\"https://github.com/helm/helm/releases\">helm command line tool</a> as follows:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">helm install nameForChartInRepository target/jkube/helm/${chartName}/kubernetes</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>or</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre>helm install target/jkube/helm/${chartName}/kubernetes --generate-name</pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>To add the <code>helm</code> goal to your project so that it is automatically executed just add the <code>helm</code> goal to the <code>executions</code>\nsection of the <code>kubernetes-maven-plugin</code> section of your <code>pom.xml</code>.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Add helm goal</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n\n <!-- ... -->\n\n <executions>\n <execution>\n <goals>\n <goal>resource</goal>\n <goal>helm</goal>\n <goal>build</goal>\n <goal>deploy</goal>\n </goals>\n </execution>\n </executions>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>In addition, this goal will also create a tar-archive below <code>${basedir}/target</code> which contains the chart with its template.\nThis tar is added as an artifact with classifier <code>helm</code> to the build (<code>helmshift</code> for the OpenShift mode).</p>\n</div>\n<div class=\"sect3\">\n<h4 id=\"helm-multi-module\">5.5.1. Multi-module projects</h4>\n<div class=\"paragraph\">\n<p>In multi-module Maven projects, some configuration default values differ from what you may expect.</p>\n</div>\n<div class=\"paragraph\">\n<p>Given a project with a parent module and at least a child module, if you run the helm goal within the child\nmodule, values for <code>home</code> and <code>sources</code> will get the submodule’s artifactId appended.</p>\n</div>\n<div class=\"paragraph\">\n<p>This behavior is normal, since the helm goal is executed in the scope of the submodule. The Maven\nvariables from which JKube extracts these defaults (<code>${project.url}</code> and <code>${project.scm.url}</code>)\nalready contain the appended submodule’s artifactId.</p>\n</div>\n<div class=\"paragraph\">\n<p>In order to prevent this, there are several alternatives:</p>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Manual configuration</div>\n<p>Provide the configuration manually for these values:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <configuration>\n <helm>\n <home>https://valid-home-with-no-appended-values.example.com</home>\n <sources>\n <source>https://github.com/valid-repo/with-no-appended-values</source>\n </sources>\n </helm>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Manual configuration using properties in child module</div>\n<p>Following the previous approach, if you don’t want to hardcode the values, or if you\nalready defined them in the parent module you can proceed with the following configuration\nin the <strong>child</strong> module:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><properties>\n <!-- ... -->\n <helm.home>${project.parent.url}</helm.home>\n <helm.source>${project.parent.scm.url}</helm.source>\n</properties>\n<!-- ... -->\n<plugin>\n <configuration>\n <helm>\n <home>${helm.home}</home>\n <sources>\n <source>${helm.source}</source>\n </sources>\n </helm>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Configure inheritance in parent project for the affected elements</div>\n<p>Configure inheritance of the <code>project</code> and <code>scm</code> elements in the <strong>parent</strong> module:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><project xmlns=\"http://maven.apache.org/POM/4.0.0\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\n xsi:schemaLocation=\"http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd\"\n child.project.url.inherit.append.path=\"false\"\n >\n<!-- ... -->\n <url>https://jkube.example.com</url>\n <scm child.scm.url.inherit.append.path=\"false\">\n <url>https://github.com/eclipse/jkube</url>\n </scm>\n<!-- ... -->\n</project></code></pre>\n</div>\n</div>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"goals-overview-develop\">6. Development Goals</h2>\n<div class=\"sectionbody\">\n<div class=\"sect2\">\n<h3 id=\"jkube:deploy\">6.1. <strong>k8s:deploy</strong></h3>\n<div class=\"paragraph\">\n<p>This is the main goal for building your docker image, generating the kubernetes resources and deploying them into the cluster (insofar your pom.xml is set up correct; keep reading :)).</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn k8s:deploy</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This goal is designed to run <a href=\"#jkube:build\"><strong>k8s:build</strong></a> and <a href=\"#jkube:resource\"><strong>k8s:resource</strong></a> before the deploy <strong>if</strong> you have the goals bound in your pom.xml:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n <version>1.0.2</version>\n\n <!-- Connect k8s:resource, k8s:build and k8s:helm to lifecycle phases -->\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>build</goal>\n <goal>helm</goal>\n </goals>\n </execution>\n </executions>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Effectively this builds your project then invokes these goals:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><a href=\"#jkube:build\"><strong>k8s:build</strong></a></p>\n</li>\n<li>\n<p><a href=\"#jkube:apply\"><strong>k8s:apply</strong></a></p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>By default the behaviour of resource goal is it generates <code>route.yml</code> for a service if you have not done any configuration changes. Sometimes there may be case when you want to generate route.yml but do not want to create route resource on OpenShift Cluster. This can be achieved by the following configuration.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example for not generating route resource on your cluster</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n <version>1.0.2</version>\n <configuration>\n <enricher>\n <excludes>\n <exclude>jkube-expose</exclude>\n </excludes>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"jkube:undeploy\">6.2. <strong>k8s:undeploy</strong></h3>\n<div class=\"paragraph\">\n<p>This goal is for deleting the kubernetes resources that you deployed via the <a href=\"#jkube:apply\"><strong>k8s:apply</strong></a> or <a href=\"#jkube:deploy\"><strong>k8s:deploy</strong></a> goals</p>\n</div>\n<div class=\"paragraph\">\n<p>It iterates through all the resources generated by the <a href=\"#jkube:resource\"><strong>k8s:resource</strong></a> goal and deletes them from your current kubernetes cluster.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn k8s:undeploy</code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"jkube:log\">6.3. <strong>k8s:log</strong></h3>\n<div class=\"paragraph\">\n<p>This goal tails the log of the app that you deployed via the <a href=\"#jkube:deploy\"><strong>k8s:deploy</strong></a> goal</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn k8s:log</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>You can then terminate the output by hitting <code>Ctrl+C</code></p>\n</div>\n<div class=\"paragraph\">\n<p>If you wish to get the log of the app and then terminate immediately then try:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn k8s:log -Djkube.log.follow=false</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This lets you pipe the output into grep or some other tool</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn k8s:log -Djkube.log.follow=false | grep Exception</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>If your app is running in multiple pods you can configure the pod name to log via the <code>jkube.log.pod</code> property, otherwise it defaults to the latest pod:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn k8s:log -Djkube.log.pod=foo</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>If your pod has multiple containers you can configure the container name to log via the <code>jkube.log.container</code> property, otherwise it defaults to the first container:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn k8s:log -Djkube.log.container=foo</code></pre>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"Supported-Properties-Log\">6.3.1. Supported Properties for Log goal</h4>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 20. Options available with log goal</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>logFollow</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Get follow logs for your application inside Kubernetes.</p>\n<p class=\"tableblock\"> Defaults to <code>true</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.log.follow</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>logContainer</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Get logs of some specific container inside your application Deployment.</p>\n<p class=\"tableblock\"> Defaults to <code>null</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.log.container</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>logPod</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Get logs of some specific pod inside your application Deployment.</p>\n<p class=\"tableblock\"> Defaults to <code>null</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.log.pod</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"jkube:debug\">6.4. <strong>k8s:debug</strong></h3>\n<div class=\"paragraph\">\n<p>This goal enables debugging in your Java app and then port forwards from localhost to the latest running pod of your app so that you can easily debug your app from your Java IDE.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn k8s:debug</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Then follow the on screen instructions.</p>\n</div>\n<div class=\"paragraph\">\n<p>The default debug port is <code>5005</code>. If you wish to change the local port to use for debugging then pass in the <code>jkube.debug.port</code> parameter:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn k8s:debug -Djkube.debug.port=8000</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Then in your IDE you start a Remote debug execution using this remote port using localhost and you should be able to set breakpoints and step through your code.</p>\n</div>\n<div class=\"paragraph\">\n<p>This lets you debug your apps while they are running inside a Kubernetes cluster - for example if you wish to debug a REST endpoint while another pod is invoking it.</p>\n</div>\n<div class=\"paragraph\">\n<p>Debug is enabled via the <code>JAVA_ENABLE_DEBUG</code> environment variable being set to <code>true</code>. This environment variable is used for all the standard Java docker images used by Spring Boot, flat classpath and executable JAR projects and Wildfly Swarm. If you use your own custom docker base image you may wish to also respect this environment variable too to enable debugging.</p>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_speeding_up_debugging\">6.4.1. Speeding up debugging</h4>\n<div class=\"paragraph\">\n<p>By default the <code>k8s:debug</code> goal has to edit your Deployment to enable debugging then wait for a pod to start. It might be in development you frequently want to debug things and want to speed things up a bit.</p>\n</div>\n<div class=\"paragraph\">\n<p>If so you can enable debug mode for each build via the <code>jkube.debug.enabled</code> property.</p>\n</div>\n<div class=\"paragraph\">\n<p>e.g. you can pass this property on the command line:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn k8s:deploy -Djkube.debug.enabled=true</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Or you can add something like this to your <code>~/.m2/settings.xml</code> file so that you enable debug mode for all maven builds on your laptop by using a profile :</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><?xml version=\"1.0\"?>\n<settings>\n <profiles>\n <profile>\n <id>enable-debug</id>\n <activation>\n <activeByDefault>true</activeByDefault>\n </activation>\n <properties>\n <jkube.debug.enabled>true</jkube.debug.enabled>\n </properties>\n </profile>\n </profiles>\n</settings></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Then whenever you type the <code>k8s:debug</code> goal there is no need for the maven goal to edit the <code>Deployment</code> and wait for a pod to restart; we can immediately start debugging when you type:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn k8s:debug</code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_debugging_with_suspension\">6.4.2. Debugging with suspension</h4>\n<div class=\"paragraph\">\n<p>The <code>k8s:debug</code> goal allows to attach a remote debugger to a running container, but the application is free to execute when the debugger is not attached.\nIn some cases, you may want to have complete control on the execution, e.g. to investigate the application behavior at startup. This can be done using the <code>jkube.debug.suspend</code> flag:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn k8s:debug -Djkube.debug.suspend</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The suspend flag will set the <code>JAVA_DEBUG_SUSPEND</code> environment variable to <code>true</code> and <code>JAVA_DEBUG_SESSION</code> to a random number in your deployment.\nWhen the <code>JAVA_DEBUG_SUSPEND</code> environment variable is set, standard docker images will use <code>suspend=y</code> in the JVM startup options for debugging.</p>\n</div>\n<div class=\"paragraph\">\n<p>The <code>JAVA_DEBUG_SESSION</code> environment variable is always set to a random number (each time you run the debug goal with the suspend flag) in order to tell Kubernetes to restart the pod.\nThe remote application will start only after a remote debugger is attached. You can use the remote debugging feature of your IDE to connect (on <code>localhost</code>, port <code>5005</code> by default).</p>\n</div>\n<div class=\"admonitionblock warning\">\n<table>\n<tr>\n<td class=\"icon\">\n<i class=\"fa icon-warning\" title=\"Warning\"></i>\n</td>\n<td class=\"content\">\nThe <code>jkube.debug.suspend</code> flag will disable readiness probes in the Kubernetes deployment in order to start port-forwarding during the early phases of application startup\n</td>\n</tr>\n</table>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"Supported-Properties-Debug\">6.4.3. Supported Properties For Debug Goal</h4>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 21. Options available with debug goal</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>debugPort</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Default port available for debugging your application inside Kubernetes.</p>\n<p class=\"tableblock\"> Defaults to <code>5005</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.debug.port</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>debugSuspend</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Disables readiness probes in Kubernetes Deployment in order to start port forwarding during early phases of\n application startup.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.debug.suspend</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"jkube:watch\">6.5. <strong>k8s:watch</strong></h3>\n<div class=\"paragraph\">\n<p>This goal is used to monitor the project workspace for changes and automatically trigger a redeploy of the application\nrunning on Kubernetes. There are two kinds of watchers present at the moment:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Docker Image Watcher(watches docker images)</p>\n</li>\n<li>\n<p>Spring Boot Watcher(based on Spring Boot Devtools)</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>Before entering the watch mode, this goal must generate the docker image and the Kubernetes resources\n(optionally including some development libraries/configuration),\nand deploy the app on Kubernetes. Lifecycle bindings should be configured as follows to allow\nthe generation of such resources.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Lifecycle bindings for k8s:watch</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n\n <!-- ... -->\n\n <executions>\n <execution>\n <goals>\n <goal>resource</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>For any application having <code>resource</code> and <code>build</code> goals bound to the lifecycle, the following\ncommand can be used to run the watch task.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-bash\" data-lang=\"bash\">mvn k8s:watch</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This plugin supports different watcher providers, enabled automatically if the project satisfies certain conditions.</p>\n</div>\n<div class=\"paragraph\">\n<p>Watcher providers can also be configured manually. The <a href=\"#generator-example\">Generator example</a> is a good blueprint, simply replace <code><generator></code> with <code><watcher></code>. The configuration is structurally identical.</p>\n</div>\n<div class=\"sect3\">\n<h4 id=\"watcher-spring-boot\">6.5.1. Spring Boot</h4>\n<div class=\"paragraph\">\n<p>This watcher is enabled by default for all Spring Boot projects. It performs the following actions:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>deploys your application with Spring Boot DevTools enabled</p>\n</li>\n<li>\n<p>tails the log of the latest running pod for your application</p>\n</li>\n<li>\n<p>watches the local development build of your Spring Boot based application and then triggers a reload of the application when there are changes</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>You need to make sure that <code>devtools</code> is included in the repacked archive, as shown in the following listing:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.springframework.boot</groupId>\n <artifactId>spring-boot-maven-plugin</artifactId>\n <configuration>\n <excludeDevtools>false</excludeDevtools>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Then you need to set a <code>spring.devtools.remote.secret</code> in application.properties, as shown in the following example:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre>spring.devtools.remote.secret=mysecret</pre>\n</div>\n</div>\n<div class=\"admonitionblock warning\">\n<table>\n<tr>\n<td class=\"icon\">\n<i class=\"fa icon-warning\" title=\"Warning\"></i>\n</td>\n<td class=\"content\">\nSpring devtools automatically ignores projects named <code>spring-boot</code>, <code>spring-boot-devtools</code>,\n <code>spring-boot-autoconfigure</code>, <code>spring-boot-actuator</code>, <code>and spring-boot-starter</code>\n</td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<p>You can try it on any spring boot application via:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn k8s:watch</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Once the goal starts up the spring boot RemoteSpringApplication it will watch for local development changes.</p>\n</div>\n<div class=\"paragraph\">\n<p>e.g. if you edit the java code of your app and then build it via something like this:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn package</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>You should see your app reload on the fly in the shell running the <a href=\"#jkube:watch\"><strong>k8s:watch</strong></a> goal!</p>\n</div>\n<div class=\"paragraph\">\n<p>There is also support for LiveReload as well.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"watcher-docker-image\">6.5.2. Docker Image</h4>\n<div class=\"paragraph\">\n<p>This is a generic watcher that can be used in Kubernetes mode only. Once activated, it listens for changes in the project workspace\n in order to trigger a redeploy of the application. This enables rebuilding of images and restarting of containers in case of updates.</p>\n</div>\n<div class=\"paragraph\">\n<p>There are five watch modes, which can be specified in multiple ways:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>build</code>: Automatically rebuild one or more Docker images when one of the files selected by an assembly changes. This works for all files included in assembly.</p>\n</li>\n<li>\n<p><code>run</code>: Automatically restart your application when their associated images change.</p>\n</li>\n<li>\n<p><code>copy</code>: Copy changed files into the running container. This is the fast way to update a container, however the target container must support hot deploy, too so that it makes sense. Most application servers like Tomcat supports this.</p>\n</li>\n<li>\n<p><code>both</code>: Enables both <code>build</code> and <code>run</code>. <strong>This is the default</strong>.</p>\n</li>\n<li>\n<p><code>none</code>: Image is completely ignored for watching.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>The watcher can be activated e.g. by running this command in another shell:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn package</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The watcher will detect that the binary artifact has changed and will first rebuild the docker image,\nthen start a redeploy of the Kubernetes pod.</p>\n</div>\n<div class=\"paragraph\">\n<p>It uses the watch feature of the <a href=\"https://dmp.fabric8.io/#docker:watch\">docker-maven-plugin</a> under the hood.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"Supported-Properties-Watch\">6.5.3. Supported Properties for Watch goal</h4>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 22. Options available with watch goal</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>kubernetesManifest</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The generated kubernetes YAML file.</p>\n<p class=\"tableblock\"> Defaults to <code>${basedir}/target/classes/META-INF/jkube/kubernetes.yml</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.kubernetesManifest</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>watchMode</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>How to watch for image changes.</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>copy</code>: Copy watched artifacts into container</p>\n</li>\n<li>\n<p><code>build</code>: Build only images</p>\n</li>\n<li>\n<p><code>run</code>: Run images</p>\n</li>\n<li>\n<p><code>both</code>: Build and run images</p>\n</li>\n<li>\n<p><code>none</code>: Neither build nor run</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>Defaults to <code>both</code>.</p>\n</div></div></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.watch.mode</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>watchInterval</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Interval in milliseconds (how often to check for changes).</p>\n<p class=\"tableblock\"> Defaults to <code>5000</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.watch.interval</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>keepRunning</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set to true all containers will be kept running after k8s:watch has been stopped.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.watch.keepRunning</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>watchPostGoal</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A maven goal which should be called if a rebuild or a restart has been performed.</p>\n<p class=\"tableblock\"> This goal must have the format <code><pluginGroupId>:<pluginArtifactId>:<goal></code> and the plugin must be\n configured in the pom.xml.</p>\n<p class=\"tableblock\"> For example a post-goal <code>com.example:group:delete-pods</code> will trigger the <code>delete-pods</code>\n goal of this hypothetic example.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.watch.postGoal</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>watchPostExec</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A command which is executed within the container after files are copied into this container\n when watchMode is copy. Note that this container must be running.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.watch.postExec</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>keepContainer</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If this is set to <code>false</code> (and <code>keepRunning</code> is disabled) then all containers will be removed after\n they have been stopped.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.watch.keepContainer</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>removeVolumes</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set to <code>true</code> remove any volumes associated with the container as well.</p>\n<p class=\"tableblock\"> This option will be ignored if either <code>keepContainer</code> or <code>keepRunning</code> is <code>true</code>.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.watch.removeVolumes</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>watchShowLogs</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set to <code>true</code>, logs will be shown for watched container.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.watch.showLogs</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>watchFollow</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If <code>watchShowLogs</code> is set to <code>false</code>, and there is a run image configuration, logs are followed\n if set to <code>true</code>.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.watch.follow</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"generators\">7. Generators</h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>The usual way to define Docker images is with the plugin configuration as explained in <a href=\"#jkube:build\"><strong>k8s:build</strong></a>. This can either be done completely within the <code>pom.xml</code> or by referring to an external Dockerfile. Since kubernetes-maven-plugin includes <a href=\"https://github.com/jkubeio/docker-maven-plugin\">docker-maven-plugin</a> the way by which images are built is identical.</p>\n</div>\n<div class=\"paragraph\">\n<p>However, this plugin provides an additional route for defining image configurations. This is done by so called <em>Generators</em>. A generator is a Java component providing an auto-detection mechanism for certain build types like a Spring Boot build or a plain Java build. As soon as a <em>Generator</em> detects that it is applicable it will be called with the list of images configured in the <code>pom.xml</code>. Typically a generator only creates dynamically a new image configuration if this list is empty. But a generator is free to also add new images to an existing list or even change the current image list.</p>\n</div>\n<div class=\"paragraph\">\n<p>You can easily create your own generator as explained in <a href=\"#generators-api\">Generator API</a>. This section will focus on existing generators and how you can configure them.</p>\n</div>\n<div class=\"paragraph\">\n<p>The included <em>Generators</em> are enabled by default, but you can easily disable them or only select a certain set of generators. Each generator has a <em>name</em>, which is unique for a generator.</p>\n</div>\n<div class=\"paragraph\">\n<p>The generator configuration is embedded in a <code><generator></code> configuration section:</p>\n</div>\n<div id=\"generator-example\" class=\"listingblock\">\n<div class=\"title\">Example for a generator configuration</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n ....\n <configuration>\n ....\n <generator> <i class=\"conum\" data-value=\"1\"></i><b>(1)</b>\n <includes> <i class=\"conum\" data-value=\"2\"></i><b>(2)</b>\n <include>spring-boot</include>\n </includes>\n <config> <i class=\"conum\" data-value=\"3\"></i><b>(3)</b>\n <spring-boot> <i class=\"conum\" data-value=\"4\"></i><b>(4)</b>\n <alias>ping</alias>\n </spring-boot>\n </config>\n </generator>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td>Start of generators' configuration.</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"2\"></i><b>2</b></td>\n<td>Generators can be included and excluded. Includes have precedence, and the generators are called in the given order.</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"3\"></i><b>3</b></td>\n<td>Configuration for individual generators.</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"4\"></i><b>4</b></td>\n<td>The config is a map of supported config values. Each section is embedded in a tag named after the generator.</td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<p>The following sub-elements are supported:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 23. Generator configuration</caption>\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 85.7143%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code><includes></code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Contains one ore more <code><include></code> elements with generator names which should be included. If given only this list of generators are included in this given order. The order is important because by default only the first matching generator kicks in. The generators from every active profile are included, too. However the generators listed here are moved to the front of the list, so that they are called first. Use the profile <code>raw</code> if you want to explicitly set the complete list of generators.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code><excludes></code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Holds one or more <code><exclude></code> elements with generator names to exclude. If set then all detected generators are used except the ones mentioned in this section.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code><config></code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Configuration for all generators. Each generator support a specific set of configuration values as described in the documentation. The subelements of this section are generator names to configure. E.g. for generator <code>spring-boot</code>, the sub-element is called <code><spring-boot></code>. This element then holds the specific generator configuration like <code><name></code> for specifying the final image name. See above for an example. Configuration coming from profiles are merged into this config, but not overriding the configuration specified here.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Beside specifying generator configuration in the plugin’s configuration it can be set directly with properties, too:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example generator property config</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn -Djkube.generator.java-exec.webPort=8082</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The general scheme is a prefix <code>jkube.generator.</code> followed by the unique generator name and then the generator specific key.</p>\n</div>\n<div class=\"paragraph\">\n<p>In addition to the provided default <em>Generators</em> described in the next section <a href=\"#generators-default\">Default Generators</a>, custom generators can be easily added. There are two ways to include generators:</p>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Plugin dependency</div>\n<p>You can declare the generator holding jars as dependency to this plugin as shown in this example</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <artifactId>kubernetes-maven-plugin</artifactId>\n ....\n <dependencies>\n <dependency>\n <groupId>io.acme</groupId>\n <artifactId>mygenerator</artifactId>\n <version>1.0</version>\n </dependency>\n </dependencies>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Compile time dependency</div>\n<p>Alternatively and if your application code comes with a custom generator you can set the global configuration option <code>useProjectClasspath</code> (property: <code>jkube.useProjectClasspath</code>) to true. In this case also the project artifact and its dependencies are looked up for <em>Generators</em>. See <a href=\"#generators-api\">Generator API</a> for details how to write your own generators.</p>\n</div>\n<div class=\"sect2\">\n<h3 id=\"generators-default\">7.1. Default Generators</h3>\n<div class=\"paragraph\">\n<p>All default generators examine the build information for certain aspects and generate a Docker build configuration on the fly. They can be configured to a certain degree, where the configuration is generator specific.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 24. Default Generators</caption>\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 66.6668%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Generator</th>\n<th class=\"tableblock halign-left valign-top\">Name</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-java-exec\">Java Applications</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>java-exec</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Generic generator for flat classpath and fat-jar Java applications</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-spring-boot\">Spring Boot</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>spring-boot</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Spring Boot specific generator</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-wildfly-swarm\">Wildfly Swarm</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>wildfly-swarm</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Generator for Wildfly Swarm apps</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-thorntail-v2\">Thorntail v2</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>thorntail-v2</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Generator for Thorntail v2 apps</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-vertx\">Vert.x</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Generator for Vert.x applications</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-karaf\">Karaf</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>karaf</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Generator for Karaf based apps</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-webapp\">Web applications</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>webapps</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Generator for WAR based applications supporting Tomcat, Jetty and Wildfly base images</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-quarkus\">Quarkus</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>Quarkus</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Generator for Quarkus based applications</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-openliberty\">Open Liberty</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>openliberty</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Generator for Open Liberty applications</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-wildfly-jar\">WildFly Bootable JAR</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>wildfly-jar</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Generator for WildFly Bootable JAR applications</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>There are some configuration options which are shared by all generators:</p>\n</div>\n<table id=\"generator-options-common\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 25. Common generator options</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>add</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">When set to <code>true</code>, then the generator <em>adds</em> to an existing image configuration. By default this is disabled, so\n that a generator only kicks in when there are no other image configurations in the build, which are either configured\n directly for a <code>k8s:build</code> or already added by a generator which has been run previously.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.add</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>alias</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">An alias name for referencing this image in various other parts of the configuration. This is also used in the log\n output. The default alias name is the name of the generator.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.alias</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>from</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">This is the base image from where to start when creating the images. By default the generators make an opinionated\n decision for the base image which are described in the respective generator section.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.from</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>fromMode</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Whe using OpenShift S2I builds the base image can be either a plain docker image (mode: <code>jib</code>) or a reference to an\n <a href=\"https://docs.openshift.com/container-platform/3.3/architecture/core_concepts/builds_and_image_streams.html\"> ImageStreamTag</a>\n (mode: <code>istag</code>). In the case of an ImageStreamTag, <code>from</code> has to be specified in the form <code>namespace/image-stream:tag</code>.\n The mode takes only effect when running in OpenShift mode.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.fromMode</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>name</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Docker image name used when doing Docker builds. For OpenShift S2I builds its the name of the image stream. This\n can be a pattern as descibed in <a href=\"#image-name-placeholders\">Name Placeholders</a>. The default is <code>%g/%a:%l</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.name</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>registry</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A optional Docker registry used when doing Docker builds. It has no effect for OpenShift S2I builds.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.registry</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>When used as properties they can be directly referenced with the property names above.</p>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-java-exec\">7.1.1. Java Applications</h4>\n<div class=\"paragraph\">\n<p>One of the most generic <em>Generators</em> is the <code>java-exec</code> generator.\nIt is responsible for starting up arbitrary Java application.\nIt knows how to deal with fat-jar applications where the application and all dependencies are included within a single jar and the <code>MANIFEST.MF</code> within the jar references a main class.\nBut also flat classpath applications, where the dependencies are separate jar files and a main class is given.</p>\n</div>\n<div class=\"paragraph\">\n<p>If no main class is explicitly configured, the plugin first attempts to locate a fat jar.\nIf the Maven build creates a JAR file with a <code>META-INF/MANIFEST.MF</code> containing a <code>Main-Class</code> entry, then this is considered to be the fat jar to use.\nIf there are more than one of such files then the largest one is used.</p>\n</div>\n<div class=\"paragraph\">\n<p>If a main class is configured (see below) then the image configuration will contain the application jar plus all dependency jars.\nIf no main class is configured as well as no fat jar being detected, then this <em>Generator</em> tries to detect a single main class by searching for <code>public static void main(String args[])</code> among the application classes. If exactly one class is found this is considered to be the main class. If no or more than one is found the <em>Generator</em> finally does nothing.</p>\n</div>\n<div class=\"paragraph\">\n<p>It will use the following base image by default, but as explained <a href=\"#generator-options-common\">above</a> and can be changed with the <code>from</code> configuration.</p>\n</div>\n<table id=\"generator-java-exec-from\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 26. Java Base Images</caption>\n<colgroup>\n<col style=\"width: 7.6923%;\">\n<col style=\"width: 30.7692%;\">\n<col style=\"width: 30.7692%;\">\n<col style=\"width: 30.7693%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\"></th>\n<th class=\"tableblock halign-left valign-top\">Docker Build</th>\n<th class=\"tableblock halign-left valign-top\">S2I Build</th>\n<th class=\"tableblock halign-left valign-top\">ImageStream</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>Community</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>quay.io/jkube/jkube-java-binary-s2i</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>quay.io/jkube/jkube-java-binary-s2i</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube-java</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>These images always refer to the latest tag.</p>\n</div>\n<div class=\"paragraph\">\n<p>When a <code>fromMode</code> of <code>istag</code> is used to specify an <code>ImageStreamTag</code> and when no <code>from</code> is given, then as default the\n<code>ImageStreamTag</code> <code>jkube-java</code> in the namespace <code>openshift</code> is chosen.\nBy default, <code>fromMode = \"docker\"</code> which use the a plain Docker image reference for the S2I builder image.</p>\n</div>\n<div class=\"paragraph\">\n<p>Beside the common configuration parameters described in the table <a href=\"#generator-options-common\">common generator options</a>\nthe following additional configuration options are recognized:</p>\n</div>\n<table id=\"generator-java-exec-options\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 27. Java Application configuration options</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>targetDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Directory within the generated image where to put the detected artefacts into. Change this only if the base image is\n changed, too.</p>\n<p class=\"tableblock\"> Defaults to <code>/deployments</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.java-exec.targetDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>jolokiaPort</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Port of the Jolokia agent exposed by the base image. Set this to 0 if you don’t want to expose the Jolokia port.</p>\n<p class=\"tableblock\"> Defaults to <code>8778</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.java-exec.jolokiaPort</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>mainClass</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Main class to call. If not given first a check is performed to detect a fat-jar (see above). Next a class is looked up\n by scanning <code>target/classes</code> for a single class with a main method. If no such class is found or if more than one is\n found, then this generator does nothing.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.java-exec.mainClass</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>prometheusPort</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Port of the Prometheus jmx_exporter exposed by the base image. Set this to 0 if you don’t want to expose the Prometheus\n port.</p>\n<p class=\"tableblock\"> Defaults to <code>9779</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.java-exec.prometheusPort</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>webPort</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Port to expose as service, which is supposed to be the port of a web application. Set this to 0 if you don’t want to\n expose a port.</p>\n<p class=\"tableblock\"> Defaults to <code>8080</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.java-exec.webPort</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>The exposed ports are typically later on use by <a href=\"#enrichers\">Enrichers</a> to create default Kubernetes or OpenShift services.</p>\n</div>\n<div class=\"paragraph\">\n<p>You can add additional files to the target image within <code>baseDir</code> by placing files into <code>src/main/jkube-includes</code>.\nThese will be added with mode <code>0644</code>, while everything in <code>src/main/jkube-includes/bin</code> will be added with <code>0755</code>.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-spring-boot\">7.1.2. Spring Boot</h4>\n<div class=\"paragraph\">\n<p>This generator is called <code>spring-boot</code> and gets activated when it finds a <code>spring-boot-maven-plugin</code> in the pom.xml.</p>\n</div>\n<div class=\"paragraph\">\n<p>This generator is based on the <a href=\"#generator-java-exec\">Java Application</a> Generator and inherits all of its configuration values. The generated container port is read from the <code>server.port</code> property <code>application.properties</code>, defaulting to <code>8080</code> if it is not found. It also uses the same default images as the <a href=\"#generator-java-exec-from\">java-exec Generator</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>Beside the <a href=\"#generator-options-common\">common generator options</a> and the <a href=\"#generator-java-exec-options\">java-exec options</a> the following additional configuration is recognized:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 28. Spring-Boot configuration options</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>color</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set, force the use of color in the Spring Boot console output.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.spring-boot.color</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>The generator adds Kubernetes liveness and readiness probes pointing to either the management or server port as read from the <code>application.properties</code>.\nIf the <code>management.port</code> (for Spring Boot 1) or <code>management.server.port</code> (for Spring Boot 2) and <code>management.ssl.key-store</code> (for Spring Boot 1) or <code>management.server.ssl.key-store</code> (for Spring Boot 2) properties are set in <code>application.properties</code> otherwise or <code>server.ssl.key-store</code> property is set in <code>application.properties</code> then the probes are automatically set to use <code>https</code>.</p>\n</div>\n<div class=\"paragraph\">\n<p>The generator works differently when called together with <code>k8s:watch</code>.\nIn that case it enables support for <a href=\"http://docs.spring.io/spring-boot/docs/current/reference/html/using-boot-devtools.html\">Spring Boot Developer Tools</a> which allows for hot reloading of the Spring Boot app.\nIn particular, the following steps are performed:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>If a secret token is not provided within the Spring Boot application configuration <code>application.properties</code> or <code>application.yml</code> with the key <code>spring.devtools.remote.secret</code> then a custom secret token is created and added to <code>application.properties</code></p>\n</li>\n<li>\n<p>Add <code>spring-boot-devtools.jar</code> as <code>BOOT-INF/lib/spring-devtools.jar</code> to the spring-boot fat jar.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>Since during <code>k8s:watch</code> the application itself within the <code>target/</code> directory is modified for allowing easy reloading you must ensure that you do a <code>mvn clean</code> before building an artifact which should be put into production.\nSince the released version are typically generated with a CI system which does a clean build anyway this should be only a theoretical problem.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-wildfly-swarm\">7.1.3. Wildfly Swarm</h4>\n<div class=\"paragraph\">\n<p>The WildFly Swarm generator detects a WildFly Swarm build and disables the Prometheus Java agent because of this <a href=\"https://issues.jboss.org/browse/THORN-1859\">issue</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>Otherwise this generator is identical to the <a href=\"#generator-java-exec\">java-exec generator</a>.\nIt supports the <a href=\"#generator-options-common\">common generator options</a> and the <a href=\"#generator-java-exec-options\"><code>java-exec</code> options</a>.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-thorntail-v2\">7.1.4. Thorntail v2</h4>\n<div class=\"paragraph\">\n<p>The Thorntail v2 generator detects a Thorntail v2 build and disables the Prometheus Java agent because of this <a href=\"https://issues.jboss.org/browse/THORN-1859\">issue</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>Otherwise this generator is identical to the <a href=\"#generator-java-exec\">java-exec generator</a>. It supports the <a href=\"#generator-options-common\">common generator options</a> and the <a href=\"#generator-java-exec-options\"><code>java-exec</code> options</a>.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-vertx\">7.1.5. Vert.x</h4>\n<div class=\"paragraph\">\n<p>The Vert.x generator detects an application using Eclipse Vert.x. It generates the metadata to start the application as a fat jar.</p>\n</div>\n<div class=\"paragraph\">\n<p>Currently, this generator is enabled if:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>you are using the Vert.x Maven Plugin (<a href=\"https://github.com/reactiverse/vertx-maven-plugin\" class=\"bare\">https://github.com/reactiverse/vertx-maven-plugin</a>)</p>\n</li>\n<li>\n<p>you are depending on <code>io.vertx:vertx-core</code> and uses the Maven Shader plugin</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>Otherwise this generator is identical to the <a href=\"#generator-java-exec\">java-exec generator</a>. It supports the <a href=\"#generator-options-common\">common generator options</a> and the <a href=\"#generator-java-exec-options\"><code>java-exec</code> options</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>The generator automatically:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>enable metrics and JMX publishing of the metrics when <code>io.vertx:vertx-dropwizard-metrics</code> is in the project’s classpath / dependencies.</p>\n</li>\n<li>\n<p>enable clustering when a Vert.x cluster manager is available in the project’s classpath / dependencies. this is done by appending <code>-cluster</code> to the command line.</p>\n</li>\n<li>\n<p>Force IPv4 stack when <code>vertx-infinispan</code> is used.</p>\n</li>\n<li>\n<p>Disable the async DNS resolver to fallback to the regular JVM DNS resolver.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>You can pass application parameter by setting the <code>JAVA_ARGS</code> env variable. You can pass system properties either using the same variable or using <code>JAVA_OPTIONS</code>. For instance, create <code>src/main/jkube/deployment.yml</code> with the following content to configure <code>JAVA_ARGS</code>:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">spec:\n template:\n spec:\n containers:\n - env:\n - name: JAVA_ARGS\n value: \"-Dfoo=bar -cluster -instances=2\"</code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-karaf\">7.1.6. Karaf</h4>\n<div class=\"paragraph\">\n<p>This generator named <code>karaf</code> kicks in when the build uses a <code>karaf-maven-plugin</code>. By default the following base images are used:</p>\n</div>\n<table id=\"generator-karaf-from\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 29. Karaf Base Images</caption>\n<colgroup>\n<col style=\"width: 7.6923%;\">\n<col style=\"width: 30.7692%;\">\n<col style=\"width: 30.7692%;\">\n<col style=\"width: 30.7693%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\"></th>\n<th class=\"tableblock halign-left valign-top\">Docker Build</th>\n<th class=\"tableblock halign-left valign-top\">S2I Build</th>\n<th class=\"tableblock halign-left valign-top\">ImageStream</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>Community</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>quay.io/jkube/jkube-karaf-binary-s2i</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>quay.io/jkube/jkube-karaf-binary-s2i</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube-karaf</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>When a <code>fromMode</code> of <code>istag</code> is used to specify an <code>ImageStreamTag</code> and when no <code>from</code> is given, then as default the\n<code>ImageStreamTag</code> <code>jkube-karaf</code> in the namespace <code>openshift</code> is chosen.</p>\n</div>\n<div class=\"paragraph\">\n<p>In addition to the <a href=\"#generator-options-common\">common generator options</a> this generator can be configured with the following options:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 30. Karaf configuration options</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>baseDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Directory within the generated image where to put the detected artifacts into. Change this only if the base image is\n changed, too.</p>\n<p class=\"tableblock\"> Defaults to <code>/deployments</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.karaf.baseDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>webPort</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Port to expose as service, which is supposed to be the port of a web application. Set this to 0 if you don’t want to\nexpose a port.</p>\n<p class=\"tableblock\"> Defaults to <code>8080</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.karaf.webPort</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-webapp\">7.1.7. Web Applications</h4>\n<div class=\"paragraph\">\n<p>The <code>webapp</code> generator tries to detect WAR builds and selects a base servlet container image based on the configuration found in the <code>pom.xml</code>:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>A <strong>Tomcat</strong> base image is selected when a <code>tomcat6-maven-plugin</code> or <code>tomcat7-maven-plugin</code> is present or when a <code>META-INF/context.xml</code> could be found in the classes directory.</p>\n</li>\n<li>\n<p>A <strong>Jetty</strong> base image is selected when a <code>jetty-maven-plugin</code> is present or one of the files <code>WEB-INF/jetty-web.xml</code> or <code>WEB-INF/jetty-logging.properties</code> is found.</p>\n</li>\n<li>\n<p>A <strong>Wildfly</strong> base image is chosen for a given <code>jboss-as-maven-plugin</code> or <code>wildfly-maven-plugin</code> or when a Wildfly specific deployment descriptor like <code>jboss-web.xml</code> is found.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>The base images chosen are:</p>\n</div>\n<table id=\"generator-webapp-from\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 31. Webapp Base Images</caption>\n<colgroup>\n<col style=\"width: 11.1111%;\">\n<col style=\"width: 44.4444%;\">\n<col style=\"width: 44.4445%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\"></th>\n<th class=\"tableblock halign-left valign-top\">Docker Build</th>\n<th class=\"tableblock halign-left valign-top\">S2I Build</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>Tomcat</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>quay.io/jkube/jkube-tomcat9-binary-s2i</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>quay.io/jkube/jkube-tomcat9-binary-s2i</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>Jetty</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>quay.io/jkube/jkube-jetty9-binary-s2i</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>quay.io/jkube/jkube-jetty9-binary-s2i</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>Wildfly</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jboss/wildfly</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"https://github.com/wildfly/wildfly-s2i\"><code>quay.io/wildfly/wildfly-centos7</code></a></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>In addition to the <a href=\"#generator-options-common\">common generator options</a> this generator can be configured with the following options:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 32. Webapp configuration options</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>server</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Fix server to use in the base image. Can be either <strong>tomcat</strong>, <strong>jetty</strong> or <strong>wildfly</strong>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.webapp.server</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>targetDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Where to put the war file into the target image. By default its selected by the base image chosen but can be\n overwritten with this option.</p>\n<p class=\"tableblock\"> Defaults to <code>/deployments</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.webapp.targetDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>user</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">User and/or group under which the files should be added. The syntax of this options is descriped in\n <a href=\"#config-image-build-assembly-user\">Assembly Configuration</a>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.webapp.user</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>path</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Context path with which the application can be reached by default.</p>\n<p class=\"tableblock\"> Defaults to <code>/</code> (root context).</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.webapp.path</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>cmd</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Command to use to start the container. By default the base images startup command is used.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.webapp.cmd</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>ports</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Comma separated list of ports to expose in the image and which eventually are translated later to Kubernetes services.\n The ports depend on the base image and are selected automatically. But they can be overridden here.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.webapp.ports</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-quarkus\">7.1.8. Quarkus</h4>\n<div class=\"paragraph\">\n<p>The <code>Quarkus</code> generator tried to detect quarkus based projects looking at project <code>pom.xml</code>:</p>\n</div>\n<div class=\"paragraph\">\n<p>The base images chosen are:</p>\n</div>\n<table id=\"generator-quarkus-from\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 33. Webapp Base Images</caption>\n<colgroup>\n<col style=\"width: 11.1111%;\">\n<col style=\"width: 44.4444%;\">\n<col style=\"width: 44.4445%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\"></th>\n<th class=\"tableblock halign-left valign-top\">Docker Build</th>\n<th class=\"tableblock halign-left valign-top\">S2I Build</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>Native</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>registry.access.redhat.com/ubi8/ubi-minimal:8.1</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">---</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>Normal Build</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>openjdk:11</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">---</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"admonitionblock important\">\n<table>\n<tr>\n<td class=\"icon\">\n<i class=\"fa icon-important\" title=\"Important\"></i>\n</td>\n<td class=\"content\">\n<div class=\"paragraph\">\n<p>S2I builds are currently not yet supported for the Quarkus generator.</p>\n</div>\n</td>\n</tr>\n</table>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-openliberty\">7.1.9. Open Liberty</h4>\n<div class=\"paragraph\">\n<p>The Open Liberty generator runs when the Open Liberty plugin is enabled in the maven build.</p>\n</div>\n<div class=\"paragraph\">\n<p>The generator is similar to the <a href=\"#generator-java-exec\">java-exec generator</a>. It supports the <a href=\"#generator-options-common\">common generator options</a> and the <a href=\"#generator-java-exec-options\"><code>java-exec</code> options</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>For Open Liberty, the default value of webPort is 9080.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-wildfly-jar\">7.1.10. Wildfly JAR Generator</h4>\n<div class=\"paragraph\">\n<p>The Wildfly JAR generator detects a WildFly Bootable JAR build and disables the Jolokia and Prometheus Java agent.</p>\n</div>\n<div class=\"paragraph\">\n<p>Otherwise this generator is identical to the <a href=\"#generator-java-exec\">java-exec generator</a>. It supports the <a href=\"#generator-options-common\">common generator options</a> and the <a href=\"#generator-java-exec-options\"><code>java-exec</code> options</a>.</p>\n</div>\n<div class=\"sect4\">\n<h5 id=\"_support_for_slim_bootable_jar\">Support for slim Bootable JAR</h5>\n<div class=\"paragraph\">\n<p>A slim Bootable JAR is a JAR that retrieves JBoss module artifacts from a Maven local cache. Such JAR are smaller and start faster. The WildFly JAR generator\nhas a builtin support to install a maven local cache in the image.</p>\n</div>\n<div class=\"paragraph\">\n<p>In order to build a slim Bootable JAR, configure the <em>wildfly-jar-maven-plugin</em> for slim server and maven local cache generation:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre> <plugin>\n <groupId>org.wildfly.plugins</groupId>\n <artifactId>wildfly-jar-maven-plugin</artifactId>\n <configuration>\n <plugin-options>\n <!-- Build a slim Bootable JAR -->\n <jboss-maven-dist/>\n <!-- Path to the Maven local cache that the plugin generates during build.\n It contains JBoss module artifacts required by the server. -->\n <jboss-maven-repo>target/myapp-repo</jboss-maven-repo>\n </plugin-options>\n ...\n </configuration>\n <executions>\n <execution>\n <goals>\n <goal>package</goal>\n </goals>\n </execution>\n </executions>\n </plugin></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The generator detects the path of the generated maven local repository directory\n(value of the <em><jboss-maven-repo></em> element) and copies it into the image <em>/deployments/<repo directory name></em> directory.\nNB: A relative path is considered relative to the maven project base directory.</p>\n</div>\n<div class=\"paragraph\">\n<p>In order for the Bootable JAR to retrieve the JBoss modules artifacts, the java\noption <em>-Dmaven.repo.local=/deployments/<repo directory name></em> is automatically added to the launch options.</p>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"generators-api\">7.2. Generator API</h3>\n<div class=\"admonitionblock warning\">\n<table>\n<tr>\n<td class=\"icon\">\n<i class=\"fa icon-warning\" title=\"Warning\"></i>\n</td>\n<td class=\"content\">\nThe API is still a bit in flux and will be documented later. Please refer to the\n <a href=\"https://github.com/eclipse/jkube/blob/master/jkube-kit/generator/api/src/main/java/org/eclipse/jkube/generator/api/Generator.java\">Generator</a>\n Interface in the meantime.\n</td>\n</tr>\n</table>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"enrichers\">8. Enrichers</h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>Enriching is the complementary concept to <a href=\"#generators\">Generators</a>. Whereas Generators are used to create and customize Docker images, Enrichers are use to create and customize Kubernetes resource objects.</p>\n</div>\n<div class=\"paragraph\">\n<p>There are a lot of similarities to Generators:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Each Enricher has a unique name.</p>\n</li>\n<li>\n<p>Enrichers are looked up automatically from the plugin dependencies and there is a set of default enrichers delivered with this plugin.</p>\n</li>\n<li>\n<p>Enrichers are configured the same ways as generators</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>The <a href=\"#generator-example\">Generator example</a> is a good blueprint, simply replace <code><generator></code> with <code><enricher></code>. The configuration is structural identical:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 34. Enricher configuration</caption>\n<colgroup>\n<col style=\"width: 25%;\">\n<col style=\"width: 75%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code><includes></code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Contains one ore more <code><include></code> elements with enricher names which should be included. If given, only this list of enrichers are included in this order. The enrichers from every active profile are included, too. However the enrichers listed here are moved to the front of the list, so that they are called first. Use the profile <code>raw</code> if you want to explicitly set the complete list of enrichers.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code><excludes></code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Holds one or more <code><exclude></code> elements with enricher names to exclude. This means all the detected enrichers are used except the ones mentioned in this section.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code><config></code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Configuration for all enrichers. Each enricher supports a specific set of configuration values as described in its documentation. The subelements of this section are enricher names. E.g. for enricher <code>jkube-service</code>, the sub-element is called <code><jkube-service></code>. This element then holds the specific enricher configuration like <code><name></code> for the service name. Configuration coming from profiles are merged into this config, but not overriding the configuration specified here.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>This plugin comes with a set of default enrichers. In addition custom enrichers can be easily added by providing implementation of the <a href=\"#enricher-api\">Enricher API</a> and adding these as a dependency to the build.</p>\n</div>\n<div class=\"sect2\">\n<h3 id=\"enrichers-default\">8.1. Default Enrichers</h3>\n<div class=\"paragraph\">\n<p>kubernetes-maven-plugin comes with a set of enrichers which are enabled by default. There are two categories of default enrichers:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><a href=\"#enrichers-generic\"><strong>Generic Enrichers</strong></a> are used to add default resource object when they are missing or add common\nmetadata extracted from the given build information.</p>\n</li>\n<li>\n<p><a href=\"#enrichers-specific\"><strong>Specific Enrichers</strong></a> are enrichers which are focused on a certain tech stack that they detect.</p>\n</li>\n</ul>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 35. Default Enrichers Overview</caption>\n<colgroup>\n<col style=\"width: 22.2222%;\">\n<col style=\"width: 77.7778%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Enricher</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-configmap-file\">jkube-configmap-file</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add ConfigMap elements defined as XML or as annotation.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-container-env-java-options\">jkube-container-env-java-options</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Merges <code>JAVA_OPTIONS</code> environment variable defined in <a href=\"#config-image-build\">Build configuration (<image> )</a>\n environment (<code>env</code>) with <code>Container</code> <code>JAVA_OPTIONS</code> environment variable added\n by other enrichers, XML configuration or fragment.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-controller\">jkube-controller</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Create default controller (replication controller, replica set or deployment <a href=\"https://kubernetes.io/docs/concepts/workloads/controllers/\">Kubernetes doc</a>) if missing.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-dependency\">jkube-dependency</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Examine build dependencies for <code>kubernetes.yml</code> and add the objects found therein.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-git\">jkube-git</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Check local <code>.git</code> directory and add build information as annotations.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-image\">jkube-image</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add the image name into a <code>PodSpec</code> of replication controller, replication sets and deployments, if missing.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-maven-issue-mgmt-enricher\">jkube-maven-issue-mgmt</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add Maven Issue Management information as annotations to the kubernetes/openshift resources</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-maven-scm-enricher\">jkube-maven-scm-enricher</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add Maven SCM information as annotations to the kubernetes/openshift resources</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-name\">jkube-name</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add a default name to every object which misses a name.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-pod-annotation\">jkube-pod-annotation</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Copy over annotations from a <code>Deployment</code> to a <code>Pod</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-portname\">jkube-portname</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add a default portname for commonly known service.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-project-label\">jkube-project-label</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add Maven coordinates as labels to all objects.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-prometheus\">jkube-prometheus</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add Prometheus annotations.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-revision-history-enricher\">jkube-revision-history</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add revision history limit (<a href=\"https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#revision-history-limit\">Kubernetes doc</a>) as a deployment spec property to the Kubernetes/OpenShift resources.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-secret-file\">jkube-secret-file</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add Secret elements defined as annotation.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-service\">jkube-service</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Create a default service if missing and extract ports from the Docker image configuration.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-serviceaccount\">jkube-serviceaccount</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add a ServiceAccount defined as XML or mentioned in resource fragment.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-triggers-annotation\">jkube-triggers-annotation</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add ImageStreamTag change triggers on Kubernetes resources such as StatefulSets, ReplicaSets and DaemonSets using the <code>image.openshift.io/triggers</code> annotation.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"sect3\">\n<h4 id=\"enrichers-generic\">8.1.1. Generic Enrichers</h4>\n<div class=\"paragraph\">\n<p>Default generic enrichers are used for adding missing resources or adding metadata to given resource objects.\nThe following default enhancers are available out of the box.</p>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-configmap-file\">jkube-configmap-file</h5>\n<div class=\"paragraph\">\n<p>This enricher adds ConfigMap defined as <code>resources</code> in plugin configuration and/or resolves file content from an annotation.</p>\n</div>\n<div class=\"paragraph\">\n<p>As XML you can define:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">pom.xml</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><configuration>\n <resources>\n <configMap>\n <name>myconfigmap</name>\n <entries>\n <entry>\n <name>A</name>\n <value>B</value>\n </entry>\n </entries>\n </configMap>\n </resources>\n</configuration></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This creates a ConfigMap data with key <code>A</code> and value <code>B</code>.</p>\n</div>\n<div class=\"paragraph\">\n<p>You can also use <code>file</code> tag to refer to the content of a file.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><configuration>\n <resources>\n <configMap>\n <name>configmap-test</name>\n <entries>\n <entry>\n <file>src/test/resources/test-application.properties</file>\n </entry>\n </entries>\n </configMap>\n </resources>\n</configuration></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This creates a ConfigMap with key <code>test-application.properties</code> and value the content of the <code>src/test/resources/test-application.properties</code> file.\nIf you set <code>name</code> tag then this is used as key instead of the filename.</p>\n</div>\n<div class=\"paragraph\">\n<p>If you are defining a custom <code>ConfigMap</code> file, you can use an annotation to define a file name as key and its content as the value:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">metadata:\n name: ${project.artifactId}\n annotations:\n maven.jkube.io/cm/application.properties: src/test/resources/test-application.properties</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This creates a <code>ConfigMap</code> data with key <code>application.properties</code> (part defined after <code>cm</code>) and value the content of <code>src/test/resources/test-application.properties</code> file.</p>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-container-env-java-options\">jkube-container-env-java-options</h5>\n<div class=\"paragraph\">\n<p>Merges <code>JAVA_OPTIONS</code> environment variable defined in <a href=\"#config-image-build\">Build configuration (<image> )</a>\nenvironment (<code>env</code>) with <code>Container</code> <code>JAVA_OPTIONS</code> environment variable added\nby other enrichers, XML configuration or fragment.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Option</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>disable</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Disabled the enricher, any <code>JAVA_OPTIONS</code> environment variable defined by an enricher,\n XML configuration or YAML fragment will override the one defined by the generator\n or Image Build configuration.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-container-env-java-options.disable</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-controller\">jkube-controller</h5>\n<div class=\"paragraph\">\n<p>This enricher is used to ensure that a controller is present.\nThis can be either directly configured with fragments or with the XML configuration.\nAn explicit configuration always takes precedence over auto detection.\nSee <a href=\"https://kubernetes.io/docs/concepts/workloads/controllers/\">Kubernetes doc</a> for more information on types of controllers.</p>\n</div>\n<div class=\"paragraph\">\n<p>The following configuration parameters can be used to influence the behaviour of this enricher:</p>\n</div>\n<table id=\"enricher-jkube-controller\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 36. Default controller enricher</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>name</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Name of the Controller. Kubernetes Controller names must start with a letter. If the maven artifactId starts with a\n digit, <code>s</code> will be prefixed.</p>\n<p class=\"tableblock\"> Defaults to <code>${project.artifactId}</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-controller.name</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>pullPolicy</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Image pull policy to use for the container. One of: <em>IfNotPresent</em>, <em>Always</em>.</p>\n<p class=\"tableblock\"> Defaults to <code>IfNotPresent</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-controller.pullPolicy</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>type</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Type of Controller to create. One of: <em>ReplicationController</em>, <em>ReplicaSet</em>, <em>Deployment</em>, <em>DeploymentConfig</em>,\n <em>StatefulSet</em>, <em>DaemonSet</em>, <em>Job</em>.</p>\n<p class=\"tableblock\"> Defaults to <code>Deployment</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-controller.type</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>replicaCount</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Number of replicas for the container.</p>\n<p class=\"tableblock\"> Defaults to <code>1</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-controller.replicaCount</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-service\">jkube-service</h5>\n<div class=\"paragraph\">\n<p>This enricher is used to ensure that a service is present.\nThis can be either directly configured with fragments or with the XML configuration, but it can be also automatically inferred by looking at the ports exposed by an image configuration.\nAn explicit configuration always takes precedence over auto detection. For enriching an existing service this enricher actually works only on a configured service which matches with the configured (or inferred) service name.</p>\n</div>\n<div class=\"paragraph\">\n<p>The following configuration parameters can be used to influence the behaviour of this enricher:</p>\n</div>\n<table id=\"enricher-jkube-service\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 37. Default service enricher</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>name</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Service name to enrich by default. If not given here or configured elsewhere, the artifactId is used.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-service.name</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>headless</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Whether a headless service without a port should be configured. A headless service has the <code>ClusterIP</code> set to <code>None</code>\n and will be only used if no ports are exposed by the image configuration or by the configuration <code>port</code>.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-service.headless</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>expose</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set to true, a label <code>expose</code> with value <code>true</code> is added which can be picked up by the jkube.\n <a href=\"https://github.com/jenkins-x/exposecontroller\">expose-controller</a> to expose the service to the outside by various means.\n See the documentation of expose-controller for more details.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-service.expose</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>type</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Kubernetes / OpenShift service type to set like <em>LoadBalancer</em>, <em>NodePort</em> or <em>ClusterIP</em>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-service.type</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>port</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The service port to use. By default the same port as the ports exposed in the image configuration is used, but can be\n changed with this parameter. See <a href=\"#jkube-service-ports\">below</a> for a detailed description of the format which can be\n put into this variable.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-service.port</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>multiPort</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Set this to <code>true</code> if you want all ports to be exposed from an image configuration. Otherwise only the first port is\n used as a service port.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-service.multiPort</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>protocol</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Default protocol to use for the services. Must be <code>tcp</code> or <code>udp</code>.</p>\n<p class=\"tableblock\"> Defaults to <code>tcp</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-service.protocol</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>normalizePort</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Normalize the port numbering of the service to common and conventional port numbers.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-service.normalizePort</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Following is the Port mapping that comes in effect, when normalizePort option is set true.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 50%;\">\n<col style=\"width: 50%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Original Port</th>\n<th class=\"tableblock halign-left valign-top\">Normalized Port</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">8080</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">80</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">8081</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">80</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">8181</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">80</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">8180</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">80</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">8443</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">443</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">443</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">443</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>You specify the properties like for any enricher within the enrichers configuration like in</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><configuration>\n <!-- ... -->\n <enricher>\n <config>\n <jkube-service>\n <name>my-service</name>\n <type>NodePort</type>\n <multiPort>true</multiPort>\n </jkube-service>\n </config>\n </enricher>\n</configuration></code></pre>\n</div>\n</div>\n<div id=\"jkube-service-ports\" class=\"paragraph\">\n<div class=\"title\">Port specification</div>\n<p>With the option <code>port</code> you can influence the mapping how ports are mapped from the pod to the service.\nBy default and if this option is not given the ports exposed are dictated by the ports exposed from the Docker images contained in the pods.\nRemember, each image configured can be part of the pod.\nHowever you can expose also completely different ports as the images meta data declare.</p>\n</div>\n<div class=\"paragraph\">\n<p>The property <code>port</code> can contain a comma separated list of mappings of the following format:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-text\" data-lang=\"text\"><servicePort1>:<targetPort1>/<protocol>,<servicePort2>:<targetPort2>/<protocol>,....</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>where the <code>targetPort</code> and <code><protocol></code> specification is optional. These ports are overlayed over the ports exposed by the images, in the given order.</p>\n</div>\n<div class=\"paragraph\">\n<p>This is best explained by some examples.</p>\n</div>\n<div class=\"paragraph\">\n<p>For example if you have a pod which exposes a Microservice on port 8080 and you want to expose it as a service on port 80 (so that it can be accessed with <code><a href=\"http://myservice\" class=\"bare\">http://myservice</a></code>) you can simply use the following enricher configuration:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><configuration>\n <enricher>\n <config>\n <jkube-service>\n <name>myservice</name>\n <port>80:8080</port> <i class=\"conum\" data-value=\"1\"></i><b>(1)</b>\n </jkube-service>\n </config>\n </enricher>\n</configuration></code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td>80 is the service port, 8080 the port opened in from the pod’s images</td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<p>If your pod <em>exposes</em> their ports (which e.g. all generator do), then you can even omit the 8080 here (i.e. <code><port>80</port></code>).\nIn this case the <em>first</em> port exposed will be mapped to port 80, all other exposed ports will be omitted.</p>\n</div>\n<div class=\"paragraph\">\n<p>By default an automatically generated service only exposes the first port, even when more ports are exposed.\nWhen you want to map multiple ports you need to set the config option <code><multiPort>true</multiPort></code>.\nIn this case you can also provide multiple mappings as a comma separated list in the <code><port></code> specification where each element of the list are the mapping for the first, second, …​ port.</p>\n</div>\n<div class=\"paragraph\">\n<p>A more (and bit artificially constructed) specification could be <code><port>80,9779:9779/udp,443</port></code>.\nAssuming that the image exposes ports <code>8080</code> and <code>8778</code> (either directly or via <a href=\"#generators\">generators</a>) and we have switched on multiport mode, then the following service port mappings will be performed for the automatically generated service:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Pod port 8080 is mapped to service port 80.</p>\n</li>\n<li>\n<p>Pod port 9779 is mapped to service port 9779 with protocol UDP. Note how this second entry overrides the pod exposed port 8778.</p>\n</li>\n<li>\n<p>Pod port 443 is mapped to service port 443.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>This example shows also the mapping rules:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Port specification in <code>port</code> always override the port metadata of the contained Docker images (i.e. the ports exposed)</p>\n</li>\n<li>\n<p>You can always provide a complete mapping with <code>port</code> on your own</p>\n</li>\n<li>\n<p>The ports exposed by the images serve as <em>default values</em> which are used if not specified by this configuration option.</p>\n</li>\n<li>\n<p>You can map ports which are <em>not</em> exposed by the images by specifying them as target ports.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>Multiple ports are <strong>only</strong> mapped when <em>multiPort</em> mode is enabled (which is switched off by default). If <em>multiPort</em> mode is disabled, only the first port from the list of mapped ports calculated as above is taken.</p>\n</div>\n<div class=\"paragraph\">\n<p>When you set <code>legacyPortMapping</code> to true than ports 8080 to 9090 are mapped to port 80 automatically if not explicitly mapped via <code><em>port</em></code>. I.e. when an image exposes port 8080 with a legacy mapping this mapped to a service port 80, not 8080. You <em>should not</em> switch this on for any good reason. In fact it might be that this option can vanish anytime.</p>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-image\">jkube-image</h5>\n\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-name\">jkube-name</h5>\n\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-portname\">jkube-portname</h5>\n\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-pod-annotation\">jkube-pod-annotation</h5>\n\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-project-label\">jkube-project-label</h5>\n<div class=\"paragraph\">\n<p>Enricher that adds standard labels and selectors to generated resources (e.g. <code>app</code>, <code>group</code>, <code>provider</code>, <code>version</code>).</p>\n</div>\n<div class=\"paragraph\">\n<p>The <code>jkube-project-label</code> enricher supports the following configuration options:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Option</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>useProjectLabel</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Enable this flag to turn on the generation of the old <code>project</code> label in Kubernetes resources. The <code>project</code> label has\nbeen replaced by the <code>app</code> label in newer versions of the plugin.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-project-label.useProjectLabel</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>app</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Makes it possible to define a custom <code>app</code> label used in the generated resource files used for deployment.</p>\n<p class=\"tableblock\">Defaults to the Maven <code>project.artifactId</code> property.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-project-label.app</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>The project labels which are already specified in the input fragments are not overridden by the enricher.</p>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-git\">jkube-git</h5>\n<div class=\"paragraph\">\n<p>Enricher that adds info from .git directory as annotations.</p>\n</div>\n<div class=\"paragraph\">\n<p>The git branch & latest commit on the branch are annotated as <code>jkube.io/git-branch</code> & <code>jkube.io/git-commit</code>.\n<code>jkube.io/git-url</code> is annotated as the URL of your configured remote.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Option</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>gitRemote</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Configures the git remote name, whose URL you want to annotate as 'git-url'.</p>\n<p class=\"tableblock\"> Defaults to <code>origin</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-git.gitRemote</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-dependency\">jkube-dependency</h5>\n\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-volume-permission\">jkube-volume-permission</h5>\n<div class=\"paragraph\">\n<p>Enricher which fixes the permission of persistent volume mount with the help of an init container.</p>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-openshift-autotls\">jkube-openshift-autotls</h5>\n<div class=\"paragraph\">\n<p>Enricher which adds appropriate annotations and volumes to enable OpenShift’s automatic\n<a href=\"https://docs.openshift.org/latest/dev_guide/secrets.html#service-serving-certificate-secrets\">Service Serving Certificate Secrets</a>.\nThis enricher adds an init container to convert the service serving certificates from PEM (the format that OpenShift generates them in) to\na JKS-format Java keystore ready for consumption in Java services.</p>\n</div>\n<div class=\"paragraph\">\n<p>This enricher is disabled by default. In order to use it, you must configure the kubernetes-maven-plugin to use this enricher:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n <version>1.0.2</version>\n <executions>\n <execution>\n <goals>\n <goal>resource</goal>\n </goals>\n </execution>\n </executions>\n <configuration>\n <enricher>\n <includes>\n <include>jkube-openshift-autotls</include>\n </includes>\n <config>\n <jkube-openshift-autotls>\n <!-- ... -->\n </jkube-openshift-autotls>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The auto-TLS enricher supports the following configuration options:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>tlsSecretName</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The name of the secret to be used to store the generated service serving certs.</p>\n<p class=\"tableblock\"> Defaults to <code><project.artifactId>-tls</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.tlsSecretName</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>tlsSecretVolumeMountPoint</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Where the service serving secret should be mounted to in the pod.</p>\n<p class=\"tableblock\"> Defaults to <code>/var/run/secrets/jkube.io/tls-pem</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.tlsSecretName</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>tlsSecretVolumeName</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The name of the secret volume.</p>\n<p class=\"tableblock\"> Defaults to <code>tls-pem</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.tlsSecretVolumeName</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>jksVolumeMountPoint</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Where the generated keystore volume should be mounted to in the pod.</p>\n<p class=\"tableblock\"> Defaults to <code>/var/run/secrets/jkube.io/tls-jks</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.the</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>jksVolumeName</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The name of the keystore volume.</p>\n<p class=\"tableblock\"> Defaults to <code>tls-jks</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.jksVolumeName</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>pemToJKSInitContainerImage</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The name of the image used as an init container to convert PEM certificate/key to Java keystore.</p>\n<p class=\"tableblock\"> Defaults to <code>jimmidyson/pemtokeystore:v0.1.0</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.pemToJKSInitContainerImage</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>pemToJKSInitContainerName</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">the name of the init container to convert PEM certificate/key to Java keystore.</p>\n<p class=\"tableblock\"> Defaults to <code>tls-jks-converter</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.pemToJKSInitContainerName</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>keystoreFileName</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The name of the generated keystore file.</p>\n<p class=\"tableblock\"> Defaults to <code>keystore.jks</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.keystoreFileName</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>keystorePassword</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The password to use for the generated keystore.</p>\n<p class=\"tableblock\"> Defaults to <code>changeit</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.keystorePassword</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>keystoreCertAlias</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The alias in the keystore used for the imported service serving certificate.</p>\n<p class=\"tableblock\"> Defaults to <code>server</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.keystoreCertAlias</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-prometheus\">jkube-prometheus</h5>\n<div class=\"paragraph\">\n<p>This enricher adds Prometheus annotation like:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">apiVersion: v1\nkind: List\nitems:\n- apiVersion: v1\n kind: Service\n metadata:\n annotations:\n prometheus.io/scrape: \"true\"\n prometheus.io/port: 9779\n prometheus.io/path: \"/metrics\"</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>By default the enricher inspects the images' BuildConfiguration and add the annotations if the port 9779 is listed.\nYou can force the plugin to add annotations by setting enricher’s config <code><code>prometheusPort</code></code></p>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-maven-scm-enricher\">jkube-maven-scm-enricher</h5>\n<div class=\"paragraph\">\n<p>This enricher adds additional <a href=\"https://maven.apache.org/pom.html#SCM\">SCM</a> related metadata to all objects supporting annotations.\nThese metadata will be added only if <a href=\"https://maven.apache.org/pom.html#SCM\">SCM</a> information is present in the maven <code>pom.xml</code> of the project.</p>\n</div>\n<div class=\"paragraph\">\n<p>The following annotations will be added to the objects that supports annotations,</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 38. Maven SCM Enrichers Annotation Mapping</caption>\n<colgroup>\n<col style=\"width: 28.5714%;\">\n<col style=\"width: 28.5714%;\">\n<col style=\"width: 42.8572%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Maven SCM Info</th>\n<th class=\"tableblock halign-left valign-top\">Annotation</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">scm/connection</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">jkube.io/scm-con-url</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The SCM connection that will be used to connect to the project’s SCM</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">scm/developerConnection</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">jkube.io/scm-devcon-url</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The SCM Developer Connection that will be used to connect to the project’s developer SCM</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">scm/tag</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">jkube.io/scm-tag</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The SCM tag that will be used to checkout the sources, like HEAD dev-branch etc.,</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">scm/url</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">jkube.io/scm-url</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The SCM web url that can be used to browse the SCM over web browser</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Lets say you have a maven pom.xml with the following scm information,</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><scm>\n <connection>scm:git:git://github.com/jkubeio/kubernetes-maven-plugin.git</connection>\n <developerConnection>scm:git:git://github.com/jkubeio/kubernetes-maven-plugin.git</developerConnection>\n <url>git://github.com/jkubeio/kubernetes-maven-plugin.git</url>\n</scm></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This information will be enriched as annotations in the generated manifest like,</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\"># ...\n kind: Service\n metadata:\n annotations\n jkube.io/scm-con-url: \"scm:git:git://github.com/jkubeio/kubernetes-maven-plugin.git\"\n jkube.io/scm-devcon-url: \"scm:git:git://github.com/jkubeio/kubernetes-maven-plugin.git\"\n jkube.io/scm-tag: \"HEAD\"\n jkube.io/scm-url: \"git://github.com/jkubeio/kubernetes-maven-plugin.git\"\n# ...</code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-maven-issue-mgmt-enricher\">jkube-maven-issue-mgmt</h5>\n<div class=\"paragraph\">\n<p>This enricher adds additional <a href=\"https://maven.apache.org/pom.html#Issue_Management\">Issue Management</a> related metadata to\nall objects supporting annotations.\nThese metadata will be added only if the <a href=\"https://maven.apache.org/pom.html#Issue_Management\">Issue Management</a>\ninformation is available in the <code>pom.xml</code> of the Maven project.</p>\n</div>\n<div class=\"paragraph\">\n<p>The following annotations will be added to the objects that support these annotations,</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 39. Maven Issue Tracker Enrichers Annotation Mapping</caption>\n<colgroup>\n<col style=\"width: 28.5714%;\">\n<col style=\"width: 28.5714%;\">\n<col style=\"width: 42.8572%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Maven Issue Tracker Info</th>\n<th class=\"tableblock halign-left valign-top\">Annotation</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">issueManagement/system</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">jkube.io/issue-system</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Issue Management system like Bugzilla, JIRA, GitHub etc.,</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">issueManagement/url</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">jkube.io/issue-tracker-url</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Issue Management url e.g. GitHub Issues Url</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Lets say you have a maven pom.xml with the following issue management information,</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><issueManagement>\n <system>GitHub</system>\n <url>https://github.com/reactiverse/vertx-maven-plugin/issues/</url>\n</issueManagement></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This information will be enriched as annotations in the generated manifest like,</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\"># ...\n kind: Service\n metadata:\n annotations:\n jkube.io/issue-system: \"GitHub\"\n jkube.io/issue-tracker-url: \"https://github.com/reactiverse/vertx-maven-plugin/issues/\"\n# ...</code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-revision-history-enricher\">jkube-revision-history</h5>\n<div class=\"paragraph\">\n<p>This enricher adds <code>spec.revisionHistoryLimit</code> property to deployment spec of Kubernetes/OpenShift resources.\nA deployment’s revision history is stored in the replica sets, that specifies the number of old ReplicaSets to retain in order to allow rollback.\nFor more information read <a href=\"https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#revision-history-limit\">Kubernetes documentation</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>The following configuration parameters can be used to influence the behaviour of this enricher:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 40. Default revision history enricher</caption>\n<colgroup>\n<col style=\"width: 20%;\">\n<col style=\"width: 40%;\">\n<col style=\"width: 40%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>limit</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Number of revision histories to retain.</p>\n<p class=\"tableblock\"> Defaults to <code>2</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-revision-history.limit</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Just as any other enricher you can specify required properties with in the enricher’s configuration as below,</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><!-- ... -->\n<enricher>\n <config>\n <jkube-revision-history>\n <limit>8</limit>\n </jkube-revision-history>\n </config>\n</enricher>\n<!-- ... --></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This information will be enriched as spec property in the generated manifest like,</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\"># ...\nkind: Deployment\nspec:\n revisionHistoryLimit: 8\n# ...</code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-triggers-annotation\">jkube-triggers-annotation</h5>\n<div class=\"paragraph\">\n<p>This enricher adds ImageStreamTag change triggers on Kubernetes resources that support the <code>image.openshift.io/triggers</code> annotation, such as StatefulSets, ReplicaSets and DaemonSets.</p>\n</div>\n<div class=\"paragraph\">\n<p>The trigger is added to all containers that apply, but can be restricted to a limited set of containers using the following configuration:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><!-- ... -->\n<enricher>\n <config>\n <jkube-triggers-annotation>\n <containers>container-name-1,c2</containers>\n </jkube-triggers-annotation>\n </config>\n</enricher>\n<!-- ... --></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-secret-file\">jkube-secret-file</h5>\n<div class=\"paragraph\">\n<p>This enricher adds Secret defined as file content from an annotation.</p>\n</div>\n<div class=\"paragraph\">\n<p>If you are defining a custom <code>Secret</code> file, you can use an annotation to define a file name as key and its content as the value:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">metadata:\n name: ${project.artifactId}\n annotations:\n maven.jkube.io/secret/application.properties: src/test/resources/test-application.properties</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This creates a <code>Secret</code> data with the key <code>application.properties</code> (part defined after <code>secret</code>) and value content of\n<code>src/test/resources/test-application.properties</code> file (base64 encoded).</p>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-serviceaccount\">jkube-serviceaccount</h5>\n\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"enrichers-specific\">8.1.2. Specific Enrichers</h4>\n<div class=\"paragraph\">\n<p>Specific enrichers provide resource manifest enhancement for a certain tech stack that they detect.</p>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-healthcheck-karaf\">jkube-healthcheck-karaf</h5>\n<div class=\"paragraph\">\n<p>This enricher adds kubernetes readiness and liveness probes with Apache Karaf. This requires that\n<code>jkube.karaf-checks</code> has been enabled in the Karaf startup features.</p>\n</div>\n<div class=\"paragraph\">\n<p>The enricher will use the following settings by default:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>port = <code>8181</code></p>\n</li>\n<li>\n<p>scheme = <code>HTTP</code></p>\n</li>\n<li>\n<p>failureThreshold = <code>3</code></p>\n</li>\n<li>\n<p>successThreshold = <code>1</code></p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>and use paths <code>/readiness-check</code> for readiness check and <code>/health-check</code> for liveness check.</p>\n</div>\n<div class=\"paragraph\">\n<p>These options cannot be configured.</p>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-healthcheck-spring-boot\">jkube-healthcheck-spring-boot</h5>\n<div class=\"paragraph\">\n<p>This enricher adds kubernetes readiness and liveness probes with Spring Boot. This requires the following dependency\nhas been enabled in Spring Boot</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><dependency>\n <groupId>org.springframework.boot</groupId>\n <artifactId>spring-boot-starter-actuator</artifactId>\n</dependency></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The enricher will try to discover the settings from the <code>application.properties</code> / <code>application.yaml</code> Spring Boot configuration file.</p>\n</div>\n<div class=\"paragraph\">\n<p>The port number is read from the <code>management.port</code> option, and will use the default value of <code>8080</code>\nThe scheme will use HTTPS if <code>server.ssl.key-store</code> option is in use, and fallback to use <code>HTTP</code> otherwise.</p>\n</div>\n<div class=\"paragraph\">\n<p>The enricher will use the following settings by default:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>readinessProbeInitialDelaySeconds</code> : <code>10</code></p>\n</li>\n<li>\n<p><code>readinessProbePeriodSeconds</code> : <em><kubernetes-default></em></p>\n</li>\n<li>\n<p><code>livenessProbeInitialDelaySeconds</code> : <code>180</code></p>\n</li>\n<li>\n<p><code>livenessProbePeriodSeconds</code> : <em><kubernetes-default></em></p>\n</li>\n<li>\n<p><code>timeoutSeconds</code> : <em><kubernetes-default></em></p>\n</li>\n<li>\n<p><code>failureThreshold</code>: <code>3</code></p>\n</li>\n<li>\n<p><code>successThreshold</code>: <code>1</code></p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>These values can be configured by the enricher in the <code>kubernetes-maven-plugin</code> configuration as shown below:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n <version>1.0.2</version>\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>helm</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n <configuration>\n <enricher>\n <config>\n <jkube-healthcheck-spring-boot>\n <timeoutSeconds>5</timeoutSeconds>\n <readinessProbeInitialDelaySeconds>30</readinessProbeInitialDelaySeconds>\n <failureThreshold>3</failureThreshold>\n <successThreshold>1</successThreshold>\n </jkube-healthcheck-spring-boot>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-healthcheck-thorntail-v2\">jkube-healthcheck-thorntail-v2</h5>\n<div class=\"paragraph\">\n<p>This enricher adds kubernetes readiness and liveness probes with Thorntail v2. This requires the following fraction\nhas been enabled in Thorntail</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><dependency>\n <groupId>io.thorntail</groupId>\n <artifactId>microprofile-health</artifactId>\n</dependency></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The enricher will use the following settings by default:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>port = <code>8080</code></p>\n</li>\n<li>\n<p>scheme = <code>HTTP</code></p>\n</li>\n<li>\n<p>path = <code>/health</code></p>\n</li>\n<li>\n<p>failureThreshold = <code>3</code></p>\n</li>\n<li>\n<p>successThreshold = <code>1</code></p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>These values can be configured by the enricher in the <code>kubernetes-maven-plugin</code> configuration as shown below:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n <version>1.0.2</version>\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>helm</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n <configuration>\n <enricher>\n <config>\n <jkube-healthcheck-thorntail>\n <port>4444</port>\n <scheme>HTTPS</scheme>\n <path>health/myapp</path>\n <failureThreshold>3</failureThreshold>\n <successThreshold>1</successThreshold>\n </jkube-healthcheck-thorntail>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-healthcheck-vertx\">jkube-healthcheck-vertx</h5>\n<div class=\"paragraph\">\n<p>This enricher adds kubernetes readiness and liveness probes with Eclipse Vert.x applications.\nThe readiness probe lets Kubernetes detect when the application is ready, while the liveness probe allows Kubernetes to\nverify that the application is still alive.</p>\n</div>\n<div class=\"paragraph\">\n<p>This enricher allows configuring the readiness and liveness probes. The following probe types are supported:\n<code>http</code> (emit HTTP requests), <code>tcp</code> (open a socket), <code>exec</code> (execute a command).</p>\n</div>\n<div class=\"paragraph\">\n<p>By default, this enricher uses the same configuration for liveness and readiness probes. But specific configurations can\nbe provided too. The configurations can be overridden using project’s properties.</p>\n</div>\n<div class=\"sect5\">\n<h6 id=\"_using_the_jkube_healthcheck_vertx_enricher\">Using the jkube-healthcheck-vertx enricher</h6>\n<div class=\"paragraph\">\n<p>The enricher is automatically executed if your project uses the <code>vertx-maven-plugin</code> or depends on <code>io.vertx:vertx-core</code>.\nHowever, by default, no health check will be added to your deployment unless configured explicitly.</p>\n</div>\n</div>\n<div class=\"sect5\">\n<h6 id=\"_minimal_configuration\">Minimal configuration</h6>\n<div class=\"paragraph\">\n<p>The minimal configuration to add health checks is the following:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n <version>1.0.2</version>\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>helm</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n <configuration>\n <enricher>\n <config>\n <jkube-healthcheck-vertx>\n <path>/health</path>\n </jkube-healthcheck-vertx>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>It configures the readiness and liveness health checks using HTTP requests on the port <code>8080</code> (default port) and on the\npath <code>/health</code>. The defaults are:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>port = <code>8080</code> (for HTTP)</p>\n</li>\n<li>\n<p>scheme = <code>HTTP</code></p>\n</li>\n<li>\n<p>path = <em>none</em> (disabled)</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>the previous configuration can also be given use project’s properties:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><properties>\n <vertx.health.path>/health</vertx.health.path>\n</properties></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect5\">\n<h6 id=\"_configuring_differently_the_readiness_and_liveness_health_checks\">Configuring differently the readiness and liveness health checks</h6>\n<div class=\"paragraph\">\n<p>You can provide two different configuration for the readiness and liveness checks:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n <version>1.0.2</version>\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>helm</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n <configuration>\n <enricher>\n <config>\n <jkube-healthcheck-vertx>\n <readiness>\n <path>/ready</path>\n </readiness>\n <liveness>\n <path>/health</path>\n </liveness>\n </jkube-healthcheck-vertx>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>You can also use the <code>readiness</code> and <code>liveness</code> chunks in user properties:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><properties>\n <vertx.health.readiness.path>/ready</vertx.health.readiness.path>\n <vertx.health.liveness.path>/ready</vertx.health.liveness.path>\n</properties></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Shared (generic) configuration can be set outside of the specific configuration. For instance, to use the port 8081:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n <version>1.0.2</version>\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>helm</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n <configuration>\n <enricher>\n <config>\n <jkube-healthcheck-vertx>\n <port>8081</port>\n <readiness>\n <path>/ready</path>\n </readiness>\n <liveness>\n <path>/health</path>\n </liveness>\n </jkube-healthcheck-vertx>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Or:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><properties>\n <vertx.health.port>8081</vertx.health.port>\n <vertx.health.readiness.path>/ready</vertx.health.readiness.path>\n <vertx.health.liveness.path>/ready</vertx.health.liveness.path>\n</properties></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect5\">\n<h6 id=\"_configuration_structure\">Configuration Structure</h6>\n<div class=\"paragraph\">\n<p>The configuration is structured as follows</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><config>\n <jkube-healthcheck-vertx>\n <!-- Generic configuration, applied to both liveness and readiness -->\n <path>/both</path>\n <liveness>\n <!-- Specific configuration for the liveness probe -->\n <port-name>ping</port-name>\n </liveness>\n <readiness>\n <!-- Specific configuration for the readiness probe -->\n <port-name>ready</port-name>\n </readiness>\n </jkube-healthcheck-vertx>\n</config></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The same structure is used in project’s properties:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><properties>\n <!-- Generic configuration given as vertx.health.$attribute -->\n <vertx.health.path>/both</vertx.health.path>\n <!-- Specific liveness configuration given as vertx.health.liveness.$attribute -->\n <vertx.health.liveness.port-name>ping</vertx.health.liveness.port-name>\n <!-- Specific readiness configuration given as vertx.health.readiness.$attribute -->\n <vertx.health.readiness.port-name>ready</vertx.health.readiness.port-name>\n</properties></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p><strong>Important</strong>: Project’s plugin configuration override the project’s properties.\nThe overriding rules are:\n<em>specific configuration</em> > <em>specific properties</em> > <em>generic configuration</em> > <em>generic properties</em>.</p>\n</div>\n</div>\n<div class=\"sect5\">\n<h6 id=\"_probe_configuration\">Probe configuration</h6>\n<div class=\"paragraph\">\n<p>You can configure the different aspects of the probes. These attributes can be configured for both the readiness and\nliveness probes or be specific to one.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 41. Vert.x HealthCheck Enricher probe configuration</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 62.5%;\">\n<col style=\"width: 25%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>type</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The probe type among <code>http</code> (default), <code>tcp</code> and <code>exec</code>.</p>\n<p class=\"tableblock\"> Defaults to <code>http</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.type</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.type</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>initial-delay</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Number of seconds after the container has started before probes are initiated.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.initial-delay</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.initial-delay</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>period</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">How often (in seconds) to perform the probe.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.period</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.period</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>timeout</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Number of seconds after which the probe times out.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.timeout</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.timeout</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>success-threshold</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Minimum consecutive successes for the probe to be considered successful after having failed.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.success-threshold</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.success-threshold</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>failure-threshold</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Minimum consecutive failures for the probe to be considered failed after having succeeded.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.failure-threshold</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.failure-threshold</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>More details about probes are available on <a href=\"https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/\" class=\"bare\">https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/</a>.</p>\n</div>\n</div>\n<div class=\"sect5\">\n<h6 id=\"_http_specific_probe_configuration\">HTTP specific probe configuration</h6>\n<div class=\"paragraph\">\n<p>When using HTTP <code>GET</code> requests to determine readiness or liveness, several aspects can be configured. HTTP probes are used by default. To be more specific set the <code>type</code> attribute to <code>http</code>.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 42. Vert.x HealthCheck Enricher HTTP probe configuration</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 62.5%;\">\n<col style=\"width: 25%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>scheme</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Scheme to use for connecting to the host.</p>\n<p class=\"tableblock\"> Defaults to <code>HTTP</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.scheme</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.scheme</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>path</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Path to access on the HTTP server. An empty path disable the check.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.path</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.path</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>headers</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Custom headers to set in the request. HTTP allows repeated headers. It cannot be configured using project’s properties.\n An example is available below.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.headers</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.headers</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>port</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Port number to access the container. A 0 or negative number disables the check.</p>\n<p class=\"tableblock\"> Defaults to <code>8080</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.port</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.port</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>port-name</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Name of the port to access on the container. If neither the <code>port</code> nor the <code>port-name</code> is set, the check is disabled.\n If both are set the configuration is considered invalid.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.port-name</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.port-name</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Here is an example of HTTP probe configuration:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><config>\n <jkube-healthcheck-vertx>\n <initialDelay>3</initialDelay>\n <period>3</period>\n <liveness>\n <port>8081</port>\n <path>/ping</path>\n <scheme>HTTPS</scheme>\n <headers>\n <X-Custom-Header>Awesome</X-Custom-Header>\n </headers>\n </liveness>\n <readiness>\n <!-- disable the readiness probe -->\n <port>-1</port>\n </readiness>\n </jkube-healthcheck-vertx>\n</config></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect5\">\n<h6 id=\"_tcp_specific_probe_configuration\">TCP specific probe configuration</h6>\n<div class=\"paragraph\">\n<p>You can also configure the probes to just open a socket on a specific port. The <code>type</code> attribute must be set to <code>tcp</code>.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 43. Vert.x HealthCheck Enricher TCP probe configuration</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 62.5%;\">\n<col style=\"width: 25%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>port</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Port number to access the container. A 0 or negative number disables the check.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.port</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.port</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>port-name</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Name of the port to access on the container. If neither the <code>port</code> nor the <code>port-name</code> is set, the check is disabled.\n If both are set the configuration is considered invalid.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.port-name</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.port-name</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>For example:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><config>\n <jkube-healthcheck-vertx>\n <initialDelay>3</initialDelay>\n <period>3</period>\n <liveness>\n <type>tcp</type>\n <port>8081</port>\n </liveness>\n <readiness>\n <!-- use HTTP Get probe -->\n <path>/ping</path>\n <port>8080</port>\n </readiness>\n </jkube-healthcheck-vertx>\n</config></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect5\">\n<h6 id=\"_exec_probe_configuration\">Exec probe configuration</h6>\n<div class=\"paragraph\">\n<p>You can also configure the probes to execute a command. If the command succeeds, it returns 0, and Kubernetes consider the pod to be alive and healthy. If the command returns a non-zero value, Kubernetes kills the pod and restarts it. To use a command, you must set the <code>type</code> attribute to <code>exec</code>:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><config>\n <jkube-healthcheck-vertx>\n <initialDelay>3</initialDelay>\n <period>3</period>\n <liveness>\n <type>exec</type>\n <command>\n <cmd>cat</cmd>\n <cmd>/tmp/healthy</cmd>\n </command>\n </liveness>\n <readiness>\n <-- use HTTP Get probe -->\n <path>/ping</path>\n <port>8080</port>\n </readiness>\n </jkube-healthcheck-vertx>\n</config></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>As you can see in the snippet above the command is passed using the <code>command</code> attribute. This attribute cannot be\nconfigured using project’s properties. An empty command disables the check.</p>\n</div>\n</div>\n<div class=\"sect5\">\n<h6 id=\"_disabling_health_checks\">Disabling health checks</h6>\n<div class=\"paragraph\">\n<p>You can disable the checks by setting:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>the <code>port</code> to 0 or to a negative number for <code>http</code> and <code>tcp</code> probes</p>\n</li>\n<li>\n<p>the <code>command</code> to an empty list for <code>exec</code></p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>In the first case, you can use project’s properties to disable them:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><!-- Disables <code>tcp</code> and <code>http</code> probes -->\n<vertx.health.port>-1</vertx.health.port></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>For <code>http</code> probes, an empty or not set <code>path</code> also disable the probe.</p>\n</div>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-healthcheck-webapp\">jkube-healthcheck-webapp</h5>\n<div class=\"paragraph\">\n<p>This enricher adds kubernetes readiness and liveness probes with WebApp. This requires that you have <code>maven-war-plugin</code> set.</p>\n</div>\n<div class=\"paragraph\">\n<p>The enricher will use the following settings by default:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>port = <code>8080</code></p>\n</li>\n<li>\n<p>scheme = <code>HTTP</code></p>\n</li>\n<li>\n<p>path = ``</p>\n</li>\n<li>\n<p>initialReadinessDelay = 10</p>\n</li>\n<li>\n<p>initialLivenessDelay = 180</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>If <code>path</code> attribute is not set (default value) then this enricher is disabled.</p>\n</div>\n<div class=\"paragraph\">\n<p>These values can be configured by the enricher in the <code>kubernetes-maven-plugin</code> configuration as shown below:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n <version>1.0.2</version>\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>helm</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n <configuration>\n <enricher>\n <config>\n <jkube-healthcheck-webapp>\n <path>/</path>\n </jkube-healthcheck-webapp>\n </config>\n </enricher>\n </configuration>\n <!-- ... -->\n</plugin></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-healthcheck-wildfly-swarm\">jkube-healthcheck-wildfly-swarm</h5>\n<div class=\"paragraph\">\n<p>This enricher adds kubernetes readiness and liveness probes with WildFly Swarm. This requires the following fraction\nhas been enabled in WildFly Swarm</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><dependency>\n <groupId>org.wildfly.swarm</groupId>\n <artifactId>microprofile-health</artifactId>\n</dependency></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The enricher will use the following settings by default:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>port = <code>8080</code></p>\n</li>\n<li>\n<p>scheme = <code>HTTP</code></p>\n</li>\n<li>\n<p>path = <code>/health</code></p>\n</li>\n<li>\n<p>failureThreshold = <code>3</code></p>\n</li>\n<li>\n<p>successThreshold = <code>1</code></p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>These values can be configured by the enricher in the <code>kubernetes-maven-plugin</code> configuration as shown below:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n <version>1.0.2</version>\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>helm</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n <configuration>\n <enricher>\n <config>\n <jkube-healthcheck-wildfly-swarm>\n <port>4444</port>\n <scheme>HTTPS</scheme>\n <path>health/myapp</path>\n <failureThreshold>3</failureThreshold>\n <successThreshold>1</successThreshold>\n </jkube-healthcheck-wildfly-swarm>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-healthcheck-wildfly-jar\">jkube-healthcheck-wildfly-jar</h5>\n<div class=\"paragraph\">\n<p>This enricher adds kubernetes readiness and liveness probes to WildFly JAR applications. Probes depend on the WildFly <em>microprofile-health</em> subsystem\n<em>/health/ready</em> and <em>/health/live</em> endpoints.\nWhen the WildFly Bootable JAR Maven plugin is configured with the <em><cloud></em> configuration item, <em>microprofile_health</em> subsystem\nis enforced in the bootable JAR server configuration.</p>\n</div>\n<div class=\"paragraph\">\n<p>This enricher looks for the <em><cloud></em> configuration item presence in the bootable JAR Maven plugin in order to add health check probes.\nIf <em><cloud></em> item has not been defined, you can still enforce the generation of readiness and liveness probes by setting <em>enforceProbes=true</em>.</p>\n</div>\n<div class=\"paragraph\">\n<p>The enricher will use the following settings by default:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>port = <code>9990</code></p>\n</li>\n<li>\n<p>scheme = <code>HTTP</code></p>\n</li>\n<li>\n<p>readinessPath = <code>/health/ready</code></p>\n</li>\n<li>\n<p>livenessPath = <code>/health/live</code></p>\n</li>\n<li>\n<p>livenessInitialDelay = <code>60</code></p>\n</li>\n<li>\n<p>readinessIntialDelay = <code>10</code></p>\n</li>\n<li>\n<p>failureThreshold = <code>3</code></p>\n</li>\n<li>\n<p>successThreshold = <code>1</code></p>\n</li>\n<li>\n<p>enforceProbes = 'false'</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>Setting the <code>port</code> to 0 or to a negative number disables liveness and readiness probes.</p>\n</div>\n<div class=\"paragraph\">\n<p>These values can be configured by the enricher in the <code>kubernetes-maven-plugin</code> configuration as shown below:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n <version>1.0.2</version>\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n <configuration>\n <enricher>\n <config>\n <jkube-healthcheck-wildfly-jar>\n <port>4444</port>\n <scheme>HTTPS</scheme>\n <livenessPath>/myapp/live</livenessPath>\n <failureThreshold>3</failureThreshold>\n <successThreshold>1</successThreshold>\n </jkube-healthcheck-wildfly-jar>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"_enricher_api\">8.2. Enricher API</h3>\n<div class=\"paragraph\">\n<p><em>How to write your own enrichers and install them.</em></p>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"profiles\">9. Profiles</h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>Profiles can be used to combine a set of enrichers and generators and to give this combination a referable name.</p>\n</div>\n<div class=\"paragraph\">\n<p>Profiles are defined in YAML. The following example shows a simple profiles which uses only the\n<a href=\"#generator-spring-boot\">Spring Boot generator</a> and some enrichers adding for adding default resources:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Profile Definition</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">- name: my-spring-boot-apps <i class=\"conum\" data-value=\"1\"></i><b>(1)</b>\n generator: <i class=\"conum\" data-value=\"2\"></i><b>(2)</b>\n includes:\n - spring-boot\n enricher: <i class=\"conum\" data-value=\"3\"></i><b>(3)</b>\n includes: <i class=\"conum\" data-value=\"4\"></i><b>(4)</b>\n # Default Deployment object\n - jkube-controller\n # Add a default service\n - jkube-service\n excludes: <i class=\"conum\" data-value=\"5\"></i><b>(5)</b>\n - jkube-icon\n config: <i class=\"conum\" data-value=\"6\"></i><b>(6)</b>\n jkube-service:\n # Expose service as NodePort\n type: NodePort\n order: 10 <i class=\"conum\" data-value=\"7\"></i><b>(7)</b>\n- name: another-profile\n# ....</code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td>Profile’s name</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"2\"></i><b>2</b></td>\n<td><a href=\"#generators\">Generators</a> to use</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"3\"></i><b>3</b></td>\n<td><a href=\"#enrichers\">Enrichers</a> to use</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"4\"></i><b>4</b></td>\n<td>List of enricher to <strong>include</strong> in that given order</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"5\"></i><b>5</b></td>\n<td>List of enricher to <strong>exclude</strong></td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"6\"></i><b>6</b></td>\n<td>Configuration for services an enrichers</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"7\"></i><b>7</b></td>\n<td>An order which influences the way how profiles with the same name are merged</td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<p>Each <code>profiles.yml</code> has a list of profiles which are defined with these elements:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 44. Profile elements</caption>\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 85.7143%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>name</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Profile name. This plugin comes with a set of <a href=\"#profiles-predefined\">predefined profiles</a>. Those profiles can be\n extended by defining a custom profile with the same name of the profile to extend.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>generator</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">List of generator definitions. See <a href=\"#generator-enricher-definition\">below</a> for the format of these definitions.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>enricher</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">List of enrichers definitions. See <a href=\"#generator-enricher-definition\">below</a> for the format of these definitions.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>order</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The order of the profile which is used when profiles of the same name are merged.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"sect2\">\n<h3 id=\"generator-enricher-definition\">9.1. Generator and Enricher definitions</h3>\n<div class=\"paragraph\">\n<p>The definition of generators and enrichers in the profile follows the same format:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 45. Generator and Enericher definition</caption>\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 85.7143%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>includes</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">List of generators or enrichers to include. The order in the list determines the order in which the processors are applied.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>excludes</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">List of generators or enrichers. These have precedences over <em>includes</em> and will exclude a processor even when referenced in an <em>includes</em> sections</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>config</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Configuration for generators or enrichers. This is a map where the keys are the name of the processor to configure and the value is again a map with configuration keys and values specific to the processor. See the documentation of the respective generator or enricher for the available configuration keys.</p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect2\">\n<h3 id=\"profiles-lookup-order\">9.2. Lookup order</h3>\n<div class=\"paragraph\">\n<p>Profiles can be defined externally either directly as a build resource in <code>src/main/jkube/profiles.yml</code> or provided as part of a plugin’s dependency where it is supposed to be included as <code>META-INF/jkube/profiles.yml</code>. Multiple profiles can be include in these <code>profiles.yml</code> descriptors as a list:</p>\n</div>\n<div class=\"paragraph\">\n<p>If a profile is <a href=\"#profiles-using\">used</a> then it is looked up from various places in the following order:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>From the compile and plugin classpath from <code>META-INF/jkube/profiles-default.yml</code>. These files are reserved for profiles defined by this plugin</p>\n</li>\n<li>\n<p>From the compile and plugin classpath from <code>META-INF/jkube/profiles.yml</code>. Use this location for defining your custom profiles which you want to include via dependencies.</p>\n</li>\n<li>\n<p>From the project in <code>src/main/jkube/profiles.yml</code>. The directory can be tuned with the plugin option <code>resourceDir</code> (property: <code>jkube.resourceDir</code>)</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>When multiple profiles of the same name are found, then these profiles are merged. If profile have an order number, then the <em>higher</em> order takes precedences when merging profiles.</p>\n</div>\n<div class=\"paragraph\">\n<p>For <em>includes</em> of the same processors, the processor is moved to the earliest position. E.g consider the following two profiles with the name <code>my-profile</code></p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Profile A</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">name: my-profile\nenricher:\n includes: [ e1, e2 ]</code></pre>\n</div>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Profile B</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">name: my-profile\nenricher:\n includes: [ e3, e1 ]\norder: 10</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>then when merged results in the following profile (when no order is given, it defaults to 0):</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Profile merged</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">name: my-profile\nenricher:\n includes: [ e1, e2, e3 ]\norder: 10</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Profile with the same order number are merged according to the lookup order described above, where the latter profile is supposed to have a higher order.</p>\n</div>\n<div class=\"paragraph\">\n<p>The configuration for enrichers and generators are merged, too, where higher order profiles override configuration values with the same key of lower order profile configuration.</p>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"profiles-using\">9.3. Using Profiles</h3>\n<div class=\"paragraph\">\n<p>Profiles can be selected by defining them in the plugin configuration, by giving a system property or by using\n<a href=\"#profiles-resource-fragments\">special directories</a> in the directory holding the resource fragments.</p>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Profile used in plugin configuration</div>\n<p>Here is an example how the profile can be used in a plugin configuration:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n <configuration>\n <profile>my-spring-boot-apps</profile> <i class=\"conum\" data-value=\"1\"></i><b>(1)</b>\n <!-- ... -->\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td>Name which select the profile from the <code>profiles.yml</code></td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Profile as system property</div>\n<p>Alternatively a profile can be also specified on the command line when calling Maven:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn -Djkube.profile=my-spring-boot-apps k8s:build k8s:deploy</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>If a configuration for enrichers and generators are provided as part of the plugin’s <code><configuration></code> then this takes precedence over any profile specified.</p>\n</div>\n<div id=\"profiles-resource-fragments\" class=\"paragraph\">\n<div class=\"title\">Profiles for resource fragments</div>\n<p>Profiles are also very useful when used together with resource fragments in <code>src/main/jkube</code>. By default the resource objects defined here are enriched with the configured profile (if any). A different profile can be selected easily by using a sub directory within <code>src/main/jkube</code>. The name of each sub directory is interpreted as a profile name and all resource definition files found in this sub directory are enhanced with the enhancers defined in this profile.</p>\n</div>\n<div class=\"paragraph\">\n<p>For example, consider the following directory layout:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code>src/main/k8s:\n app-rc.yml\n app-svc.yml\n raw/ -->\n couchbase-rc.yml\n couchbase-svc.yml</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Here, the resource descriptors <code>app-rc.yml</code> and <code>app-svc.yml</code> are enhanced with the enrichers defined in the main configuration. The files two files <code>couchbase-rc.yml</code> and <code>couchbase-svc.yml</code> in the sub directory <code>raw/</code> instead are enriched with the profile <strong>raw</strong>. This is a predefined profile which includes no enricher at all, so the couchbase resource objects are not enriched and taken over literally. This is an easy way how you can fine tune enrichment for different object set.</p>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"profiles-predefined\">9.4. Predefined Profiles</h3>\n<div class=\"paragraph\">\n<p>This plugin comes with a list of the following predefined profiles:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 46. Predefined Profiles</caption>\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 85.7143%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Profile</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>default</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The default profile which is active if no profile is specified. It consists of a curated set of generator and enrichers. See <a href=\"#profiles-default\">below</a> for the current definition.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>minimal</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">This profile contains no generators and only enrichers for adding default objects (controller and services). No other enrichment is included.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>explicit</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Like default but without adding default objects like controllers and services.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>aggregate</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Includes no generators and only the <a href=\"#jkube-dependency\">jkube-dependency</a> enricher for picking up and combining resources from the compile time dependencies.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>internal-microservice</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Do not expose a port for the service to generate. Otherwise the same as the <em>default</em> profile.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>osio</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Includes everything in the <em>default</em> profile, plus additional enrichers and generators relevant only to <a href=\"https://openshift.io\">OpenShift.io</a>.</p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect2\">\n<h3 id=\"profiles-extended\">9.5. Extending Profiles</h3>\n<div class=\"paragraph\">\n<p>A profile can also extend another profile to avoid repetition e.g of generators if the profile is only about including certain enrichers. For example, for a profile like:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">- name: minimal\n extends: default\n enricher:\n includes:\n - jkube-name\n - jkube-controller\n - jkube-service\n - jkube-image\n - jkube-project-label\n - jkube-debug\n - jkube-namespace\n - jkube-metadata\n - jkube-controller-from-configuration\n - jkube-openshift-deploymentconfig\n - jkube-openshift-project\n - jkube-openshift-service-expose\n - jkube-openshift-route</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>one then would not need to repeat all generators as they are inherited from the <code>default</code> profile.</p>\n</div>\n<div id=\"profiles-default\" class=\"listingblock\">\n<div class=\"title\">Default Profile</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\"># Default profile which is always activated\n- name: default\n enricher:\n # The order given in \"includes\" is the order in which enrichers are called\n includes:\n - jkube-metadata\n - jkube-name\n - jkube-controller\n - jkube-controller-from-configuration\n - jkube-service\n - jkube-namespace\n - jkube-image\n - jkube-portname\n - jkube-project-label\n - jkube-dependency\n - jkube-pod-annotations\n - jkube-git\n - jkube-maven-scm\n - jkube-serviceaccount\n - jkube-maven-issue-mgmt\n # TODO: Documents and verify enrichers below\n - jkube-debug\n - jkube-remove-build-annotations\n - jkube-volume-permission\n - jkube-configmap-file\n - jkube-secret-file\n\n # Route exposure\n - jkube-openshift-service-expose\n - jkube-openshift-route\n - jkube-openshift-deploymentconfig\n - jkube-openshift-project\n\n # Ingress\n - jkube-ingress\n\n # -----------------------------------------\n # TODO: Document and verify enrichers below\n # Health checks\n - jkube-healthcheck-quarkus\n - jkube-healthcheck-spring-boot\n - jkube-healthcheck-wildfly-swarm\n - jkube-healthcheck-thorntail-v2\n - jkube-healthcheck-wildfly-jar\n - jkube-healthcheck-karaf\n - jkube-healthcheck-vertx\n - jkube-healthcheck-docker\n - jkube-healthcheck-webapp\n - jkube-prometheus\n\n # Value merge enrichers\n - jkube-container-env-java-options\n\n # Dependencies shouldn't be enriched anymore, therefore it's last in the list\n - jkube-dependency\n - jkube-revision-history\n - jkube-docker-registry-secret\n - jkube-triggers-annotation\n - jkube-openshift-imageChangeTrigger\n\n generator:\n # The order given in \"includes\" is the order in which generators are called\n includes:\n - quarkus\n - spring-boot\n - wildfly-swarm\n - thorntail-v2\n - wildfly-jar\n - openliberty\n - karaf\n - vertx\n - java-exec\n - webapp\n watcher:\n includes:\n - spring-boot\n - docker-image</code></pre>\n</div>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"access-configuration\">10. Access configuration</h2>\n<div class=\"sectionbody\">\n<div class=\"sect2\">\n<h3 id=\"_docker_access\">10.1. Docker Access</h3>\n<div class=\"paragraph\">\n<p>For Kubernetes builds the kubernetes-maven-plugin uses the Docker remote API so the URL of your Docker Daemon must be specified. The URL can be specified by the dockerHost or machine configuration, or by the <code>DOCKER_HOST</code> environment variable. If not given</p>\n</div>\n<div class=\"paragraph\">\n<p>The Docker remote API supports communication via SSL and\nauthentication with certificates. The path to the certificates can\nbe specified by the certPath or machine configuration, or by the\n<code>DOCKER_CERT_PATH</code> environment variable.</p>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"_openshift_and_kubernetes_access\">10.2. OpenShift and Kubernetes Access</h3>\n<div class=\"paragraph\">\n<p>Plugin reads your <code>kubeconfig</code> file to read your Kubernetes/OpenShift configuration. By default, <code>kubeconfig</code> file is assumed to be either\nin <code>~/.kube/config</code> or using the environment variable <code>KUBECONFIG</code>.</p>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"registry\">11. Registry handling</h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>Docker uses registries to store images. The registry is typically\nspecified as part of the name. I.e. if the first part (everything\nbefore the first <code>/</code>) contains a dot (<code>.</code>) or colon (<code>:</code>) this part is\ninterpreted as an address (with an optionally port) of a remote\nregistry. This registry (or the default <code>docker.io</code> if no\nregistry is given) is used during push and pull operations. This\nplugin follows the same semantics, so if an image name is specified\nwith a registry part, this registry is contacted. Authentication is\nexplained in the next <a href=\"#authentication\">section</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>There are some situations however where you want to have more\nflexibility for specifying a remote registry. This might be because\nyou do not want to hard code a registry into <code>pom.xml</code> but\nprovide it from the outside with an environment variable or a system\nproperty.</p>\n</div>\n<div class=\"paragraph\">\n<p>This plugin supports various ways of specifying a registry:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>If the image name contains a registry part, this registry is used\nunconditionally and can not be overwritten from the outside.</p>\n</li>\n<li>\n<p>If an image name doesn’t contain a registry, then by default the\ndefault Docker registry <code>docker.io</code> is used for push and pull\noperations. But this can be overwritten through various means:</p>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>If the <code><image></code> configuration contains a <code><registry></code> subelement\nthis registry is used.</p>\n</li>\n<li>\n<p>Otherwise, a global configuration element <code><registry></code> is\nevaluated which can be also provided as system property via\n<code>-Djkube.docker.registry</code>.</p>\n</li>\n<li>\n<p>Finally an environment variable <code>DOCKER_REGISTRY</code> is looked up for\ndetecting a registry.</p>\n</li>\n</ul>\n</div>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>This registry is used for pulling (i.e. for autopull the base image\nwhen doing a <code>k8s:build</code>) and pushing with <code>k8s:push</code>. However,\nwhen these two goals are combined on the command line like in <code>mvn\n-Djkube.docker.registry=myregistry:5000 package k8s:build k8s:push</code>\nthe same registry is used for both operation. For a more fine grained\ncontrol, separate registries for <em>pull</em> and <em>push</em> can be specified.</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>In the plugin’s configuration with the parameters <code><pullRegistry></code> and\n<code><pushRegistry></code>, respectively.</p>\n</li>\n<li>\n<p>With the system properties <code>jkube.docker.pull.registry</code> and\n<code>jkube.docker.push.registry</code>, respectively.</p>\n</li>\n</ul>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><configuration>\n <registry>docker.jolokia.org:443</registry>\n <images>\n <image>\n <!-- Without an explicit registry ... -->\n <name>jolokia/jolokia-java</name>\n <!-- ... hence use this registry -->\n <registry>docker.ro14nd.de</registry>\n <!-- ... -->\n </image>\n <image>\n <name>postgresql</name>\n <!-- No registry in the name, hence use the globally\n configured docker.jolokia.org:443 as registry -->\n <!-- ... -->\n </image>\n <image>\n <!-- Explicitly specified always wins -->\n <name>docker.example.com:5000/another/server</name>\n </image>\n </images>\n</configuration></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>There is some special behaviour when using an externally provided\nregistry like described above:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>When <em>pulling</em>, the image pulled will be also tagged with a repository\nname <strong>without</strong> registry. The reasoning behind this is that this\nimage then can be referenced also by the configuration when the\nregistry is not specified anymore explicitly.</p>\n</li>\n<li>\n<p>When <em>pushing</em> a local image, temporarily a tag including the\nregistry is added and removed after the push. This is required\nbecause Docker can only push registry-named images.</p>\n<div id=\"authentication\" class=\"paragraph\">\n<p>= Authentication</p>\n</div>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>When pulling (via the <code>autoPull</code> mode of <code>k8s:build</code>) or pushing image, it\nmight be necessary to authenticate against a Docker registry.</p>\n</div>\n<div class=\"paragraph\">\n<p>There are five different locations searched for credentials. In order, these are:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Providing system properties <code>jkube.docker.username</code> and <code>jkube.docker.password</code> from the outside.</p>\n</li>\n<li>\n<p>Using a <code><authConfig></code> section in the plugin configuration with <code><username></code> and <code><password></code> elements.</p>\n</li>\n<li>\n<p>Using OpenShift configuration in <code>~/.config/kube</code></p>\n</li>\n<li>\n<p>Using a <code><server></code> configuration in <code>~/.m2/settings.xml</code></p>\n</li>\n<li>\n<p>Login into a registry with <code>docker login</code> (credentials in a credential helper or in <code>~/.docker/config.json</code>)</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>Using the username and password directly in the <code>pom.xml</code> is not\nrecommended since this is widely visible. This is the easiest and\ntransparent way, though. Using an <code><authConfig></code> is straight forward:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <configuration>\n <image>consol/tomcat-7.0</image>\n <!-- ... -->\n <authConfig>\n <username>jolokia</username>\n <password>s!cr!t</password>\n </authConfig>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The system property provided credentials are a good compromise when\nusing CI servers like Jenkins. You simply provide the credentials from\nthe outside:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn -Djkube.docker.username=jolokia -Djkube.docker.password=s!cr!t k8s:push</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The most <em>mavenish</em> way is to add a server to the Maven settings file <code>~/.m2/settings.xml</code>:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><servers>\n <server>\n <id>docker.io</id>\n <username>jolokia</username>\n <password>s!cr!t</password>\n </server>\n <!-- ... -->\n</servers></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The server id must specify the registry to push to/pull from, which by\ndefault is central index <code>docker.io</code> (or <code>index.docker.io</code> / <code>registry.hub.docker.com</code> as fallbacks).\nHere you should add your docker.io account for your repositories. If you have multiple accounts\nfor the same registry, the second user can be specified as part of the ID. In the example above, if you\nhave a second account 'jkubeio' then use an <code><id>docker.io/jkubeio</id></code> for this second entry. I.e. add the\nusername with a slash to the id name. The default without username is only taken if no server entry with\na username appended id is chosen.</p>\n</div>\n<div class=\"paragraph\">\n<p>The most <em>secure</em> way is to rely on docker’s credential store or credential helper and read confidential information\nfrom an external credentials store, such as the native keychain of the operating system. Follow the instruction on\n<a href=\"https://docs.docker.com/engine/reference/commandline/login/#credentials-store\">the docker login documentation</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>As a final fallback, this plugin consults <code>$DOCKER_CONFIG/config.json</code> if <code>DOCKER_CONFIG</code> is set, or <code>~/.docker/config.json</code> if not, and reads credentials stored directly within this\nfile. This unsafe behavior happened when connecting to a registry with the command <code>docker login</code> from the command line\nwith older versions of docker (pre 1.13.0) or when docker is not configured to use a\n<a href=\"https://docs.docker.com/engine/reference/commandline/login/#credentials-store\">credential store</a>.</p>\n</div>\n<div class=\"sect2\">\n<h3 id=\"_pull_vs_push_authentication\">11.1. Pull vs. Push Authentication</h3>\n<div class=\"paragraph\">\n<p>The credentials lookup described above is valid for both push and\npull operations. In order to narrow things down, credentials can be\nprovided for pull or push operations alone:</p>\n</div>\n<div class=\"paragraph\">\n<p>In an <code><authConfig></code> section a sub-section <code><pull></code> and/or <code><push></code>\ncan be added. In the example below the credentials provider are only\nused for image push operations:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <configuration>\n <image>consol/tomcat-7.0</image>\n <!-- ... -->\n <authConfig>\n <push>\n <username>jolokia</username>\n <password>s!cr!t</password>\n </push>\n </authConfig>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>When the credentials are given on the command line as system\nproperties, then the properties <code>jkube.docker.pull.username</code> /\n<code>jkube.docker.pull.password</code> and <code>jkube.docker.push.username</code> /\n<code>jkube.docker.push.password</code> are used for pull and push operations,\nrespectively (when given). Either way, the standard lookup algorithm\nas described in the previous section is used as fallback.</p>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"_openshift_authentication\">11.2. OpenShift Authentication</h3>\n<div class=\"paragraph\">\n<p>When working with the default registry in OpenShift, the credentials\nto authenticate are the OpenShift username and access token. So, a\ntypical interaction with the OpenShift registry from the outside is:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre>oc login\n...\nmvn -Djkube.docker.registry=docker-registry.domain.com:80/default/myimage \\\n -Djkube.docker.username=$(oc whoami) \\\n -Djkube.docker.password=$(oc whoami -t)</pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>(note, that the image’s username part (\"default\" here\") must\ncorrespond to an OpenShift project with the same name to which you\ncurrently connected account has access).</p>\n</div>\n<div class=\"paragraph\">\n<p>This can be simplified by using the system property\n<code>docker.useOpenShiftAuth</code> in which case the plugin does the\nlookup. The equivalent to the example above is</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre>oc login\n...\nmvn -Ddocker.registry=docker-registry.domain.com:80/default/myimage \\\n -Ddocker.useOpenShiftAuth</pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Alternatively the configuration option <code><useOpenShiftAuth></code> can be\nadded to the <code><authConfig></code> section.</p>\n</div>\n<div class=\"paragraph\">\n<p>For dedicated <em>pull</em> and <em>push</em> configuration the system properties\n<code>jkube.docker.pull.useOpenShiftAuth</code> and <code>jkube.docker.push.useOpenShiftAuth</code> are\navailable as well as the configuration option <code><useOpenShiftAuth></code> in\nan <code><pull></code> or <code><push></code> section within the <code><authConfig></code>\nconfiguration.</p>\n</div>\n<div class=\"paragraph\">\n<p>If <code>useOpenShiftAuth</code> is enabled then the OpenShift configuration will be looked up in <code>$KUBECONFIG</code> or, if this environment variable is not set, in <code>~/.kube/config</code>.</p>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"password-encryption\">11.3. Password encryption</h3>\n<div class=\"paragraph\">\n<p>Regardless of which mode you choose you can encrypt password as described\nin the\n<a href=\"http://maven.apache.org/guides/mini/guide-encryption.html\">Maven documentation</a>. Assuming\nthat you have setup a <em>master password</em> in\n<code>~/.m2/security-settings.xml</code> you can create easily encrypt\npasswords:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-bash\" data-lang=\"bash\">$ mvn --encrypt-password\nPassword:\n{QJ6wvuEfacMHklqsmrtrn1/ClOLqLm8hB7yUL23KOKo=}</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This password then can be used in <code>authConfig</code>, <code>docker.password</code>\nand/or the <code><server></code> setting configuration. However, putting an\nencrypted password into <code>authConfig</code> in the <code>pom.xml</code> doesn’t make\nmuch sense, since this password is encrypted with an individual master\npassword.</p>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"extended-authentication\">11.4. Extended Authentication</h3>\n<div class=\"paragraph\">\n<p>Some docker registries require additional steps to authenticate.\n<a href=\"https://docs.aws.amazon.com/AmazonECR/latest/userguide/ECR_GetStarted.html\">Amazon ECR</a> requires using an IAM access key to obtain temporary docker login credentials.\nThe <a href=\"#jkube:push\"><strong>k8s:push</strong></a> and <a href=\"#jkube:build\"><strong>k8s:build</strong></a> goals automatically execute this exchange for any registry of the form\n<em><awsAccountId></em> <strong>.dkr.ecr.</strong> <em><awsRegion></em> <strong>.amazonaws.com</strong>, unless the <code>skipExtendedAuth</code> configuration\n(<code>jkube.docker.skip.extendedAuth</code> property) is set true.</p>\n</div>\n<div class=\"paragraph\">\n<p>Note that for an ECR repository with URI <code>123456789012.dkr.ecr.eu-west-1.amazonaws.com/example/image</code> the d-m-p’s <code>jkube.docker.registry</code> should be set to <code>123456789012.dkr.ecr.eu-west-1.amazonaws.com</code> and <code>example/image</code> is the <code><name></code> of the image.</p>\n</div>\n<div class=\"paragraph\">\n<p>You can use any IAM access key with the necessary permissions in any of the locations mentioned above except <code>~/.docker/config.json</code>.\nUse the IAM <strong>Access key ID</strong> as the username and the <strong>Secret access key</strong> as the password.\nIn case you’re using temporary security credentials provided by the AWS Security Token Service (AWS STS), you have to provide the <strong>security token</strong> as well.\nTo do so, either specify the <code>docker.authToken</code> system property or provide an <code><auth></code> element alongside username & password in the <code>authConfig</code>.</p>\n</div>\n<div class=\"paragraph\">\n<p>In case you are running on an EC2 instance that has an appropriate IAM role assigned\n(e.g. a role that grants the AWS built-in policy <em>AmazonEC2ContainerRegistryPowerUser</em>)\nauthentication information doesn’t need to be provided at all. Instead the instance\nmeta-data service is queried for temporary access credentials supplied by the\nassigned role.</p>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"volume-configuration\">12. Volume Configuration</h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>kubernetes-maven-plugin supports volume configuration in XML format in pom.xml. These are the volume types which are supported:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 47. Supported Volume Types</caption>\n<colgroup>\n<col style=\"width: 4.3478%;\">\n<col style=\"width: 95.6522%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Volume Type</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">hostPath</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Mounts a file or directory from the host node’s filesystem into your pod</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">emptyDir</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Containers in the Pod can all read and write the same files in the emptyDir volume, though that volume can be mounted at the same or different paths in each Container. When a Pod is removed from a node for any reason, the data in the emptyDir is deleted forever.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">gitRepo</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">It mounts an empty directory and clones a git repository into it for your Pod to use.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">secret</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">It is used to pass sensitive information, such as passwords, to Pods.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">nfsPath</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Allows an existing NFS(Network File System) share to be mounted into your Pod.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">gcePdName</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Mounts a Google Compute Engine(GCE) into your Pod. You must create PD using <code>gcloud</code> or GCE API or UI before you can use it.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">glusterFsPath</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Allows a Glusterfs (an open source networked filesystem) volume to be mounted into your Pod.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">persistentVolumeClaim</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Used to mount a PersistentVolume into a Pod.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">awsElasticBlockStore</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Mounts an Amazon Web Services(AWS) EBS Volume into your Pod.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">azureDisk</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Mounts a Microsoft Azure Data Disk into a Pod</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">azureFile</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Mounts a Microsoft Azure File Volume(SMB 2.1 and 3.0 into a Pod.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">cephfs</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Allows an existing CephFS volume to be mounted into your Pod. You must have your own Ceph server running with the share exported before you can use it.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">fc</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Allows existing fibre channel volume to be mounted in a Pod. You must configure FC SAN Zoning to allocate and mask those LUNs (volumes) to the target WWNs beforehand so that Kubernetes hosts can access them.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">flocker</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Flocker is an open source clustered Container data volume manager. A <code>flocker</code> volume allows a Flocker dataset to be mounted into a Pod. You must have your own Flocker installation running before you can use it.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">iscsi</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Allows an existing ISCSI(SCSI over IP) volume to be mounted into your Pod.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">portworxVolume</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A portworxVolume is an elastic block storage layer that runs hyperconverged with Kubernetes.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">quobyte</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Allows existing <code>Quobyte</code> volume to be mounted into your Pod. You must have your own Quobyte setup running the volumes created.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">rbd</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Allows a Rados Block Device volume to be mounted into your Pod.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">scaleIO</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ScaleIO is a software-based storage platform that can use existing hardware to create clusters of scalable shared block networked storage. The scaleIO volume plugin allows deployed Pods to access existing ScaleIO volumes.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">storageOS</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A storageos volume allows an existing StorageOS volume to be mounted into your Pod. You must run the StorageOS container on each node that wants to access StorageOS volumes</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">vsphereVolume</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Used to mount a vSphere VMDK volume into your Pod.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">downwardAPI</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A downwardAPI volume is used to make downward API data available to applications. It mounts a directory and writes the requested data in plain text files.</p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"integrations\">13. Integrations</h2>\n<div class=\"sectionbody\">\n<div class=\"sect2\">\n<h3 id=\"integrations.dekorate\">13.1. Dekorate</h3>\n<div class=\"paragraph\">\n<p><strong>kubernetes-maven-plugin</strong> provides a Zero Configuration approach to delegate deployment manifests\ngeneration to <a href=\"https://github.com/dekorateio/dekorate\">Dekorate</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>Just by adding a dependency to Dekorate library in the <code>pom.xml</code> file, all manifest\ngeneration will be delegated to Dekorate.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"> <dependencies>\n <!-- ... -->\n <dependency>\n <groupId>io.dekorate</groupId>\n <artifactId>option-annotations</artifactId>\n <version>${dekorate.version}</version>\n </dependency>\n <dependency>\n <groupId>io.dekorate</groupId>\n <artifactId>openshift-annotations</artifactId>\n <version>${dekorate.version}</version>\n </dependency>\n <dependency>\n <groupId>io.dekorate</groupId>\n <artifactId>kubernetes-annotations</artifactId>\n <version>${dekorate.version}</version>\n </dependency>\n <dependency>\n <groupId>io.dekorate</groupId>\n <artifactId>dekorate-spring-boot</artifactId>\n <version>${dekorate.version}</version>\n </dependency>\n </dependencies></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>A full example of the integration can be found in the directory\n<a href=\"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-dekorate\">quickstarts/maven/spring-boot-dekorate</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>An <strong>experimental</strong> feature is also provided to merge resources generated both by <strong>kubernetes-maven-plugin</strong>\nand Dekorate. You can activate this feature by using the following flag <code>-Djkube.mergeWithDekorate</code>\nin the command-line, or setting it up as a property (<code><jkube.mergeWithDekorate>true</jkube.mergeWithDekorate></code>).</p>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"_jib_java_image_builder\">13.2. JIB (Java Image Builder)</h3>\n<div class=\"paragraph\">\n<p><strong>kubernetes-maven-plugin</strong> also provides user an option to build container images without having access to any docker daemon.\nYou just need to set <code>jkube.build.strategy</code> property to <code>jib</code>. It will delegate the build process to\n<a href=\"https://github.com/GoogleContainerTools/jib\">JIB</a>. It creates a tarball inside your target directory which can be loaded\ninto any docker daemon afterwards. You may also push the image to your specified registry using push goal with feature flag enabled.</p>\n</div>\n<div class=\"paragraph\">\n<p>You can find more details at <a href=\"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-with-jib\">Spring Boot JIB Quickstart</a>.</p>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"faq\">14. FAQ</h2>\n<div class=\"sectionbody\">\n<div class=\"sect2\">\n<h3 id=\"_general_questions\">14.1. General questions</h3>\n<div class=\"sect3\">\n<h4 id=\"_how_do_i_define_an_environment_variable\">14.1.1. How do I define an environment variable?</h4>\n<div class=\"paragraph\">\n<p>The easiest way is to add a <code>src/main/jkube/deployment.yml</code> file to your project containing something like:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">spec:\n template:\n spec:\n containers:\n -env:\n - name: FOO\n value: bar</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The above will generate an environment variable <code>$FOO</code> of value <code>bar</code></p>\n</div>\n<div class=\"paragraph\">\n<p>For a full list of the environments used in java base images, <a href=\"https://hub.docker.com/r/jkube.java-jboss-openjdk8-jdk\">see this list</a></p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_how_do_i_define_a_system_property\">14.1.2. How do I define a system property?</h4>\n<div class=\"paragraph\">\n<p>The simplest way is to add system properties to the <code>JAVA_OPTIONS</code> environment variable.</p>\n</div>\n<div class=\"paragraph\">\n<p>For a full list of the environments used in java base images, <a href=\"https://hub.docker.com/r/jkube.java-jboss-openjdk8-jdk\">see this list</a></p>\n</div>\n<div class=\"paragraph\">\n<p>e.g. add a <code>src/main/jkube/deployment.yml</code> file to your project containing something like:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">spec:\n template:\n spec:\n containers:\n - env:\n - name: JAVA_OPTIONS\n value: \"-Dfoo=bar -Dxyz=abc\"</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The above will define the system properties <code>foo=bar</code> and <code>xyz=abc</code></p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_how_do_i_mount_a_config_file_from_a_configmap\">14.1.3. How do I mount a config file from a ConfigMap?</h4>\n<div class=\"paragraph\">\n<p>First you need to create your <code>ConfigMap</code> resource via a file <code>src/main/jkube/configmap.yml</code></p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">data:\n application.properties: |\n # spring application properties file\n welcome = Hello from Kubernetes ConfigMap!!!\n dummy = some value</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Then mount the entry in the <code>ConfigMap</code> into your <code>Deployment</code> via a file <code>src/main/jkube/deployment.yml</code></p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">metadata:\n annotations:\n configmap.jkube.io/update-on-change: ${project.artifactId}\nspec:\n replicas: 1\n template:\n spec:\n volumes:\n - name: config\n configMap:\n name: ${project.artifactId}\n items:\n - key: application.properties\n path: application.properties\n containers:\n - volumeMounts:\n - name: config\n mountPath: /deployments/config</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Here is <a href=\"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/external-resources\">an example quickstart doing this</a></p>\n</div>\n<div class=\"paragraph\">\n<p>Note that the annotation <code>configmap.jkube.io/update-on-change</code> is optional; its used if your application is not capable\nof watching for changes in the <code>/deployments/config/application.properties</code> file. In this case if you are also running\nthe <a href=\"https://github.com/fabric8io/configmapcontroller\">configmapcontroller</a> then this will cause a rolling upgrade of your\napplication to use the new <code>ConfigMap</code> contents as you change it.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_how_do_i_use_a_persistent_volume\">14.1.4. How do I use a Persistent Volume?</h4>\n<div class=\"paragraph\">\n<p>First you need to create your <code>PersistentVolumeClaim</code> resource via a file <code>src/main/jkube/foo-pvc.yml</code> where <code>foo</code> is the name of the <code>PersistentVolumeClaim</code>. It might be your app requires multiple vpersistent volumes so you will need multiple <code>PersistentVolumeClaim</code> resources.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">spec:\n accessModes:\n - ReadWriteOnce\n resources:\n requests:\n storage: 100Mi</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Then to mount the <code>PersistentVolumeClaim</code> into your <code>Deployment</code> create a file <code>src/main/jkube/deployment.yml</code></p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">spec:\n template:\n spec:\n volumes:\n - name: foo\n persistentVolumeClaim:\n claimName: foo\n containers:\n - volumeMounts:\n - mountPath: /whatnot\n name: foo</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Where the above defines the <code>PersistentVolumeClaim</code> called <code>foo</code> which is then mounted into the container at <code>/whatnot</code></p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_how_do_i_generate_ingress_for_my_generated_service\">14.1.5. How do I generate Ingress for my generated Service?</h4>\n<div class=\"paragraph\">\n<p><code>Ingress</code> generation is supported by Eclipse JKube for <code>Service</code> objects of type <code>LoadBalancer</code>. In order to generate <code>Ingress</code> you need to enable <code>jkube.createExternalUrls</code> property to <code>true</code> and <code>jkube.domain</code> property to desired host suffix, it would be appended to your service name for host value. You can also also provide a host for it in XML config like this:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n <version>1.0.2</version>\n\n <configuration>\n <resources>\n <routeDomain>org.eclipse.jkube</routeDomain>\n </resources>\n\n <enricher>\n <config>\n <jkube-service>\n <type>LoadBalancer</type>\n </jkube-service>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>You can find an example in our <a href=\"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot\">spring-boot</a> quickstart in <code>kubernetes-with-ingress</code> profile.</p>\n</div>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"appendix\">15. Appendix</h2>\n<div class=\"sectionbody\">\n<div class=\"sect2\">\n<h3 id=\"_kindfilename_type_mapping\">15.1. Kind/Filename Type Mapping</h3>\n<table id=\"appendix-kind-mapping\" class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 50%;\">\n<col style=\"width: 50%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Kind</th>\n<th class=\"tableblock halign-left valign-top\">Filename Type</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">BuildConfig</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>bc</code>, <code>buildconfig</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ClusterRole</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>cr</code>, <code>crole</code>, <code>clusterrole</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ConfigMap</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>cm</code>, <code>configmap</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ClusterRoleBinding</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>crb</code>, <code>clusterrb</code>, <code>clusterrolebinding</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">CronJob</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>cj</code>, <code>cronjob</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">CustomResourceDefinition</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>crd</code>, <code>customerresourcedefinition</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">DaemonSet</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>ds</code>, <code>daemonset</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Deployment</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>deployment</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">DeploymentConfig</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>dc</code>, <code>deploymentconfig</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ImageStream</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>is</code>, <code>imagestream</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ImageStreamTag</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>istag</code>, <code>imagestreamtag</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Ingress</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>ingress</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Job</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>job</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">LimitRange</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>lr</code>, <code>limitrange</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Namespace</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>ns</code>, <code>namespace</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">OAuthClient</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>oauthclient</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">PolicyBinding</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>pb</code>, <code>policybinding</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">PersistentVolume</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>pv</code>, <code>persistentvolume</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">PersistentVolumeClaim</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>pvc</code>, <code>persistemtvolumeclaim</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Project</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>project</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ProjectRequest</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>pr</code>, <code>projectrequest</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ReplicaSet</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>rs</code>, <code>replicaset</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ReplicationController</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>rc</code>, <code>replicationcontroller</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ResourceQuota</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>rq</code>, <code>resourcequota</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Role</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>role</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">RoleBinding</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>rb</code>, <code>rolebinding</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">RoleBindingRestriction</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>rbr</code>, <code>rolebindingrestriction</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Route</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>route</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Secret</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>secret</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Service</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>svc</code>, <code>service</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ServiceAccount</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>sa</code>, <code>serviceaccount</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">StatefulSet</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>statefulset</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Template</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>template</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Pod</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>pd</code>, <code>pod</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect2\">\n<h3 id=\"_custom_kindfilename_mapping\">15.2. Custom Kind/Filename Mapping</h3>\n<div class=\"paragraph\">\n<p>You can add your custom <code>Kind/Filename</code> mappings.\nTo do it you have two approaches:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Setting an environment variable or system property called <code>jkube.mapping</code> pointing out to a <code>.properties</code> files with pairs <code><kind>⇒filename1>, <filename2></code>\nBy default if no environment variable nor system property is set, scan for a file located at classpath <code>/META-INF/jkube.kind-filename-type-mapping-default.properties</code>.</p>\n</li>\n<li>\n<p>By embedding in MOJO configuration the mapping:</p>\n</li>\n</ul>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>kubernetes-maven-plugin</artifactId>\n <configuration>\n <mappings>\n <mapping>\n <kind>Var</kind>\n <filenameTypes>foo, bar</filenameTypes>\n </mapping>\n </mappings>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n</div>\n</div>\n</div>","document":{"title":"org.eclipse.jkube/kubernetes-maven-plugin","subtitle":""}}},"pageContext":{"id":"081d2529-9b9a-5041-ae97-dcfc63ad4610","langKey":"en"}},"staticQueryHashes":[]}
\ No newline at end of file
diff --git a/page-data/docs/openshift-maven-plugin/page-data.json b/page-data/docs/openshift-maven-plugin/page-data.json
index 6c3a280..f0b1141 100644
--- a/page-data/docs/openshift-maven-plugin/page-data.json
+++ b/page-data/docs/openshift-maven-plugin/page-data.json
@@ -1 +1 @@
-{"componentChunkName":"component---src-templates-doc-jsx","path":"/docs/openshift-maven-plugin","result":{"data":{"asciidocCopy":{"html":"<div id=\"preamble\">\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>© 2020 The original authors.</p>\n</div>\n<div id=\"toc\" class=\"toc\">\n<div id=\"toctitle\" class=\"title\">openshift-maven-plugin</div>\n<ul class=\"sectlevel1\">\n<li><a href=\"#introduction\">1. Introduction</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#building-images\">1.1. Building Images</a></li>\n<li><a href=\"#resource-descriptors\">1.2. Kubernetes Resources</a></li>\n<li><a href=\"#_configuration\">1.3. Configuration</a></li>\n<li><a href=\"#_examples\">1.4. Examples</a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#zero-config\">1.4.1. Zero-Config</a></li>\n<li><a href=\"#_xml_configuration\">1.4.2. XML Configuration</a></li>\n<li><a href=\"#_resource_fragments\">1.4.3. Resource Fragments</a></li>\n</ul>\n</li>\n</ul>\n</li>\n<li><a href=\"#compatibility-with-OpenShift\">2. Compatibility with OpenShift</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#openshift-compatibility\">2.1. OpenShift Compatibility</a></li>\n</ul>\n</li>\n<li><a href=\"#installation\">3. Installation</a></li>\n<li><a href=\"#goals\">4. Goals Overview</a></li>\n<li><a href=\"#goals-overview-build\">5. Build Goals</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#jkube:resource\">5.1. <strong>oc:resource</strong></a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#resource-labels-annotations\">5.1.1. Labels and Annotations</a></li>\n<li><a href=\"#resource-secrets\">5.1.2. Secrets</a></li>\n<li><a href=\"#resource-validation\">5.1.3. Resource Validation</a></li>\n<li><a href=\"#resource-route-generation\">5.1.4. Route Generation</a></li>\n<li><a href=\"#Supported-Properties-Resource\">5.1.5. Supported Properties for Resource goal</a></li>\n</ul>\n</li>\n<li><a href=\"#jkube:build\">5.2. <strong>oc:build</strong></a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#build-kubernetes\">5.2.1. Kubernetes Build</a></li>\n<li><a href=\"#build-openshift\">5.2.2. OpenShift Build</a></li>\n<li><a href=\"#build-goal-configuration\">5.2.3. Configuration (XML)</a></li>\n<li><a href=\"#_kubernetes_access_configuration\">5.2.4. Kubernetes Access Configuration</a></li>\n<li><a href=\"#_image_configuration\">5.2.5. Image Configuration</a></li>\n<li><a href=\"#build-configuration\">5.2.6. Build Configuration</a></li>\n<li><a href=\"#build-assembly\">5.2.7. Assembly</a></li>\n<li><a href=\"#misc-env\">5.2.8. Environment and Labels</a></li>\n<li><a href=\"#misc-startup\">5.2.9. Startup Arguments</a></li>\n<li><a href=\"#build-buildargs\">5.2.10. Build Args</a></li>\n<li><a href=\"#build-healthcheck\">5.2.11. Healthcheck</a></li>\n</ul>\n</li>\n<li><a href=\"#jkube:push\">5.3. <strong>oc:push</strong></a></li>\n<li><a href=\"#jkube:apply\">5.4. <strong>oc:apply</strong></a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#Supported-Properties-Apply\">5.4.1. Supported Properties For Apply goal</a></li>\n</ul>\n</li>\n<li><a href=\"#jkube:helm\">5.5. <strong>oc:helm</strong></a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#helm-multi-module\">5.5.1. Multi-module projects</a></li>\n</ul>\n</li>\n</ul>\n</li>\n<li><a href=\"#goals-overview-develop\">6. Development Goals</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#jkube:deploy\">6.1. <strong>oc:deploy</strong></a></li>\n<li><a href=\"#jkube:undeploy\">6.2. <strong>oc:undeploy</strong></a></li>\n<li><a href=\"#jkube:log\">6.3. <strong>oc:log</strong></a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#Supported-Properties-Log\">6.3.1. Supported Properties for Log goal</a></li>\n</ul>\n</li>\n<li><a href=\"#jkube:debug\">6.4. <strong>oc:debug</strong></a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#_speeding_up_debugging\">6.4.1. Speeding up debugging</a></li>\n<li><a href=\"#_debugging_with_suspension\">6.4.2. Debugging with suspension</a></li>\n<li><a href=\"#Supported-Properties-Debug\">6.4.3. Supported Properties For Debug Goal</a></li>\n</ul>\n</li>\n<li><a href=\"#jkube:watch\">6.5. <strong>oc:watch</strong></a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#watcher-spring-boot\">6.5.1. Spring Boot</a></li>\n<li><a href=\"#watcher-docker-image\">6.5.2. Docker Image</a></li>\n<li><a href=\"#Supported-Properties-Watch\">6.5.3. Supported Properties for Watch goal</a></li>\n</ul>\n</li>\n</ul>\n</li>\n<li><a href=\"#generators\">7. Generators</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#generators-default\">7.1. Default Generators</a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#generator-java-exec\">7.1.1. Java Applications</a></li>\n<li><a href=\"#generator-spring-boot\">7.1.2. Spring Boot</a></li>\n<li><a href=\"#generator-wildfly-swarm\">7.1.3. Wildfly Swarm</a></li>\n<li><a href=\"#generator-thorntail-v2\">7.1.4. Thorntail v2</a></li>\n<li><a href=\"#generator-vertx\">7.1.5. Vert.x</a></li>\n<li><a href=\"#generator-karaf\">7.1.6. Karaf</a></li>\n<li><a href=\"#generator-webapp\">7.1.7. Web Applications</a></li>\n<li><a href=\"#generator-quarkus\">7.1.8. Quarkus</a></li>\n<li><a href=\"#generator-openliberty\">7.1.9. Open Liberty</a></li>\n<li><a href=\"#generator-wildfly-jar\">7.1.10. Wildfly JAR Generator</a></li>\n</ul>\n</li>\n<li><a href=\"#generators-api\">7.2. Generator API</a></li>\n</ul>\n</li>\n<li><a href=\"#enrichers\">8. Enrichers</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#enrichers-default\">8.1. Default Enrichers</a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#enrichers-generic\">8.1.1. Generic Enrichers</a></li>\n<li><a href=\"#enrichers-specific\">8.1.2. Specific Enrichers</a></li>\n</ul>\n</li>\n<li><a href=\"#_enricher_api\">8.2. Enricher API</a></li>\n</ul>\n</li>\n<li><a href=\"#profiles\">9. Profiles</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#generator-enricher-definition\">9.1. Generator and Enricher definitions</a></li>\n<li><a href=\"#profiles-lookup-order\">9.2. Lookup order</a></li>\n<li><a href=\"#profiles-using\">9.3. Using Profiles</a></li>\n<li><a href=\"#profiles-predefined\">9.4. Predefined Profiles</a></li>\n<li><a href=\"#profiles-extended\">9.5. Extending Profiles</a></li>\n</ul>\n</li>\n<li><a href=\"#access-configuration\">10. Access configuration</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#_docker_access\">10.1. Docker Access</a></li>\n<li><a href=\"#_openshift_and_kubernetes_access\">10.2. OpenShift and Kubernetes Access</a></li>\n</ul>\n</li>\n<li><a href=\"#registry\">11. Registry handling</a></li>\n<li><a href=\"#authentication\">12. Authentication</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#_pull_vs_push_authentication\">12.1. Pull vs. Push Authentication</a></li>\n<li><a href=\"#_openshift_authentication\">12.2. OpenShift Authentication</a></li>\n<li><a href=\"#password-encryption\">12.3. Password encryption</a></li>\n<li><a href=\"#extended-authentication\">12.4. Extended Authentication</a></li>\n</ul>\n</li>\n<li><a href=\"#volume-configuration\">13. Volume Configuration</a></li>\n<li><a href=\"#integrations\">14. Integrations</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#integrations.dekorate\">14.1. Dekorate</a></li>\n<li><a href=\"#_jib_java_image_builder\">14.2. JIB (Java Image Builder)</a></li>\n</ul>\n</li>\n<li><a href=\"#faq\">15. FAQ</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#_general_questions\">15.1. General questions</a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#_how_do_i_define_an_environment_variable\">15.1.1. How do I define an environment variable?</a></li>\n<li><a href=\"#_how_do_i_define_a_system_property\">15.1.2. How do I define a system property?</a></li>\n<li><a href=\"#_how_do_i_mount_a_config_file_from_a_configmap\">15.1.3. How do I mount a config file from a ConfigMap?</a></li>\n<li><a href=\"#_how_do_i_use_a_persistent_volume\">15.1.4. How do I use a Persistent Volume?</a></li>\n<li><a href=\"#_how_do_i_generate_ingress_for_my_generated_service\">15.1.5. How do I generate Ingress for my generated Service?</a></li>\n</ul>\n</li>\n</ul>\n</li>\n<li><a href=\"#appendix\">16. Appendix</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#_kindfilename_type_mapping\">16.1. Kind/Filename Type Mapping</a></li>\n<li><a href=\"#_custom_kindfilename_mapping\">16.2. Custom Kind/Filename Mapping</a></li>\n</ul>\n</li>\n</ul>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"introduction\">1. Introduction</h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>The <strong>openshift-maven-plugin</strong> brings your Java applications on to\n<a href=\"https://www.openshift.com/\">OpenShift</a>.\nIt provides a tight integration into <a href=\"http://maven.apache.org\">Maven</a> and benefits from the build configuration already provided.\nThis plugin focus on two tasks: <em>Building Docker images</em> and <em>creating Kubernetes resource descriptors</em>.\nIt can be configured very flexibly and supports multiple configuration models for creating: A <em>Zero-Config</em> setup allows for a quick ramp-up with some opinionated defaults.\nFor more advanced requirements, an <em>XML configuration</em> provides additional configuration options which can be added to the <code>pom.xml</code>.\nFor the full power, in order to tune all facets of the creation, external <em>resource fragments</em> and <em>Dockerfiles</em> can be used.</p>\n</div>\n<div class=\"sect2\">\n<h3 id=\"building-images\">1.1. Building Images</h3>\n<div class=\"paragraph\">\n<p>The <a href=\"#jkube:build\"><strong>oc:build</strong></a> goal is for creating Docker images containing the actual application. These then can be deployed later on Kubernetes or OpenShift.\nIt is easy to include build artifacts and their dependencies into these images.\nThis plugin uses the assembly descriptor format similar to the one used in\n<a href=\"http://maven.apache.org/plugins/maven-assembly-plugin/\">maven-assembly-plugin</a> to specify the content which will be added\nto the image.\nThat images can then be pushed to public or private Docker registries with <a href=\"#jkube:push\"><strong>oc:push</strong></a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>Depending on the operational mode, for building the actual image either a Docker daemon is used directly or an <a href=\"https://docs.openshift.com/enterprise/3.0/architecture/core_concepts/builds_and_image_streams.html#docker-build\">OpenShift Docker Build</a> is performed.</p>\n</div>\n<div class=\"paragraph\">\n<p>A special <a href=\"#jkube:watch\"><strong>oc:watch</strong></a> goal allows for reacting to code changes to automatically recreate images or copy new artifacts into running containers.</p>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"resource-descriptors\">1.2. Kubernetes Resources</h3>\n<div class=\"paragraph\">\n<p>Kubernetes resource descriptors can be created or generated from <a href=\"#jkube:resource\"><strong>oc:resource</strong></a>.\nThese files are packaged within the Maven artifacts and can be deployed to a running orchestration platform with <a href=\"#jkube:apply\"><strong>oc:apply</strong></a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>Typically you only specify a small part of the real resource descriptors which will be enriched by this plugin with various extra information taken from the <code>pom.xml</code>.\nThis drastically reduces boilerplate code for common scenarios.</p>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"_configuration\">1.3. Configuration</h3>\n<div class=\"paragraph\">\n<p>As mentioned already there are three levels of configuration:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><strong>Zero-Config</strong> mode makes some very opinionated decisions based on what is present in the pom.xml like what base image to use or which ports to expose.\nThis is great for starting up things and for keeping quickstart applications small and tidy.</p>\n</li>\n<li>\n<p><strong>XML plugin configuration</strong> mode is similar to what <a href=\"https://dmp.fabric8.io/#example\">docker-maven-plugin</a> provides.\nThis allows for type-safe configuration with IDE support, but only a subset of possible resource descriptor features is provided.</p>\n</li>\n<li>\n<p><strong>Kubernetes & OpenShift resource fragments</strong> are user provided YAML files that can be <em>enriched</em> by the plugin. This allows expert users to use a plain configuration file with all their capabilities, but also to add project specific build information and avoid boilerplate code.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>The following table gives an overview of the different models</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 1. Configuration Models</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 50%;\">\n<col style=\"width: 37.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Model</th>\n<th class=\"tableblock halign-left valign-top\">Docker Images</th>\n<th class=\"tableblock halign-left valign-top\">Resource Descriptors</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>Zero-Config</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generators\">Generators</a> are used to create Docker image configurations. Generators can detect certain aspects of\n the build (e.g. whether Spring Boot is used) and then choose some opinionated defaults like the base image, which\n ports to expose and the startup command. They can be configured, but offer only a few options.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Default <a href=\"#enrichers\">Enrichers</a> will create a default <em>Service</em> and <em>Deployment</em> (<em>DeploymentConfig</em> for OpenShift)\n when no other resource objects are provided. Depending on the image they can detect which port to expose in the\n service. As with Generators, Enrichers support a limited set of configuration options.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>XML configuration</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">openshift-maven-plugin inherits the XML based configuration for building images from the\n <a href=\"https://dmp.fabric8.io/#docker:build\">docker-maven-plugin</a> and provides the same functionality. It supports an\n <a href=\"http://maven.apache.org/components/plugins/maven-assembly-plugin/assembly.html\">assembly descriptor</a> for specifying the\n content of the Docker image.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A subset of possible resource objects can be configured with a dedicated XML syntax. With a decent IDE you get\n autocompletion on most objects and inline documentation for the available configuration elements. The provided\n configuration can be still enhanced by Enhancers which is useful for adding e.g. labels and annotations containing\n build or other information.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>Resource Fragments</strong> and <strong>Dockerfiles</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Similarly to the docker-maven-plugin, openshift-maven-plugin supports <a href=\"#external-dockerfile\">external Dockerfiles</a> too, which are\n referenced from the plugin configuration.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Resource descriptors can be provided as external YAML files which will build a base skeleton for the applicable resource.</p>\n<p class=\"tableblock\"> The \"skeleton\" is then post-processed by <a href=\"#enrichers\">Enrichers</a> which will complete the skeleton by adding the fields\n each enricher is responsible of (labels, annotations, port information, etc.). Maven properties within these files\n are resolved to their values.</p>\n<p class=\"tableblock\"> With this model you can use every Kubernetes / OpenShift resource objects with all their flexibility, but still get the benefit\n of adding build information.</p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect2\">\n<h3 id=\"_examples\">1.4. Examples</h3>\n<div class=\"paragraph\">\n<p>Let’s have a look at some code. The following examples will demonstrate all three configurations variants:</p>\n</div>\n<div class=\"sect3\">\n<h4 id=\"zero-config\">1.4.1. Zero-Config</h4>\n<div class=\"paragraph\">\n<p>This minimal but full working example <code>pom.xml</code> shows how a simple spring boot application can be dockerized and\nprepared for Kubernetes. The full example can be found in directory\n<a href=\"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/zero-config\">quickstarts/maven/zero-config</a>.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><project>\n <modelVersion>4.0.0</modelVersion>\n\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>jkube-maven-sample-zero-config</artifactId>\n <version>1.0.2</version>\n <packaging>jar</packaging>\n\n <parent>\n <groupId>org.springframework.boot</groupId>\n <artifactId>spring-boot-starter-parent</artifactId> <i class=\"conum\" data-value=\"1\"></i><b>(1)</b>\n <version>1.5.5.RELEASE</version>\n </parent>\n\n <dependencies>\n <dependency>\n <groupId>org.springframework.boot</groupId>\n <artifactId>spring-boot-starter-web</artifactId> <i class=\"conum\" data-value=\"2\"></i><b>(2)</b>\n </dependency>\n </dependencies>\n\n <build>\n <plugins>\n <plugin>\n <groupId>org.springframework.boot</groupId>\n <artifactId>spring-boot-maven-plugin</artifactId> <i class=\"conum\" data-value=\"3\"></i><b>(3)</b>\n </plugin>\n <plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId> <i class=\"conum\" data-value=\"4\"></i><b>(4)</b>\n <version>1.0.2</version>\n </plugin>\n </plugins>\n </build>\n</project></code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td>This minimalistic spring boot application uses the spring-boot parent POM for setting up dependencies and plugins</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"2\"></i><b>2</b></td>\n<td>The Spring Boot web starter dependency enables a simple embedded Tomcat for serving Spring MVC apps</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"3\"></i><b>3</b></td>\n<td>The <code>spring-boot-maven-plugin</code> is responsible for repackaging the application into a fat jar, including all dependencies and the embedded Tomcat</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"4\"></i><b>4</b></td>\n<td>The <code>openshift-maven-plugin</code> enables the automatic generation of a Docker image and Kubernetes / OpenShift descriptors including this Spring application.</td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<p>This setup make some opinionated decisions for you:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>As base image <a href=\"https://quay.io/repository/jkube/jkube-java-binary-s2i\">jkube/jkube-java-binary-s2i</a>\nis chosen which enables <a href=\"https://www.jolokia.org\">Jolokia</a> and <a href=\"https://github.com/prometheus/jmx_exporter\">jmx_exporter</a>.\nIt also comes with a sophisticated <a href=\"https://github.com/jboss-openshift/cct_module/tree/master/jboss/container/java/run/bash\">startup script</a>.</p>\n</li>\n<li>\n<p>It will create a Kubernetes <a href=\"http://kubernetes.io/docs/user-guide/deployments/\">Deployment</a> and a\n<a href=\"http://kubernetes.io/docs/user-guide/services/\">Service</a> as resource objects</p>\n</li>\n<li>\n<p>It exports port 8080 as the application service port (and 8778 and 9779 for Jolokia and jmx_exporter access, respectively)</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>These choices can be influenced by configuration options as described in <a href=\"#generator-spring-boot\">Spring Boot Generator</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>To start the Docker image build, you simply run</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-bash\" data-lang=\"bash\">mvn package oc:build</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This will create the Docker image against a running Docker daemon (which must be accessible either via Unix Socket or\nwith the URL set in <code>DOCKER_HOST</code>). Alternatively, when connected to an OpenShift cluster then a <a href=\"https://docs.openshift.com/enterprise/3.0/using_images/s2i_images/index.html\">S2I</a> build will be performed on OpenShift which at the end creates an\n<a href=\"https://docs.openshift.com/enterprise/3.1/architecture/core_concepts/builds_and_image_streams.html\">ImageStream</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>To deploy the resources to the cluster call</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-bash\" data-lang=\"bash\">mvn oc:resource oc:deploy</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>By default a <em>Service</em> and a <em>Deployment</em> object pointing to the created Docker image is created. When running in OpenShift mode, a <em>Service</em> and <em>DeploymentConfig</em> which refers the <em>ImageStream</em> created with <code>oc:build</code> will be installed.</p>\n</div>\n<div class=\"paragraph\">\n<p>Of course you can bind all those jkube-goals to execution phases as well, so that they are called along with standard lifecycle goals like <code>install</code>. For example, to bind the building of the Kubernetes resource files and the Docker images, add the following goals to the execution of the openshift-maven-plugin:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example for lifecycle bindings</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n\n <!-- ... -->\n\n <executions>\n <execution>\n <goals>\n <goal>resource</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>If you’d also like to automatically deploy to Kubernetes each time you do a <code>mvn install</code> you can add the <code>apply</code> goal:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example for lifecycle bindings with automatic deploys for mvn install</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n\n <!-- ... -->\n\n <executions>\n <execution>\n <goals>\n <goal>resource</goal>\n <goal>build</goal>\n <goal>apply</goal>\n </goals>\n </execution>\n </executions>\n</plugin></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_xml_configuration\">1.4.2. XML Configuration</h4>\n<div class=\"admonitionblock warning\">\n<table>\n<tr>\n<td class=\"icon\">\n<i class=\"fa icon-warning\" title=\"Warning\"></i>\n</td>\n<td class=\"content\">\nXML based configuration is only partially implemented and is not recommended for use right now.\n</td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<p>Although the Zero-config mode and its generators can be tweaked with options up to a certain degree, many cases require more flexibility. For such instances, an XML-based plugin configuration can be used, in a way similar to the\n<a href=\"https://dmp.fabric8.io/#configuration\">XML configuration</a> used by <code>docker-maven-plugin</code>.</p>\n</div>\n<div class=\"paragraph\">\n<p>The plugin configuration can be roughly divided into the following sections:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Global configuration options are responsible for tuning the behaviour of plugin goals</p>\n</li>\n<li>\n<p><code><images></code> defines which Docker <a href=\"#image-configuration\">images</a> are used and configured. This section is similar to the\n<a href=\"https://dmp.fabric8.io//#image-configuration\">image configuration</a> of the <code>docker-maven-plugin</code>, except that <code><run></code>\nand <code><external></code> sub-elements are ignored)</p>\n</li>\n<li>\n<p><code><resource></code> defines the resource descriptors for deploying on an OpenShift or Kuberneres cluster.</p>\n</li>\n<li>\n<p><code><generator></code> configures <a href=\"#generators\">generators</a> which are responsible for creating images. Generators are used as an alternative to a dedicated <code><images></code> section.</p>\n</li>\n<li>\n<p><code><enricher></code> configures various aspects of <a href=\"#enrichers\">enrichers</a> for creating or enhancing resource descriptors.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>A working example can be found in the\n<a href=\"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/xml-config\">quickstarts/maven/xml-config</a> directory.\nAn extract of the plugin configuration is shown below:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example for an XML configuration</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><configuration>\n <namespace>test-ns</namespace>\n <images> <i class=\"conum\" data-value=\"1\"></i><b>(1)</b>\n <image>\n <name>xml-config-demo:1.0.0</name>\n <!-- \"alias\" is used to correlate to the containers in the pod spec -->\n <alias>camel-app</alias>\n <build>\n <from>fabric8/java-centos-openjdk8-jre</from>\n <assembly>\n <inline>\n <baseDirectory>/deployments</baseDirectory>\n </inline>\n </assembly>\n <env>\n <JAVA_LIB_DIR>/deployments</JAVA_LIB_DIR>\n <JAVA_MAIN_CLASS>org.apache.camel.cdi.Main</JAVA_MAIN_CLASS>\n </env>\n </build>\n </image>\n </images>\n\n <resources> <i class=\"conum\" data-value=\"2\"></i><b>(2)</b>\n <labels> <i class=\"conum\" data-value=\"3\"></i><b>(3)</b>\n <all>\n <group>quickstarts</group>\n </all>\n </labels>\n\n <replicas>2</replicas> <i class=\"conum\" data-value=\"4\"></i><b>(4)</b>\n <controllerName>${project.artifactId}</controllerName> <i class=\"conum\" data-value=\"5\"></i><b>(5)</b>\n\n <services> <i class=\"conum\" data-value=\"6\"></i><b>(6)</b>\n <service>\n <name>camel-service</name>\n <headless>true</headless>\n </service>\n </services>\n\n <serviceAccounts>\n <serviceAccount>\n <name>build-robot</name>\n </serviceAccount>\n </serviceAccounts>\n </resources>\n</configuration></code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td>Standard XML configuration for building one single Docker image</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"2\"></i><b>2</b></td>\n<td>Kubernetes / OpenShift resources to create</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"3\"></i><b>3</b></td>\n<td>Labels which should be applied globally to all resource objects</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"4\"></i><b>4</b></td>\n<td>Number of replicas desired</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"5\"></i><b>5</b></td>\n<td>Name of controller created by plugin</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"6\"></i><b>6</b></td>\n<td>One or more <a href=\"http://kubernetes.io/docs/user-guide/services/\">Service</a> definitions.</td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<p>The XML resource configuration is based on plain Kubernetes resource objects. When targeting OpenShift, Kubernetes resource descriptors will be automatically converted to their OpenShift counterparts, e.g. a Kubernetes <a href=\"http://kubernetes.io/docs/user-guide/deployments/\">Deployment</a> will be converted to an OpenShift <a href=\"https://docs.openshift.com/container-platform/4.1/applications/deployments/what-deployments-are.html#deployments-and-deploymentconfigs_what-deployments-are\">DeploymentConfig</a>.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_resource_fragments\">1.4.3. Resource Fragments</h4>\n<div class=\"paragraph\">\n<p>The third configuration option is to use an external configuration in form of YAML resource descriptors which are located in the <code>src/main/jkube</code> directory. Each resource gets its own file, which contains a skeleton of a resource descriptor. The plugin will pick up the resource, enrich it and then combine all to a single <code>kubernetes.yml</code> and <code>openshift.yml</code> file. Within these descriptor files you are can freely use any Kubernetes feature.</p>\n</div>\n<div class=\"paragraph\">\n<p>Note: In order to support simultaneously both OpenShift and Kubernetes, there is currently no way to specify OpenShift-only features this way, though this might change in future releases.</p>\n</div>\n<div class=\"paragraph\">\n<p>Let’s have a look at an example from\n<a href=\"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/external-resources\">quickstarts/maven/external-resources</a>.\nThis is a plain Spring Boot application, whose images are auto generated like in the <a href=\"#zero-config\">Zero-Config</a> case.\nThe resource fragments are in <code>src/main/jkube</code>.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example fragment \"deployment.yml\"</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">spec:\n replicas: 1\n template:\n spec:\n volumes:\n - name: config\n gitRepo:\n repository: 'https://github.com/jstrachan/sample-springboot-config.git'\n revision: 667ee4db6bc842b127825351e5c9bae5a4fb2147\n directory: .\n containers:\n - volumeMounts:\n - name: config\n mountPath: /app/config\n env:\n - name: KUBERNETES_NAMESPACE\n valueFrom:\n fieldRef:\n apiVersion: v1\n fieldPath: metadata.namespace\n serviceAccount: ribbon</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>As you can see, there is no <code>metadata</code> section as would be expected for Kubernetes resources because it will be automatically added by the <code>openshift-maven-plugin</code>. The object’s <code>Kind</code>, if not given, is automatically derived from the\nfilename. In this case, the <code>openshift-maven-plugin</code> will create a <code>Deployment</code> because the file is called <code>deployment.yml</code>. Similar mappings between file names and resource type exist for each supported resource kind, the\ncomplete list of which (along with associated abbreviations) can be found in the <a href=\"#appendix-kind-mapping\">Appendix</a>.</p>\n</div>\n<div class=\"admonitionblock note\">\n<table>\n<tr>\n<td class=\"icon\">\n<i class=\"fa icon-note\" title=\"Note\"></i>\n</td>\n<td class=\"content\">\nNow that sidecar containers are supported in this plugin(if <code>jkube.sidecar</code> is enabled), be careful whenever you’re supplying container name in the resource fragment. If container specified in resource fragment doesn’t have a name or it’s name is equal to default fmp generated application’s container name; it would not be treated as sidecar and it would be merged into main container. However, You can override plugin’s default name for main container via <code>jkube.generator.alias</code> property.\n</td>\n</tr>\n</table>\n</div>\n<hr>\n<div class=\"paragraph\">\n<p>Additionally, if you name your fragment using a name prefix followed by a dash and the mapped file name, the plugin will automatically use that name for your resource. So, for example, if you name your deployment fragment\n<code>myapp-deployment.yml</code>, the plugin will name your resource <code>myapp</code>. In the absence of such provided name for your resource, a name will be automatically derived from your project’s metadata (in particular, its <code>artifactId</code> as specified in your POM).</p>\n</div>\n<div class=\"paragraph\">\n<p>No image is also referenced in this example because the plugin also fills in the image details based on the configured image you are building with (either from a generator or from a dedicated image plugin configuration, as seen before).</p>\n</div>\n<div class=\"admonitionblock note\">\n<table>\n<tr>\n<td class=\"icon\">\n<i class=\"fa icon-note\" title=\"Note\"></i>\n</td>\n<td class=\"content\">\nFor building images there is also an alternative mode using external Dockerfiles, in addition to the XML based configuration. Refer to <a href=\"#build-overview\">oc:build</a> for details.\n</td>\n</tr>\n</table>\n</div>\n<hr>\n<div class=\"paragraph\">\n<p>Enrichment of resource fragments can be fine-tuned by using profile sub-directories. For more details see <a href=\"#profiles\">Profiles</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>Now that we have seen some examples of the various ways how this plugin can be used, the following sections will describe the plugin goals and extension points in detail.</p>\n</div>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"compatibility-with-OpenShift\">2. Compatibility with OpenShift</h2>\n<div class=\"sectionbody\">\n<div class=\"sect2\">\n<h3 id=\"openshift-compatibility\">2.1. OpenShift Compatibility</h3>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 2. OpenShift Compatibility</caption>\n<colgroup>\n<col style=\"width: 25%;\">\n<col style=\"width: 25%;\">\n<col style=\"width: 25%;\">\n<col style=\"width: 25%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">OMP</th>\n<th class=\"tableblock halign-left valign-top\">OpenShift 4.4</th>\n<th class=\"tableblock halign-left valign-top\">OpenShift 4.2</th>\n<th class=\"tableblock halign-left valign-top\">OpenShift 3.11</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">OMP 1.0.2</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">OMP 1.0.1</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">OMP 1.0.0</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">OMP 0.2.0</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">OMP 0.1.1</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">OMP 0.1.0</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"installation\">3. Installation</h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>This plugin is available from Maven central and can be connected to\npre- and post-integration phase as seen below. The configuration and\navailable goals are described below.</p>\n</div>\n<div class=\"paragraph\">\n<p>By default, Maven will only search for plugins in the <code>org.apache.maven.plugins</code> and <code>org.codehaus.mojo</code> packages. In order to resolve the provider for the JKube plugin goals, you need to edit <code>~/.m2/settings.xml</code> and add the <code>org.eclipse.jkube</code> namespace so the <code><pluginGroups></code> configuration.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><settings>\n ...\n\n <pluginGroups>\n <pluginGroup>org.eclipse.jkube</pluginGroup>\n </pluginGroups>\n\n ...\n</settings></code></pre>\n</div>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n <version>1.0.2</version>\n\n <configuration>\n ....\n <images>\n <!-- A single's image configuration -->\n <image>\n ...\n <build>\n ....\n </build>\n </image>\n ....\n </images>\n </configuration>\n\n <!-- Connect oc:resource, oc:build and oc:helm to lifecycle phases -->\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>build</goal>\n <goal>helm</goal>\n </goals>\n </execution>\n </executions>\n</plugin></code></pre>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"goals\">4. Goals Overview</h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>This plugin supports a rich set for providing a smooth Java developer experience. These goals can be categorized in multiple groups:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><a href=\"#goals-build\">Build goals</a> are all about creating and managing Kubernetes build artifacts like Docker images or S2I builds.</p>\n</li>\n<li>\n<p><a href=\"#goals-develop\">Development goals</a> target help not only in deploying resource descriptors to the development cluster but also to manage the lifecycle of the development cluster as well.</p>\n</li>\n</ul>\n</div>\n<table id=\"goals-build\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 3. Build Goals</caption>\n<colgroup>\n<col style=\"width: 25%;\">\n<col style=\"width: 75%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Goal</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong><a href=\"#jkube:build\"><strong>oc:build</strong></a></strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Build images</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong><a href=\"#jkube:push\"><strong>oc:push</strong></a></strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Push images to a registry</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong><a href=\"#jkube:resource\"><strong>oc:resource</strong></a></strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Create Kubernetes or OpenShift resource descriptors</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong><a href=\"#jkube:apply\"><strong>oc:apply</strong></a></strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Apply resources to a running cluster</p></td>\n</tr>\n</tbody>\n</table>\n<table id=\"goals-develop\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 4. Development Goals</caption>\n<colgroup>\n<col style=\"width: 25%;\">\n<col style=\"width: 75%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Goal</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong><a href=\"#jkube:deploy\"><strong>oc:deploy</strong></a></strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Deploy resources descriptors to a cluster after creating them and building the app. Same as <a href=\"#jkube:apply\"><strong>oc:apply</strong></a> except that it runs in the background.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong><a href=\"#jkube:undeploy\"><strong>oc:undeploy</strong></a></strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Undeploy and remove resources descriptors from a cluster.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong><a href=\"#jkube:watch\"><strong>oc:watch</strong></a></strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Watch for file changes and perform rebuilds and redeployments</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong><a href=\"#jkube:log\"><strong>oc:log</strong></a></strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Show the logs of the running application</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong><a href=\"#jkube:debug\"><strong>oc:debug</strong></a></strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Enable remote debugging</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Depending on whether the OpenShift or Kubernetes operational mode is used, the workflow and the performed actions differs :</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 5. Workflows</caption>\n<colgroup>\n<col style=\"width: 11.1111%;\">\n<col style=\"width: 44.4444%;\">\n<col style=\"width: 44.4445%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Use Case</th>\n<th class=\"tableblock halign-left valign-top\">Kubernetes</th>\n<th class=\"tableblock halign-left valign-top\">OpenShift</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Build</p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p><code>oc:build</code> <code>oc:push</code></p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Creates an image against an exposed Docker daemon (with a <code>docker.tar</code>)</p>\n</li>\n<li>\n<p>Pushes the image to a registry which is then referenced from the configuration</p>\n</li>\n</ul>\n</div></div></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p><code>oc:build</code></p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Creates or uses a <code>BuildConfig</code></p>\n</li>\n<li>\n<p>Creates or uses an <code>ImageStream</code> which can be referenced by the deployment descriptors in a <code>DeploymenConfig</code></p>\n</li>\n<li>\n<p>Starts an OpenShift build with a <code>docker.tar</code> as input</p>\n</li>\n</ul>\n</div></div></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Deploy</p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p><code>oc:deploy</code></p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Applies a Kubernetes resource descriptor to cluster</p>\n</li>\n</ul>\n</div></div></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p><code>oc:deploy</code></p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Applies an OpenShift resource descriptor to a cluster</p>\n</li>\n</ul>\n</div></div></td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"goals-overview-build\">5. Build Goals</h2>\n<div class=\"sectionbody\">\n<div class=\"sect2\">\n<h3 id=\"jkube:resource\">5.1. <strong>oc:resource</strong></h3>\n<div class=\"paragraph\">\n<p>This goal generates Kubernetes resources based on your project. It can either be opinionated defaults or\nbased on the configuration provided in XML config or resource fragments in <code>src/main/jkube</code>.\nGenerated resources are in <code>target/classes/META-INF/jkube/openshift</code> directory.</p>\n</div>\n<div class=\"sect3\">\n<h4 id=\"resource-labels-annotations\">5.1.1. Labels and Annotations</h4>\n<div class=\"paragraph\">\n<p>Labels and annotations can be easily added to any resource object. This is best explained by an example.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example for label and annotations</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <!-- ... -->\n <configuration>\n <!-- ... -->\n <resources>\n <labels> <i class=\"conum\" data-value=\"1\"></i><b>(1)</b>\n <all> <i class=\"conum\" data-value=\"1\"></i><b>(1)</b>\n <property> <i class=\"conum\" data-value=\"2\"></i><b>(2)</b>\n <name>organisation</name>\n <value>unesco</value>\n </property>\n </all>\n <service> <i class=\"conum\" data-value=\"3\"></i><b>(3)</b>\n <property>\n <name>database</name>\n <value>mysql</value>\n </property>\n <property>\n <name>persistent</name>\n <value>true</value>\n </property>\n </service>\n <replicaSet> <i class=\"conum\" data-value=\"4\"></i><b>(4)</b>\n <!-- ... -->\n </replicaSet>\n <pod> <i class=\"conum\" data-value=\"5\"></i><b>(5)</b>\n <!-- ... -->\n </pod>\n <deployment> <i class=\"conum\" data-value=\"6\"></i><b>(6)</b>\n <!-- ... -->\n </deployment>\n </labels>\n\n <annotations> <i class=\"conum\" data-value=\"7\"></i><b>(7)</b>\n <!-- ... -->\n </annotations>\n <remotes> <i class=\"conum\" data-value=\"8\"></i><b>(8)</b>\n <remote>https://gist.githubusercontent.com/lordofthejars/ac2823cec7831697d09444bbaa76cd50/raw/e4b43f1b6494766dfc635b5959af7730c1a58a93/deployment.yaml</remote>\n </remotes>\n </resource>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td><code><labels></code> section with <code><resources></code> contains labels which should be applied to objects of various kinds</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"2\"></i><b>2</b></td>\n<td>Within <code><all></code> labels which should be applied to <strong>every</strong> object can be specified</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"3\"></i><b>3</b></td>\n<td><code><service></code> labels are used to label services</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"4\"></i><b>4</b></td>\n<td><code><replicaSet></code> labels are for replica set and replication controller</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"5\"></i><b>5</b></td>\n<td><code><pod></code> holds labels for pod specifications in replication controller, replica sets and deployments</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"6\"></i><b>6</b></td>\n<td><code><deployment></code> is for labels on deployments (kubernetes) and deployment configs (openshift)</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"7\"></i><b>7</b></td>\n<td>The subelements are also available for specifying annotations.</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"8\"></i><b>8</b></td>\n<td><code><remotes></code> you can set location of fragments as <code>URL</code>.</td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<p>Labels and annotations can be specified in free form as a map. In this map, the element name is the name of the label or annotation respectively, whereas the content is the value to set.</p>\n</div>\n<div class=\"paragraph\">\n<p>The following subelements are possible for <code><labels></code> and <code><annotations></code> :</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 6. Label and annotation configuration</caption>\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 85.7143%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>all</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">All entries specified in the <code><all></code> sections are applied to all resource objects created.\n This also implies build object like image stream and build configs which are created implicitly for an <a href=\"#build-openshift\">Kubernetes build</a>.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>deployment</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Labels and annotations applied to <code>Deployment</code> (for Kubernetes).\n And <code>DeploymentConfig</code> (for OpenShift) objects.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>pod</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Labels and annotations applied pod specification as used in <code>ReplicationController</code>, <code>ReplicaSets</code>, <code>Deployments</code> and <code>DeploymentConfigs</code> objects.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>replicaSet</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Labels and annotations applied to <code>ReplicaSet</code> and <code>ReplicationController</code> objects.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>service</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Labels and annotations applied to <code>Service</code> objects.</p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect3\">\n<h4 id=\"resource-secrets\">5.1.2. Secrets</h4>\n<div class=\"paragraph\">\n<p>Once you’ve configured some docker registry credentials into <code>~/.m2/setting.xml</code>, as explained in the\n<a href=\"#authentication\">Authentication</a> section, you can create Kubernetes secrets from a server declaration.</p>\n</div>\n<div class=\"paragraph\">\n<p><strong>XML configuration</strong></p>\n</div>\n<div class=\"paragraph\">\n<p>You can create a secret using xml configuration in the <code>pom.xml</code> file. It should contain the following fields:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">key</th>\n<th class=\"tableblock halign-left valign-top\">required</th>\n<th class=\"tableblock halign-left valign-top\">description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>dockerServerId</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>true</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">the server id which is configured in\n<code>~/.m2/setting.xml</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>name</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>true</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">this will be used as name of the kubernetes secret resource</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>namespace</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>false</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">the secret resource will be applied to the specific\nnamespace, if provided</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>This is best explained by an example.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example for XML configuration</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><properties>\n <jkube.docker.registry>docker.io</docker.registry>\n</properties></code></pre>\n</div>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><configuration>\n <resources>\n <secrets>\n <secret>\n <dockerServerId>${docker.registry}</dockerServerId>\n <name>mydockerkey</name>\n </secret>\n </secrets>\n </resources>\n</configuration></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p><strong>Yaml fragment with annotation</strong></p>\n</div>\n<div class=\"paragraph\">\n<p>You can create a secret using a yaml fragment. You can reference the docker server id with an annotation\n<code>maven.jkube.io/dockerServerId</code>. The yaml fragment file should be put under\nthe <code>src/main/jkube/</code> folder.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">apiVersion: v1\nkind: Secret\nmetadata:\n name: mydockerkey\n namespace: default\n annotations:\n maven.jkube.io/dockerServerId: ${docker.registry}\ntype: kubernetes.io/dockercfg</code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"resource-validation\">5.1.3. Resource Validation</h4>\n<div class=\"paragraph\">\n<p>Resource goal also validates the generated resource descriptors using API specification of <a href=\"https://raw.githubusercontent.com/kubernetes/kubernetes/master/api/openapi-spec/swagger.json\">Kubernetes</a>.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 7. Validation Configuration</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipResourceValidation</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If value is set to <code>true</code> then resource validation is skipped. This may be useful if resource validation is failing\n for some reason but you still want to continue the deployment.</p>\n<p class=\"tableblock\"> Default is <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skipResourceValidation</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>failOnValidationError</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If value is set to <code>true</code> then any validation error will block the plugin execution. A warning will be printed\n otherwise.</p>\n<p class=\"tableblock\"> Default is <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.failOnValidationError</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect3\">\n<h4 id=\"resource-route-generation\">5.1.4. Route Generation</h4>\n<div class=\"paragraph\">\n<p>When the <code>oc:resource</code> goal is run, an Kubernetes\n<a href=\"https://docs.openshift.org/latest/architecture/networking/routes.html\">Route</a> descriptor (<code>route.yml</code>) will also be\ngenerated along the service if an Kubernetes cluster is targeted.\nIf you do not want to generate a Route descriptor, you can set the <code>jkube.openshift.generateRoute</code> property to <code>false</code>.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 8. Route Generation Configuration</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>generateRoute</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If value is set to <code>false</code> then no Route descriptor will be generated.\n By default it is set to <code>true</code>, which will create a <code>route.yml</code> descriptor and also add Route resource to <code>openshift.yml</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.openshift.generateRoute</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-openshift-route.generateRoute</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>tlsTermination</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>tlsTermination indicates termination type. The following values are supported:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>edge (default)</p>\n</li>\n<li>\n<p>passthrough</p>\n</li>\n<li>\n<p>reencrypt</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>See <a href=\"https://docs.openshift.com/container-platform/3.11/architecture/networking/routes.html#secured-routes\" class=\"bare\">https://docs.openshift.com/container-platform/3.11/architecture/networking/routes.html#secured-routes</a> or <a href=\"https://docs.openshift.com/container-platform/latest/networking/routes/secured-routes.html\" class=\"bare\">https://docs.openshift.com/container-platform/latest/networking/routes/secured-routes.html</a></p>\n</div></div></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-route.tlsTermination</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>tlsInsecureEdgeTerminationPolicy</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>tlsInsecureEdgeTerminationPolicy indicates the desired behavior for insecure connections to a route.\nWhile each router may make its own decisions on which ports to expose, this is normally port 80.</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Allow - traffic is sent to the server on the insecure port (default)</p>\n</li>\n<li>\n<p>Disable - no traffic is allowed on the insecure port.</p>\n</li>\n<li>\n<p>Redirect - clients are redirected to the secure port.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>See <a href=\"https://docs.openshift.com/container-platform/latest/rest_api/network_apis/route-route-openshift-io-v1.html\" class=\"bare\">https://docs.openshift.com/container-platform/latest/rest_api/network_apis/route-route-openshift-io-v1.html</a></p>\n</div></div></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-route.tlsInsecureEdgeTerminationPolicy</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Below is an example of generating a Route with \"edge\" termination and \"Allow\" insecureEdgeTerminationPolicy:\n.Example for generating route resource by configuring it in <code>pom.xml</code></p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n <version>1.0.2</version>\n <configuration>\n <enricher>\n <config>\n <jkube-openshift-route>\n <generateRoute>true</generateRoute>\n <tlsInsecureEdgeTerminationPolicy>Allow</tlsInsecureEdgeTerminationPolicy>\n <tlsTermination>edge</tlsTermination>\n </jkube-openshift-route>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Adding certificates for routes is not directly supported in the pom, but can be added via a yaml fragment.</p>\n</div>\n<div class=\"paragraph\">\n<p>If you do not want to generate a Route descriptor, you can also specify so in the plugin configuration in your POM as seen below.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example for not generating route resource by configuring it in <code>pom.xml</code></div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n <version>1.0.2</version>\n <configuration>\n <enricher>\n <config>\n <jkube-openshift-route>\n <generateRoute>false</generateRoute>\n </jkube-openshift-route>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>If you are using resource fragments, then also you can configure it in your Service resource fragment (e.g. <code>service.yml</code>).\nYou need to add an <code>expose</code> label to the <code>metadata</code> section of your service and set it to <code>false</code>.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example for not generating route resource by configuring it in resource fragments</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">metadata:\n annotations:\n api.service.kubernetes.io/path: /hello\n labels:\n expose: \"false\"\nspec:\n type: LoadBalancer</code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"Supported-Properties-Resource\">5.1.5. Supported Properties for Resource goal</h4>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 9. Options available with resource goal</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>enableAutomaticTrigger</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If the value is set to <code>false</code> then automatic deployments would be disabled.</p>\n<p class=\"tableblock\"> Defaults to <code>true</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.openshift.enableAutomaticTrigger</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>deployTimeoutSeconds</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The OpenShift deploy timeout in seconds.</p>\n<p class=\"tableblock\"> Defaults to <code>3600</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.openshift.deployTimeoutSeconds</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>imageChangeTriggers</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add ImageChange triggers to DeploymentConfigs when on openshift.</p>\n<p class=\"tableblock\"> Defaults to <code>true</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.openshift.imageChangeTriggers</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>trimImageInContainerSpec</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set to true it would set the container image reference to \"\", this is done to handle weird behavior of OpenShift\n 3.7 in which subsequent rollouts lead to ImagePullErr.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.openshift.trimImageInContainerSpec</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>enrichAllWithImageChangeTrigger</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Adds ImageChangeTriggers with respect to all containers specified inside DeploymentConfig.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.openshift.enrichAllWithImageChangeTrigger</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>profile</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Profile to use. A profile contains the enrichers and generators to use as well as their configuration. Profiles are\n looked up in the classpath and can be provided as yaml files.</p>\n<p class=\"tableblock\"> Defaults to <code>default</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.profile</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>sidecar</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Whether to enable sidecar behavior or not. By default pod specs are merged into main application container.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.sidecar</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipHealthCheck</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Whether to skip health checks addition in generated resources or not.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skipHealthCheck</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>workDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The JKube working directory. Defaults to <code>${project.build.directory}/jkube</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.workDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>environment</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Environment name where resources are placed. For example, if you set this property to dev and resourceDir is the\n default one, plugin will look at <code>src/main/jkube/dev</code>.</p>\n<p class=\"tableblock\"> Defaults to <code>null</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.environment</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>useProjectClassPath</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Should we use the project’s compile time classpath to scan for additional enrichers/generators.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.useProjectClassPath</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>resourceDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Folder where to find project specific files.</p>\n<p class=\"tableblock\"> Defaults to <code>${basedir}/src/main/jkube</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.resourceDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>targetDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The generated Kubernetes manifests target direcotry.</p>\n<p class=\"tableblock\"> Defaults to <code>${project.build.outputDirectory}/META-INF/jkube</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.targetDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>resourceType</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The artifact type for attaching the generated resource file to the project. Can be either 'json' or 'yaml'.</p>\n<p class=\"tableblock\"> Defaults to <code>yaml</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.resourceType</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>mergeWithDekorate</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">When resource generation is delegated to Dekorate, should JKube resources be merged with Dekorate generated ones.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.mergeWithDekorate</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>interpolateTemplateParameters</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Interpolate parameter values from <code>*template.yml</code> fragments in the generated resource list (<code>kubernetes.yml</code>).</p>\n<p class=\"tableblock\"> This is useful when using JKube in combination with Helm.</p>\n<p class=\"tableblock\"> Placeholders for variables defined in template files can be used in the different resource fragments. Helm generated\n charts will contain these placeholders/parameters.</p>\n<p class=\"tableblock\"> For <code>resource</code> goal, these placeholders are replaced in the\n aggregated resource list YAML file (not in the individual generated resources) if this option is enabled.</p>\n<p class=\"tableblock\"> Defaults to <code>true</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.interpolateTemplateParameters</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipResource</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Skip resource generation.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skip.resource</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>createExternalUrls</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Should we create external Ingress for any LoadBalancer Services which don’t already have them.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.createExternalUrls</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>domain</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Domain added to the Service ID when creating Kubernetes Ingresses or OpenShift routes.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.domain</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"jkube:build\">5.2. <strong>oc:build</strong></h3>\n<div class=\"paragraph\">\n<p>This goal is for building Docker images.</p>\n</div>\n<div class=\"sect3\">\n<h4 id=\"build-kubernetes\">5.2.1. Kubernetes Build</h4>\n<div class=\"paragraph\">\n<p>A normal Docker build is performed by default. The connection configuration to\naccess the Docker daemon is described in <a href=\"#access-configuration\">Access Configuration</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>In order to make the generated images available to the Kubernetes cluster the generated images need to be pushed to a\nregistry with the goal <a href=\"#jkube:push\"><strong>oc:push</strong></a>. This is not necessary for single node clusters, though as there is no need to\ndistribute images.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"build-openshift\">5.2.2. OpenShift Build</h4>\n<div class=\"paragraph\">\n<p>For the <code>openshift</code> mode, OpenShift specific\n<a href=\"https://docs.openshift.com/enterprise/latest/architecture/core_concepts/builds_and_image_streams.html\">builds</a> will be\nperformed. These are so called\n<a href=\"https://docs.openshift.com/enterprise/latest/architecture/core_concepts/builds_and_image_streams.html\">Binary Source</a>\nbuilds (\"binary builds\" in short), where the data specified with the <a href=\"#build-configuration\">build configuration</a> is\nsent directly to OpenShift as a binary archive.</p>\n</div>\n<div class=\"paragraph\">\n<p>There are two kind of binary builds supported by this plugin, which can be selected with the <code>buildStrategy</code> configuration option (<code>jkube.build.strategy</code> property)</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 10. Build Strategies</caption>\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 85.7143%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\"><code>buildStrategy</code></th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>s2i</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The <a href=\"https://docs.openshift.com/enterprise/latest/architecture/core_concepts/builds_and_image_streams.html#source-build\">Source-to-Image</a> (S2I) build strategy uses so called builder images for creating new application images from binary build data. The builder image to use is taken from the base image configuration specified with <a href=\"#build-config-from\">from</a> in the image build configuration. See below for a list of builder images which can be used with this plugin.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>docker</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A <a href=\"https://docs.openshift.com/enterprise/latest/architecture/core_concepts/builds_and_image_streams.html#docker-build\">Docker Build</a> is similar to a normal Docker build except that it is done by the OpenShift cluster and not by a Docker daemon. In addition this build pushes the generated image to the OpenShift internal registry so that it is accessbile in the whole cluster.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Both build strategies update an\n<a href=\"https://docs.openshift.com/enterprise/latest/architecture/core_concepts/builds_and_image_streams.html#image-streams\">Image Stream</a>\nafter the image creation.</p>\n</div>\n<div class=\"paragraph\">\n<p>The <a href=\"https://docs.openshift.com/enterprise/latest/dev_guide/builds.html#defining-a-buildconfig\">Build Config</a> and\n<a href=\"https://docs.openshift.com/enterprise/latest/architecture/core_concepts/builds_and_image_streams.html#image-streams\">Image streams</a>\ncan be managed by this plugin. If they do not exist, they will be automatically created by <code>oc:build</code>.\nIf they do already exist, they are reused, except when the <code>buildRecreate</code> configuration option\n(property <code>jkube.build.recreate</code>) is set to a value as described in <a href=\"#build-goal-configuration\">Configuration</a>.\nAlso if the provided build strategy is different than the one defined in the existing build configuration, the Build\nConfig is edited to reflect the new type (which in turn removes all build associated with the previous build).</p>\n</div>\n<div class=\"paragraph\">\n<p>This image stream created can then be directly referenced from\n<a href=\"https://docs.openshift.com/enterprise/latest/architecture/core_concepts/deployments.html#deployments-and-deployment-configurations\">Deployment Configuration</a>\nobjects created by <a href=\"#jkube:resource\"><strong>oc:resource</strong></a>.\nBy default, image streams are created with a local lookup policy, so that they can be used also by other resources such\nas Deployments or StatefulSets.\nThis behavior can be turned off by setting the <code>jkube.s2i.imageStreamLookupPolicyLocal</code> property to <code>false</code> when building\nthe project.</p>\n</div>\n<div class=\"paragraph\">\n<p>In order to be able to create these OpenShift resource objects access to an OpenShift installation is required.\nThe access parameters are described in <a href=\"#access-configuration\">Access Configuration</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>Regardless of which build mode is used, the images are configured in the same way.</p>\n</div>\n<div class=\"paragraph\">\n<p>The configuration consists of two parts:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>a global section which defines the overall behaviour of this plugin</p>\n</li>\n<li>\n<p>and an <code><images></code> section which defines how the images should be build</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>Many of the options below are relevant for the <a href=\"#build-kubernetes\">Kubernetes Workflow</a> or the <a href=\"#build-openshift\">OpenShift Workflow</a> with Docker builds as they influence how the Docker image is build.</p>\n</div>\n<div class=\"paragraph\">\n<p>For an S2I binary build, on the other hand, the most relevant section is the <a href=\"#build-assembly\">Assembly</a> one because the build depends on which buider/base image is used and how it interprets the content of the uploaded <code>docker.tar</code>.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"build-goal-configuration\">5.2.3. Configuration (XML)</h4>\n<div class=\"paragraph\">\n<p>The following sections describe the usual configuration, which is similar to the build configuration used in the\n <a href=\"https://dmp.fabric8.io\">docker-maven-plugin</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>In addition a more automatic way for creating predefined build configuration can be performed with so called <a href=\"#generators\">Generators</a>. Generators are very flexible and can be easily created. These are described in an extra <a href=\"#generators\">section</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>Global configuration parameters specify overall behavior common for all images to build. Some of the configuration options are shared with other goals.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 11. Global configuration</caption>\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 71.4285%;\">\n<col style=\"width: 14.2858%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>buildStrategy</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>Defines what build strategy to choose while building container image.\nPossible values are <code>docker</code> and <code>jib</code> out of which <code>docker</code> is default.</p>\n</div>\n<div class=\"paragraph\">\n<p>If the effective <a href=\"#build-mode\">mode</a> is <code>openshift</code> an additional <code>s2i</code> option is available\nand selected by default.</p>\n</div>\n<div class=\"paragraph\">\n<p>Available strategies for OpenShift are:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>s2i</code> for a <a href=\"https://docs.openshift.com/enterprise/latest/architecture/core_concepts/builds_and_image_streams.html#source-build\">Source-to-Image build</a> with a binary source</p>\n</li>\n<li>\n<p><code>docker</code> for a <a href=\"https://docs.openshift.com/enterprise/latest/architecture/core_concepts/builds_and_image_streams.html#docker-build\">Docker build</a> with a binary source</p>\n</li>\n</ul>\n</div></div></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.build.strategy</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>apiVersion</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Use this variable if you are using an older version of docker not compatible with the current default use to\n communicate with the server.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.apiVersion</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>authConfig</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Authentication information when pulling from or pushing to Docker registry. There is a dedicated section\n <a href=\"#authentication\">Authentication</a> for how to do security.</p></td>\n<td class=\"tableblock halign-left valign-top\"></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>autoPull</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>Decide how to pull missing base images or images to start:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>on</code> : Automatic download any missing images (default)</p>\n</li>\n<li>\n<p><code>off</code> : Automatic pulling is switched off</p>\n</li>\n<li>\n<p><code>always</code> : Pull images always even when they already exist locally</p>\n</li>\n<li>\n<p><code>once</code> : For multi-module builds images are only checked once and pulled for the whole build.</p>\n</li>\n</ul>\n</div></div></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.autoPull</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>buildRecreate</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>If the effective <a href=\"#build-mode\">mode</a> is <code>openshift</code> then this option decides how the OpenShift resource objects\n associated with the build should be treated when they already exist:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>buildConfig</code> or <code>bc</code> : Only the BuildConfig is recreated</p>\n</li>\n<li>\n<p><code>imageStream</code> or <code>is</code> : Only the ImageStream is recreated</p>\n</li>\n<li>\n<p><code>all</code> : Both, BuildConfig and ImageStream are recreated</p>\n</li>\n<li>\n<p><code>none</code> : Neither BuildConfig nor ImageStream is recreated</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>The default is <code>none</code>. If you provide the property without value then <code>all</code> is assumed, so everything gets recreated.</p>\n</div></div></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.build.recreate</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>forcePull</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Applicable only for OpenShift, S2I build strategy.</p>\n<p class=\"tableblock\">While creating a BuildConfig, By default, if the builder image specified in the\nbuild configuration is available locally on the node, that image will be used.</p>\n<p class=\"tableblock\">Using forcePull will override the local image and refresh it from the registry the image stream points to.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.build.forcePull</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a id=\"image-pull-policy\"></a> <strong>imagePullPolicy</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>Specify whether images should be pull when looking for base images while building or images for starting.\nThis property can take the following values (case insensitive):</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>IfNotPresent</code>: Automatic download any missing images (default)</p>\n</li>\n<li>\n<p><code>Never</code> : Automatic pulling is switched off always</p>\n</li>\n<li>\n<p><code>Always</code> : Pull images always even when they already exist locally.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>By default a progress meter is printed out on the console, which is omitted when using Maven in batch mode (option <code>-B</code>). A very simplified progress meter is provided when using no color output (i.e. with <code>-Djkube.useColor=false</code>).</p>\n</div></div></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.imagePullPolicy</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>certPath</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Path to SSL certificate when SSL is used for communicating with the Docker daemon. These certificates are normally\n stored in <code>~/.docker/</code>. With this configuration the path can be set explicitly. If not set, the fallback is first\n taken from the environment variable <code>DOCKER_CERT_PATH</code> and then as last resort <code>~/.docker/</code>. The keys in this are\n expected with it standard names <code>ca.pem</code>, <code>cert.pem</code> and <code>key.pem</code>.\n Please refer to the <a href=\"https://docs.docker.com/articles/https\">Docker documentation</a> for more information about SSL\n security with Docker.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.certPath</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>dockerHost</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>The URL of the Docker Daemon. If this configuration option is not given, then the optional <code><machine></code> configuration\nsection is consulted. The scheme of the URL can be either given directly as <code>http</code> or <code>https</code>\ndepending on whether plain HTTP communication is enabled or SSL should\nbe used. Alternatively the scheme could be <code>tcp</code> in which case the\nprotocol is determined via the IANA assigned port: 2375 for <code>http</code>\nand 2376 for <code>https</code>. Finally, Unix sockets are supported by using\nthe scheme <code>unix</code> together with the filesystem path to the unix socket.</p>\n</div>\n<div class=\"paragraph\">\n<p>The discovery sequence used by the docker-maven-plugin to determine\nthe URL is:</p>\n</div>\n<div class=\"olist arabic\">\n<ol class=\"arabic\">\n<li>\n<p>Value of <strong>dockerHost</strong> (<code>jkube.docker.host</code>)</p>\n</li>\n<li>\n<p>The Docker host associated with the docker-machine named in <code><machine></code>, i.e. the <code>DOCKER_HOST</code> from <code>docker-machine env</code>. See <a href=\"#docker-machine\">below</a> for more information about Docker machine support.</p>\n</li>\n<li>\n<p>The value of the environment variable <code>DOCKER_HOST</code>.</p>\n</li>\n<li>\n<p><code>unix:///var/run/docker.sock</code> if it is a readable socket.</p>\n</li>\n</ol>\n</div></div></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.host</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>filter</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">In order to temporarily restrict the operation of plugin goals this configuration option can be used.\n Typically this will be set via the system property <code>jkube.image.filter</code> when Maven is called. The value can be a single\n image name (either its alias or full name) or it can be a comma separated list with multiple image names. Any name\n which doesn’t refer an image in the configuration will be ignored.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.image.filter</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>machine</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Docker machine configuration. See <a href=\"#docker-machine\">Docker Machine</a> for possible values.</p></td>\n<td class=\"tableblock halign-left valign-top\"></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>maxConnections</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Number of parallel connections are allowed to be opened to the Docker Host. For parsing log output, a connection needs\n to be kept open (as well for the wait features), so don’t put that number to low. Default is 100 which should be\n suitable for most of the cases.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.maxConnections</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>access</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Group of configuration parameters to connect to Kubernetes/OpenShift cluster.</p></td>\n<td class=\"tableblock halign-left valign-top\"></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>outputDirectory</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Default output directory to be used by this plugin.\n The default value is <code>target/docker</code> and is only used for the goal <code>oc:build</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.build.target.dir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>profile</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Profile to which contains enricher and generators configuration. See <a href=\"#profiles\">Profiles</a> for details.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.profile</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>pullSecret</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The name to use for naming pullSecret to be created to pull the base image in case pulling from a private registry\n which requires authentication for OpenShift.</p>\n<p class=\"tableblock\"> The default value for pull registry will be picked from <code>jkube.docker.pull.registry</code>/<code>jkube.docker.registry</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.build.pullSecret</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>registry</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Specify globally a registry to use for pulling and pushing images. See <a href=\"#registry\">Registry handling</a> for details.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.registry</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skip</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">With this parameter the execution of this plugin can be skipped completely.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skip</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipBuild</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set not images will be build (which implies also <em>skip.tag</em>) with <code>oc:build</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skip.build</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipBuildPom</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set the build step will be skipped for modules of type <code>pom</code>. If not set, then by default projects of type <code>pom</code>\n will be skipped if there are no image configurations contained.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skip.build.pom</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipTag</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set to <code>true</code> this plugin won’t add any tags to images that have been built with <code>oc:build</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skip.tag</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipMachine</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Skip using docker machine in any case</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.skip.machine</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>sourceDirectory</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Default directory that contains the assembly descriptor(s) used by the plugin. The default value is <code>src/main/docker</code>.\n This option is only relevant for the <code>oc:build</code> goal.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.build.source.dir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>verbose</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Boolean attribute for switching on verbose output like the build steps when doing a Docker build. Default is <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.verbose</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>logDate</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The date format to use when logging messages from Docker. Default is <code>DEFAULT</code> (<code>HH:mm:ss.SSS</code>)</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.logDate</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>logStdout</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Log to stdout regardless if log files are configured or not. Default is <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.logStdout</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_kubernetes_access_configuration\">5.2.4. Kubernetes Access Configuration</h4>\n<div class=\"paragraph\">\n<p>You can configure parameters to define how plugin is going to connect to Kubernetes cluster instead of relying on default parameters.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><configuration>\n <access>\n <username></username>\n <password></password>\n <masterUrl></masterUrl>\n <apiVersion></apiVersion>\n </access>\n</configuration></code></pre>\n</div>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 71.4285%;\">\n<col style=\"width: 14.2858%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>username</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Username on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.username</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>password</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Password on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.password</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>namespace</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Namespace on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.namespace</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>masterUrl</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Master URL on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.masterUrl</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>apiVersion</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Api version on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.apiVersion</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>caCertFile</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">CaCert File on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.caCertFile</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>caCertData</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">CaCert Data on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.caCertData</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>clientCertFile</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Client Cert File on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.clientCertFile</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>clientCertData</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Client Cert Data on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.clientCertData</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>clientKeyFile</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Client Key File on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.clientKeyFile</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>clientKeyData</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Client Key Data on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.clientKeyData</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>clientKeyAlgo</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Client Key Algorithm on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.clientKeyAlgo</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>clientKeyPassphrase</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Client Key Passphrase on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.clientKeyPassphrase</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>trustStoreFile</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Trust Store File on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.trustStoreFile</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>trustStorePassphrase</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Trust Store Passphrase on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.trustStorePassphrase</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>keyStoreFile</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Key Store File on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.keyStoreFile</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>keyStorePassphrase</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Key Store Passphrase on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.keyStorePassphrase</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_image_configuration\">5.2.5. Image Configuration</h4>\n<div class=\"paragraph\">\n<p>The configuration how images should be created a defined in a dedicated <code><images></code> sections. These are specified for\neach image within the <code><images></code> element of the configuration with one <code><image></code> element per image to use.</p>\n</div>\n<div class=\"paragraph\">\n<p>The <code><image></code> element can contain the following sub elements:</p>\n</div>\n<table id=\"config-image\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 12. Image Configuration</caption>\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 83.3334%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#image-name\"><strong>name</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Each <code><image></code> configuration has a mandatory, unique docker\nrepository <em>name</em>. This can include registry and tag parts, but also placeholder parameters. See below for a detailed explanation.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>alias</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Shortcut name for an image which can be used for\nidentifying the image within this configuration. This is used when\nlinking images together or for specifying it with the global <strong>image</strong> configuration element.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#registry\"><strong>registry</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Registry to use for this image. If the <code>name</code> already contains a registry this takes precedence. See <a href=\"#registry\">Registry handling</a> for more details.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#config-image-build\"><strong>build</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Element which contains all the configuration aspects when doing a <a href=\"#jkube:build\"><strong>oc:build</strong></a>. This element can be omitted if the image is only pulled from a registry e.g. as support for integration tests like database images.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>The <code><build></code> section is mandatory and is explained in <a href=\"#build-configuration\">below</a>.</p>\n</div>\n<div id=\"image-name\" class=\"paragraph\">\n<p>When specifying the image name in the configuration with the <code><name></code> field you can use several placeholders which are replaced during runtime by this plugin. In addition you can use regular Maven properties which are resolved by Maven itself.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 13. Image Names</caption>\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 83.3334%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Placeholder</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>%g</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The last part of the Maven group name, sanitized so that it can be used as username on GitHub. Only the part after the last dot is used. E.g. for a group id <code>org.eclipse.jkube</code> this placeholder would insert <code>jkube</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>%a</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A sanitized version of the artefact id so that it can be used as part of an Docker image name. I.e. it is converted to all lower case (as required by Docker)</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>%v</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The project version. Synonym to <code>${project.version}</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>%l</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If the project version ends with <code>-SNAPSHOT</code> then this placeholder is <code>latest</code>, otherwise its the full version (same as <code>%v</code>)</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>%t</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If the project version ends with <code>-SNAPSHOT</code> this placeholder resolves to <code>snapshot-<timestamp></code> where timestamp has the date format <code>yyMMdd-HHmmss-SSSS</code> (eg <code>snapshot-</code>). This feature is especially useful during development in oder to avoid conflicts when images are to be updated which are still in use. You need to take care yourself of cleaning up old images afterwards, though.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"listingblock\">\n<div class=\"title\">Example for <image></div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><configuration>\n <!-- .... -->\n <images>\n <image> <i class=\"conum\" data-value=\"1\"></i><b>(1)</b>\n <name>%g/jkube-build-demo:0.1</name> <i class=\"conum\" data-value=\"2\"></i><b>(2)</b>\n <alias>service</alias> <i class=\"conum\" data-value=\"3\"></i><b>(3)</b>\n <build>....</build> <i class=\"conum\" data-value=\"4\"></i><b>(4)</b>\n </image>\n <image>\n ....\n </image>\n </images>\n</configuration></code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td>One or more <code><image></code> definitions</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"2\"></i><b>2</b></td>\n<td>The Docker image name used when creating the image. Note that <code>%g</code> would be replaced by project group id.</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"3\"></i><b>3</b></td>\n<td>An alias which can be used in other parts of the plugin to reference to this image. This alias must be unique.</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"4\"></i><b>4</b></td>\n<td>A <code><build></code> section as described in <a href=\"#buid-configuration\">Build Configuration</a></td>\n</tr>\n</table>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"build-configuration\">5.2.6. Build Configuration</h4>\n<div id=\"build-overview\" class=\"paragraph\">\n<p>There are two different modes how images can be built:</p>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Inline plugin configuration</div>\n<p>With an inline plugin configuration all information required to build the image is contained in the plugin configuration. By default its the standard XML based configuration for the plugin but can be switched to a property based configuration syntax as described in the section <a href=\"#external-configuration\">External configuration</a>. The XML configuration syntax is recommended because of its more structured and typed nature.</p>\n</div>\n<div class=\"paragraph\">\n<p>When using this mode, the Dockerfile is created on the fly with all instructions extracted from the configuration given.</p>\n</div>\n<div id=\"external-dockerfile\" class=\"paragraph\">\n<div class=\"title\">External Dockerfile or Docker archive</div>\n<p>Alternatively an external Dockerfile template or Docker archive can be used. This mode is switched on by using one of these three configuration options within</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><strong>contextDir</strong> specifies docker build context if an external dockerfile is located outside of Docker build context. If not specified, Dockerfile’s parent directory is used as build context.</p>\n</li>\n<li>\n<p><strong>dockerFile</strong> specifies a specific Dockerfile path. The Docker build context directory is set to <code>contextDir</code> if given. If not the directory by default is the directory in which the Dockerfile is stored.</p>\n</li>\n<li>\n<p><strong>dockerArchive</strong> specifies a previously saved image archive to load directly. If a <code>dockerArchive</code> is provided, no <code>dockerFile</code> must be given.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>All paths can be either absolute or relative paths. A relative path is looked up in <code>${project.basedir}/src/main/docker</code> by default. You can make it easily an absolute path by using <code>${project.basedir}</code> in your configuration.</p>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Adding assemblies in Dockerfile mode</div>\n<p>You can also use an assembly if specified in an <a href=\"#build-assembly\">assembly configuration</a>.\nHowever, you need to add the files on your own in the Dockerfile with an <code>ADD</code> or <code>COPY</code> command.\nThe files of the assembly are stored in a build context relative directory <code>maven/</code> but can be changed by changing the assembly name with the option <code><name></code> in the assembly configuration.</p>\n</div>\n<div class=\"paragraph\">\n<p>E.g. the files can be added with</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-dockerfile\" data-lang=\"dockerfile\">COPY maven/ /my/target/directory</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>so that the assembly files will end up in <code>/my/target/directory</code> within the container.</p>\n</div>\n<div class=\"paragraph\">\n<p>If this directory contains a <code>.maven-dockerignore</code> (or alternatively, a <code>.maven-dockerexclude</code> file), then it is used for excluding files for the build. Each line in this file is treated as a <a href=\"http://ant.apache.org/manual/Types/fileset.html\">FileSet exclude pattern</a> as used by the <a href=\"http://maven.apache.org/plugins/maven-assembly-plugin\">maven-assembly-plugin</a>. It is similar to <code>.dockerignore</code> when using Docker but has a slightly different syntax (hence the different name).\n<a href=\"#ex-build-dockerexclude\">Example <code>.maven-dockerexclude</code> or <code>.maven-dockerignore</code></a> is an example which excludes all compiled Java classes.</p>\n</div>\n<div id=\"ex-build-dockerexclude\" class=\"exampleblock\">\n<div class=\"title\">Example 1. Example <code>.maven-dockerexclude</code> or <code>.maven-dockerignore</code></div>\n<div class=\"content\">\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code>target/classes/** <i class=\"conum\" data-value=\"1\"></i><b>(1)</b></code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td>Exclude all compiled classes</td>\n</tr>\n</table>\n</div>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>If this directory contains a <code>.maven-dockerinclude</code> file, then it is used for including only those files for the build. Each line in this file is also treated as a <a href=\"http://ant.apache.org/manual/Types/fileset.html\">FileSet exclude pattern</a> as used by the <a href=\"http://maven.apache.org/plugins/maven-assembly-plugin\">maven-assembly-plugin</a>. <a href=\"#ex-build-dockerinclude\">Example <code>.maven-dockerinclude</code></a> shows how to include only jar file that have build to the Docker build context.</p>\n</div>\n<div id=\"ex-build-dockerinclude\" class=\"exampleblock\">\n<div class=\"title\">Example 2. Example <code>.maven-dockerinclude</code></div>\n<div class=\"content\">\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code>target/*.jar <i class=\"conum\" data-value=\"1\"></i><b>(1)</b></code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td>Only add jar file to you Docker build context.</td>\n</tr>\n</table>\n</div>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Except for the <a href=\"#build-assembly\">assembly configuration</a> all other configuration options are ignored for now.</p>\n</div>\n<div id=\"simple-dockerfile-build\" class=\"paragraph\">\n<div class=\"title\">Simple Dockerfile build</div>\n<p>When only a single image should be built with a Dockerfile no XML configuration is needed at all.\nAll what need to be done is to place a <code>Dockerfile</code> into the top-level module directory, alongside to <code>pom.xml</code>.\nYou can still configure <a href=\"#global-configuration\">global aspects</a> in the plugin configuration, but as soon as you add an <code><image></code> in the XML configuration, you need to configure also the build explicitly.</p>\n</div>\n<div class=\"paragraph\">\n<p>The image name is by default set from the Maven coordinates (<code>%g/%a:%l</code>, see <a href=\"#image-name\">Image Name </a> for an explanation of the params which are essentially the Maven GAV)\nThis name can be set with the property <code>jkube.image.name</code>.</p>\n</div>\n<div id=\"build-filtering\" class=\"paragraph\">\n<div class=\"title\">Filtering</div>\n<p>openshift-maven-plugin filters given Dockerfile with Maven properties, much like the <code>maven-resource-plugin</code> does. Filtering is enabled by default and can be switched off with a build config <code><filter>false</filter></code>. Properties which we want to replace are specified with the <code>${..}</code> syntax.\nReplacement includes Maven project properties such as <code>${project.artifactId}</code>, properties set in the build, command-line properties, and system properties. Unresolved properties remain untouched.</p>\n</div>\n<div class=\"paragraph\">\n<p>This partial replacement means that you can easily mix it with Docker build arguments and environment variable reference, but you need to be careful.\nIf you want to be more explicit about the property delimiter to clearly separate Docker properties and Maven properties you can redefine the delimiter.\nIn general, the <code>filter</code> option can be specified the same way as delimiters in the resource plugin.\nIn particular, if this configuration contains a * then the parts left, and right of the asterisks are used as delimiters.</p>\n</div>\n<div class=\"paragraph\">\n<p>For example, the default <code><filter>${*}</filter></code> parse Maven properties in the format that we know.\nIf you specify a single character for <code><filter></code> then this delimiter is taken for both, the start and the end.\nE.g a <code><filter>@</filter></code> triggers on parameters in the format <code>@…​@</code>, much like in the <code>maven-invoker-plugin</code>.\nUse something like this if you want to clearly separate from Docker builds args.\nThis form of property replacement works for Dockerfile only.\nFor replacing other data in other files targeted for the Docker image, please use the <code>maven-resource-plugin</code> or an <a href=\"#build-assembly\">assembly configuration</a> with filtering to make them available in the docker build context.</p>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Example</div>\n<p>The following example replaces all properties in the format <code>@property@</code> within the Dockerfile.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <configuration>\n <images>\n <image>\n <name>user/demo</name>\n <build>\n <filter>@</filter>\n </build>\n </image>\n </images>\n </configuration>\n ...\n</plugin></code></pre>\n</div>\n</div>\n<div id=\"build-plugin\" class=\"paragraph\">\n<div class=\"title\">Build Plugins</div>\n<p>This plugin supports so call <strong>dmp-plugins</strong> which are used during the build phase.\ndmp-plugins are enabled by just declaring a dependency in the plugin declaration:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n\n <dependencies>\n <dependency>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>run-java-sh</artifactId>\n <version>1.2.2</version>\n </dependency>\n </dependencies>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code>org.eclipse.jkube.runsh.RunShLoader</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>During a build with <code>openshift-maven-plugin:build</code>, those classes are loaded and certain fixed method are called.</p>\n</div>\n<div class=\"paragraph\">\n<p>The following methods are supported:</p>\n</div>\n<table id=\"build-plugin-methods\" class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 83.3334%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Method</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>addExtraFiles</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A <em>static</em> method called by dmp with a single <code>File</code> argument. This will point to a directory <code>docker-extra</code> which can be referenced easily by a Dockerfile or an assembly. A dmp plugin typically will create an own subdirectory to avoid a clash with other dmp-plugins.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>If a configured plugin does not provide method of this name and signature, then it will be simply ignored.\nAlso, no interface needs to be implemented to keep the coupling low.</p>\n</div>\n<div class=\"paragraph\">\n<p>The following official dmp-plugins are known and supported:</p>\n</div>\n<table id=\"build-plugins-official\" class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 71.4286%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Name</th>\n<th class=\"tableblock halign-left valign-top\">G,A</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"https://github.com/fabric8io-images/run-java-sh\">run-java.sh</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.io</code>, <code>run-java</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">General purpose startup script fo running Java applications. The dmp plugin creates a\n <code>target/docker-extra/run-java/run-java.sh</code> which can be included in a Dockerfile (see the example above).\n See the <a href=\"https://github.com/fabric8io-images/run-java-sh\">run-java.sh Documentation</a> for more details.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Check out <code>samples/run-java</code> for a fully working example.</p>\n</div>\n<div class=\"paragraph\">\n<p>All build relevant configuration is contained in the <code><build></code> section\nof an image configuration. The following configuration options are supported:</p>\n</div>\n<table id=\"config-image-build\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 14. Build configuration (<a href=\"#config-image\"><image> </a>)</caption>\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 83.3334%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#config-image-build-assembly\"><strong>assembly</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Specifies the assembly configuration as described in <a href=\"#build-assembly\">Build Assembly</a></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#build-buildargs\"><strong>args</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Map specifying the value of <a href=\"https://docs.docker.com/engine/reference/commandline/build/#set-build-time-variables-build-arg\">Docker build args</a>\nwhich should be used when building the image with an external Dockerfile which uses build arguments. The key-value syntax is the same as when defining Maven properties (or <code>labels</code> or <code>env</code>).\nThis argument is ignored when no external Dockerfile is used. Build args can also be specified as properties as\ndescribed in <a href=\"#build-buildargs\">Build Args</a></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>buildOptions</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Map specifying the build options to provide to the docker daemon when building the image. These options map to the ones listed as query parameters in the\n<a href=\"https://docs.docker.com/engine/reference/api/docker_remote_api_v1.24/#build-image-from-a-dockerfile\">Docker Remote API</a> and are restricted to simple options\n(e.g.: memory, shmsize). If you use the respective configuration options for build options natively supported by the build configuration (i.e. <code>noCache</code>, <code>cleanup=remove</code> for buildoption <code>forcerm=1</code> and <code>args</code> for build args) then these will override any corresponding options given here. The key-value syntax is the same as when defining environment variables or labels as described in <a href=\"#misc-env\">Setting Environment Variables and Labels</a>.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>cleanup</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Cleanup dangling (untagged) images after each build (including any containers created from them). Default is <code>try</code> which tries to remove the old image, but doesn’t fail the build if this is not possible because e.g. the image is still used by a running container. Use <code>remove</code> if you want to fail the build and <code>none</code> if no cleanup is requested.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a id=\"context-dir\"></a><strong>contextDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Path to a directory used for the build’s context. You can specify the <code>Dockerfile</code> to use with <strong>dockerFile</strong>, which by default is the Dockerfile found in the <code>contextDir</code>. The Dockerfile can be also located outside of the <code>contextDir</code>, if provided with an absolute file path. See <a href=\"#external-dockerfile\">External Dockerfile</a> for details.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#misc-startup\"><strong>cmd</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A command to execute by default (i.e. if no command is provided when a container for this image is started). See <a href=\"#misc-startup\">Startup Arguments</a> for details.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>compression</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The compression mode how the build archive is transmitted to the docker daemon (<code>oc:build</code>) and how docker build archives are attached to this build as sources (<code>oc:source</code>). The value can be <code>none</code> (default), <code>gzip</code> or <code>bzip2</code>.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>dockerFile</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Path to a <code>Dockerfile</code> which also triggers <em>Dockerfile mode</em>. See <a href=\"#external-dockerfile\">External Dockerfile</a> for details.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>dockerArchive</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Path to a saved image archive which is then imported. See <a href=\"#external-dockerfile\">Docker archive</a> for details.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#misc-startup\"><strong>entryPoint</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">An entrypoint allows you to configure a container that will run as an executable. See <a href=\"#misc-startup\">Startup Arguments</a> for details.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#misc-env\"><strong>env</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The environments as described in <a href=\"#misc-env\">Setting Environment Variables and Labels</a>.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>filter</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Enable and set the delimiters for property replacements. By default properties in the format <code>${..}</code> are replaced with Maven properties. You can switch off property replacement by setting this property to <code>false</code>. When using a single char like <code>@</code> then this is used as a delimiter (e.g <code>@…​@</code>). See <a href=\"#build-filtering\">Filtering</a> for more details.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a id=\"build-config-from\"></a><strong>from</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The base image which should be used for this image. If not given this default to <code>busybox:latest</code> and is suitable for a pure data image.\nIn case of an <a href=\"#build-openshift\">S2I Binary build</a> this parameter specifies the S2I Builder Image to use, which by default is <code>fabric8/s2i-java:latest</code>. See also <a href=\"#build-config-from-ext\">from-ext</a> how to add additional properties for the base image.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a id=\"build-config-from-ext\"></a><strong>fromExt</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>Extended definition for a base image. This field holds a map of defined in <code><key>value</key></code> format. The known keys are:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code><name></code> : Name of the base image</p>\n</li>\n<li>\n<p><code><kind></code> : Kind of the reference to the builder image when in S2I build mode. By default its <code>ImageStreamTag</code> but can be also <code>ImageStream</code>. An alternative would be <code>DockerImage</code></p>\n</li>\n<li>\n<p><code><namespace></code> : Namespace where this builder image lives.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>A provided <code><from></code> takes precedence over the name given here. This tag is useful for extensions of this plugin.</p>\n</div></div></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#build-healthcheck\"><strong>healthCheck</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Definition of a health check as described in <a href=\"#build-healthcheck\">Healthcheck</a></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>imagePullPolicy</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Specific pull policy for the base image. This overwrites any global pull policy.\n See the global configuration option <a href=\"#image-pull-policy\">imagePullPolicy</a> for the possible values and the default.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#misc-env\"><strong>labels</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Labels as described in <a href=\"#misc-env\">Setting Environment Variables and Labels</a>.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>maintainer</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The author (<code>MAINTAINER</code>) field for the generated image</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>noCache</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Don’t use Docker’s build cache. This can be overwritten by setting a system property <code>docker.noCache</code> when running Maven.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>cacheFrom</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A list of <code><image></code> elements specifying image names to use as cache sources.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>optimise</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">if set to true then it will compress all the <code>runCmds</code> into a single <code>RUN</code> directive so that only one image layer is created.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>ports</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The exposed ports which is a list of <code><port></code> elements, one for each port to expose. Whitespace is trimmed from each element and empty elements are ignored. The format can be either pure numerical (\"8080\") or with the protocol attached (\"8080/tcp\").</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>shell</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Shell to be used for the <strong>runCmds</strong>. It contains <strong>arg</strong> elements which are defining the executable and its params.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>runCmds</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Commands to be run during the build process. It contains <strong>run</strong> elements which are passed to the shell. Whitespace is trimmed from each element and empty elements are ignored. The run commands are inserted right after the assembly and after <strong>workdir</strong> into the Dockerfile.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skip</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">if set to true disables building of the image. This config option is best used together with a maven property</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipTag</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set to <code>true</code> this plugin won’t add any tags to images.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>tags</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">List of additional <code>tag</code> elements with which an image is to be tagged after the build. Whitespace is trimmed from each element and empty elements are ignored.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>user</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">User to which the Dockerfile should switch to the end (corresponds to the <code>USER</code> Dockerfile directive).</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>volumes</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">List of <code>volume</code> elements to create a container volume. Whitespace is trimmed from each element and empty elements are ignored.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>workdir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Directory to change to when starting the container.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>From this configuration this Plugin creates an in-memory Dockerfile,\ncopies over the assembled files and calls the Docker daemon via its\nremote API.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><build>\n <from>java:8u40</from>\n <maintainer>john.doe@example.com</maintainer>\n <tags>\n <tag>latest</tag>\n <tag>${project.version}</tag>\n </tags>\n <ports>\n <port>8080</port>\n </ports>\n <volumes>\n <volume>/path/to/expose</volume>\n </volumes>\n <buildOptions>\n <shmsize>2147483648</shmsize>\n </buildOptions>\n\n <shell>\n <exec>\n <arg>/bin/sh</arg>\n <arg>-c</arg>\n </exec>\n </shell>\n <runCmds>\n <run>groupadd -r appUser</run>\n <run>useradd -r -g appUser appUser</run>\n </runCmds>\n\n <entryPoint>\n <!-- exec form for ENTRYPOINT -->\n <exec>\n <arg>java</arg>\n <arg>-jar</arg>\n <arg>/opt/demo/server.jar</arg>\n </exec>\n </entryPoint>\n\n <assembly>\n <mode>dir</mode>\n <targetDir>/opt/demo</targetDir>\n <descriptor>assembly.xml</descriptor>\n </assembly>\n</build></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>In order to see the individual build steps you can switch on <code>verbose</code> mode either by setting the property\n<code>jkube.docker.verbose</code> or by using <code><verbose>true</verbose></code> in the <a href=\"#build-goal-configuration\">Build Goal configuration</a></p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"build-assembly\">5.2.7. Assembly</h4>\n<div class=\"paragraph\">\n<p>The <code><assembly></code> element within <code><build></code> element has an XML structure and defines how build artifacts and other files\ncan be added to the Docker image.</p>\n</div>\n<table id=\"config-image-build-assembly\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 15. Assembly Configuration (<a href=\"#config-image\"><image> </a> : <a href=\"#config-image-build\"><build> </a>)</caption>\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 83.3334%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>name</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Assembly name, which is <code>maven</code> by default. This name is used for the archives and directories created during the build.\n This directory holds the files specified by the assembly. If an <a href=\"#external-dockerfile\">external Dockerfile</a> is used then\n this name is also the relative directory which contains the assembly files.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>targetDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Directory under which the files and artifacts contained in the assembly will be copied within the container.\n The default value for this is <code>/<assembly name></code>, so <code>/maven</code> if <strong>name</strong> is not set to a different value.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#build-assembly-inline\"><strong>inline</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Inlined assembly descriptor as described in <a href=\"#build-assembly-inline\">Assembly - Inline</a> below.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>exportTargetDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Specification whether the <code>targetDir</code> should be exported as a volume. This value is <code>true</code> by default except in the\n case the <code>targetDir</code> is set to the container root (<code>/</code>). It is also <code>false</code> by default when a base image is used with\n <code>from</code> since exporting makes no sense in this case and will waste disk space unnecessarily.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>excludeFinalOutputArtifact</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">By default, the project’s final artifact will be included in the assembly, set this flag to true in case the\n artifact should be excluded from the assembly.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>mode</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>Mode how the how the assembled files should be collected:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>dir</code> : Files are simply copied (default),</p>\n</li>\n<li>\n<p><code>tar</code> : Transfer via tar archive</p>\n</li>\n<li>\n<p><code>tgz</code> : Transfer via compressed tar archive</p>\n</li>\n<li>\n<p><code>zip</code> : Transfer via ZIP archive</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>The archive formats have the advantage that file permission can be preserved better (since the copying is independent\nfrom the underlying files systems), but might triggers internal bugs from the Maven assembler (as it has been reported\nin <a href=\"https://github.com/fabric8io/docker-maven-plugin/issues/171\">#171</a>)</p>\n</div></div></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>permissions</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>Permission of the files to add:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>ignore</code> to use the permission as found on files regardless on any\nassembly configuration</p>\n</li>\n<li>\n<p><code>keep</code> to respect the assembly provided permissions</p>\n</li>\n<li>\n<p><code>exec</code> for setting the executable bit on all files (required for Windows when using an assembly mode <code>dir</code>)</p>\n</li>\n<li>\n<p><code>auto</code> to let the plugin select <code>exec</code> on Windows and <code>keep</code> on others.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p><code>keep</code> is the default value.</p>\n</div></div></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>tarLongFileMode</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Sets the TarArchiver behaviour on file paths with more than 100 characters length. Valid values are: \"warn\"(default), \"fail\", \"truncate\", \"gnu\", \"posix\", \"posix_warn\" or \"omit\"</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>user</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>User and/or group under which the files should be added. The user must already exist in the base image.</p>\n</div>\n<div class=\"paragraph\">\n<p>It has the general format <code>user[:group[:run-user]]</code>. The user and group can be given either as numeric user- and group-id or as names. The group id is optional.</p>\n</div>\n<div class=\"paragraph\">\n<p>If a third part is given, then the build changes to user <code>root</code> before changing the ownerships, changes the ownerships and then change to user <code>run-user</code> which is then used for the final command to execute. This feature might be needed, if the base image already changed the user (e.g. to 'jboss') so that a <code>chown</code> from root to this user would fail.</p>\n</div>\n<div class=\"paragraph\">\n<p>For example, the image <code>jboss/wildfly</code> use a \"jboss\" user under which all commands are executed. Adding files in Docker always happens under the UID root. These files can only be changed to \"jboss\" is the <code>chown</code> command is executed as root. For the following commands to be run again as \"jboss\" (like the final <code>standalone.sh</code>), the plugin switches back to user <code>jboss</code> (this is this \"run-user\") after changing the file ownership. For this example a specification of\n<code>jboss:jboss:jboss</code> would be required.</p>\n</div></div></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>In the event you do not need to include any artifacts with the image, you may safely omit this element from the configuration.</p>\n</div>\n<div class=\"sect4\">\n<h5 id=\"build-assembly-inline\">Assembly - Inline</h5>\n<div class=\"paragraph\">\n<p>Inlined assembly description with a format very similar to\n<a href=\"https://maven.apache.org/plugins/maven-assembly-plugin/assembly.html\">Maven Assembly Plugin</a>.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 16. Assembly - Inline (<a href=\"#config-image\"><image> </a> : <a href=\"#config-image-build\"><build> </a> : <a href=\"#config-image-build-assembly\"><assembly> </a>)</caption>\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 83.3334%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>id</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Unique ID for the assembly.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>files</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>List of files for the assembly.</p>\n</div>\n<div class=\"paragraph\">\n<p>Each file has the following fields:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>source</code>: Absolute or relative path from the project’s directory of the file to be included in the assembly.</p>\n</li>\n<li>\n<p><code>outputDirectory</code>: Output directory relative to the root of the root directory of the assembly.</p>\n</li>\n<li>\n<p><code>destName</code>: Destination filename in the outputDirectory.</p>\n</li>\n<li>\n<p><code>fileMode</code>: Similar to a UNIX permission, sets the file mode of the file included.</p>\n</li>\n</ul>\n</div></div></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>fileSets</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>List of filesets for the Assembly.</p>\n</div>\n<div class=\"paragraph\">\n<p>Each fileset has the following fields:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>directory</code>: Absolute or relative location from the project’s directory.</p>\n</li>\n<li>\n<p><code>outputDirectory</code>: Output directory relative to the root of the root directory of the assembly fileSet.</p>\n</li>\n<li>\n<p><code>includes</code>: A set of files and directories to include.</p>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>If none is present, then everything is included.</p>\n</li>\n<li>\n<p>Files can be referenced by using their complete path name.</p>\n</li>\n<li>\n<p>Wildcards are also supported, patterns will be matched using\n<a href=\"https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/nio/file/FileSystem.html#getPathMatcher(java.lang.String)\">\nFileSystem#getPathMatcher</a> <code>glob</code> syntax.</p>\n</li>\n</ul>\n</div>\n</li>\n<li>\n<p><code>excludes</code>: A set of files and directory to exclude.</p>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>If none is present, then there are no exclusions.</p>\n</li>\n</ul>\n</div>\n</li>\n<li>\n<p><code>fileMode</code>: Similar to a UNIX permission, sets the file mode of the files included.</p>\n</li>\n<li>\n<p><code>directoryMode</code>: Similar to a UNIX permission, sets the directory mode of the directories included.</p>\n</li>\n</ul>\n</div></div></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>baseDirectory</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Base directory from which to resolve the Assembly files and filesets.</p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"misc-env\">5.2.8. Environment and Labels</h4>\n<div class=\"paragraph\">\n<p>When creating a container one or more environment variables can be set via configuration with the <code>env</code> parameter</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><env>\n <JAVA_HOME>/opt/jdk8</JAVA_HOME>\n <CATALINA_OPTS>-Djava.security.egd=file:/dev/./urandom</CATALINA_OPTS>\n</env></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>If you put this configuration into profiles you can easily create various test variants with a single image (e.g. by switching the JDK or whatever).</p>\n</div>\n<div class=\"paragraph\">\n<p>It is also possible to set the environment variables from the outside of the plugin’s configuration with the parameter <code>envPropertyFile</code>. If given, this property file is used to set the environment variables where the keys and values specify the environment variable. Environment variables specified in this file override any environment variables specified in the configuration.</p>\n</div>\n<div class=\"paragraph\">\n<p>Labels can be set inline the same way as environment variables:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><labels>\n <com.example.label-with-value>foo</com.example.label-with-value>\n <version>${project.version}</version>\n <artifactId>${project.artifactId}</artifactId>\n</labels></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"misc-startup\">5.2.9. Startup Arguments</h4>\n<div class=\"paragraph\">\n<p>Using <code>entryPoint</code> and <code>cmd</code> it is possible to specify the <a href=\"https://docs.docker.com/reference/builder/#entrypoint\">entry point</a>\nor <a href=\"https://docs.docker.com/reference/builder/#cmd\">cmd</a> for a container.</p>\n</div>\n<div class=\"paragraph\">\n<p>The difference is, that an <code>entrypoint</code> is the command that always be executed, with the <code>cmd</code> as argument. If no <code>entryPoint</code> is provided, it defaults to <code>/bin/sh -c</code> so any <code>cmd</code> given is executed with a shell. The arguments given to <code>docker run</code> are always given as arguments to the\n<code>entrypoint</code>, overriding any given <code>cmd</code> option. On the other hand if no extra arguments are given to <code>docker run</code> the default <code>cmd</code> is used as argument to <code>entrypoint</code>.</p>\n</div>\n<div class=\"sidebarblock\">\n<div class=\"content\">\n<div class=\"paragraph\">\n<p>See this <a href=\"http://stackoverflow.com/questions/21553353/what-is-the-difference-between-cmd-and-entrypoint-in-a-dockerfile\">stackoverflow question</a> for a detailed explanation.</p>\n</div>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>An entry point or command can be specified in two alternative formats:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 17. Entrypoint and Command Configuration</caption>\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 83.3334%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Mode</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>shell</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Shell form in which the whole line is given to <code>shell -c</code> for interpretation.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>exec</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">List of arguments (with inner <code><args></code>) arguments which will be given to the <code>exec</code> call directly without any shell interpretation.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Either shell or params should be specified.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><entryPoint>\n <!-- shell form -->\n <shell>java -jar $HOME/server.jar</shell>\n</entryPoint></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>or</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><entryPoint>\n <!-- exec form -->\n <exec>\n <arg>java</arg>\n <arg>-jar</arg>\n <arg>/opt/demo/server.jar</arg>\n </exec>\n</entryPoint></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This can be formulated also more dense with:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><!-- shell form -->\n<entryPoint>java -jar $HOME/server.jar</entryPoint></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>or</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><entryPoint>\n <!-- exec form -->\n <arg>java</arg>\n <arg>-jar</arg>\n <arg>/opt/demo/server.jar</arg>\n</entryPoint></code></pre>\n</div>\n</div>\n<div class=\"dlist\">\n<dl>\n<dt class=\"hdlist1\">INFO</dt>\n<dd>\n<p>Startup arguments are not used in S2I builds</p>\n</dd>\n</dl>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"build-buildargs\">5.2.10. Build Args</h4>\n<div id=\"property-buildargs\" class=\"paragraph\">\n<p>As described in section <a href=\"#build-configuration\">Configuration</a> for external Dockerfiles <a href=\"https://docs.docker.com/engine/reference/commandline/build/#set-build-time-variables-build-arg\">Docker build arg</a> can be used. In addition to the\nconfiguration within the plugin configuration you can also use properties to specify them:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Set a system property when running Maven, eg.: <code>-Ddocker.buildArg.http_proxy=http://proxy:8001</code>. This is especially\nuseful when using predefined Docker arguments for setting proxies transparently.</p>\n</li>\n<li>\n<p>Set a project property within the <code>pom.xml</code>, eg.:</p>\n</li>\n</ul>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><docker.buildArg.myBuildArg>myValue</docker.buildArg.myBuildArg></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Please note that the system property setting will always override the project property. Also note that for all\nproperties which are not Docker <a href=\"https://docs.docker.com/engine/reference/builder/#arg\">predefined</a> properties, the\nexternal Dockerfile must contain an <code>ARGS</code> instruction.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"build-healthcheck\">5.2.11. Healthcheck</h4>\n<div class=\"paragraph\">\n<p>Healthchecks has been introduced since Docker 1.12 and are a way to tell Docker how to test a container to check that it’s still working. With a health check you specify a command which is periodically executed and checked for its return value. If the healtcheck return with an exit 0 the container is considered to be healthy, if it returns with 1 then the container is not working correctly.</p>\n</div>\n<div class=\"paragraph\">\n<p>The healtcheck configuration can have the following options</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 18. Healthcheck Configuration</caption>\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 83.3334%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>cmd</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Command to execute, which can be given in an shell or exec format as described in <a href=\"#misc-startup\">Startup Arguments</a>.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>interval</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Interval for how often to run the healthcheck. The time is specified in seconds, but a time unit can be appended to change this.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>mode</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Mode of the healthcheck. This can be <code>cmd</code> which is the default and specifies that the health check should be executed. Or <code>none</code> to disable a health check from the base image. Only use this option with <code>none</code> for disabling some healthcheck from the base image.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>retries</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">How many retries should be performed before the container is to be considered unhealthy.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>startPeriod</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Initialization time for containers that need time to bootstrap. Probe failure during that period will not be counted towards the maximum number of retries. However, if a health check succeeds during the start period, the container is considered started and all consecutive failures will be counted towards the maximum number of retries. Given in seconds, but another time unit can be appended.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>timeout</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Timeout after which healthckeck should be stopped and considered to have failed. Given in seconds, but another time unit can be appended.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>The following example queries an URL every 10s as an healthcheck:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><healthCheck>\n <!-- Check every 5 minutes -->\n <interval>5m</interval>\n <!-- Fail if no response after 3 seconds -->\n <timeout>3s</timeout>\n <!-- Allow 30 minutes for the container to start before being flagged as unhealthy -->\n <startPeriod>30m</startPeriod>\n <!-- Fail 3 times until the container is considerd unhealthy -->\n <retries>3</retries>\n <!-- Command to execute in shell form -->\n <cmd>curl -f http://localhost/ || exit 1</cmd>\n</healthCheck></code></pre>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"jkube:push\">5.3. <strong>oc:push</strong></h3>\n<div class=\"admonitionblock warning\">\n<table>\n<tr>\n<td class=\"icon\">\n<i class=\"fa icon-warning\" title=\"Warning\"></i>\n</td>\n<td class=\"content\">\nSection needs review and rearrangements\n</td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<p>This goal uploads images to the registry which have a <code><build></code> configuration section. The images to push can be restricted with\nthe global option <code>filter</code> (see <a href=\"#build-goal-configuration\">Build Goal Configuration</a> for details). The registry to push is by\ndefault <code>docker.io</code> but can be specified as part of the images’s <code>name</code> the Docker way.\nE.g. <code>docker.test.org:5000/data:1.5</code> will push the image <code>data</code> with tag <code>1.5</code> to the registry <code>docker.test.org</code> at port\n<code>5000</code>. Registry credentials (i.e. username and password) can be specified in multiple ways as described in section <a href=\"#authentication\">Authentication</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>By default a progress meter is printed out on the console, which is omitted when using Maven in batch mode (option <code>-B</code>).\nA very simplified progress meter is provided when using no color output (i.e. with <code>-Djkube.useColor=false</code>).</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 19. Push options</caption>\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 71.4285%;\">\n<col style=\"width: 14.2858%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipPush</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set to <code>true</code> the plugin won’t push any images that have been built.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skip.push</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipTag</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set to <code>true</code> this plugin won’t push any tags</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skip.tag</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>pushRegistry</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The registry to use when pushing the image. See <a href=\"#registry\">Registry Handling</a> for\nmore details.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.push.registry</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>retries</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">How often should a push be retried before giving up. This useful for flaky registries which tend to return 500 error codes from time to time. The default is 0 which means no retry at all.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.push.retries</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect2\">\n<h3 id=\"jkube:apply\">5.4. <strong>oc:apply</strong></h3>\n<div class=\"paragraph\">\n<p>This goal applies the resources created with <a href=\"#jkube:resource\"><strong>oc:resource</strong></a> to a connected Kubernetes cluster. It’s similar to <a href=\"#jkube:deploy\"><strong>oc:deploy</strong></a> but does not the full deployment cycle of creating the resource, creating the application image and sending the resource descriptors to the clusters. This goal can be easily bound to <code><executions></code> within the plugin’s configuration and binds by default to the <code>install</code> lifecycle phase.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn oc:apply</code></pre>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"Supported-Properties-Apply\">5.4.1. Supported Properties For Apply goal</h4>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 20. Other options available with apply goal</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>recreate</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Should we update resources by deleting them first and then creating them again.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.recreate</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>openshiftManifest</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The generated kubernetes YAML file.</p>\n<p class=\"tableblock\"> Defaults to <code>${basedir}/target/classes/META-INF/jkube/openshift.yml</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.openshiftManifest</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>create</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Should we create new resources.</p>\n<p class=\"tableblock\"> Defaults to <code>true</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.deploy.create</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>rolling</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Should we use rolling updates to apply changes.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.rolling</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>failOnNoKubernetesJson</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Should we fail if there is no Kubernetes JSON.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.deploy.failOnNoKubernetesJson</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>servicesOnly</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">In services only mode we only process services so that those can be recursively created/updated first before\n creating/updating any pods and replication controllers.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.deploy.servicesOnly</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>ignoreServices</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Do we want to ignore services. This is particularly useful when in recreate mode to let you easily recreate all the\n ReplicationControllers and Pods but leave any service definitions alone to avoid changing the portalIP addresses and\n breaking existing pods using the service.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.deploy.ignoreServices</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>processTemplatesLocally</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Process templates locally in Java so that we can apply OpenShift templates on any Kubernetes environment.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.deploy.processTemplatesLocally</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>deletePods</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Should we delete all the pods if we update a Replication Controller.</p>\n<p class=\"tableblock\"> Defaults to <code>true</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.deploy.deletePods</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>ignoreRunningOAuthClients</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Do we want to ignore OAuthClients which are already running?. OAuthClients are shared across namespaces so we should\n not try to update or create/delete global oauth clients.</p>\n<p class=\"tableblock\"> Defaults to <code>true</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.deploy.ignoreRunningOAuthClients</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>jsonLogDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The folder we should store any temporary json files or results.</p>\n<p class=\"tableblock\"> Defaults to <code>${basedir}/target/jkube/applyJson</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.deploy.jsonLogDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>waitSeconds</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">How many seconds to wait for a URL to be generated for a service.</p>\n<p class=\"tableblock\"> Defaults to <code>5</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.serviceUrl.waitSeconds</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>resourceDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Folder where to find project specific files.</p>\n<p class=\"tableblock\"> Defaults to <code>${basedir}/src/main/jkube</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.resourceDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>environment</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Environment name where resources are placed. For example, if you set this property to dev and resourceDir is the\n default one, jkube will look at <code>src/main/jkube/dev</code>.</p>\n<p class=\"tableblock\"> Defaults to <code>null</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.environment</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipApply</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Skip applying the resources.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skip.apply</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"jkube:helm\">5.5. <strong>oc:helm</strong></h3>\n<div class=\"paragraph\">\n<p>This goal is for creating\n<a href=\"https://helm.sh/docs/topics/charts\">Helm charts</a>\nfor your Maven project so that you can install, update or delete your app in Kubernetes\nusing <a href=\"https://github.com/helm/helm\">Helm</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>For creating a Helm chart you simply call <code>oc:helm</code> goal on the command line:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn oc:resource oc:helm</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The <code>oc:resource</code> goal is required to create the resource descriptors which are included in the Helm chart.\nIf you have already built the resource then you can omit this goal.</p>\n</div>\n<div class=\"paragraph\">\n<p>The configuration is defined in a <code><helm></code> section within the plugin’s configuration:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example Helm configuration</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <configuration>\n <helm>\n <chart>Jenkins</chart>\n <keywords>ci,cd,server</keywords>\n </helm>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This configuration section knows the following sub-elements in order to configure your Helm chart.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 21. Helm configuration</caption>\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 71.4285%;\">\n<col style=\"width: 14.2858%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>chart</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Chart name, which is <code>${project.artifactId}</code> if not provided.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.chart</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>version</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Chart SemVer version, which is <code>${project.version}</code> if not provided.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.version</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>description</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Chart single-sentence description, which is <code>${project.description}</code> if not provided.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.description</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>home</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Chart URL for this project’s home page, which is <code>${project.url}</code> if not provided.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.home</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>sources</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Chart list of URLs to source code for this project, defaults to the list of <code>${project.scm.url}</code> if not provided.</p></td>\n<td class=\"tableblock halign-left valign-top\"></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>maintainers</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Chart list of maintainers (name+email), defaults to the list of\n `${project.developers.name}:${project.developers.name}`if not provided.</p></td>\n<td class=\"tableblock halign-left valign-top\"></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>icon</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Chart URL to an SVG or PNG image to be used as an icon, default is extracted from the kubernetes manifest\n (<code>kubernetes.yml</code>) <code>jkube.io/iconUrl</code> annotation if not provided.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.icon</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>keywords</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Comma separated list of keywords to add to the chart.</p></td>\n<td class=\"tableblock halign-left valign-top\"></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>engine</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The template engine to use.</p></td>\n<td class=\"tableblock halign-left valign-top\"></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>additionalFiles</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The list of additional files to be included in the Chart archive. Any file named <code>README</code> or <code>LICENSE</code> will <strong>always</strong>\n be included by default.</p></td>\n<td class=\"tableblock halign-left valign-top\"></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>type</strong> / <strong>types</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Platform for which to generate the chart. By default this is <code>kubernetes</code>, but can be also <code>openshift</code> for using\n OpenShift specific resources in the chart. You can also add both values as a comma separated list.</p>\n<p class=\"tableblock\"> <em>Please note that there is no OpenShift support yet for charts, so this is experimental.</em></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.type</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>sourceDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Where to find the resource descriptors generated with <code>oc:resource</code>.\n By default this is <code>${basedir}/target/classes/META-INF/jkube., which is also the output directory used by `oc:resource</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.sourceDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>outputDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Where to create the Helm chart, which is <code>${basedir}/target/jkube/helm</code> by default for Kubernetes\n and <code>${basedir}/target/jkube/helmshift</code> for OpenShift.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.outputDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>tarballOutputDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Where to create the the Helm chart archive, which is <code>${basedir}/target</code> if not provided.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.tarballOutputDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>chartExtension</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Helm chart file extension (<code>tgz</code>, <code>tar.bz</code>, <code>tar.bzip2</code>, <code>tar.bz2</code>), default value is <code>tar.gz</code> if not provided.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.chartExtension</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>In a next step you can install this via the <a href=\"https://github.com/helm/helm/releases\">helm command line tool</a> as follows:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">helm install nameForChartInRepository target/jkube/helm/${chartName}/kubernetes</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>or</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre>helm install target/jkube/helm/${chartName}/kubernetes --generate-name</pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>To add the <code>helm</code> goal to your project so that it is automatically executed just add the <code>helm</code> goal to the <code>executions</code>\nsection of the <code>openshift-maven-plugin</code> section of your <code>pom.xml</code>.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Add helm goal</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n\n <!-- ... -->\n\n <executions>\n <execution>\n <goals>\n <goal>resource</goal>\n <goal>helm</goal>\n <goal>build</goal>\n <goal>deploy</goal>\n </goals>\n </execution>\n </executions>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>In addition, this goal will also create a tar-archive below <code>${basedir}/target</code> which contains the chart with its template.\nThis tar is added as an artifact with classifier <code>helm</code> to the build (<code>helmshift</code> for the OpenShift mode).</p>\n</div>\n<div class=\"sect3\">\n<h4 id=\"helm-multi-module\">5.5.1. Multi-module projects</h4>\n<div class=\"paragraph\">\n<p>In multi-module Maven projects, some configuration default values differ from what you may expect.</p>\n</div>\n<div class=\"paragraph\">\n<p>Given a project with a parent module and at least a child module, if you run the helm goal within the child\nmodule, values for <code>home</code> and <code>sources</code> will get the submodule’s artifactId appended.</p>\n</div>\n<div class=\"paragraph\">\n<p>This behavior is normal, since the helm goal is executed in the scope of the submodule. The Maven\nvariables from which JKube extracts these defaults (<code>${project.url}</code> and <code>${project.scm.url}</code>)\nalready contain the appended submodule’s artifactId.</p>\n</div>\n<div class=\"paragraph\">\n<p>In order to prevent this, there are several alternatives:</p>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Manual configuration</div>\n<p>Provide the configuration manually for these values:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <configuration>\n <helm>\n <home>https://valid-home-with-no-appended-values.example.com</home>\n <sources>\n <source>https://github.com/valid-repo/with-no-appended-values</source>\n </sources>\n </helm>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Manual configuration using properties in child module</div>\n<p>Following the previous approach, if you don’t want to hardcode the values, or if you\nalready defined them in the parent module you can proceed with the following configuration\nin the <strong>child</strong> module:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><properties>\n <!-- ... -->\n <helm.home>${project.parent.url}</helm.home>\n <helm.source>${project.parent.scm.url}</helm.source>\n</properties>\n<!-- ... -->\n<plugin>\n <configuration>\n <helm>\n <home>${helm.home}</home>\n <sources>\n <source>${helm.source}</source>\n </sources>\n </helm>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Configure inheritance in parent project for the affected elements</div>\n<p>Configure inheritance of the <code>project</code> and <code>scm</code> elements in the <strong>parent</strong> module:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><project xmlns=\"http://maven.apache.org/POM/4.0.0\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\n xsi:schemaLocation=\"http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd\"\n child.project.url.inherit.append.path=\"false\"\n >\n<!-- ... -->\n <url>https://jkube.example.com</url>\n <scm child.scm.url.inherit.append.path=\"false\">\n <url>https://github.com/eclipse/jkube</url>\n </scm>\n<!-- ... -->\n</project></code></pre>\n</div>\n</div>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"goals-overview-develop\">6. Development Goals</h2>\n<div class=\"sectionbody\">\n<div class=\"sect2\">\n<h3 id=\"jkube:deploy\">6.1. <strong>oc:deploy</strong></h3>\n<div class=\"paragraph\">\n<p>This is the main goal for building your docker image, generating the kubernetes resources and deploying them into the cluster (insofar your pom.xml is set up correct; keep reading :)).</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn oc:deploy</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This goal is designed to run <a href=\"#jkube:build\"><strong>oc:build</strong></a> and <a href=\"#jkube:resource\"><strong>oc:resource</strong></a> before the deploy <strong>if</strong> you have the goals bound in your pom.xml:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n <version>1.0.2</version>\n\n <!-- Connect oc:resource, oc:build and oc:helm to lifecycle phases -->\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>build</goal>\n <goal>helm</goal>\n </goals>\n </execution>\n </executions>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Effectively this builds your project then invokes these goals:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><a href=\"#jkube:build\"><strong>oc:build</strong></a></p>\n</li>\n<li>\n<p><a href=\"#jkube:apply\"><strong>oc:apply</strong></a></p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>By default the behaviour of resource goal is it generates <code>route.yml</code> for a service if you have not done any configuration changes. Sometimes there may be case when you want to generate route.yml but do not want to create route resource on OpenShift Cluster. This can be achieved by the following configuration.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example for not generating route resource on your cluster</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n <version>1.0.2</version>\n <configuration>\n <enricher>\n <excludes>\n <exclude>jkube-expose</exclude>\n </excludes>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"jkube:undeploy\">6.2. <strong>oc:undeploy</strong></h3>\n<div class=\"paragraph\">\n<p>This goal is for deleting the kubernetes resources that you deployed via the <a href=\"#jkube:apply\"><strong>oc:apply</strong></a> or <a href=\"#jkube:deploy\"><strong>oc:deploy</strong></a> goals</p>\n</div>\n<div class=\"paragraph\">\n<p>It iterates through all the resources generated by the <a href=\"#jkube:resource\"><strong>oc:resource</strong></a> goal and deletes them from your current kubernetes cluster.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn oc:undeploy</code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"jkube:log\">6.3. <strong>oc:log</strong></h3>\n<div class=\"paragraph\">\n<p>This goal tails the log of the app that you deployed via the <a href=\"#jkube:deploy\"><strong>oc:deploy</strong></a> goal</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn oc:log</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>You can then terminate the output by hitting <code>Ctrl+C</code></p>\n</div>\n<div class=\"paragraph\">\n<p>If you wish to get the log of the app and then terminate immediately then try:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn oc:log -Djkube.log.follow=false</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This lets you pipe the output into grep or some other tool</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn oc:log -Djkube.log.follow=false | grep Exception</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>If your app is running in multiple pods you can configure the pod name to log via the <code>jkube.log.pod</code> property, otherwise it defaults to the latest pod:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn oc:log -Djkube.log.pod=foo</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>If your pod has multiple containers you can configure the container name to log via the <code>jkube.log.container</code> property, otherwise it defaults to the first container:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn oc:log -Djkube.log.container=foo</code></pre>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"Supported-Properties-Log\">6.3.1. Supported Properties for Log goal</h4>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 22. Options available with log goal</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>logFollow</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Get follow logs for your application inside Kubernetes.</p>\n<p class=\"tableblock\"> Defaults to <code>true</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.log.follow</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>logContainer</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Get logs of some specific container inside your application Deployment.</p>\n<p class=\"tableblock\"> Defaults to <code>null</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.log.container</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>logPod</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Get logs of some specific pod inside your application Deployment.</p>\n<p class=\"tableblock\"> Defaults to <code>null</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.log.pod</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"jkube:debug\">6.4. <strong>oc:debug</strong></h3>\n<div class=\"paragraph\">\n<p>This goal enables debugging in your Java app and then port forwards from localhost to the latest running pod of your app so that you can easily debug your app from your Java IDE.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn oc:debug</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Then follow the on screen instructions.</p>\n</div>\n<div class=\"paragraph\">\n<p>The default debug port is <code>5005</code>. If you wish to change the local port to use for debugging then pass in the <code>jkube.debug.port</code> parameter:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn oc:debug -Djkube.debug.port=8000</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Then in your IDE you start a Remote debug execution using this remote port using localhost and you should be able to set breakpoints and step through your code.</p>\n</div>\n<div class=\"paragraph\">\n<p>This lets you debug your apps while they are running inside a Kubernetes cluster - for example if you wish to debug a REST endpoint while another pod is invoking it.</p>\n</div>\n<div class=\"paragraph\">\n<p>Debug is enabled via the <code>JAVA_ENABLE_DEBUG</code> environment variable being set to <code>true</code>. This environment variable is used for all the standard Java docker images used by Spring Boot, flat classpath and executable JAR projects and Wildfly Swarm. If you use your own custom docker base image you may wish to also respect this environment variable too to enable debugging.</p>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_speeding_up_debugging\">6.4.1. Speeding up debugging</h4>\n<div class=\"paragraph\">\n<p>By default the <code>oc:debug</code> goal has to edit your Deployment to enable debugging then wait for a pod to start. It might be in development you frequently want to debug things and want to speed things up a bit.</p>\n</div>\n<div class=\"paragraph\">\n<p>If so you can enable debug mode for each build via the <code>jkube.debug.enabled</code> property.</p>\n</div>\n<div class=\"paragraph\">\n<p>e.g. you can pass this property on the command line:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn oc:deploy -Djkube.debug.enabled=true</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Or you can add something like this to your <code>~/.m2/settings.xml</code> file so that you enable debug mode for all maven builds on your laptop by using a profile :</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><?xml version=\"1.0\"?>\n<settings>\n <profiles>\n <profile>\n <id>enable-debug</id>\n <activation>\n <activeByDefault>true</activeByDefault>\n </activation>\n <properties>\n <jkube.debug.enabled>true</jkube.debug.enabled>\n </properties>\n </profile>\n </profiles>\n</settings></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Then whenever you type the <code>oc:debug</code> goal there is no need for the maven goal to edit the <code>Deployment</code> and wait for a pod to restart; we can immediately start debugging when you type:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn oc:debug</code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_debugging_with_suspension\">6.4.2. Debugging with suspension</h4>\n<div class=\"paragraph\">\n<p>The <code>oc:debug</code> goal allows to attach a remote debugger to a running container, but the application is free to execute when the debugger is not attached.\nIn some cases, you may want to have complete control on the execution, e.g. to investigate the application behavior at startup. This can be done using the <code>jkube.debug.suspend</code> flag:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn oc:debug -Djkube.debug.suspend</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The suspend flag will set the <code>JAVA_DEBUG_SUSPEND</code> environment variable to <code>true</code> and <code>JAVA_DEBUG_SESSION</code> to a random number in your deployment.\nWhen the <code>JAVA_DEBUG_SUSPEND</code> environment variable is set, standard docker images will use <code>suspend=y</code> in the JVM startup options for debugging.</p>\n</div>\n<div class=\"paragraph\">\n<p>The <code>JAVA_DEBUG_SESSION</code> environment variable is always set to a random number (each time you run the debug goal with the suspend flag) in order to tell Kubernetes to restart the pod.\nThe remote application will start only after a remote debugger is attached. You can use the remote debugging feature of your IDE to connect (on <code>localhost</code>, port <code>5005</code> by default).</p>\n</div>\n<div class=\"admonitionblock warning\">\n<table>\n<tr>\n<td class=\"icon\">\n<i class=\"fa icon-warning\" title=\"Warning\"></i>\n</td>\n<td class=\"content\">\nThe <code>jkube.debug.suspend</code> flag will disable readiness probes in the Kubernetes deployment in order to start port-forwarding during the early phases of application startup\n</td>\n</tr>\n</table>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"Supported-Properties-Debug\">6.4.3. Supported Properties For Debug Goal</h4>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 23. Options available with debug goal</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>debugPort</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Default port available for debugging your application inside Kubernetes.</p>\n<p class=\"tableblock\"> Defaults to <code>5005</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.debug.port</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>debugSuspend</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Disables readiness probes in Kubernetes Deployment in order to start port forwarding during early phases of\n application startup.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.debug.suspend</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"jkube:watch\">6.5. <strong>oc:watch</strong></h3>\n<div class=\"paragraph\">\n<p>This goal is used to monitor the project workspace for changes and automatically trigger a redeploy of the application\nrunning on Kubernetes. There are two kinds of watchers present at the moment:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Docker Image Watcher(watches docker images)</p>\n</li>\n<li>\n<p>Spring Boot Watcher(based on Spring Boot Devtools)</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>Before entering the watch mode, this goal must generate the docker image and the Kubernetes resources\n(optionally including some development libraries/configuration),\nand deploy the app on Kubernetes. Lifecycle bindings should be configured as follows to allow\nthe generation of such resources.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Lifecycle bindings for oc:watch</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n\n <!-- ... -->\n\n <executions>\n <execution>\n <goals>\n <goal>resource</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>For any application having <code>resource</code> and <code>build</code> goals bound to the lifecycle, the following\ncommand can be used to run the watch task.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-bash\" data-lang=\"bash\">mvn oc:watch</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This plugin supports different watcher providers, enabled automatically if the project satisfies certain conditions.</p>\n</div>\n<div class=\"paragraph\">\n<p>Watcher providers can also be configured manually. The <a href=\"#generator-example\">Generator example</a> is a good blueprint, simply replace <code><generator></code> with <code><watcher></code>. The configuration is structurally identical.</p>\n</div>\n<div class=\"sect3\">\n<h4 id=\"watcher-spring-boot\">6.5.1. Spring Boot</h4>\n<div class=\"paragraph\">\n<p>This watcher is enabled by default for all Spring Boot projects. It performs the following actions:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>deploys your application with Spring Boot DevTools enabled</p>\n</li>\n<li>\n<p>tails the log of the latest running pod for your application</p>\n</li>\n<li>\n<p>watches the local development build of your Spring Boot based application and then triggers a reload of the application when there are changes</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>You need to make sure that <code>devtools</code> is included in the repacked archive, as shown in the following listing:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.springframework.boot</groupId>\n <artifactId>spring-boot-maven-plugin</artifactId>\n <configuration>\n <excludeDevtools>false</excludeDevtools>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Then you need to set a <code>spring.devtools.remote.secret</code> in application.properties, as shown in the following example:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre>spring.devtools.remote.secret=mysecret</pre>\n</div>\n</div>\n<div class=\"admonitionblock warning\">\n<table>\n<tr>\n<td class=\"icon\">\n<i class=\"fa icon-warning\" title=\"Warning\"></i>\n</td>\n<td class=\"content\">\nSpring devtools automatically ignores projects named <code>spring-boot</code>, <code>spring-boot-devtools</code>,\n <code>spring-boot-autoconfigure</code>, <code>spring-boot-actuator</code>, <code>and spring-boot-starter</code>\n</td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<p>You can try it on any spring boot application via:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn oc:watch</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Once the goal starts up the spring boot RemoteSpringApplication it will watch for local development changes.</p>\n</div>\n<div class=\"paragraph\">\n<p>e.g. if you edit the java code of your app and then build it via something like this:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn package</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>You should see your app reload on the fly in the shell running the <a href=\"#jkube:watch\"><strong>oc:watch</strong></a> goal!</p>\n</div>\n<div class=\"paragraph\">\n<p>There is also support for LiveReload as well.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"watcher-docker-image\">6.5.2. Docker Image</h4>\n<div class=\"paragraph\">\n<p>This is a generic watcher that can be used in Kubernetes mode only. Once activated, it listens for changes in the project workspace\n in order to trigger a redeploy of the application. This enables rebuilding of images and restarting of containers in case of updates.</p>\n</div>\n<div class=\"paragraph\">\n<p>There are five watch modes, which can be specified in multiple ways:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>build</code>: Automatically rebuild one or more Docker images when one of the files selected by an assembly changes. This works for all files included in assembly.</p>\n</li>\n<li>\n<p><code>run</code>: Automatically restart your application when their associated images change.</p>\n</li>\n<li>\n<p><code>copy</code>: Copy changed files into the running container. This is the fast way to update a container, however the target container must support hot deploy, too so that it makes sense. Most application servers like Tomcat supports this.</p>\n</li>\n<li>\n<p><code>both</code>: Enables both <code>build</code> and <code>run</code>. <strong>This is the default</strong>.</p>\n</li>\n<li>\n<p><code>none</code>: Image is completely ignored for watching.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>The watcher can be activated e.g. by running this command in another shell:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn package</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The watcher will detect that the binary artifact has changed and will first rebuild the docker image,\nthen start a redeploy of the Kubernetes pod.</p>\n</div>\n<div class=\"paragraph\">\n<p>It uses the watch feature of the <a href=\"https://dmp.fabric8.io/#docker:watch\">docker-maven-plugin</a> under the hood.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"Supported-Properties-Watch\">6.5.3. Supported Properties for Watch goal</h4>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 24. Options available with watch goal</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>kubernetesManifest</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The generated kubernetes YAML file.</p>\n<p class=\"tableblock\"> Defaults to <code>${basedir}/target/classes/META-INF/jkube/kubernetes.yml</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.kubernetesManifest</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>watchMode</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>How to watch for image changes.</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>copy</code>: Copy watched artifacts into container</p>\n</li>\n<li>\n<p><code>build</code>: Build only images</p>\n</li>\n<li>\n<p><code>run</code>: Run images</p>\n</li>\n<li>\n<p><code>both</code>: Build and run images</p>\n</li>\n<li>\n<p><code>none</code>: Neither build nor run</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>Defaults to <code>both</code>.</p>\n</div></div></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.watch.mode</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>watchInterval</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Interval in milliseconds (how often to check for changes).</p>\n<p class=\"tableblock\"> Defaults to <code>5000</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.watch.interval</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>keepRunning</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set to true all containers will be kept running after oc:watch has been stopped.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.watch.keepRunning</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>watchPostGoal</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A maven goal which should be called if a rebuild or a restart has been performed.</p>\n<p class=\"tableblock\"> This goal must have the format <code><pluginGroupId>:<pluginArtifactId>:<goal></code> and the plugin must be\n configured in the pom.xml.</p>\n<p class=\"tableblock\"> For example a post-goal <code>com.example:group:delete-pods</code> will trigger the <code>delete-pods</code>\n goal of this hypothetic example.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.watch.postGoal</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>watchPostExec</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A command which is executed within the container after files are copied into this container\n when watchMode is copy. Note that this container must be running.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.watch.postExec</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>keepContainer</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If this is set to <code>false</code> (and <code>keepRunning</code> is disabled) then all containers will be removed after\n they have been stopped.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.watch.keepContainer</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>removeVolumes</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set to <code>true</code> remove any volumes associated with the container as well.</p>\n<p class=\"tableblock\"> This option will be ignored if either <code>keepContainer</code> or <code>keepRunning</code> is <code>true</code>.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.watch.removeVolumes</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>watchShowLogs</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set to <code>true</code>, logs will be shown for watched container.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.watch.showLogs</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>watchFollow</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If <code>watchShowLogs</code> is set to <code>false</code>, and there is a run image configuration, logs are followed\n if set to <code>true</code>.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.watch.follow</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"generators\">7. Generators</h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>The usual way to define Docker images is with the plugin configuration as explained in <a href=\"#jkube:build\"><strong>oc:build</strong></a>. This can either be done completely within the <code>pom.xml</code> or by referring to an external Dockerfile. Since openshift-maven-plugin includes <a href=\"https://github.com/jkubeio/docker-maven-plugin\">docker-maven-plugin</a> the way by which images are built is identical.</p>\n</div>\n<div class=\"paragraph\">\n<p>However, this plugin provides an additional route for defining image configurations. This is done by so called <em>Generators</em>. A generator is a Java component providing an auto-detection mechanism for certain build types like a Spring Boot build or a plain Java build. As soon as a <em>Generator</em> detects that it is applicable it will be called with the list of images configured in the <code>pom.xml</code>. Typically a generator only creates dynamically a new image configuration if this list is empty. But a generator is free to also add new images to an existing list or even change the current image list.</p>\n</div>\n<div class=\"paragraph\">\n<p>You can easily create your own generator as explained in <a href=\"#generators-api\">Generator API</a>. This section will focus on existing generators and how you can configure them.</p>\n</div>\n<div class=\"paragraph\">\n<p>The included <em>Generators</em> are enabled by default, but you can easily disable them or only select a certain set of generators. Each generator has a <em>name</em>, which is unique for a generator.</p>\n</div>\n<div class=\"paragraph\">\n<p>The generator configuration is embedded in a <code><generator></code> configuration section:</p>\n</div>\n<div id=\"generator-example\" class=\"listingblock\">\n<div class=\"title\">Example for a generator configuration</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n ....\n <configuration>\n ....\n <generator> <i class=\"conum\" data-value=\"1\"></i><b>(1)</b>\n <includes> <i class=\"conum\" data-value=\"2\"></i><b>(2)</b>\n <include>spring-boot</include>\n </includes>\n <config> <i class=\"conum\" data-value=\"3\"></i><b>(3)</b>\n <spring-boot> <i class=\"conum\" data-value=\"4\"></i><b>(4)</b>\n <alias>ping</alias>\n </spring-boot>\n </config>\n </generator>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td>Start of generators' configuration.</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"2\"></i><b>2</b></td>\n<td>Generators can be included and excluded. Includes have precedence, and the generators are called in the given order.</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"3\"></i><b>3</b></td>\n<td>Configuration for individual generators.</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"4\"></i><b>4</b></td>\n<td>The config is a map of supported config values. Each section is embedded in a tag named after the generator.</td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<p>The following sub-elements are supported:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 25. Generator configuration</caption>\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 85.7143%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code><includes></code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Contains one ore more <code><include></code> elements with generator names which should be included. If given only this list of generators are included in this given order. The order is important because by default only the first matching generator kicks in. The generators from every active profile are included, too. However the generators listed here are moved to the front of the list, so that they are called first. Use the profile <code>raw</code> if you want to explicitly set the complete list of generators.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code><excludes></code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Holds one or more <code><exclude></code> elements with generator names to exclude. If set then all detected generators are used except the ones mentioned in this section.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code><config></code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Configuration for all generators. Each generator support a specific set of configuration values as described in the documentation. The subelements of this section are generator names to configure. E.g. for generator <code>spring-boot</code>, the sub-element is called <code><spring-boot></code>. This element then holds the specific generator configuration like <code><name></code> for specifying the final image name. See above for an example. Configuration coming from profiles are merged into this config, but not overriding the configuration specified here.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Beside specifying generator configuration in the plugin’s configuration it can be set directly with properties, too:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example generator property config</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn -Djkube.generator.java-exec.webPort=8082</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The general scheme is a prefix <code>jkube.generator.</code> followed by the unique generator name and then the generator specific key.</p>\n</div>\n<div class=\"paragraph\">\n<p>In addition to the provided default <em>Generators</em> described in the next section <a href=\"#generators-default\">Default Generators</a>, custom generators can be easily added. There are two ways to include generators:</p>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Plugin dependency</div>\n<p>You can declare the generator holding jars as dependency to this plugin as shown in this example</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <artifactId>openshift-maven-plugin</artifactId>\n ....\n <dependencies>\n <dependency>\n <groupId>io.acme</groupId>\n <artifactId>mygenerator</artifactId>\n <version>1.0</version>\n </dependency>\n </dependencies>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Compile time dependency</div>\n<p>Alternatively and if your application code comes with a custom generator you can set the global configuration option <code>useProjectClasspath</code> (property: <code>jkube.useProjectClasspath</code>) to true. In this case also the project artifact and its dependencies are looked up for <em>Generators</em>. See <a href=\"#generators-api\">Generator API</a> for details how to write your own generators.</p>\n</div>\n<div class=\"sect2\">\n<h3 id=\"generators-default\">7.1. Default Generators</h3>\n<div class=\"paragraph\">\n<p>All default generators examine the build information for certain aspects and generate a Docker build configuration on the fly. They can be configured to a certain degree, where the configuration is generator specific.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 26. Default Generators</caption>\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 66.6668%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Generator</th>\n<th class=\"tableblock halign-left valign-top\">Name</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-java-exec\">Java Applications</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>java-exec</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Generic generator for flat classpath and fat-jar Java applications</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-spring-boot\">Spring Boot</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>spring-boot</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Spring Boot specific generator</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-wildfly-swarm\">Wildfly Swarm</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>wildfly-swarm</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Generator for Wildfly Swarm apps</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-thorntail-v2\">Thorntail v2</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>thorntail-v2</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Generator for Thorntail v2 apps</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-vertx\">Vert.x</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Generator for Vert.x applications</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-karaf\">Karaf</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>karaf</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Generator for Karaf based apps</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-webapp\">Web applications</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>webapps</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Generator for WAR based applications supporting Tomcat, Jetty and Wildfly base images</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-quarkus\">Quarkus</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>Quarkus</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Generator for Quarkus based applications</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-openliberty\">Open Liberty</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>openliberty</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Generator for Open Liberty applications</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-wildfly-jar\">WildFly Bootable JAR</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>wildfly-jar</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Generator for WildFly Bootable JAR applications</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>There are some configuration options which are shared by all generators:</p>\n</div>\n<table id=\"generator-options-common\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 27. Common generator options</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>add</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">When set to <code>true</code>, then the generator <em>adds</em> to an existing image configuration. By default this is disabled, so\n that a generator only kicks in when there are no other image configurations in the build, which are either configured\n directly for a <code>oc:build</code> or already added by a generator which has been run previously.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.add</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>alias</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">An alias name for referencing this image in various other parts of the configuration. This is also used in the log\n output. The default alias name is the name of the generator.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.alias</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>from</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">This is the base image from where to start when creating the images. By default the generators make an opinionated\n decision for the base image which are described in the respective generator section.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.from</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>fromMode</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Whe using OpenShift S2I builds the base image can be either a plain docker image (mode: <code>jib</code>) or a reference to an\n <a href=\"https://docs.openshift.com/container-platform/3.3/architecture/core_concepts/builds_and_image_streams.html\"> ImageStreamTag</a>\n (mode: <code>istag</code>). In the case of an ImageStreamTag, <code>from</code> has to be specified in the form <code>namespace/image-stream:tag</code>.\n The mode takes only effect when running in OpenShift mode.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.fromMode</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>name</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Docker image name used when doing Docker builds. For OpenShift S2I builds its the name of the image stream. This\n can be a pattern as descibed in <a href=\"#image-name-placeholders\">Name Placeholders</a>. The default is <code>%g/%a:%l</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.name</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>registry</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A optional Docker registry used when doing Docker builds. It has no effect for OpenShift S2I builds.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.registry</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>When used as properties they can be directly referenced with the property names above.</p>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-java-exec\">7.1.1. Java Applications</h4>\n<div class=\"paragraph\">\n<p>One of the most generic <em>Generators</em> is the <code>java-exec</code> generator.\nIt is responsible for starting up arbitrary Java application.\nIt knows how to deal with fat-jar applications where the application and all dependencies are included within a single jar and the <code>MANIFEST.MF</code> within the jar references a main class.\nBut also flat classpath applications, where the dependencies are separate jar files and a main class is given.</p>\n</div>\n<div class=\"paragraph\">\n<p>If no main class is explicitly configured, the plugin first attempts to locate a fat jar.\nIf the Maven build creates a JAR file with a <code>META-INF/MANIFEST.MF</code> containing a <code>Main-Class</code> entry, then this is considered to be the fat jar to use.\nIf there are more than one of such files then the largest one is used.</p>\n</div>\n<div class=\"paragraph\">\n<p>If a main class is configured (see below) then the image configuration will contain the application jar plus all dependency jars.\nIf no main class is configured as well as no fat jar being detected, then this <em>Generator</em> tries to detect a single main class by searching for <code>public static void main(String args[])</code> among the application classes. If exactly one class is found this is considered to be the main class. If no or more than one is found the <em>Generator</em> finally does nothing.</p>\n</div>\n<div class=\"paragraph\">\n<p>It will use the following base image by default, but as explained <a href=\"#generator-options-common\">above</a> and can be changed with the <code>from</code> configuration.</p>\n</div>\n<table id=\"generator-java-exec-from\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 28. Java Base Images</caption>\n<colgroup>\n<col style=\"width: 7.6923%;\">\n<col style=\"width: 30.7692%;\">\n<col style=\"width: 30.7692%;\">\n<col style=\"width: 30.7693%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\"></th>\n<th class=\"tableblock halign-left valign-top\">Docker Build</th>\n<th class=\"tableblock halign-left valign-top\">S2I Build</th>\n<th class=\"tableblock halign-left valign-top\">ImageStream</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>Community</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>quay.io/jkube/jkube-java-binary-s2i</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>quay.io/jkube/jkube-java-binary-s2i</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube-java</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>These images always refer to the latest tag.</p>\n</div>\n<div class=\"paragraph\">\n<p>When a <code>fromMode</code> of <code>istag</code> is used to specify an <code>ImageStreamTag</code> and when no <code>from</code> is given, then as default the\n<code>ImageStreamTag</code> <code>jkube-java</code> in the namespace <code>openshift</code> is chosen.\nBy default, <code>fromMode = \"docker\"</code> which use the a plain Docker image reference for the S2I builder image.</p>\n</div>\n<div class=\"paragraph\">\n<p>Beside the common configuration parameters described in the table <a href=\"#generator-options-common\">common generator options</a>\nthe following additional configuration options are recognized:</p>\n</div>\n<table id=\"generator-java-exec-options\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 29. Java Application configuration options</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>targetDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Directory within the generated image where to put the detected artefacts into. Change this only if the base image is\n changed, too.</p>\n<p class=\"tableblock\"> Defaults to <code>/deployments</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.java-exec.targetDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>jolokiaPort</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Port of the Jolokia agent exposed by the base image. Set this to 0 if you don’t want to expose the Jolokia port.</p>\n<p class=\"tableblock\"> Defaults to <code>8778</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.java-exec.jolokiaPort</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>mainClass</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Main class to call. If not given first a check is performed to detect a fat-jar (see above). Next a class is looked up\n by scanning <code>target/classes</code> for a single class with a main method. If no such class is found or if more than one is\n found, then this generator does nothing.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.java-exec.mainClass</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>prometheusPort</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Port of the Prometheus jmx_exporter exposed by the base image. Set this to 0 if you don’t want to expose the Prometheus\n port.</p>\n<p class=\"tableblock\"> Defaults to <code>9779</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.java-exec.prometheusPort</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>webPort</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Port to expose as service, which is supposed to be the port of a web application. Set this to 0 if you don’t want to\n expose a port.</p>\n<p class=\"tableblock\"> Defaults to <code>8080</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.java-exec.webPort</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>The exposed ports are typically later on use by <a href=\"#enrichers\">Enrichers</a> to create default Kubernetes or OpenShift services.</p>\n</div>\n<div class=\"paragraph\">\n<p>You can add additional files to the target image within <code>baseDir</code> by placing files into <code>src/main/jkube-includes</code>.\nThese will be added with mode <code>0644</code>, while everything in <code>src/main/jkube-includes/bin</code> will be added with <code>0755</code>.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-spring-boot\">7.1.2. Spring Boot</h4>\n<div class=\"paragraph\">\n<p>This generator is called <code>spring-boot</code> and gets activated when it finds a <code>spring-boot-maven-plugin</code> in the pom.xml.</p>\n</div>\n<div class=\"paragraph\">\n<p>This generator is based on the <a href=\"#generator-java-exec\">Java Application</a> Generator and inherits all of its configuration values. The generated container port is read from the <code>server.port</code> property <code>application.properties</code>, defaulting to <code>8080</code> if it is not found. It also uses the same default images as the <a href=\"#generator-java-exec-from\">java-exec Generator</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>Beside the <a href=\"#generator-options-common\">common generator options</a> and the <a href=\"#generator-java-exec-options\">java-exec options</a> the following additional configuration is recognized:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 30. Spring-Boot configuration options</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>color</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set, force the use of color in the Spring Boot console output.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.spring-boot.color</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>The generator adds Kubernetes liveness and readiness probes pointing to either the management or server port as read from the <code>application.properties</code>.\nIf the <code>management.port</code> (for Spring Boot 1) or <code>management.server.port</code> (for Spring Boot 2) and <code>management.ssl.key-store</code> (for Spring Boot 1) or <code>management.server.ssl.key-store</code> (for Spring Boot 2) properties are set in <code>application.properties</code> otherwise or <code>server.ssl.key-store</code> property is set in <code>application.properties</code> then the probes are automatically set to use <code>https</code>.</p>\n</div>\n<div class=\"paragraph\">\n<p>The generator works differently when called together with <code>oc:watch</code>.\nIn that case it enables support for <a href=\"http://docs.spring.io/spring-boot/docs/current/reference/html/using-boot-devtools.html\">Spring Boot Developer Tools</a> which allows for hot reloading of the Spring Boot app.\nIn particular, the following steps are performed:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>If a secret token is not provided within the Spring Boot application configuration <code>application.properties</code> or <code>application.yml</code> with the key <code>spring.devtools.remote.secret</code> then a custom secret token is created and added to <code>application.properties</code></p>\n</li>\n<li>\n<p>Add <code>spring-boot-devtools.jar</code> as <code>BOOT-INF/lib/spring-devtools.jar</code> to the spring-boot fat jar.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>Since during <code>oc:watch</code> the application itself within the <code>target/</code> directory is modified for allowing easy reloading you must ensure that you do a <code>mvn clean</code> before building an artifact which should be put into production.\nSince the released version are typically generated with a CI system which does a clean build anyway this should be only a theoretical problem.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-wildfly-swarm\">7.1.3. Wildfly Swarm</h4>\n<div class=\"paragraph\">\n<p>The WildFly Swarm generator detects a WildFly Swarm build and disables the Prometheus Java agent because of this <a href=\"https://issues.jboss.org/browse/THORN-1859\">issue</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>Otherwise this generator is identical to the <a href=\"#generator-java-exec\">java-exec generator</a>.\nIt supports the <a href=\"#generator-options-common\">common generator options</a> and the <a href=\"#generator-java-exec-options\"><code>java-exec</code> options</a>.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-thorntail-v2\">7.1.4. Thorntail v2</h4>\n<div class=\"paragraph\">\n<p>The Thorntail v2 generator detects a Thorntail v2 build and disables the Prometheus Java agent because of this <a href=\"https://issues.jboss.org/browse/THORN-1859\">issue</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>Otherwise this generator is identical to the <a href=\"#generator-java-exec\">java-exec generator</a>. It supports the <a href=\"#generator-options-common\">common generator options</a> and the <a href=\"#generator-java-exec-options\"><code>java-exec</code> options</a>.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-vertx\">7.1.5. Vert.x</h4>\n<div class=\"paragraph\">\n<p>The Vert.x generator detects an application using Eclipse Vert.x. It generates the metadata to start the application as a fat jar.</p>\n</div>\n<div class=\"paragraph\">\n<p>Currently, this generator is enabled if:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>you are using the Vert.x Maven Plugin (<a href=\"https://github.com/reactiverse/vertx-maven-plugin\" class=\"bare\">https://github.com/reactiverse/vertx-maven-plugin</a>)</p>\n</li>\n<li>\n<p>you are depending on <code>io.vertx:vertx-core</code> and uses the Maven Shader plugin</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>Otherwise this generator is identical to the <a href=\"#generator-java-exec\">java-exec generator</a>. It supports the <a href=\"#generator-options-common\">common generator options</a> and the <a href=\"#generator-java-exec-options\"><code>java-exec</code> options</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>The generator automatically:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>enable metrics and JMX publishing of the metrics when <code>io.vertx:vertx-dropwizard-metrics</code> is in the project’s classpath / dependencies.</p>\n</li>\n<li>\n<p>enable clustering when a Vert.x cluster manager is available in the project’s classpath / dependencies. this is done by appending <code>-cluster</code> to the command line.</p>\n</li>\n<li>\n<p>Force IPv4 stack when <code>vertx-infinispan</code> is used.</p>\n</li>\n<li>\n<p>Disable the async DNS resolver to fallback to the regular JVM DNS resolver.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>You can pass application parameter by setting the <code>JAVA_ARGS</code> env variable. You can pass system properties either using the same variable or using <code>JAVA_OPTIONS</code>. For instance, create <code>src/main/jkube/deployment.yml</code> with the following content to configure <code>JAVA_ARGS</code>:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">spec:\n template:\n spec:\n containers:\n - env:\n - name: JAVA_ARGS\n value: \"-Dfoo=bar -cluster -instances=2\"</code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-karaf\">7.1.6. Karaf</h4>\n<div class=\"paragraph\">\n<p>This generator named <code>karaf</code> kicks in when the build uses a <code>karaf-maven-plugin</code>. By default the following base images are used:</p>\n</div>\n<table id=\"generator-karaf-from\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 31. Karaf Base Images</caption>\n<colgroup>\n<col style=\"width: 7.6923%;\">\n<col style=\"width: 30.7692%;\">\n<col style=\"width: 30.7692%;\">\n<col style=\"width: 30.7693%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\"></th>\n<th class=\"tableblock halign-left valign-top\">Docker Build</th>\n<th class=\"tableblock halign-left valign-top\">S2I Build</th>\n<th class=\"tableblock halign-left valign-top\">ImageStream</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>Community</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>quay.io/jkube/jkube-karaf-binary-s2i</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>quay.io/jkube/jkube-karaf-binary-s2i</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube-karaf</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>When a <code>fromMode</code> of <code>istag</code> is used to specify an <code>ImageStreamTag</code> and when no <code>from</code> is given, then as default the\n<code>ImageStreamTag</code> <code>jkube-karaf</code> in the namespace <code>openshift</code> is chosen.</p>\n</div>\n<div class=\"paragraph\">\n<p>In addition to the <a href=\"#generator-options-common\">common generator options</a> this generator can be configured with the following options:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 32. Karaf configuration options</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>baseDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Directory within the generated image where to put the detected artifacts into. Change this only if the base image is\n changed, too.</p>\n<p class=\"tableblock\"> Defaults to <code>/deployments</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.karaf.baseDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>webPort</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Port to expose as service, which is supposed to be the port of a web application. Set this to 0 if you don’t want to\nexpose a port.</p>\n<p class=\"tableblock\"> Defaults to <code>8080</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.karaf.webPort</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-webapp\">7.1.7. Web Applications</h4>\n<div class=\"paragraph\">\n<p>The <code>webapp</code> generator tries to detect WAR builds and selects a base servlet container image based on the configuration found in the <code>pom.xml</code>:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>A <strong>Tomcat</strong> base image is selected when a <code>tomcat6-maven-plugin</code> or <code>tomcat7-maven-plugin</code> is present or when a <code>META-INF/context.xml</code> could be found in the classes directory.</p>\n</li>\n<li>\n<p>A <strong>Jetty</strong> base image is selected when a <code>jetty-maven-plugin</code> is present or one of the files <code>WEB-INF/jetty-web.xml</code> or <code>WEB-INF/jetty-logging.properties</code> is found.</p>\n</li>\n<li>\n<p>A <strong>Wildfly</strong> base image is chosen for a given <code>jboss-as-maven-plugin</code> or <code>wildfly-maven-plugin</code> or when a Wildfly specific deployment descriptor like <code>jboss-web.xml</code> is found.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>The base images chosen are:</p>\n</div>\n<table id=\"generator-webapp-from\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 33. Webapp Base Images</caption>\n<colgroup>\n<col style=\"width: 11.1111%;\">\n<col style=\"width: 44.4444%;\">\n<col style=\"width: 44.4445%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\"></th>\n<th class=\"tableblock halign-left valign-top\">Docker Build</th>\n<th class=\"tableblock halign-left valign-top\">S2I Build</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>Tomcat</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>quay.io/jkube/jkube-tomcat9-binary-s2i</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>quay.io/jkube/jkube-tomcat9-binary-s2i</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>Jetty</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>quay.io/jkube/jkube-jetty9-binary-s2i</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>quay.io/jkube/jkube-jetty9-binary-s2i</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>Wildfly</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jboss/wildfly</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"https://github.com/wildfly/wildfly-s2i\"><code>quay.io/wildfly/wildfly-centos7</code></a></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>In addition to the <a href=\"#generator-options-common\">common generator options</a> this generator can be configured with the following options:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 34. Webapp configuration options</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>server</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Fix server to use in the base image. Can be either <strong>tomcat</strong>, <strong>jetty</strong> or <strong>wildfly</strong>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.webapp.server</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>targetDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Where to put the war file into the target image. By default its selected by the base image chosen but can be\n overwritten with this option.</p>\n<p class=\"tableblock\"> Defaults to <code>/deployments</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.webapp.targetDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>user</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">User and/or group under which the files should be added. The syntax of this options is descriped in\n <a href=\"#config-image-build-assembly-user\">Assembly Configuration</a>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.webapp.user</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>path</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Context path with which the application can be reached by default.</p>\n<p class=\"tableblock\"> Defaults to <code>/</code> (root context).</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.webapp.path</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>cmd</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Command to use to start the container. By default the base images startup command is used.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.webapp.cmd</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>ports</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Comma separated list of ports to expose in the image and which eventually are translated later to Kubernetes services.\n The ports depend on the base image and are selected automatically. But they can be overridden here.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.webapp.ports</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-quarkus\">7.1.8. Quarkus</h4>\n<div class=\"paragraph\">\n<p>The <code>Quarkus</code> generator tried to detect quarkus based projects looking at project <code>pom.xml</code>:</p>\n</div>\n<div class=\"paragraph\">\n<p>The base images chosen are:</p>\n</div>\n<table id=\"generator-quarkus-from\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 35. Webapp Base Images</caption>\n<colgroup>\n<col style=\"width: 11.1111%;\">\n<col style=\"width: 44.4444%;\">\n<col style=\"width: 44.4445%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\"></th>\n<th class=\"tableblock halign-left valign-top\">Docker Build</th>\n<th class=\"tableblock halign-left valign-top\">S2I Build</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>Native</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>registry.access.redhat.com/ubi8/ubi-minimal:8.1</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">---</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>Normal Build</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>openjdk:11</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">---</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"admonitionblock important\">\n<table>\n<tr>\n<td class=\"icon\">\n<i class=\"fa icon-important\" title=\"Important\"></i>\n</td>\n<td class=\"content\">\n<div class=\"paragraph\">\n<p>S2I builds are currently not yet supported for the Quarkus generator.</p>\n</div>\n</td>\n</tr>\n</table>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-openliberty\">7.1.9. Open Liberty</h4>\n<div class=\"paragraph\">\n<p>The Open Liberty generator runs when the Open Liberty plugin is enabled in the maven build.</p>\n</div>\n<div class=\"paragraph\">\n<p>The generator is similar to the <a href=\"#generator-java-exec\">java-exec generator</a>. It supports the <a href=\"#generator-options-common\">common generator options</a> and the <a href=\"#generator-java-exec-options\"><code>java-exec</code> options</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>For Open Liberty, the default value of webPort is 9080.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-wildfly-jar\">7.1.10. Wildfly JAR Generator</h4>\n<div class=\"paragraph\">\n<p>The Wildfly JAR generator detects a WildFly Bootable JAR build and disables the Jolokia and Prometheus Java agent.</p>\n</div>\n<div class=\"paragraph\">\n<p>Otherwise this generator is identical to the <a href=\"#generator-java-exec\">java-exec generator</a>. It supports the <a href=\"#generator-options-common\">common generator options</a> and the <a href=\"#generator-java-exec-options\"><code>java-exec</code> options</a>.</p>\n</div>\n<div class=\"sect4\">\n<h5 id=\"_support_for_slim_bootable_jar\">Support for slim Bootable JAR</h5>\n<div class=\"paragraph\">\n<p>A slim Bootable JAR is a JAR that retrieves JBoss module artifacts from a Maven local cache. Such JAR are smaller and start faster. The WildFly JAR generator\nhas a builtin support to install a maven local cache in the image.</p>\n</div>\n<div class=\"paragraph\">\n<p>In order to build a slim Bootable JAR, configure the <em>wildfly-jar-maven-plugin</em> for slim server and maven local cache generation:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre> <plugin>\n <groupId>org.wildfly.plugins</groupId>\n <artifactId>wildfly-jar-maven-plugin</artifactId>\n <configuration>\n <plugin-options>\n <!-- Build a slim Bootable JAR -->\n <jboss-maven-dist/>\n <!-- Path to the Maven local cache that the plugin generates during build.\n It contains JBoss module artifacts required by the server. -->\n <jboss-maven-repo>target/myapp-repo</jboss-maven-repo>\n </plugin-options>\n ...\n </configuration>\n <executions>\n <execution>\n <goals>\n <goal>package</goal>\n </goals>\n </execution>\n </executions>\n </plugin></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The generator detects the path of the generated maven local repository directory\n(value of the <em><jboss-maven-repo></em> element) and copies it into the image <em>/deployments/<repo directory name></em> directory.\nNB: A relative path is considered relative to the maven project base directory.</p>\n</div>\n<div class=\"paragraph\">\n<p>In order for the Bootable JAR to retrieve the JBoss modules artifacts, the java\noption <em>-Dmaven.repo.local=/deployments/<repo directory name></em> is automatically added to the launch options.</p>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"generators-api\">7.2. Generator API</h3>\n<div class=\"admonitionblock warning\">\n<table>\n<tr>\n<td class=\"icon\">\n<i class=\"fa icon-warning\" title=\"Warning\"></i>\n</td>\n<td class=\"content\">\nThe API is still a bit in flux and will be documented later. Please refer to the\n <a href=\"https://github.com/eclipse/jkube/blob/master/jkube-kit/generator/api/src/main/java/org/eclipse/jkube/generator/api/Generator.java\">Generator</a>\n Interface in the meantime.\n</td>\n</tr>\n</table>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"enrichers\">8. Enrichers</h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>Enriching is the complementary concept to <a href=\"#generators\">Generators</a>. Whereas Generators are used to create and customize Docker images, Enrichers are use to create and customize Kubernetes resource objects.</p>\n</div>\n<div class=\"paragraph\">\n<p>There are a lot of similarities to Generators:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Each Enricher has a unique name.</p>\n</li>\n<li>\n<p>Enrichers are looked up automatically from the plugin dependencies and there is a set of default enrichers delivered with this plugin.</p>\n</li>\n<li>\n<p>Enrichers are configured the same ways as generators</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>The <a href=\"#generator-example\">Generator example</a> is a good blueprint, simply replace <code><generator></code> with <code><enricher></code>. The configuration is structural identical:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 36. Enricher configuration</caption>\n<colgroup>\n<col style=\"width: 25%;\">\n<col style=\"width: 75%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code><includes></code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Contains one ore more <code><include></code> elements with enricher names which should be included. If given, only this list of enrichers are included in this order. The enrichers from every active profile are included, too. However the enrichers listed here are moved to the front of the list, so that they are called first. Use the profile <code>raw</code> if you want to explicitly set the complete list of enrichers.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code><excludes></code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Holds one or more <code><exclude></code> elements with enricher names to exclude. This means all the detected enrichers are used except the ones mentioned in this section.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code><config></code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Configuration for all enrichers. Each enricher supports a specific set of configuration values as described in its documentation. The subelements of this section are enricher names. E.g. for enricher <code>jkube-service</code>, the sub-element is called <code><jkube-service></code>. This element then holds the specific enricher configuration like <code><name></code> for the service name. Configuration coming from profiles are merged into this config, but not overriding the configuration specified here.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>This plugin comes with a set of default enrichers. In addition custom enrichers can be easily added by providing implementation of the <a href=\"#enricher-api\">Enricher API</a> and adding these as a dependency to the build.</p>\n</div>\n<div class=\"sect2\">\n<h3 id=\"enrichers-default\">8.1. Default Enrichers</h3>\n<div class=\"paragraph\">\n<p>openshift-maven-plugin comes with a set of enrichers which are enabled by default. There are two categories of default enrichers:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><a href=\"#enrichers-generic\"><strong>Generic Enrichers</strong></a> are used to add default resource object when they are missing or add common\nmetadata extracted from the given build information.</p>\n</li>\n<li>\n<p><a href=\"#enrichers-specific\"><strong>Specific Enrichers</strong></a> are enrichers which are focused on a certain tech stack that they detect.</p>\n</li>\n</ul>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 37. Default Enrichers Overview</caption>\n<colgroup>\n<col style=\"width: 22.2222%;\">\n<col style=\"width: 77.7778%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Enricher</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-configmap-file\">jkube-configmap-file</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add ConfigMap elements defined as XML or as annotation.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-container-env-java-options\">jkube-container-env-java-options</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Merges <code>JAVA_OPTIONS</code> environment variable defined in <a href=\"#config-image-build\">Build configuration (<a href=\"#config-image\"><image> </a>)</a>\n environment (<code>env</code>) with <code>Container</code> <code>JAVA_OPTIONS</code> environment variable added\n by other enrichers, XML configuration or fragment.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-controller\">jkube-controller</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Create default controller (replication controller, replica set or deployment <a href=\"https://kubernetes.io/docs/concepts/workloads/controllers/\">Kubernetes doc</a>) if missing.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-dependency\">jkube-dependency</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Examine build dependencies for <code>kubernetes.yml</code> and add the objects found therein.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-git\">jkube-git</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Check local <code>.git</code> directory and add build information as annotations.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-image\">jkube-image</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add the image name into a <code>PodSpec</code> of replication controller, replication sets and deployments, if missing.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-maven-issue-mgmt-enricher\">jkube-maven-issue-mgmt</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add Maven Issue Management information as annotations to the kubernetes/openshift resources</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-maven-scm-enricher\">jkube-maven-scm-enricher</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add Maven SCM information as annotations to the kubernetes/openshift resources</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-name\">jkube-name</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add a default name to every object which misses a name.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-pod-annotation\">jkube-pod-annotation</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Copy over annotations from a <code>Deployment</code> to a <code>Pod</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-portname\">jkube-portname</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add a default portname for commonly known service.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-project-label\">jkube-project-label</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add Maven coordinates as labels to all objects.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-prometheus\">jkube-prometheus</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add Prometheus annotations.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-revision-history-enricher\">jkube-revision-history</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add revision history limit (<a href=\"https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#revision-history-limit\">Kubernetes doc</a>) as a deployment spec property to the Kubernetes/OpenShift resources.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-secret-file\">jkube-secret-file</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add Secret elements defined as annotation.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-service\">jkube-service</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Create a default service if missing and extract ports from the Docker image configuration.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-serviceaccount\">jkube-serviceaccount</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add a ServiceAccount defined as XML or mentioned in resource fragment.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-triggers-annotation\">jkube-triggers-annotation</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add ImageStreamTag change triggers on Kubernetes resources such as StatefulSets, ReplicaSets and DaemonSets using the <code>image.openshift.io/triggers</code> annotation.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"sect3\">\n<h4 id=\"enrichers-generic\">8.1.1. Generic Enrichers</h4>\n<div class=\"paragraph\">\n<p>Default generic enrichers are used for adding missing resources or adding metadata to given resource objects.\nThe following default enhancers are available out of the box.</p>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-configmap-file\">jkube-configmap-file</h5>\n<div class=\"paragraph\">\n<p>This enricher adds ConfigMap defined as <code>resources</code> in plugin configuration and/or resolves file content from an annotation.</p>\n</div>\n<div class=\"paragraph\">\n<p>As XML you can define:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">pom.xml</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><configuration>\n <resources>\n <configMap>\n <name>myconfigmap</name>\n <entries>\n <entry>\n <name>A</name>\n <value>B</value>\n </entry>\n </entries>\n </configMap>\n </resources>\n</configuration></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This creates a ConfigMap data with key <code>A</code> and value <code>B</code>.</p>\n</div>\n<div class=\"paragraph\">\n<p>You can also use <code>file</code> tag to refer to the content of a file.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><configuration>\n <resources>\n <configMap>\n <name>configmap-test</name>\n <entries>\n <entry>\n <file>src/test/resources/test-application.properties</file>\n </entry>\n </entries>\n </configMap>\n </resources>\n</configuration></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This creates a ConfigMap with key <code>test-application.properties</code> and value the content of the <code>src/test/resources/test-application.properties</code> file.\nIf you set <code>name</code> tag then this is used as key instead of the filename.</p>\n</div>\n<div class=\"paragraph\">\n<p>If you are defining a custom <code>ConfigMap</code> file, you can use an annotation to define a file name as key and its content as the value:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">metadata:\n name: ${project.artifactId}\n annotations:\n maven.jkube.io/cm/application.properties: src/test/resources/test-application.properties</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This creates a <code>ConfigMap</code> data with key <code>application.properties</code> (part defined after <code>cm</code>) and value the content of <code>src/test/resources/test-application.properties</code> file.</p>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-container-env-java-options\">jkube-container-env-java-options</h5>\n<div class=\"paragraph\">\n<p>Merges <code>JAVA_OPTIONS</code> environment variable defined in <a href=\"#config-image-build\">Build configuration (<a href=\"#config-image\"><image> </a>)</a>\nenvironment (<code>env</code>) with <code>Container</code> <code>JAVA_OPTIONS</code> environment variable added\nby other enrichers, XML configuration or fragment.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Option</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>disable</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Disabled the enricher, any <code>JAVA_OPTIONS</code> environment variable defined by an enricher,\n XML configuration or YAML fragment will override the one defined by the generator\n or Image Build configuration.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-container-env-java-options.disable</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-controller\">jkube-controller</h5>\n<div class=\"paragraph\">\n<p>This enricher is used to ensure that a controller is present.\nThis can be either directly configured with fragments or with the XML configuration.\nAn explicit configuration always takes precedence over auto detection.\nSee <a href=\"https://kubernetes.io/docs/concepts/workloads/controllers/\">Kubernetes doc</a> for more information on types of controllers.</p>\n</div>\n<div class=\"paragraph\">\n<p>The following configuration parameters can be used to influence the behaviour of this enricher:</p>\n</div>\n<table id=\"enricher-jkube-controller\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 38. Default controller enricher</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>name</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Name of the Controller. Kubernetes Controller names must start with a letter. If the maven artifactId starts with a\n digit, <code>s</code> will be prefixed.</p>\n<p class=\"tableblock\"> Defaults to <code>${project.artifactId}</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-controller.name</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>pullPolicy</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Image pull policy to use for the container. One of: <em>IfNotPresent</em>, <em>Always</em>.</p>\n<p class=\"tableblock\"> Defaults to <code>IfNotPresent</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-controller.pullPolicy</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>type</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Type of Controller to create. One of: <em>ReplicationController</em>, <em>ReplicaSet</em>, <em>Deployment</em>, <em>DeploymentConfig</em>,\n <em>StatefulSet</em>, <em>DaemonSet</em>, <em>Job</em>.</p>\n<p class=\"tableblock\"> Defaults to <code>Deployment</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-controller.type</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>replicaCount</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Number of replicas for the container.</p>\n<p class=\"tableblock\"> Defaults to <code>1</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-controller.replicaCount</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-service\">jkube-service</h5>\n<div class=\"paragraph\">\n<p>This enricher is used to ensure that a service is present.\nThis can be either directly configured with fragments or with the XML configuration, but it can be also automatically inferred by looking at the ports exposed by an image configuration.\nAn explicit configuration always takes precedence over auto detection. For enriching an existing service this enricher actually works only on a configured service which matches with the configured (or inferred) service name.</p>\n</div>\n<div class=\"paragraph\">\n<p>The following configuration parameters can be used to influence the behaviour of this enricher:</p>\n</div>\n<table id=\"enricher-jkube-service\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 39. Default service enricher</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>name</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Service name to enrich by default. If not given here or configured elsewhere, the artifactId is used.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-service.name</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>headless</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Whether a headless service without a port should be configured. A headless service has the <code>ClusterIP</code> set to <code>None</code>\n and will be only used if no ports are exposed by the image configuration or by the configuration <code>port</code>.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-service.headless</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>expose</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set to true, a label <code>expose</code> with value <code>true</code> is added which can be picked up by the jkube.\n <a href=\"https://github.com/jenkins-x/exposecontroller\">expose-controller</a> to expose the service to the outside by various means.\n See the documentation of expose-controller for more details.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-service.expose</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>type</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Kubernetes / OpenShift service type to set like <em>LoadBalancer</em>, <em>NodePort</em> or <em>ClusterIP</em>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-service.type</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>port</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The service port to use. By default the same port as the ports exposed in the image configuration is used, but can be\n changed with this parameter. See <a href=\"#jkube-service-ports\">below</a> for a detailed description of the format which can be\n put into this variable.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-service.port</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>multiPort</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Set this to <code>true</code> if you want all ports to be exposed from an image configuration. Otherwise only the first port is\n used as a service port.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-service.multiPort</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>protocol</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Default protocol to use for the services. Must be <code>tcp</code> or <code>udp</code>.</p>\n<p class=\"tableblock\"> Defaults to <code>tcp</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-service.protocol</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>normalizePort</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Normalize the port numbering of the service to common and conventional port numbers.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-service.normalizePort</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Following is the Port mapping that comes in effect, when normalizePort option is set true.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 50%;\">\n<col style=\"width: 50%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Original Port</th>\n<th class=\"tableblock halign-left valign-top\">Normalized Port</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">8080</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">80</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">8081</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">80</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">8181</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">80</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">8180</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">80</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">8443</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">443</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">443</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">443</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>You specify the properties like for any enricher within the enrichers configuration like in</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><configuration>\n <!-- ... -->\n <enricher>\n <config>\n <jkube-service>\n <name>my-service</name>\n <type>NodePort</type>\n <multiPort>true</multiPort>\n </jkube-service>\n </config>\n </enricher>\n</configuration></code></pre>\n</div>\n</div>\n<div id=\"jkube-service-ports\" class=\"paragraph\">\n<div class=\"title\">Port specification</div>\n<p>With the option <code>port</code> you can influence the mapping how ports are mapped from the pod to the service.\nBy default and if this option is not given the ports exposed are dictated by the ports exposed from the Docker images contained in the pods.\nRemember, each image configured can be part of the pod.\nHowever you can expose also completely different ports as the images meta data declare.</p>\n</div>\n<div class=\"paragraph\">\n<p>The property <code>port</code> can contain a comma separated list of mappings of the following format:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-text\" data-lang=\"text\"><servicePort1>:<targetPort1>/<protocol>,<servicePort2>:<targetPort2>/<protocol>,....</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>where the <code>targetPort</code> and <code><protocol></code> specification is optional. These ports are overlayed over the ports exposed by the images, in the given order.</p>\n</div>\n<div class=\"paragraph\">\n<p>This is best explained by some examples.</p>\n</div>\n<div class=\"paragraph\">\n<p>For example if you have a pod which exposes a Microservice on port 8080 and you want to expose it as a service on port 80 (so that it can be accessed with <code><a href=\"http://myservice\" class=\"bare\">http://myservice</a></code>) you can simply use the following enricher configuration:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><configuration>\n <enricher>\n <config>\n <jkube-service>\n <name>myservice</name>\n <port>80:8080</port> <i class=\"conum\" data-value=\"1\"></i><b>(1)</b>\n </jkube-service>\n </config>\n </enricher>\n</configuration></code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td>80 is the service port, 8080 the port opened in from the pod’s images</td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<p>If your pod <em>exposes</em> their ports (which e.g. all generator do), then you can even omit the 8080 here (i.e. <code><port>80</port></code>).\nIn this case the <em>first</em> port exposed will be mapped to port 80, all other exposed ports will be omitted.</p>\n</div>\n<div class=\"paragraph\">\n<p>By default an automatically generated service only exposes the first port, even when more ports are exposed.\nWhen you want to map multiple ports you need to set the config option <code><multiPort>true</multiPort></code>.\nIn this case you can also provide multiple mappings as a comma separated list in the <code><port></code> specification where each element of the list are the mapping for the first, second, …​ port.</p>\n</div>\n<div class=\"paragraph\">\n<p>A more (and bit artificially constructed) specification could be <code><port>80,9779:9779/udp,443</port></code>.\nAssuming that the image exposes ports <code>8080</code> and <code>8778</code> (either directly or via <a href=\"#generators\">generators</a>) and we have switched on multiport mode, then the following service port mappings will be performed for the automatically generated service:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Pod port 8080 is mapped to service port 80.</p>\n</li>\n<li>\n<p>Pod port 9779 is mapped to service port 9779 with protocol UDP. Note how this second entry overrides the pod exposed port 8778.</p>\n</li>\n<li>\n<p>Pod port 443 is mapped to service port 443.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>This example shows also the mapping rules:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Port specification in <code>port</code> always override the port metadata of the contained Docker images (i.e. the ports exposed)</p>\n</li>\n<li>\n<p>You can always provide a complete mapping with <code>port</code> on your own</p>\n</li>\n<li>\n<p>The ports exposed by the images serve as <em>default values</em> which are used if not specified by this configuration option.</p>\n</li>\n<li>\n<p>You can map ports which are <em>not</em> exposed by the images by specifying them as target ports.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>Multiple ports are <strong>only</strong> mapped when <em>multiPort</em> mode is enabled (which is switched off by default). If <em>multiPort</em> mode is disabled, only the first port from the list of mapped ports calculated as above is taken.</p>\n</div>\n<div class=\"paragraph\">\n<p>When you set <code>legacyPortMapping</code> to true than ports 8080 to 9090 are mapped to port 80 automatically if not explicitly mapped via <code><em>port</em></code>. I.e. when an image exposes port 8080 with a legacy mapping this mapped to a service port 80, not 8080. You <em>should not</em> switch this on for any good reason. In fact it might be that this option can vanish anytime.</p>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-image\">jkube-image</h5>\n\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-name\">jkube-name</h5>\n\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-portname\">jkube-portname</h5>\n\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-pod-annotation\">jkube-pod-annotation</h5>\n\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-project-label\">jkube-project-label</h5>\n<div class=\"paragraph\">\n<p>Enricher that adds standard labels and selectors to generated resources (e.g. <code>app</code>, <code>group</code>, <code>provider</code>, <code>version</code>).</p>\n</div>\n<div class=\"paragraph\">\n<p>The <code>jkube-project-label</code> enricher supports the following configuration options:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Option</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>useProjectLabel</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Enable this flag to turn on the generation of the old <code>project</code> label in Kubernetes resources. The <code>project</code> label has\nbeen replaced by the <code>app</code> label in newer versions of the plugin.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-project-label.useProjectLabel</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>app</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Makes it possible to define a custom <code>app</code> label used in the generated resource files used for deployment.</p>\n<p class=\"tableblock\">Defaults to the Maven <code>project.artifactId</code> property.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-project-label.app</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>The project labels which are already specified in the input fragments are not overridden by the enricher.</p>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-git\">jkube-git</h5>\n<div class=\"paragraph\">\n<p>Enricher that adds info from .git directory as annotations.</p>\n</div>\n<div class=\"paragraph\">\n<p>The git branch & latest commit on the branch are annotated as <code>jkube.io/git-branch</code> & <code>jkube.io/git-commit</code>.\n<code>jkube.io/git-url</code> is annotated as the URL of your configured remote.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Option</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>gitRemote</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Configures the git remote name, whose URL you want to annotate as 'git-url'.</p>\n<p class=\"tableblock\"> Defaults to <code>origin</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-git.gitRemote</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-dependency\">jkube-dependency</h5>\n\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-volume-permission\">jkube-volume-permission</h5>\n<div class=\"paragraph\">\n<p>Enricher which fixes the permission of persistent volume mount with the help of an init container.</p>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-openshift-autotls\">jkube-openshift-autotls</h5>\n<div class=\"paragraph\">\n<p>Enricher which adds appropriate annotations and volumes to enable OpenShift’s automatic\n<a href=\"https://docs.openshift.org/latest/dev_guide/secrets.html#service-serving-certificate-secrets\">Service Serving Certificate Secrets</a>.\nThis enricher adds an init container to convert the service serving certificates from PEM (the format that OpenShift generates them in) to\na JKS-format Java keystore ready for consumption in Java services.</p>\n</div>\n<div class=\"paragraph\">\n<p>This enricher is disabled by default. In order to use it, you must configure the openshift-maven-plugin to use this enricher:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n <version>1.0.2</version>\n <executions>\n <execution>\n <goals>\n <goal>resource</goal>\n </goals>\n </execution>\n </executions>\n <configuration>\n <enricher>\n <includes>\n <include>jkube-openshift-autotls</include>\n </includes>\n <config>\n <jkube-openshift-autotls>\n <!-- ... -->\n </jkube-openshift-autotls>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The auto-TLS enricher supports the following configuration options:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>tlsSecretName</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The name of the secret to be used to store the generated service serving certs.</p>\n<p class=\"tableblock\"> Defaults to <code><project.artifactId>-tls</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.tlsSecretName</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>tlsSecretVolumeMountPoint</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Where the service serving secret should be mounted to in the pod.</p>\n<p class=\"tableblock\"> Defaults to <code>/var/run/secrets/jkube.io/tls-pem</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.tlsSecretName</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>tlsSecretVolumeName</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The name of the secret volume.</p>\n<p class=\"tableblock\"> Defaults to <code>tls-pem</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.tlsSecretVolumeName</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>jksVolumeMountPoint</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Where the generated keystore volume should be mounted to in the pod.</p>\n<p class=\"tableblock\"> Defaults to <code>/var/run/secrets/jkube.io/tls-jks</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.the</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>jksVolumeName</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The name of the keystore volume.</p>\n<p class=\"tableblock\"> Defaults to <code>tls-jks</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.jksVolumeName</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>pemToJKSInitContainerImage</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The name of the image used as an init container to convert PEM certificate/key to Java keystore.</p>\n<p class=\"tableblock\"> Defaults to <code>jimmidyson/pemtokeystore:v0.1.0</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.pemToJKSInitContainerImage</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>pemToJKSInitContainerName</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">the name of the init container to convert PEM certificate/key to Java keystore.</p>\n<p class=\"tableblock\"> Defaults to <code>tls-jks-converter</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.pemToJKSInitContainerName</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>keystoreFileName</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The name of the generated keystore file.</p>\n<p class=\"tableblock\"> Defaults to <code>keystore.jks</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.keystoreFileName</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>keystorePassword</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The password to use for the generated keystore.</p>\n<p class=\"tableblock\"> Defaults to <code>changeit</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.keystorePassword</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>keystoreCertAlias</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The alias in the keystore used for the imported service serving certificate.</p>\n<p class=\"tableblock\"> Defaults to <code>server</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.keystoreCertAlias</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-prometheus\">jkube-prometheus</h5>\n<div class=\"paragraph\">\n<p>This enricher adds Prometheus annotation like:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">apiVersion: v1\nkind: List\nitems:\n- apiVersion: v1\n kind: Service\n metadata:\n annotations:\n prometheus.io/scrape: \"true\"\n prometheus.io/port: 9779\n prometheus.io/path: \"/metrics\"</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>By default the enricher inspects the images' BuildConfiguration and add the annotations if the port 9779 is listed.\nYou can force the plugin to add annotations by setting enricher’s config <code><code>prometheusPort</code></code></p>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-maven-scm-enricher\">jkube-maven-scm-enricher</h5>\n<div class=\"paragraph\">\n<p>This enricher adds additional <a href=\"https://maven.apache.org/pom.html#SCM\">SCM</a> related metadata to all objects supporting annotations.\nThese metadata will be added only if <a href=\"https://maven.apache.org/pom.html#SCM\">SCM</a> information is present in the maven <code>pom.xml</code> of the project.</p>\n</div>\n<div class=\"paragraph\">\n<p>The following annotations will be added to the objects that supports annotations,</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 40. Maven SCM Enrichers Annotation Mapping</caption>\n<colgroup>\n<col style=\"width: 28.5714%;\">\n<col style=\"width: 28.5714%;\">\n<col style=\"width: 42.8572%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Maven SCM Info</th>\n<th class=\"tableblock halign-left valign-top\">Annotation</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">scm/connection</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">jkube.io/scm-con-url</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The SCM connection that will be used to connect to the project’s SCM</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">scm/developerConnection</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">jkube.io/scm-devcon-url</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The SCM Developer Connection that will be used to connect to the project’s developer SCM</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">scm/tag</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">jkube.io/scm-tag</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The SCM tag that will be used to checkout the sources, like HEAD dev-branch etc.,</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">scm/url</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">jkube.io/scm-url</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The SCM web url that can be used to browse the SCM over web browser</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Lets say you have a maven pom.xml with the following scm information,</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><scm>\n <connection>scm:git:git://github.com/jkubeio/kubernetes-maven-plugin.git</connection>\n <developerConnection>scm:git:git://github.com/jkubeio/kubernetes-maven-plugin.git</developerConnection>\n <url>git://github.com/jkubeio/kubernetes-maven-plugin.git</url>\n</scm></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This information will be enriched as annotations in the generated manifest like,</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\"># ...\n kind: Service\n metadata:\n annotations\n jkube.io/scm-con-url: \"scm:git:git://github.com/jkubeio/kubernetes-maven-plugin.git\"\n jkube.io/scm-devcon-url: \"scm:git:git://github.com/jkubeio/kubernetes-maven-plugin.git\"\n jkube.io/scm-tag: \"HEAD\"\n jkube.io/scm-url: \"git://github.com/jkubeio/kubernetes-maven-plugin.git\"\n# ...</code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-maven-issue-mgmt-enricher\">jkube-maven-issue-mgmt</h5>\n<div class=\"paragraph\">\n<p>This enricher adds additional <a href=\"https://maven.apache.org/pom.html#Issue_Management\">Issue Management</a> related metadata to\nall objects supporting annotations.\nThese metadata will be added only if the <a href=\"https://maven.apache.org/pom.html#Issue_Management\">Issue Management</a>\ninformation is available in the <code>pom.xml</code> of the Maven project.</p>\n</div>\n<div class=\"paragraph\">\n<p>The following annotations will be added to the objects that support these annotations,</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 41. Maven Issue Tracker Enrichers Annotation Mapping</caption>\n<colgroup>\n<col style=\"width: 28.5714%;\">\n<col style=\"width: 28.5714%;\">\n<col style=\"width: 42.8572%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Maven Issue Tracker Info</th>\n<th class=\"tableblock halign-left valign-top\">Annotation</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">issueManagement/system</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">jkube.io/issue-system</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Issue Management system like Bugzilla, JIRA, GitHub etc.,</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">issueManagement/url</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">jkube.io/issue-tracker-url</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Issue Management url e.g. GitHub Issues Url</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Lets say you have a maven pom.xml with the following issue management information,</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><issueManagement>\n <system>GitHub</system>\n <url>https://github.com/reactiverse/vertx-maven-plugin/issues/</url>\n</issueManagement></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This information will be enriched as annotations in the generated manifest like,</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\"># ...\n kind: Service\n metadata:\n annotations:\n jkube.io/issue-system: \"GitHub\"\n jkube.io/issue-tracker-url: \"https://github.com/reactiverse/vertx-maven-plugin/issues/\"\n# ...</code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-revision-history-enricher\">jkube-revision-history</h5>\n<div class=\"paragraph\">\n<p>This enricher adds <code>spec.revisionHistoryLimit</code> property to deployment spec of Kubernetes/OpenShift resources.\nA deployment’s revision history is stored in the replica sets, that specifies the number of old ReplicaSets to retain in order to allow rollback.\nFor more information read <a href=\"https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#revision-history-limit\">Kubernetes documentation</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>The following configuration parameters can be used to influence the behaviour of this enricher:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 42. Default revision history enricher</caption>\n<colgroup>\n<col style=\"width: 20%;\">\n<col style=\"width: 40%;\">\n<col style=\"width: 40%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>limit</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Number of revision histories to retain.</p>\n<p class=\"tableblock\"> Defaults to <code>2</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-revision-history.limit</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Just as any other enricher you can specify required properties with in the enricher’s configuration as below,</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><!-- ... -->\n<enricher>\n <config>\n <jkube-revision-history>\n <limit>8</limit>\n </jkube-revision-history>\n </config>\n</enricher>\n<!-- ... --></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This information will be enriched as spec property in the generated manifest like,</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\"># ...\nkind: Deployment\nspec:\n revisionHistoryLimit: 8\n# ...</code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-triggers-annotation\">jkube-triggers-annotation</h5>\n<div class=\"paragraph\">\n<p>This enricher adds ImageStreamTag change triggers on Kubernetes resources that support the <code>image.openshift.io/triggers</code> annotation, such as StatefulSets, ReplicaSets and DaemonSets.</p>\n</div>\n<div class=\"paragraph\">\n<p>The trigger is added to all containers that apply, but can be restricted to a limited set of containers using the following configuration:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><!-- ... -->\n<enricher>\n <config>\n <jkube-triggers-annotation>\n <containers>container-name-1,c2</containers>\n </jkube-triggers-annotation>\n </config>\n</enricher>\n<!-- ... --></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-secret-file\">jkube-secret-file</h5>\n<div class=\"paragraph\">\n<p>This enricher adds Secret defined as file content from an annotation.</p>\n</div>\n<div class=\"paragraph\">\n<p>If you are defining a custom <code>Secret</code> file, you can use an annotation to define a file name as key and its content as the value:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">metadata:\n name: ${project.artifactId}\n annotations:\n maven.jkube.io/secret/application.properties: src/test/resources/test-application.properties</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This creates a <code>Secret</code> data with the key <code>application.properties</code> (part defined after <code>secret</code>) and value content of\n<code>src/test/resources/test-application.properties</code> file (base64 encoded).</p>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-serviceaccount\">jkube-serviceaccount</h5>\n\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"enrichers-specific\">8.1.2. Specific Enrichers</h4>\n<div class=\"paragraph\">\n<p>Specific enrichers provide resource manifest enhancement for a certain tech stack that they detect.</p>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-healthcheck-karaf\">jkube-healthcheck-karaf</h5>\n<div class=\"paragraph\">\n<p>This enricher adds kubernetes readiness and liveness probes with Apache Karaf. This requires that\n<code>jkube.karaf-checks</code> has been enabled in the Karaf startup features.</p>\n</div>\n<div class=\"paragraph\">\n<p>The enricher will use the following settings by default:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>port = <code>8181</code></p>\n</li>\n<li>\n<p>scheme = <code>HTTP</code></p>\n</li>\n<li>\n<p>failureThreshold = <code>3</code></p>\n</li>\n<li>\n<p>successThreshold = <code>1</code></p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>and use paths <code>/readiness-check</code> for readiness check and <code>/health-check</code> for liveness check.</p>\n</div>\n<div class=\"paragraph\">\n<p>These options cannot be configured.</p>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-healthcheck-spring-boot\">jkube-healthcheck-spring-boot</h5>\n<div class=\"paragraph\">\n<p>This enricher adds kubernetes readiness and liveness probes with Spring Boot. This requires the following dependency\nhas been enabled in Spring Boot</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><dependency>\n <groupId>org.springframework.boot</groupId>\n <artifactId>spring-boot-starter-actuator</artifactId>\n</dependency></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The enricher will try to discover the settings from the <code>application.properties</code> / <code>application.yaml</code> Spring Boot configuration file.</p>\n</div>\n<div class=\"paragraph\">\n<p>The port number is read from the <code>management.port</code> option, and will use the default value of <code>8080</code>\nThe scheme will use HTTPS if <code>server.ssl.key-store</code> option is in use, and fallback to use <code>HTTP</code> otherwise.</p>\n</div>\n<div class=\"paragraph\">\n<p>The enricher will use the following settings by default:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>readinessProbeInitialDelaySeconds</code> : <code>10</code></p>\n</li>\n<li>\n<p><code>readinessProbePeriodSeconds</code> : <em><kubernetes-default></em></p>\n</li>\n<li>\n<p><code>livenessProbeInitialDelaySeconds</code> : <code>180</code></p>\n</li>\n<li>\n<p><code>livenessProbePeriodSeconds</code> : <em><kubernetes-default></em></p>\n</li>\n<li>\n<p><code>timeoutSeconds</code> : <em><kubernetes-default></em></p>\n</li>\n<li>\n<p><code>failureThreshold</code>: <code>3</code></p>\n</li>\n<li>\n<p><code>successThreshold</code>: <code>1</code></p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>These values can be configured by the enricher in the <code>openshift-maven-plugin</code> configuration as shown below:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n <version>1.0.2</version>\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>helm</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n <configuration>\n <enricher>\n <config>\n <jkube-healthcheck-spring-boot>\n <timeoutSeconds>5</timeoutSeconds>\n <readinessProbeInitialDelaySeconds>30</readinessProbeInitialDelaySeconds>\n <failureThreshold>3</failureThreshold>\n <successThreshold>1</successThreshold>\n </jkube-healthcheck-spring-boot>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-healthcheck-thorntail-v2\">jkube-healthcheck-thorntail-v2</h5>\n<div class=\"paragraph\">\n<p>This enricher adds kubernetes readiness and liveness probes with Thorntail v2. This requires the following fraction\nhas been enabled in Thorntail</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><dependency>\n <groupId>io.thorntail</groupId>\n <artifactId>microprofile-health</artifactId>\n</dependency></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The enricher will use the following settings by default:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>port = <code>8080</code></p>\n</li>\n<li>\n<p>scheme = <code>HTTP</code></p>\n</li>\n<li>\n<p>path = <code>/health</code></p>\n</li>\n<li>\n<p>failureThreshold = <code>3</code></p>\n</li>\n<li>\n<p>successThreshold = <code>1</code></p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>These values can be configured by the enricher in the <code>openshift-maven-plugin</code> configuration as shown below:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n <version>1.0.2</version>\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>helm</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n <configuration>\n <enricher>\n <config>\n <jkube-healthcheck-thorntail>\n <port>4444</port>\n <scheme>HTTPS</scheme>\n <path>health/myapp</path>\n <failureThreshold>3</failureThreshold>\n <successThreshold>1</successThreshold>\n </jkube-healthcheck-thorntail>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-healthcheck-vertx\">jkube-healthcheck-vertx</h5>\n<div class=\"paragraph\">\n<p>This enricher adds kubernetes readiness and liveness probes with Eclipse Vert.x applications.\nThe readiness probe lets Kubernetes detect when the application is ready, while the liveness probe allows Kubernetes to\nverify that the application is still alive.</p>\n</div>\n<div class=\"paragraph\">\n<p>This enricher allows configuring the readiness and liveness probes. The following probe types are supported:\n<code>http</code> (emit HTTP requests), <code>tcp</code> (open a socket), <code>exec</code> (execute a command).</p>\n</div>\n<div class=\"paragraph\">\n<p>By default, this enricher uses the same configuration for liveness and readiness probes. But specific configurations can\nbe provided too. The configurations can be overridden using project’s properties.</p>\n</div>\n<div class=\"sect5\">\n<h6 id=\"_using_the_jkube_healthcheck_vertx_enricher\">Using the jkube-healthcheck-vertx enricher</h6>\n<div class=\"paragraph\">\n<p>The enricher is automatically executed if your project uses the <code>vertx-maven-plugin</code> or depends on <code>io.vertx:vertx-core</code>.\nHowever, by default, no health check will be added to your deployment unless configured explicitly.</p>\n</div>\n</div>\n<div class=\"sect5\">\n<h6 id=\"_minimal_configuration\">Minimal configuration</h6>\n<div class=\"paragraph\">\n<p>The minimal configuration to add health checks is the following:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n <version>1.0.2</version>\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>helm</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n <configuration>\n <enricher>\n <config>\n <jkube-healthcheck-vertx>\n <path>/health</path>\n </jkube-healthcheck-vertx>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>It configures the readiness and liveness health checks using HTTP requests on the port <code>8080</code> (default port) and on the\npath <code>/health</code>. The defaults are:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>port = <code>8080</code> (for HTTP)</p>\n</li>\n<li>\n<p>scheme = <code>HTTP</code></p>\n</li>\n<li>\n<p>path = <em>none</em> (disabled)</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>the previous configuration can also be given use project’s properties:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><properties>\n <vertx.health.path>/health</vertx.health.path>\n</properties></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect5\">\n<h6 id=\"_configuring_differently_the_readiness_and_liveness_health_checks\">Configuring differently the readiness and liveness health checks</h6>\n<div class=\"paragraph\">\n<p>You can provide two different configuration for the readiness and liveness checks:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n <version>1.0.2</version>\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>helm</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n <configuration>\n <enricher>\n <config>\n <jkube-healthcheck-vertx>\n <readiness>\n <path>/ready</path>\n </readiness>\n <liveness>\n <path>/health</path>\n </liveness>\n </jkube-healthcheck-vertx>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>You can also use the <code>readiness</code> and <code>liveness</code> chunks in user properties:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><properties>\n <vertx.health.readiness.path>/ready</vertx.health.readiness.path>\n <vertx.health.liveness.path>/ready</vertx.health.liveness.path>\n</properties></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Shared (generic) configuration can be set outside of the specific configuration. For instance, to use the port 8081:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n <version>1.0.2</version>\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>helm</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n <configuration>\n <enricher>\n <config>\n <jkube-healthcheck-vertx>\n <port>8081</port>\n <readiness>\n <path>/ready</path>\n </readiness>\n <liveness>\n <path>/health</path>\n </liveness>\n </jkube-healthcheck-vertx>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Or:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><properties>\n <vertx.health.port>8081</vertx.health.port>\n <vertx.health.readiness.path>/ready</vertx.health.readiness.path>\n <vertx.health.liveness.path>/ready</vertx.health.liveness.path>\n</properties></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect5\">\n<h6 id=\"_configuration_structure\">Configuration Structure</h6>\n<div class=\"paragraph\">\n<p>The configuration is structured as follows</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><config>\n <jkube-healthcheck-vertx>\n <!-- Generic configuration, applied to both liveness and readiness -->\n <path>/both</path>\n <liveness>\n <!-- Specific configuration for the liveness probe -->\n <port-name>ping</port-name>\n </liveness>\n <readiness>\n <!-- Specific configuration for the readiness probe -->\n <port-name>ready</port-name>\n </readiness>\n </jkube-healthcheck-vertx>\n</config></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The same structure is used in project’s properties:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><properties>\n <!-- Generic configuration given as vertx.health.$attribute -->\n <vertx.health.path>/both</vertx.health.path>\n <!-- Specific liveness configuration given as vertx.health.liveness.$attribute -->\n <vertx.health.liveness.port-name>ping</vertx.health.liveness.port-name>\n <!-- Specific readiness configuration given as vertx.health.readiness.$attribute -->\n <vertx.health.readiness.port-name>ready</vertx.health.readiness.port-name>\n</properties></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p><strong>Important</strong>: Project’s plugin configuration override the project’s properties.\nThe overriding rules are:\n<em>specific configuration</em> > <em>specific properties</em> > <em>generic configuration</em> > <em>generic properties</em>.</p>\n</div>\n</div>\n<div class=\"sect5\">\n<h6 id=\"_probe_configuration\">Probe configuration</h6>\n<div class=\"paragraph\">\n<p>You can configure the different aspects of the probes. These attributes can be configured for both the readiness and\nliveness probes or be specific to one.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 43. Vert.x HealthCheck Enricher probe configuration</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 62.5%;\">\n<col style=\"width: 25%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>type</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The probe type among <code>http</code> (default), <code>tcp</code> and <code>exec</code>.</p>\n<p class=\"tableblock\"> Defaults to <code>http</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.type</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.type</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>initial-delay</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Number of seconds after the container has started before probes are initiated.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.initial-delay</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.initial-delay</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>period</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">How often (in seconds) to perform the probe.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.period</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.period</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>timeout</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Number of seconds after which the probe times out.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.timeout</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.timeout</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>success-threshold</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Minimum consecutive successes for the probe to be considered successful after having failed.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.success-threshold</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.success-threshold</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>failure-threshold</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Minimum consecutive failures for the probe to be considered failed after having succeeded.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.failure-threshold</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.failure-threshold</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>More details about probes are available on <a href=\"https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/\" class=\"bare\">https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/</a>.</p>\n</div>\n</div>\n<div class=\"sect5\">\n<h6 id=\"_http_specific_probe_configuration\">HTTP specific probe configuration</h6>\n<div class=\"paragraph\">\n<p>When using HTTP <code>GET</code> requests to determine readiness or liveness, several aspects can be configured. HTTP probes are used by default. To be more specific set the <code>type</code> attribute to <code>http</code>.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 44. Vert.x HealthCheck Enricher HTTP probe configuration</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 62.5%;\">\n<col style=\"width: 25%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>scheme</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Scheme to use for connecting to the host.</p>\n<p class=\"tableblock\"> Defaults to <code>HTTP</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.scheme</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.scheme</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>path</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Path to access on the HTTP server. An empty path disable the check.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.path</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.path</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>headers</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Custom headers to set in the request. HTTP allows repeated headers. It cannot be configured using project’s properties.\n An example is available below.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.headers</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.headers</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>port</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Port number to access the container. A 0 or negative number disables the check.</p>\n<p class=\"tableblock\"> Defaults to <code>8080</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.port</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.port</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>port-name</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Name of the port to access on the container. If neither the <code>port</code> nor the <code>port-name</code> is set, the check is disabled.\n If both are set the configuration is considered invalid.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.port-name</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.port-name</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Here is an example of HTTP probe configuration:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><config>\n <jkube-healthcheck-vertx>\n <initialDelay>3</initialDelay>\n <period>3</period>\n <liveness>\n <port>8081</port>\n <path>/ping</path>\n <scheme>HTTPS</scheme>\n <headers>\n <X-Custom-Header>Awesome</X-Custom-Header>\n </headers>\n </liveness>\n <readiness>\n <!-- disable the readiness probe -->\n <port>-1</port>\n </readiness>\n </jkube-healthcheck-vertx>\n</config></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect5\">\n<h6 id=\"_tcp_specific_probe_configuration\">TCP specific probe configuration</h6>\n<div class=\"paragraph\">\n<p>You can also configure the probes to just open a socket on a specific port. The <code>type</code> attribute must be set to <code>tcp</code>.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 45. Vert.x HealthCheck Enricher TCP probe configuration</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 62.5%;\">\n<col style=\"width: 25%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>port</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Port number to access the container. A 0 or negative number disables the check.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.port</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.port</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>port-name</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Name of the port to access on the container. If neither the <code>port</code> nor the <code>port-name</code> is set, the check is disabled.\n If both are set the configuration is considered invalid.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.port-name</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.port-name</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>For example:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><config>\n <jkube-healthcheck-vertx>\n <initialDelay>3</initialDelay>\n <period>3</period>\n <liveness>\n <type>tcp</type>\n <port>8081</port>\n </liveness>\n <readiness>\n <!-- use HTTP Get probe -->\n <path>/ping</path>\n <port>8080</port>\n </readiness>\n </jkube-healthcheck-vertx>\n</config></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect5\">\n<h6 id=\"_exec_probe_configuration\">Exec probe configuration</h6>\n<div class=\"paragraph\">\n<p>You can also configure the probes to execute a command. If the command succeeds, it returns 0, and Kubernetes consider the pod to be alive and healthy. If the command returns a non-zero value, Kubernetes kills the pod and restarts it. To use a command, you must set the <code>type</code> attribute to <code>exec</code>:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><config>\n <jkube-healthcheck-vertx>\n <initialDelay>3</initialDelay>\n <period>3</period>\n <liveness>\n <type>exec</type>\n <command>\n <cmd>cat</cmd>\n <cmd>/tmp/healthy</cmd>\n </command>\n </liveness>\n <readiness>\n <-- use HTTP Get probe -->\n <path>/ping</path>\n <port>8080</port>\n </readiness>\n </jkube-healthcheck-vertx>\n</config></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>As you can see in the snippet above the command is passed using the <code>command</code> attribute. This attribute cannot be\nconfigured using project’s properties. An empty command disables the check.</p>\n</div>\n</div>\n<div class=\"sect5\">\n<h6 id=\"_disabling_health_checks\">Disabling health checks</h6>\n<div class=\"paragraph\">\n<p>You can disable the checks by setting:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>the <code>port</code> to 0 or to a negative number for <code>http</code> and <code>tcp</code> probes</p>\n</li>\n<li>\n<p>the <code>command</code> to an empty list for <code>exec</code></p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>In the first case, you can use project’s properties to disable them:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><!-- Disables <code>tcp</code> and <code>http</code> probes -->\n<vertx.health.port>-1</vertx.health.port></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>For <code>http</code> probes, an empty or not set <code>path</code> also disable the probe.</p>\n</div>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-healthcheck-webapp\">jkube-healthcheck-webapp</h5>\n<div class=\"paragraph\">\n<p>This enricher adds kubernetes readiness and liveness probes with WebApp. This requires that you have <code>maven-war-plugin</code> set.</p>\n</div>\n<div class=\"paragraph\">\n<p>The enricher will use the following settings by default:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>port = <code>8080</code></p>\n</li>\n<li>\n<p>scheme = <code>HTTP</code></p>\n</li>\n<li>\n<p>path = ``</p>\n</li>\n<li>\n<p>initialReadinessDelay = 10</p>\n</li>\n<li>\n<p>initialLivenessDelay = 180</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>If <code>path</code> attribute is not set (default value) then this enricher is disabled.</p>\n</div>\n<div class=\"paragraph\">\n<p>These values can be configured by the enricher in the <code>openshift-maven-plugin</code> configuration as shown below:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n <version>1.0.2</version>\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>helm</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n <configuration>\n <enricher>\n <config>\n <jkube-healthcheck-webapp>\n <path>/</path>\n </jkube-healthcheck-webapp>\n </config>\n </enricher>\n </configuration>\n <!-- ... -->\n</plugin></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-healthcheck-wildfly-swarm\">jkube-healthcheck-wildfly-swarm</h5>\n<div class=\"paragraph\">\n<p>This enricher adds kubernetes readiness and liveness probes with WildFly Swarm. This requires the following fraction\nhas been enabled in WildFly Swarm</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><dependency>\n <groupId>org.wildfly.swarm</groupId>\n <artifactId>microprofile-health</artifactId>\n</dependency></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The enricher will use the following settings by default:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>port = <code>8080</code></p>\n</li>\n<li>\n<p>scheme = <code>HTTP</code></p>\n</li>\n<li>\n<p>path = <code>/health</code></p>\n</li>\n<li>\n<p>failureThreshold = <code>3</code></p>\n</li>\n<li>\n<p>successThreshold = <code>1</code></p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>These values can be configured by the enricher in the <code>openshift-maven-plugin</code> configuration as shown below:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n <version>1.0.2</version>\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>helm</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n <configuration>\n <enricher>\n <config>\n <jkube-healthcheck-wildfly-swarm>\n <port>4444</port>\n <scheme>HTTPS</scheme>\n <path>health/myapp</path>\n <failureThreshold>3</failureThreshold>\n <successThreshold>1</successThreshold>\n </jkube-healthcheck-wildfly-swarm>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-healthcheck-wildfly-jar\">jkube-healthcheck-wildfly-jar</h5>\n<div class=\"paragraph\">\n<p>This enricher adds kubernetes readiness and liveness probes to WildFly JAR applications. Probes depend on the WildFly <em>microprofile-health</em> subsystem\n<em>/health/ready</em> and <em>/health/live</em> endpoints.\nWhen the WildFly Bootable JAR Maven plugin is configured with the <em><cloud></em> configuration item, <em>microprofile_health</em> subsystem\nis enforced in the bootable JAR server configuration.</p>\n</div>\n<div class=\"paragraph\">\n<p>This enricher looks for the <em><cloud></em> configuration item presence in the bootable JAR Maven plugin in order to add health check probes.\nIf <em><cloud></em> item has not been defined, you can still enforce the generation of readiness and liveness probes by setting <em>enforceProbes=true</em>.</p>\n</div>\n<div class=\"paragraph\">\n<p>The enricher will use the following settings by default:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>port = <code>9990</code></p>\n</li>\n<li>\n<p>scheme = <code>HTTP</code></p>\n</li>\n<li>\n<p>readinessPath = <code>/health/ready</code></p>\n</li>\n<li>\n<p>livenessPath = <code>/health/live</code></p>\n</li>\n<li>\n<p>livenessInitialDelay = <code>60</code></p>\n</li>\n<li>\n<p>readinessIntialDelay = <code>10</code></p>\n</li>\n<li>\n<p>failureThreshold = <code>3</code></p>\n</li>\n<li>\n<p>successThreshold = <code>1</code></p>\n</li>\n<li>\n<p>enforceProbes = 'false'</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>Setting the <code>port</code> to 0 or to a negative number disables liveness and readiness probes.</p>\n</div>\n<div class=\"paragraph\">\n<p>These values can be configured by the enricher in the <code>openshift-maven-plugin</code> configuration as shown below:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n <version>1.0.2</version>\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n <configuration>\n <enricher>\n <config>\n <jkube-healthcheck-wildfly-jar>\n <port>4444</port>\n <scheme>HTTPS</scheme>\n <livenessPath>/myapp/live</livenessPath>\n <failureThreshold>3</failureThreshold>\n <successThreshold>1</successThreshold>\n </jkube-healthcheck-wildfly-jar>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"_enricher_api\">8.2. Enricher API</h3>\n<div class=\"paragraph\">\n<p><em>How to write your own enrichers and install them.</em></p>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"profiles\">9. Profiles</h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>Profiles can be used to combine a set of enrichers and generators and to give this combination a referable name.</p>\n</div>\n<div class=\"paragraph\">\n<p>Profiles are defined in YAML. The following example shows a simple profiles which uses only the\n<a href=\"#generator-spring-boot\">Spring Boot generator</a> and some enrichers adding for adding default resources:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Profile Definition</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">- name: my-spring-boot-apps <i class=\"conum\" data-value=\"1\"></i><b>(1)</b>\n generator: <i class=\"conum\" data-value=\"2\"></i><b>(2)</b>\n includes:\n - spring-boot\n enricher: <i class=\"conum\" data-value=\"3\"></i><b>(3)</b>\n includes: <i class=\"conum\" data-value=\"4\"></i><b>(4)</b>\n # Default Deployment object\n - jkube-controller\n # Add a default service\n - jkube-service\n excludes: <i class=\"conum\" data-value=\"5\"></i><b>(5)</b>\n - jkube-icon\n config: <i class=\"conum\" data-value=\"6\"></i><b>(6)</b>\n jkube-service:\n # Expose service as NodePort\n type: NodePort\n order: 10 <i class=\"conum\" data-value=\"7\"></i><b>(7)</b>\n- name: another-profile\n# ....</code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td>Profile’s name</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"2\"></i><b>2</b></td>\n<td><a href=\"#generators\">Generators</a> to use</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"3\"></i><b>3</b></td>\n<td><a href=\"#enrichers\">Enrichers</a> to use</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"4\"></i><b>4</b></td>\n<td>List of enricher to <strong>include</strong> in that given order</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"5\"></i><b>5</b></td>\n<td>List of enricher to <strong>exclude</strong></td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"6\"></i><b>6</b></td>\n<td>Configuration for services an enrichers</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"7\"></i><b>7</b></td>\n<td>An order which influences the way how profiles with the same name are merged</td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<p>Each <code>profiles.yml</code> has a list of profiles which are defined with these elements:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 46. Profile elements</caption>\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 85.7143%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>name</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Profile name. This plugin comes with a set of <a href=\"#profiles-predefined\">predefined profiles</a>. Those profiles can be\n extended by defining a custom profile with the same name of the profile to extend.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>generator</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">List of generator definitions. See <a href=\"#generator-enricher-definition\">below</a> for the format of these definitions.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>enricher</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">List of enrichers definitions. See <a href=\"#generator-enricher-definition\">below</a> for the format of these definitions.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>order</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The order of the profile which is used when profiles of the same name are merged.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"sect2\">\n<h3 id=\"generator-enricher-definition\">9.1. Generator and Enricher definitions</h3>\n<div class=\"paragraph\">\n<p>The definition of generators and enrichers in the profile follows the same format:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 47. Generator and Enericher definition</caption>\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 85.7143%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>includes</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">List of generators or enrichers to include. The order in the list determines the order in which the processors are applied.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>excludes</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">List of generators or enrichers. These have precedences over <em>includes</em> and will exclude a processor even when referenced in an <em>includes</em> sections</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>config</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Configuration for generators or enrichers. This is a map where the keys are the name of the processor to configure and the value is again a map with configuration keys and values specific to the processor. See the documentation of the respective generator or enricher for the available configuration keys.</p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect2\">\n<h3 id=\"profiles-lookup-order\">9.2. Lookup order</h3>\n<div class=\"paragraph\">\n<p>Profiles can be defined externally either directly as a build resource in <code>src/main/jkube/profiles.yml</code> or provided as part of a plugin’s dependency where it is supposed to be included as <code>META-INF/jkube/profiles.yml</code>. Multiple profiles can be include in these <code>profiles.yml</code> descriptors as a list:</p>\n</div>\n<div class=\"paragraph\">\n<p>If a profile is <a href=\"#profiles-using\">used</a> then it is looked up from various places in the following order:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>From the compile and plugin classpath from <code>META-INF/jkube/profiles-default.yml</code>. These files are reserved for profiles defined by this plugin</p>\n</li>\n<li>\n<p>From the compile and plugin classpath from <code>META-INF/jkube/profiles.yml</code>. Use this location for defining your custom profiles which you want to include via dependencies.</p>\n</li>\n<li>\n<p>From the project in <code>src/main/jkube/profiles.yml</code>. The directory can be tuned with the plugin option <code>resourceDir</code> (property: <code>jkube.resourceDir</code>)</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>When multiple profiles of the same name are found, then these profiles are merged. If profile have an order number, then the <em>higher</em> order takes precedences when merging profiles.</p>\n</div>\n<div class=\"paragraph\">\n<p>For <em>includes</em> of the same processors, the processor is moved to the earliest position. E.g consider the following two profiles with the name <code>my-profile</code></p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Profile A</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">name: my-profile\nenricher:\n includes: [ e1, e2 ]</code></pre>\n</div>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Profile B</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">name: my-profile\nenricher:\n includes: [ e3, e1 ]\norder: 10</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>then when merged results in the following profile (when no order is given, it defaults to 0):</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Profile merged</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">name: my-profile\nenricher:\n includes: [ e1, e2, e3 ]\norder: 10</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Profile with the same order number are merged according to the lookup order described above, where the latter profile is supposed to have a higher order.</p>\n</div>\n<div class=\"paragraph\">\n<p>The configuration for enrichers and generators are merged, too, where higher order profiles override configuration values with the same key of lower order profile configuration.</p>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"profiles-using\">9.3. Using Profiles</h3>\n<div class=\"paragraph\">\n<p>Profiles can be selected by defining them in the plugin configuration, by giving a system property or by using\n<a href=\"#profiles-resource-fragments\">special directories</a> in the directory holding the resource fragments.</p>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Profile used in plugin configuration</div>\n<p>Here is an example how the profile can be used in a plugin configuration:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n <configuration>\n <profile>my-spring-boot-apps</profile> <i class=\"conum\" data-value=\"1\"></i><b>(1)</b>\n <!-- ... -->\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td>Name which select the profile from the <code>profiles.yml</code></td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Profile as system property</div>\n<p>Alternatively a profile can be also specified on the command line when calling Maven:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn -Djkube.profile=my-spring-boot-apps oc:build oc:deploy</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>If a configuration for enrichers and generators are provided as part of the plugin’s <code><configuration></code> then this takes precedence over any profile specified.</p>\n</div>\n<div id=\"profiles-resource-fragments\" class=\"paragraph\">\n<div class=\"title\">Profiles for resource fragments</div>\n<p>Profiles are also very useful when used together with resource fragments in <code>src/main/jkube</code>. By default the resource objects defined here are enriched with the configured profile (if any). A different profile can be selected easily by using a sub directory within <code>src/main/jkube</code>. The name of each sub directory is interpreted as a profile name and all resource definition files found in this sub directory are enhanced with the enhancers defined in this profile.</p>\n</div>\n<div class=\"paragraph\">\n<p>For example, consider the following directory layout:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code>src/main/oc:\n app-rc.yml\n app-svc.yml\n raw/ -->\n couchbase-rc.yml\n couchbase-svc.yml</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Here, the resource descriptors <code>app-rc.yml</code> and <code>app-svc.yml</code> are enhanced with the enrichers defined in the main configuration. The files two files <code>couchbase-rc.yml</code> and <code>couchbase-svc.yml</code> in the sub directory <code>raw/</code> instead are enriched with the profile <strong>raw</strong>. This is a predefined profile which includes no enricher at all, so the couchbase resource objects are not enriched and taken over literally. This is an easy way how you can fine tune enrichment for different object set.</p>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"profiles-predefined\">9.4. Predefined Profiles</h3>\n<div class=\"paragraph\">\n<p>This plugin comes with a list of the following predefined profiles:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 48. Predefined Profiles</caption>\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 85.7143%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Profile</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>default</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The default profile which is active if no profile is specified. It consists of a curated set of generator and enrichers. See <a href=\"#profiles-default\">below</a> for the current definition.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>minimal</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">This profile contains no generators and only enrichers for adding default objects (controller and services). No other enrichment is included.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>explicit</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Like default but without adding default objects like controllers and services.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>aggregate</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Includes no generators and only the <a href=\"#jkube-dependency\">jkube-dependency</a> enricher for picking up and combining resources from the compile time dependencies.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>internal-microservice</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Do not expose a port for the service to generate. Otherwise the same as the <em>default</em> profile.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>osio</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Includes everything in the <em>default</em> profile, plus additional enrichers and generators relevant only to <a href=\"https://openshift.io\">OpenShift.io</a>.</p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect2\">\n<h3 id=\"profiles-extended\">9.5. Extending Profiles</h3>\n<div class=\"paragraph\">\n<p>A profile can also extend another profile to avoid repetition e.g of generators if the profile is only about including certain enrichers. For example, for a profile like:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">- name: minimal\n extends: default\n enricher:\n includes:\n - jkube-name\n - jkube-controller\n - jkube-service\n - jkube-image\n - jkube-project-label\n - jkube-debug\n - jkube-namespace\n - jkube-metadata\n - jkube-controller-from-configuration\n - jkube-openshift-deploymentconfig\n - jkube-openshift-project\n - jkube-openshift-service-expose\n - jkube-openshift-route</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>one then would not need to repeat all generators as they are inherited from the <code>default</code> profile.</p>\n</div>\n<div id=\"profiles-default\" class=\"listingblock\">\n<div class=\"title\">Default Profile</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\"># Default profile which is always activated\n- name: default\n enricher:\n # The order given in \"includes\" is the order in which enrichers are called\n includes:\n - jkube-metadata\n - jkube-name\n - jkube-controller\n - jkube-controller-from-configuration\n - jkube-service\n - jkube-namespace\n - jkube-image\n - jkube-portname\n - jkube-project-label\n - jkube-dependency\n - jkube-pod-annotations\n - jkube-git\n - jkube-maven-scm\n - jkube-serviceaccount\n - jkube-maven-issue-mgmt\n # TODO: Documents and verify enrichers below\n - jkube-debug\n - jkube-remove-build-annotations\n - jkube-volume-permission\n - jkube-configmap-file\n - jkube-secret-file\n\n # Route exposure\n - jkube-openshift-service-expose\n - jkube-openshift-route\n - jkube-openshift-deploymentconfig\n - jkube-openshift-project\n\n # Ingress\n - jkube-ingress\n\n # -----------------------------------------\n # TODO: Document and verify enrichers below\n # Health checks\n - jkube-healthcheck-quarkus\n - jkube-healthcheck-spring-boot\n - jkube-healthcheck-wildfly-swarm\n - jkube-healthcheck-thorntail-v2\n - jkube-healthcheck-wildfly-jar\n - jkube-healthcheck-karaf\n - jkube-healthcheck-vertx\n - jkube-healthcheck-docker\n - jkube-healthcheck-webapp\n - jkube-prometheus\n\n # Value merge enrichers\n - jkube-container-env-java-options\n\n # Dependencies shouldn't be enriched anymore, therefore it's last in the list\n - jkube-dependency\n - jkube-revision-history\n - jkube-docker-registry-secret\n - jkube-triggers-annotation\n - jkube-openshift-imageChangeTrigger\n\n generator:\n # The order given in \"includes\" is the order in which generators are called\n includes:\n - quarkus\n - spring-boot\n - wildfly-swarm\n - thorntail-v2\n - wildfly-jar\n - openliberty\n - karaf\n - vertx\n - java-exec\n - webapp\n watcher:\n includes:\n - spring-boot\n - docker-image</code></pre>\n</div>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"access-configuration\">10. Access configuration</h2>\n<div class=\"sectionbody\">\n<div class=\"sect2\">\n<h3 id=\"_docker_access\">10.1. Docker Access</h3>\n<div class=\"paragraph\">\n<p>For Kubernetes builds the openshift-maven-plugin uses the Docker remote API so the URL of your Docker Daemon must be specified. The URL can be specified by the dockerHost or machine configuration, or by the <code>DOCKER_HOST</code> environment variable. If not given</p>\n</div>\n<div class=\"paragraph\">\n<p>The Docker remote API supports communication via SSL and\nauthentication with certificates. The path to the certificates can\nbe specified by the certPath or machine configuration, or by the\n<code>DOCKER_CERT_PATH</code> environment variable.</p>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"_openshift_and_kubernetes_access\">10.2. OpenShift and Kubernetes Access</h3>\n<div class=\"paragraph\">\n<p>Plugin reads your <code>kubeconfig</code> file to read your Kubernetes/OpenShift configuration. By default, <code>kubeconfig</code> file is assumed to be either\nin <code>~/.kube/config</code> or using the environment variable <code>KUBECONFIG</code>.</p>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"registry\">11. Registry handling</h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>Docker uses registries to store images. The registry is typically\nspecified as part of the name. I.e. if the first part (everything\nbefore the first <code>/</code>) contains a dot (<code>.</code>) or colon (<code>:</code>) this part is\ninterpreted as an address (with an optionally port) of a remote\nregistry. This registry (or the default <code>docker.io</code> if no\nregistry is given) is used during push and pull operations. This\nplugin follows the same semantics, so if an image name is specified\nwith a registry part, this registry is contacted. Authentication is\nexplained in the next <a href=\"#authentication\">section</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>There are some situations however where you want to have more\nflexibility for specifying a remote registry. This might be because\nyou do not want to hard code a registry into <code>pom.xml</code> but\nprovide it from the outside with an environment variable or a system\nproperty.</p>\n</div>\n<div class=\"paragraph\">\n<p>This plugin supports various ways of specifying a registry:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>If the image name contains a registry part, this registry is used\nunconditionally and can not be overwritten from the outside.</p>\n</li>\n<li>\n<p>If an image name doesn’t contain a registry, then by default the\ndefault Docker registry <code>docker.io</code> is used for push and pull\noperations. But this can be overwritten through various means:</p>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>If the <code><image></code> configuration contains a <code><registry></code> subelement\nthis registry is used.</p>\n</li>\n<li>\n<p>Otherwise, a global configuration element <code><registry></code> is\nevaluated which can be also provided as system property via\n<code>-Djkube.docker.registry</code>.</p>\n</li>\n<li>\n<p>Finally an environment variable <code>DOCKER_REGISTRY</code> is looked up for\ndetecting a registry.</p>\n</li>\n</ul>\n</div>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>This registry is used for pulling (i.e. for autopull the base image\nwhen doing a <code>oc:build</code>) and pushing with <code>oc:push</code>. However,\nwhen these two goals are combined on the command line like in <code>mvn\n-Djkube.docker.registry=myregistry:5000 package oc:build oc:push</code>\nthe same registry is used for both operation. For a more fine grained\ncontrol, separate registries for <em>pull</em> and <em>push</em> can be specified.</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>In the plugin’s configuration with the parameters <code><pullRegistry></code> and\n<code><pushRegistry></code>, respectively.</p>\n</li>\n<li>\n<p>With the system properties <code>jkube.docker.pull.registry</code> and\n<code>jkube.docker.push.registry</code>, respectively.</p>\n</li>\n</ul>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><configuration>\n <registry>docker.jolokia.org:443</registry>\n <images>\n <image>\n <!-- Without an explicit registry ... -->\n <name>jolokia/jolokia-java</name>\n <!-- ... hence use this registry -->\n <registry>docker.ro14nd.de</registry>\n <!-- ... -->\n </image>\n <image>\n <name>postgresql</name>\n <!-- No registry in the name, hence use the globally\n configured docker.jolokia.org:443 as registry -->\n <!-- ... -->\n </image>\n <image>\n <!-- Explicitly specified always wins -->\n <name>docker.example.com:5000/another/server</name>\n </image>\n </images>\n</configuration></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>There is some special behaviour when using an externally provided\nregistry like described above:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>When <em>pulling</em>, the image pulled will be also tagged with a repository\nname <strong>without</strong> registry. The reasoning behind this is that this\nimage then can be referenced also by the configuration when the\nregistry is not specified anymore explicitly.</p>\n</li>\n<li>\n<p>When <em>pushing</em> a local image, temporarily a tag including the\nregistry is added and removed after the push. This is required\nbecause Docker can only push registry-named images.</p>\n</li>\n</ul>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"authentication\">12. Authentication</h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>When pulling (via the <code>autoPull</code> mode of <code>oc:build</code>) or pushing image, it\nmight be necessary to authenticate against a Docker registry.</p>\n</div>\n<div class=\"paragraph\">\n<p>There are five different locations searched for credentials. In order, these are:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Providing system properties <code>jkube.docker.username</code> and <code>jkube.docker.password</code> from the outside.</p>\n</li>\n<li>\n<p>Using a <code><authConfig></code> section in the plugin configuration with <code><username></code> and <code><password></code> elements.</p>\n</li>\n<li>\n<p>Using OpenShift configuration in <code>~/.config/kube</code></p>\n</li>\n<li>\n<p>Using a <code><server></code> configuration in <code>~/.m2/settings.xml</code></p>\n</li>\n<li>\n<p>Login into a registry with <code>docker login</code> (credentials in a credential helper or in <code>~/.docker/config.json</code>)</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>Using the username and password directly in the <code>pom.xml</code> is not\nrecommended since this is widely visible. This is the easiest and\ntransparent way, though. Using an <code><authConfig></code> is straight forward:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <configuration>\n <image>consol/tomcat-7.0</image>\n <!-- ... -->\n <authConfig>\n <username>jolokia</username>\n <password>s!cr!t</password>\n </authConfig>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The system property provided credentials are a good compromise when\nusing CI servers like Jenkins. You simply provide the credentials from\nthe outside:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn -Djkube.docker.username=jolokia -Djkube.docker.password=s!cr!t oc:push</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The most <em>mavenish</em> way is to add a server to the Maven settings file <code>~/.m2/settings.xml</code>:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><servers>\n <server>\n <id>docker.io</id>\n <username>jolokia</username>\n <password>s!cr!t</password>\n </server>\n <!-- ... -->\n</servers></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The server id must specify the registry to push to/pull from, which by\ndefault is central index <code>docker.io</code> (or <code>index.docker.io</code> / <code>registry.hub.docker.com</code> as fallbacks).\nHere you should add your docker.io account for your repositories. If you have multiple accounts\nfor the same registry, the second user can be specified as part of the ID. In the example above, if you\nhave a second account 'jkubeio' then use an <code><id>docker.io/jkubeio</id></code> for this second entry. I.e. add the\nusername with a slash to the id name. The default without username is only taken if no server entry with\na username appended id is chosen.</p>\n</div>\n<div class=\"paragraph\">\n<p>The most <em>secure</em> way is to rely on docker’s credential store or credential helper and read confidential information\nfrom an external credentials store, such as the native keychain of the operating system. Follow the instruction on\n<a href=\"https://docs.docker.com/engine/reference/commandline/login/#credentials-store\">the docker login documentation</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>As a final fallback, this plugin consults <code>$DOCKER_CONFIG/config.json</code> if <code>DOCKER_CONFIG</code> is set, or <code>~/.docker/config.json</code> if not, and reads credentials stored directly within this\nfile. This unsafe behavior happened when connecting to a registry with the command <code>docker login</code> from the command line\nwith older versions of docker (pre 1.13.0) or when docker is not configured to use a\n<a href=\"https://docs.docker.com/engine/reference/commandline/login/#credentials-store\">credential store</a>.</p>\n</div>\n<div class=\"sect2\">\n<h3 id=\"_pull_vs_push_authentication\">12.1. Pull vs. Push Authentication</h3>\n<div class=\"paragraph\">\n<p>The credentials lookup described above is valid for both push and\npull operations. In order to narrow things down, credentials can be\nprovided for pull or push operations alone:</p>\n</div>\n<div class=\"paragraph\">\n<p>In an <code><authConfig></code> section a sub-section <code><pull></code> and/or <code><push></code>\ncan be added. In the example below the credentials provider are only\nused for image push operations:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <configuration>\n <image>consol/tomcat-7.0</image>\n <!-- ... -->\n <authConfig>\n <push>\n <username>jolokia</username>\n <password>s!cr!t</password>\n </push>\n </authConfig>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>When the credentials are given on the command line as system\nproperties, then the properties <code>jkube.docker.pull.username</code> /\n<code>jkube.docker.pull.password</code> and <code>jkube.docker.push.username</code> /\n<code>jkube.docker.push.password</code> are used for pull and push operations,\nrespectively (when given). Either way, the standard lookup algorithm\nas described in the previous section is used as fallback.</p>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"_openshift_authentication\">12.2. OpenShift Authentication</h3>\n<div class=\"paragraph\">\n<p>When working with the default registry in OpenShift, the credentials\nto authenticate are the OpenShift username and access token. So, a\ntypical interaction with the OpenShift registry from the outside is:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre>oc login\n...\nmvn -Djkube.docker.registry=docker-registry.domain.com:80/default/myimage \\\n -Djkube.docker.username=$(oc whoami) \\\n -Djkube.docker.password=$(oc whoami -t)</pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>(note, that the image’s username part (\"default\" here\") must\ncorrespond to an OpenShift project with the same name to which you\ncurrently connected account has access).</p>\n</div>\n<div class=\"paragraph\">\n<p>This can be simplified by using the system property\n<code>docker.useOpenShiftAuth</code> in which case the plugin does the\nlookup. The equivalent to the example above is</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre>oc login\n...\nmvn -Ddocker.registry=docker-registry.domain.com:80/default/myimage \\\n -Ddocker.useOpenShiftAuth</pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Alternatively the configuration option <code><useOpenShiftAuth></code> can be\nadded to the <code><authConfig></code> section.</p>\n</div>\n<div class=\"paragraph\">\n<p>For dedicated <em>pull</em> and <em>push</em> configuration the system properties\n<code>jkube.docker.pull.useOpenShiftAuth</code> and <code>jkube.docker.push.useOpenShiftAuth</code> are\navailable as well as the configuration option <code><useOpenShiftAuth></code> in\nan <code><pull></code> or <code><push></code> section within the <code><authConfig></code>\nconfiguration.</p>\n</div>\n<div class=\"paragraph\">\n<p>If <code>useOpenShiftAuth</code> is enabled then the OpenShift configuration will be looked up in <code>$KUBECONFIG</code> or, if this environment variable is not set, in <code>~/.kube/config</code>.</p>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"password-encryption\">12.3. Password encryption</h3>\n<div class=\"paragraph\">\n<p>Regardless of which mode you choose you can encrypt password as described\nin the\n<a href=\"http://maven.apache.org/guides/mini/guide-encryption.html\">Maven documentation</a>. Assuming\nthat you have setup a <em>master password</em> in\n<code>~/.m2/security-settings.xml</code> you can create easily encrypt\npasswords:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-bash\" data-lang=\"bash\">$ mvn --encrypt-password\nPassword:\n{QJ6wvuEfacMHklqsmrtrn1/ClOLqLm8hB7yUL23KOKo=}</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This password then can be used in <code>authConfig</code>, <code>docker.password</code>\nand/or the <code><server></code> setting configuration. However, putting an\nencrypted password into <code>authConfig</code> in the <code>pom.xml</code> doesn’t make\nmuch sense, since this password is encrypted with an individual master\npassword.</p>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"extended-authentication\">12.4. Extended Authentication</h3>\n<div class=\"paragraph\">\n<p>Some docker registries require additional steps to authenticate.\n<a href=\"https://docs.aws.amazon.com/AmazonECR/latest/userguide/ECR_GetStarted.html\">Amazon ECR</a> requires using an IAM access key to obtain temporary docker login credentials.\nThe <a href=\"#jkube:push\"><strong>oc:push</strong></a> and <a href=\"#jkube:build\"><strong>oc:build</strong></a> goals automatically execute this exchange for any registry of the form\n<em><awsAccountId></em> <strong>.dkr.ecr.</strong> <em><awsRegion></em> <strong>.amazonaws.com</strong>, unless the <code>skipExtendedAuth</code> configuration\n(<code>jkube.docker.skip.extendedAuth</code> property) is set true.</p>\n</div>\n<div class=\"paragraph\">\n<p>Note that for an ECR repository with URI <code>123456789012.dkr.ecr.eu-west-1.amazonaws.com/example/image</code> the d-m-p’s <code>jkube.docker.registry</code> should be set to <code>123456789012.dkr.ecr.eu-west-1.amazonaws.com</code> and <code>example/image</code> is the <code><name></code> of the image.</p>\n</div>\n<div class=\"paragraph\">\n<p>You can use any IAM access key with the necessary permissions in any of the locations mentioned above except <code>~/.docker/config.json</code>.\nUse the IAM <strong>Access key ID</strong> as the username and the <strong>Secret access key</strong> as the password.\nIn case you’re using temporary security credentials provided by the AWS Security Token Service (AWS STS), you have to provide the <strong>security token</strong> as well.\nTo do so, either specify the <code>docker.authToken</code> system property or provide an <code><auth></code> element alongside username & password in the <code>authConfig</code>.</p>\n</div>\n<div class=\"paragraph\">\n<p>In case you are running on an EC2 instance that has an appropriate IAM role assigned\n(e.g. a role that grants the AWS built-in policy <em>AmazonEC2ContainerRegistryPowerUser</em>)\nauthentication information doesn’t need to be provided at all. Instead the instance\nmeta-data service is queried for temporary access credentials supplied by the\nassigned role.</p>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"volume-configuration\">13. Volume Configuration</h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>openshift-maven-plugin supports volume configuration in XML format in pom.xml. These are the volume types which are supported:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 49. Supported Volume Types</caption>\n<colgroup>\n<col style=\"width: 4.3478%;\">\n<col style=\"width: 95.6522%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Volume Type</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">hostPath</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Mounts a file or directory from the host node’s filesystem into your pod</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">emptyDir</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Containers in the Pod can all read and write the same files in the emptyDir volume, though that volume can be mounted at the same or different paths in each Container. When a Pod is removed from a node for any reason, the data in the emptyDir is deleted forever.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">gitRepo</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">It mounts an empty directory and clones a git repository into it for your Pod to use.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">secret</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">It is used to pass sensitive information, such as passwords, to Pods.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">nfsPath</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Allows an existing NFS(Network File System) share to be mounted into your Pod.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">gcePdName</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Mounts a Google Compute Engine(GCE) into your Pod. You must create PD using <code>gcloud</code> or GCE API or UI before you can use it.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">glusterFsPath</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Allows a Glusterfs (an open source networked filesystem) volume to be mounted into your Pod.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">persistentVolumeClaim</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Used to mount a PersistentVolume into a Pod.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">awsElasticBlockStore</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Mounts an Amazon Web Services(AWS) EBS Volume into your Pod.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">azureDisk</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Mounts a Microsoft Azure Data Disk into a Pod</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">azureFile</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Mounts a Microsoft Azure File Volume(SMB 2.1 and 3.0 into a Pod.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">cephfs</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Allows an existing CephFS volume to be mounted into your Pod. You must have your own Ceph server running with the share exported before you can use it.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">fc</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Allows existing fibre channel volume to be mounted in a Pod. You must configure FC SAN Zoning to allocate and mask those LUNs (volumes) to the target WWNs beforehand so that Kubernetes hosts can access them.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">flocker</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Flocker is an open source clustered Container data volume manager. A <code>flocker</code> volume allows a Flocker dataset to be mounted into a Pod. You must have your own Flocker installation running before you can use it.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">iscsi</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Allows an existing ISCSI(SCSI over IP) volume to be mounted into your Pod.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">portworxVolume</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A portworxVolume is an elastic block storage layer that runs hyperconverged with Kubernetes.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">quobyte</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Allows existing <code>Quobyte</code> volume to be mounted into your Pod. You must have your own Quobyte setup running the volumes created.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">rbd</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Allows a Rados Block Device volume to be mounted into your Pod.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">scaleIO</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ScaleIO is a software-based storage platform that can use existing hardware to create clusters of scalable shared block networked storage. The scaleIO volume plugin allows deployed Pods to access existing ScaleIO volumes.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">storageOS</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A storageos volume allows an existing StorageOS volume to be mounted into your Pod. You must run the StorageOS container on each node that wants to access StorageOS volumes</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">vsphereVolume</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Used to mount a vSphere VMDK volume into your Pod.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">downwardAPI</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A downwardAPI volume is used to make downward API data available to applications. It mounts a directory and writes the requested data in plain text files.</p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"integrations\">14. Integrations</h2>\n<div class=\"sectionbody\">\n<div class=\"sect2\">\n<h3 id=\"integrations.dekorate\">14.1. Dekorate</h3>\n<div class=\"paragraph\">\n<p><strong>openshift-maven-plugin</strong> provides a Zero Configuration approach to delegate deployment manifests\ngeneration to <a href=\"https://github.com/dekorateio/dekorate\">Dekorate</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>Just by adding a dependency to Dekorate library in the <code>pom.xml</code> file, all manifest\ngeneration will be delegated to Dekorate.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"> <dependencies>\n <!-- ... -->\n <dependency>\n <groupId>io.dekorate</groupId>\n <artifactId>option-annotations</artifactId>\n <version>${dekorate.version}</version>\n </dependency>\n <dependency>\n <groupId>io.dekorate</groupId>\n <artifactId>openshift-annotations</artifactId>\n <version>${dekorate.version}</version>\n </dependency>\n <dependency>\n <groupId>io.dekorate</groupId>\n <artifactId>kubernetes-annotations</artifactId>\n <version>${dekorate.version}</version>\n </dependency>\n <dependency>\n <groupId>io.dekorate</groupId>\n <artifactId>dekorate-spring-boot</artifactId>\n <version>${dekorate.version}</version>\n </dependency>\n </dependencies></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>A full example of the integration can be found in the directory\n<a href=\"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-dekorate\">quickstarts/maven/spring-boot-dekorate</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>An <strong>experimental</strong> feature is also provided to merge resources generated both by <strong>openshift-maven-plugin</strong>\nand Dekorate. You can activate this feature by using the following flag <code>-Djkube.mergeWithDekorate</code>\nin the command-line, or setting it up as a property (<code><jkube.mergeWithDekorate>true</jkube.mergeWithDekorate></code>).</p>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"_jib_java_image_builder\">14.2. JIB (Java Image Builder)</h3>\n<div class=\"paragraph\">\n<p><strong>openshift-maven-plugin</strong> also provides user an option to build container images without having access to any docker daemon.\nYou just need to set <code>jkube.build.strategy</code> property to <code>jib</code>. It will delegate the build process to\n<a href=\"https://github.com/GoogleContainerTools/jib\">JIB</a>. It creates a tarball inside your target directory which can be loaded\ninto any docker daemon afterwards. You may also push the image to your specified registry using push goal with feature flag enabled.</p>\n</div>\n<div class=\"paragraph\">\n<p>You can find more details at <a href=\"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-with-jib\">Spring Boot JIB Quickstart</a>.</p>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"faq\">15. FAQ</h2>\n<div class=\"sectionbody\">\n<div class=\"sect2\">\n<h3 id=\"_general_questions\">15.1. General questions</h3>\n<div class=\"sect3\">\n<h4 id=\"_how_do_i_define_an_environment_variable\">15.1.1. How do I define an environment variable?</h4>\n<div class=\"paragraph\">\n<p>The easiest way is to add a <code>src/main/jkube/deployment.yml</code> file to your project containing something like:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">spec:\n template:\n spec:\n containers:\n -env:\n - name: FOO\n value: bar</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The above will generate an environment variable <code>$FOO</code> of value <code>bar</code></p>\n</div>\n<div class=\"paragraph\">\n<p>For a full list of the environments used in java base images, <a href=\"https://hub.docker.com/r/jkube.java-jboss-openjdk8-jdk\">see this list</a></p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_how_do_i_define_a_system_property\">15.1.2. How do I define a system property?</h4>\n<div class=\"paragraph\">\n<p>The simplest way is to add system properties to the <code>JAVA_OPTIONS</code> environment variable.</p>\n</div>\n<div class=\"paragraph\">\n<p>For a full list of the environments used in java base images, <a href=\"https://hub.docker.com/r/jkube.java-jboss-openjdk8-jdk\">see this list</a></p>\n</div>\n<div class=\"paragraph\">\n<p>e.g. add a <code>src/main/jkube/deployment.yml</code> file to your project containing something like:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">spec:\n template:\n spec:\n containers:\n - env:\n - name: JAVA_OPTIONS\n value: \"-Dfoo=bar -Dxyz=abc\"</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The above will define the system properties <code>foo=bar</code> and <code>xyz=abc</code></p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_how_do_i_mount_a_config_file_from_a_configmap\">15.1.3. How do I mount a config file from a ConfigMap?</h4>\n<div class=\"paragraph\">\n<p>First you need to create your <code>ConfigMap</code> resource via a file <code>src/main/jkube/configmap.yml</code></p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">data:\n application.properties: |\n # spring application properties file\n welcome = Hello from Kubernetes ConfigMap!!!\n dummy = some value</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Then mount the entry in the <code>ConfigMap</code> into your <code>Deployment</code> via a file <code>src/main/jkube/deployment.yml</code></p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">metadata:\n annotations:\n configmap.jkube.io/update-on-change: ${project.artifactId}\nspec:\n replicas: 1\n template:\n spec:\n volumes:\n - name: config\n configMap:\n name: ${project.artifactId}\n items:\n - key: application.properties\n path: application.properties\n containers:\n - volumeMounts:\n - name: config\n mountPath: /deployments/config</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Here is <a href=\"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/external-resources\">an example quickstart doing this</a></p>\n</div>\n<div class=\"paragraph\">\n<p>Note that the annotation <code>configmap.jkube.io/update-on-change</code> is optional; its used if your application is not capable\nof watching for changes in the <code>/deployments/config/application.properties</code> file. In this case if you are also running\nthe <a href=\"https://github.com/fabric8io/configmapcontroller\">configmapcontroller</a> then this will cause a rolling upgrade of your\napplication to use the new <code>ConfigMap</code> contents as you change it.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_how_do_i_use_a_persistent_volume\">15.1.4. How do I use a Persistent Volume?</h4>\n<div class=\"paragraph\">\n<p>First you need to create your <code>PersistentVolumeClaim</code> resource via a file <code>src/main/jkube/foo-pvc.yml</code> where <code>foo</code> is the name of the <code>PersistentVolumeClaim</code>. It might be your app requires multiple vpersistent volumes so you will need multiple <code>PersistentVolumeClaim</code> resources.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">spec:\n accessModes:\n - ReadWriteOnce\n resources:\n requests:\n storage: 100Mi</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Then to mount the <code>PersistentVolumeClaim</code> into your <code>Deployment</code> create a file <code>src/main/jkube/deployment.yml</code></p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">spec:\n template:\n spec:\n volumes:\n - name: foo\n persistentVolumeClaim:\n claimName: foo\n containers:\n - volumeMounts:\n - mountPath: /whatnot\n name: foo</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Where the above defines the <code>PersistentVolumeClaim</code> called <code>foo</code> which is then mounted into the container at <code>/whatnot</code></p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_how_do_i_generate_ingress_for_my_generated_service\">15.1.5. How do I generate Ingress for my generated Service?</h4>\n<div class=\"paragraph\">\n<p><code>Ingress</code> generation is supported by Eclipse JKube for <code>Service</code> objects of type <code>LoadBalancer</code>. In order to generate <code>Ingress</code> you need to enable <code>jkube.createExternalUrls</code> property to <code>true</code> and <code>jkube.domain</code> property to desired host suffix, it would be appended to your service name for host value. You can also also provide a host for it in XML config like this:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n <version>1.0.2</version>\n\n <configuration>\n <resources>\n <routeDomain>org.eclipse.jkube</routeDomain>\n </resources>\n\n <enricher>\n <config>\n <jkube-service>\n <type>LoadBalancer</type>\n </jkube-service>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>You can find an example in our <a href=\"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot\">spring-boot</a> quickstart in <code>kubernetes-with-ingress</code> profile.</p>\n</div>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"appendix\">16. Appendix</h2>\n<div class=\"sectionbody\">\n<div class=\"sect2\">\n<h3 id=\"_kindfilename_type_mapping\">16.1. Kind/Filename Type Mapping</h3>\n<table id=\"appendix-kind-mapping\" class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 50%;\">\n<col style=\"width: 50%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Kind</th>\n<th class=\"tableblock halign-left valign-top\">Filename Type</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">BuildConfig</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>bc</code>, <code>buildconfig</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ClusterRole</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>cr</code>, <code>crole</code>, <code>clusterrole</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ConfigMap</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>cm</code>, <code>configmap</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ClusterRoleBinding</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>crb</code>, <code>clusterrb</code>, <code>clusterrolebinding</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">CronJob</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>cj</code>, <code>cronjob</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">CustomResourceDefinition</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>crd</code>, <code>customerresourcedefinition</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">DaemonSet</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>ds</code>, <code>daemonset</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Deployment</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>deployment</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">DeploymentConfig</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>dc</code>, <code>deploymentconfig</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ImageStream</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>is</code>, <code>imagestream</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ImageStreamTag</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>istag</code>, <code>imagestreamtag</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Ingress</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>ingress</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Job</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>job</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">LimitRange</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>lr</code>, <code>limitrange</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Namespace</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>ns</code>, <code>namespace</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">OAuthClient</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>oauthclient</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">PolicyBinding</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>pb</code>, <code>policybinding</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">PersistentVolume</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>pv</code>, <code>persistentvolume</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">PersistentVolumeClaim</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>pvc</code>, <code>persistemtvolumeclaim</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Project</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>project</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ProjectRequest</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>pr</code>, <code>projectrequest</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ReplicaSet</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>rs</code>, <code>replicaset</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ReplicationController</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>rc</code>, <code>replicationcontroller</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ResourceQuota</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>rq</code>, <code>resourcequota</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Role</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>role</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">RoleBinding</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>rb</code>, <code>rolebinding</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">RoleBindingRestriction</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>rbr</code>, <code>rolebindingrestriction</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Route</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>route</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Secret</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>secret</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Service</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>svc</code>, <code>service</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ServiceAccount</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>sa</code>, <code>serviceaccount</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">StatefulSet</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>statefulset</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Template</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>template</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Pod</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>pd</code>, <code>pod</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect2\">\n<h3 id=\"_custom_kindfilename_mapping\">16.2. Custom Kind/Filename Mapping</h3>\n<div class=\"paragraph\">\n<p>You can add your custom <code>Kind/Filename</code> mappings.\nTo do it you have two approaches:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Setting an environment variable or system property called <code>jkube.mapping</code> pointing out to a <code>.properties</code> files with pairs <code><kind>⇒filename1>, <filename2></code>\nBy default if no environment variable nor system property is set, scan for a file located at classpath <code>/META-INF/jkube.kind-filename-type-mapping-default.properties</code>.</p>\n</li>\n<li>\n<p>By embedding in MOJO configuration the mapping:</p>\n</li>\n</ul>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n <configuration>\n <mappings>\n <mapping>\n <kind>Var</kind>\n <filenameTypes>foo, bar</filenameTypes>\n </mapping>\n </mappings>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n</div>\n</div>\n</div>","document":{"title":"org.eclipse.jkube/openshift-maven-plugin","subtitle":""}}},"pageContext":{"id":"c6e0e68d-58c2-50f9-a0f5-8c4e1ba2b485","langKey":"en"}},"staticQueryHashes":[]}
\ No newline at end of file
+{"componentChunkName":"component---src-templates-doc-jsx","path":"/docs/openshift-maven-plugin","result":{"data":{"asciidocCopy":{"html":"<div id=\"preamble\">\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>© 2020 The original authors.</p>\n</div>\n<div id=\"toc\" class=\"toc\">\n<div id=\"toctitle\" class=\"title\">openshift-maven-plugin</div>\n<ul class=\"sectlevel1\">\n<li><a href=\"#introduction\">1. Introduction</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#building-images\">1.1. Building Images</a></li>\n<li><a href=\"#resource-descriptors\">1.2. Kubernetes Resources</a></li>\n<li><a href=\"#_configuration\">1.3. Configuration</a></li>\n<li><a href=\"#_examples\">1.4. Examples</a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#zero-config\">1.4.1. Zero-Config</a></li>\n<li><a href=\"#_xml_configuration\">1.4.2. XML Configuration</a></li>\n<li><a href=\"#_resource_fragments\">1.4.3. Resource Fragments</a></li>\n</ul>\n</li>\n</ul>\n</li>\n<li><a href=\"#compatibility-with-OpenShift\">2. Compatibility with OpenShift</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#openshift-compatibility\">2.1. OpenShift Compatibility</a></li>\n</ul>\n</li>\n<li><a href=\"#installation\">3. Installation</a></li>\n<li><a href=\"#goals\">4. Goals Overview</a></li>\n<li><a href=\"#goals-overview-build\">5. Build Goals</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#jkube:resource\">5.1. <strong>oc:resource</strong></a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#resource-labels-annotations\">5.1.1. Labels and Annotations</a></li>\n<li><a href=\"#resource-secrets\">5.1.2. Secrets</a></li>\n<li><a href=\"#resource-validation\">5.1.3. Resource Validation</a></li>\n<li><a href=\"#resource-route-generation\">5.1.4. Route Generation</a></li>\n<li><a href=\"#Supported-Properties-Resource\">5.1.5. Supported Properties for Resource goal</a></li>\n</ul>\n</li>\n<li><a href=\"#jkube:build\">5.2. <strong>oc:build</strong></a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#build-kubernetes\">5.2.1. Kubernetes Build</a></li>\n<li><a href=\"#build-openshift\">5.2.2. OpenShift Build</a></li>\n<li><a href=\"#build-goal-configuration\">5.2.3. Configuration (XML)</a></li>\n<li><a href=\"#_kubernetes_access_configuration\">5.2.4. Kubernetes Access Configuration</a></li>\n<li><a href=\"#_image_configuration\">5.2.5. Image Configuration</a></li>\n<li><a href=\"#build-configuration\">5.2.6. Build Configuration</a></li>\n<li><a href=\"#build-assembly\">5.2.7. Assembly</a></li>\n<li><a href=\"#misc-env\">5.2.8. Environment and Labels</a></li>\n<li><a href=\"#misc-startup\">5.2.9. Startup Arguments</a></li>\n<li><a href=\"#build-buildargs\">5.2.10. Build Args</a></li>\n<li><a href=\"#build-healthcheck\">5.2.11. Healthcheck</a></li>\n</ul>\n</li>\n<li><a href=\"#jkube:push\">5.3. <strong>oc:push</strong></a></li>\n<li><a href=\"#jkube:apply\">5.4. <strong>oc:apply</strong></a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#Supported-Properties-Apply\">5.4.1. Supported Properties For Apply goal</a></li>\n</ul>\n</li>\n<li><a href=\"#jkube:helm\">5.5. <strong>oc:helm</strong></a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#helm-multi-module\">5.5.1. Multi-module projects</a></li>\n</ul>\n</li>\n</ul>\n</li>\n<li><a href=\"#goals-overview-develop\">6. Development Goals</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#jkube:deploy\">6.1. <strong>oc:deploy</strong></a></li>\n<li><a href=\"#jkube:undeploy\">6.2. <strong>oc:undeploy</strong></a></li>\n<li><a href=\"#jkube:log\">6.3. <strong>oc:log</strong></a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#Supported-Properties-Log\">6.3.1. Supported Properties for Log goal</a></li>\n</ul>\n</li>\n<li><a href=\"#jkube:debug\">6.4. <strong>oc:debug</strong></a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#_speeding_up_debugging\">6.4.1. Speeding up debugging</a></li>\n<li><a href=\"#_debugging_with_suspension\">6.4.2. Debugging with suspension</a></li>\n<li><a href=\"#Supported-Properties-Debug\">6.4.3. Supported Properties For Debug Goal</a></li>\n</ul>\n</li>\n<li><a href=\"#jkube:watch\">6.5. <strong>oc:watch</strong></a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#watcher-spring-boot\">6.5.1. Spring Boot</a></li>\n<li><a href=\"#watcher-docker-image\">6.5.2. Docker Image</a></li>\n<li><a href=\"#Supported-Properties-Watch\">6.5.3. Supported Properties for Watch goal</a></li>\n</ul>\n</li>\n</ul>\n</li>\n<li><a href=\"#generators\">7. Generators</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#generators-default\">7.1. Default Generators</a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#generator-java-exec\">7.1.1. Java Applications</a></li>\n<li><a href=\"#generator-spring-boot\">7.1.2. Spring Boot</a></li>\n<li><a href=\"#generator-wildfly-swarm\">7.1.3. Wildfly Swarm</a></li>\n<li><a href=\"#generator-thorntail-v2\">7.1.4. Thorntail v2</a></li>\n<li><a href=\"#generator-vertx\">7.1.5. Vert.x</a></li>\n<li><a href=\"#generator-karaf\">7.1.6. Karaf</a></li>\n<li><a href=\"#generator-webapp\">7.1.7. Web Applications</a></li>\n<li><a href=\"#generator-quarkus\">7.1.8. Quarkus</a></li>\n<li><a href=\"#generator-openliberty\">7.1.9. Open Liberty</a></li>\n<li><a href=\"#generator-wildfly-jar\">7.1.10. Wildfly JAR Generator</a></li>\n</ul>\n</li>\n<li><a href=\"#generators-api\">7.2. Generator API</a></li>\n</ul>\n</li>\n<li><a href=\"#enrichers\">8. Enrichers</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#enrichers-default\">8.1. Default Enrichers</a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#enrichers-generic\">8.1.1. Generic Enrichers</a></li>\n<li><a href=\"#enrichers-specific\">8.1.2. Specific Enrichers</a></li>\n</ul>\n</li>\n<li><a href=\"#_enricher_api\">8.2. Enricher API</a></li>\n</ul>\n</li>\n<li><a href=\"#profiles\">9. Profiles</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#generator-enricher-definition\">9.1. Generator and Enricher definitions</a></li>\n<li><a href=\"#profiles-lookup-order\">9.2. Lookup order</a></li>\n<li><a href=\"#profiles-using\">9.3. Using Profiles</a></li>\n<li><a href=\"#profiles-predefined\">9.4. Predefined Profiles</a></li>\n<li><a href=\"#profiles-extended\">9.5. Extending Profiles</a></li>\n</ul>\n</li>\n<li><a href=\"#access-configuration\">10. Access configuration</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#_docker_access\">10.1. Docker Access</a></li>\n<li><a href=\"#_openshift_and_kubernetes_access\">10.2. OpenShift and Kubernetes Access</a></li>\n</ul>\n</li>\n<li><a href=\"#registry\">11. Registry handling</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#_pull_vs_push_authentication\">11.1. Pull vs. Push Authentication</a></li>\n<li><a href=\"#_openshift_authentication\">11.2. OpenShift Authentication</a></li>\n<li><a href=\"#password-encryption\">11.3. Password encryption</a></li>\n<li><a href=\"#extended-authentication\">11.4. Extended Authentication</a></li>\n</ul>\n</li>\n<li><a href=\"#volume-configuration\">12. Volume Configuration</a></li>\n<li><a href=\"#integrations\">13. Integrations</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#integrations.dekorate\">13.1. Dekorate</a></li>\n<li><a href=\"#_jib_java_image_builder\">13.2. JIB (Java Image Builder)</a></li>\n</ul>\n</li>\n<li><a href=\"#faq\">14. FAQ</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#_general_questions\">14.1. General questions</a>\n<ul class=\"sectlevel3\">\n<li><a href=\"#_how_do_i_define_an_environment_variable\">14.1.1. How do I define an environment variable?</a></li>\n<li><a href=\"#_how_do_i_define_a_system_property\">14.1.2. How do I define a system property?</a></li>\n<li><a href=\"#_how_do_i_mount_a_config_file_from_a_configmap\">14.1.3. How do I mount a config file from a ConfigMap?</a></li>\n<li><a href=\"#_how_do_i_use_a_persistent_volume\">14.1.4. How do I use a Persistent Volume?</a></li>\n<li><a href=\"#_how_do_i_generate_ingress_for_my_generated_service\">14.1.5. How do I generate Ingress for my generated Service?</a></li>\n</ul>\n</li>\n</ul>\n</li>\n<li><a href=\"#appendix\">15. Appendix</a>\n<ul class=\"sectlevel2\">\n<li><a href=\"#_kindfilename_type_mapping\">15.1. Kind/Filename Type Mapping</a></li>\n<li><a href=\"#_custom_kindfilename_mapping\">15.2. Custom Kind/Filename Mapping</a></li>\n</ul>\n</li>\n</ul>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"introduction\">1. Introduction</h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>The <strong>openshift-maven-plugin</strong> brings your Java applications on to\n<a href=\"https://www.openshift.com/\">OpenShift</a>.\nIt provides a tight integration into <a href=\"http://maven.apache.org\">Maven</a> and benefits from the build configuration already provided.\nThis plugin focus on two tasks: <em>Building Docker images</em> and <em>creating Kubernetes resource descriptors</em>.\nIt can be configured very flexibly and supports multiple configuration models for creating: A <em>Zero-Config</em> setup allows for a quick ramp-up with some opinionated defaults.\nFor more advanced requirements, an <em>XML configuration</em> provides additional configuration options which can be added to the <code>pom.xml</code>.\nFor the full power, in order to tune all facets of the creation, external <em>resource fragments</em> and <em>Dockerfiles</em> can be used.</p>\n</div>\n<div class=\"sect2\">\n<h3 id=\"building-images\">1.1. Building Images</h3>\n<div class=\"paragraph\">\n<p>The <a href=\"#jkube:build\"><strong>oc:build</strong></a> goal is for creating Docker images containing the actual application. These then can be deployed later on Kubernetes or OpenShift.\nIt is easy to include build artifacts and their dependencies into these images.\nThis plugin uses the assembly descriptor format similar to the one used in\n<a href=\"http://maven.apache.org/plugins/maven-assembly-plugin/\">maven-assembly-plugin</a> to specify the content which will be added\nto the image.\nThat images can then be pushed to public or private Docker registries with <a href=\"#jkube:push\"><strong>oc:push</strong></a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>Depending on the operational mode, for building the actual image either a Docker daemon is used directly or an <a href=\"https://docs.openshift.com/enterprise/3.0/architecture/core_concepts/builds_and_image_streams.html#docker-build\">OpenShift Docker Build</a> is performed.</p>\n</div>\n<div class=\"paragraph\">\n<p>A special <a href=\"#jkube:watch\"><strong>oc:watch</strong></a> goal allows for reacting to code changes to automatically recreate images or copy new artifacts into running containers.</p>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"resource-descriptors\">1.2. Kubernetes Resources</h3>\n<div class=\"paragraph\">\n<p>Kubernetes resource descriptors can be created or generated from <a href=\"#jkube:resource\"><strong>oc:resource</strong></a>.\nThese files are packaged within the Maven artifacts and can be deployed to a running orchestration platform with <a href=\"#jkube:apply\"><strong>oc:apply</strong></a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>Typically you only specify a small part of the real resource descriptors which will be enriched by this plugin with various extra information taken from the <code>pom.xml</code>.\nThis drastically reduces boilerplate code for common scenarios.</p>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"_configuration\">1.3. Configuration</h3>\n<div class=\"paragraph\">\n<p>As mentioned already there are three levels of configuration:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><strong>Zero-Config</strong> mode makes some very opinionated decisions based on what is present in the pom.xml like what base image to use or which ports to expose.\nThis is great for starting up things and for keeping quickstart applications small and tidy.</p>\n</li>\n<li>\n<p><strong>XML plugin configuration</strong> mode is similar to what <a href=\"https://dmp.fabric8.io/#example\">docker-maven-plugin</a> provides.\nThis allows for type-safe configuration with IDE support, but only a subset of possible resource descriptor features is provided.</p>\n</li>\n<li>\n<p><strong>Kubernetes & OpenShift resource fragments</strong> are user provided YAML files that can be <em>enriched</em> by the plugin. This allows expert users to use a plain configuration file with all their capabilities, but also to add project specific build information and avoid boilerplate code.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>The following table gives an overview of the different models</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 1. Configuration Models</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 50%;\">\n<col style=\"width: 37.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Model</th>\n<th class=\"tableblock halign-left valign-top\">Docker Images</th>\n<th class=\"tableblock halign-left valign-top\">Resource Descriptors</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>Zero-Config</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generators\">Generators</a> are used to create Docker image configurations. Generators can detect certain aspects of\n the build (e.g. whether Spring Boot is used) and then choose some opinionated defaults like the base image, which\n ports to expose and the startup command. They can be configured, but offer only a few options.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Default <a href=\"#enrichers\">Enrichers</a> will create a default <em>Service</em> and <em>Deployment</em> (<em>DeploymentConfig</em> for OpenShift)\n when no other resource objects are provided. Depending on the image they can detect which port to expose in the\n service. As with Generators, Enrichers support a limited set of configuration options.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>XML configuration</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">openshift-maven-plugin inherits the XML based configuration for building images from the\n <a href=\"https://dmp.fabric8.io/#docker:build\">docker-maven-plugin</a> and provides the same functionality. It supports an\n <a href=\"http://maven.apache.org/components/plugins/maven-assembly-plugin/assembly.html\">assembly descriptor</a> for specifying the\n content of the Docker image.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A subset of possible resource objects can be configured with a dedicated XML syntax. With a decent IDE you get\n autocompletion on most objects and inline documentation for the available configuration elements. The provided\n configuration can be still enhanced by Enhancers which is useful for adding e.g. labels and annotations containing\n build or other information.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>Resource Fragments</strong> and <strong>Dockerfiles</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Similarly to the docker-maven-plugin, openshift-maven-plugin supports <a href=\"#external-dockerfile\">external Dockerfiles</a> too, which are\n referenced from the plugin configuration.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Resource descriptors can be provided as external YAML files which will build a base skeleton for the applicable resource.</p>\n<p class=\"tableblock\"> The \"skeleton\" is then post-processed by <a href=\"#enrichers\">Enrichers</a> which will complete the skeleton by adding the fields\n each enricher is responsible of (labels, annotations, port information, etc.). Maven properties within these files\n are resolved to their values.</p>\n<p class=\"tableblock\"> With this model you can use every Kubernetes / OpenShift resource objects with all their flexibility, but still get the benefit\n of adding build information.</p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect2\">\n<h3 id=\"_examples\">1.4. Examples</h3>\n<div class=\"paragraph\">\n<p>Let’s have a look at some code. The following examples will demonstrate all three configurations variants:</p>\n</div>\n<div class=\"sect3\">\n<h4 id=\"zero-config\">1.4.1. Zero-Config</h4>\n<div class=\"paragraph\">\n<p>This minimal but full working example <code>pom.xml</code> shows how a simple spring boot application can be dockerized and\nprepared for Kubernetes. The full example can be found in directory\n<a href=\"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/zero-config\">quickstarts/maven/zero-config</a>.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><project>\n <modelVersion>4.0.0</modelVersion>\n\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>jkube-maven-sample-zero-config</artifactId>\n <version>1.0.2</version>\n <packaging>jar</packaging>\n\n <parent>\n <groupId>org.springframework.boot</groupId>\n <artifactId>spring-boot-starter-parent</artifactId> <i class=\"conum\" data-value=\"1\"></i><b>(1)</b>\n <version>1.5.5.RELEASE</version>\n </parent>\n\n <dependencies>\n <dependency>\n <groupId>org.springframework.boot</groupId>\n <artifactId>spring-boot-starter-web</artifactId> <i class=\"conum\" data-value=\"2\"></i><b>(2)</b>\n </dependency>\n </dependencies>\n\n <build>\n <plugins>\n <plugin>\n <groupId>org.springframework.boot</groupId>\n <artifactId>spring-boot-maven-plugin</artifactId> <i class=\"conum\" data-value=\"3\"></i><b>(3)</b>\n </plugin>\n <plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId> <i class=\"conum\" data-value=\"4\"></i><b>(4)</b>\n <version>1.0.2</version>\n </plugin>\n </plugins>\n </build>\n</project></code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td>This minimalistic spring boot application uses the spring-boot parent POM for setting up dependencies and plugins</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"2\"></i><b>2</b></td>\n<td>The Spring Boot web starter dependency enables a simple embedded Tomcat for serving Spring MVC apps</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"3\"></i><b>3</b></td>\n<td>The <code>spring-boot-maven-plugin</code> is responsible for repackaging the application into a fat jar, including all dependencies and the embedded Tomcat</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"4\"></i><b>4</b></td>\n<td>The <code>openshift-maven-plugin</code> enables the automatic generation of a Docker image and Kubernetes / OpenShift descriptors including this Spring application.</td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<p>This setup make some opinionated decisions for you:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>As base image <a href=\"https://quay.io/repository/jkube/jkube-java-binary-s2i\">jkube/jkube-java-binary-s2i</a>\nis chosen which enables <a href=\"https://www.jolokia.org\">Jolokia</a> and <a href=\"https://github.com/prometheus/jmx_exporter\">jmx_exporter</a>.\nIt also comes with a sophisticated <a href=\"https://github.com/jboss-openshift/cct_module/tree/master/jboss/container/java/run/bash\">startup script</a>.</p>\n</li>\n<li>\n<p>It will create a Kubernetes <a href=\"http://kubernetes.io/docs/user-guide/deployments/\">Deployment</a> and a\n<a href=\"http://kubernetes.io/docs/user-guide/services/\">Service</a> as resource objects</p>\n</li>\n<li>\n<p>It exports port 8080 as the application service port (and 8778 and 9779 for Jolokia and jmx_exporter access, respectively)</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>These choices can be influenced by configuration options as described in <a href=\"#generator-spring-boot\">Spring Boot Generator</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>To start the Docker image build, you simply run</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-bash\" data-lang=\"bash\">mvn package oc:build</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This will create the Docker image against a running Docker daemon (which must be accessible either via Unix Socket or\nwith the URL set in <code>DOCKER_HOST</code>). Alternatively, when connected to an OpenShift cluster then a <a href=\"https://docs.openshift.com/enterprise/3.0/using_images/s2i_images/index.html\">S2I</a> build will be performed on OpenShift which at the end creates an\n<a href=\"https://docs.openshift.com/enterprise/3.1/architecture/core_concepts/builds_and_image_streams.html\">ImageStream</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>To deploy the resources to the cluster call</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-bash\" data-lang=\"bash\">mvn oc:resource oc:deploy</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>By default a <em>Service</em> and a <em>Deployment</em> object pointing to the created Docker image is created. When running in OpenShift mode, a <em>Service</em> and <em>DeploymentConfig</em> which refers the <em>ImageStream</em> created with <code>oc:build</code> will be installed.</p>\n</div>\n<div class=\"paragraph\">\n<p>Of course you can bind all those jkube-goals to execution phases as well, so that they are called along with standard lifecycle goals like <code>install</code>. For example, to bind the building of the Kubernetes resource files and the Docker images, add the following goals to the execution of the openshift-maven-plugin:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example for lifecycle bindings</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n\n <!-- ... -->\n\n <executions>\n <execution>\n <goals>\n <goal>resource</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>If you’d also like to automatically deploy to Kubernetes each time you do a <code>mvn install</code> you can add the <code>apply</code> goal:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example for lifecycle bindings with automatic deploys for mvn install</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n\n <!-- ... -->\n\n <executions>\n <execution>\n <goals>\n <goal>resource</goal>\n <goal>build</goal>\n <goal>apply</goal>\n </goals>\n </execution>\n </executions>\n</plugin></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_xml_configuration\">1.4.2. XML Configuration</h4>\n<div class=\"admonitionblock warning\">\n<table>\n<tr>\n<td class=\"icon\">\n<i class=\"fa icon-warning\" title=\"Warning\"></i>\n</td>\n<td class=\"content\">\nXML based configuration is only partially implemented and is not recommended for use right now.\n</td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<p>Although the Zero-config mode and its generators can be tweaked with options up to a certain degree, many cases require more flexibility. For such instances, an XML-based plugin configuration can be used, in a way similar to the\n<a href=\"https://dmp.fabric8.io/#configuration\">XML configuration</a> used by <code>docker-maven-plugin</code>.</p>\n</div>\n<div class=\"paragraph\">\n<p>The plugin configuration can be roughly divided into the following sections:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Global configuration options are responsible for tuning the behaviour of plugin goals</p>\n</li>\n<li>\n<p><code><images></code> defines which Docker <a href=\"#image-configuration\">images</a> are used and configured. This section is similar to the\n<a href=\"https://dmp.fabric8.io//#image-configuration\">image configuration</a> of the <code>docker-maven-plugin</code>, except that <code><run></code>\nand <code><external></code> sub-elements are ignored)</p>\n</li>\n<li>\n<p><code><resource></code> defines the resource descriptors for deploying on an OpenShift or Kuberneres cluster.</p>\n</li>\n<li>\n<p><code><generator></code> configures <a href=\"#generators\">generators</a> which are responsible for creating images. Generators are used as an alternative to a dedicated <code><images></code> section.</p>\n</li>\n<li>\n<p><code><enricher></code> configures various aspects of <a href=\"#enrichers\">enrichers</a> for creating or enhancing resource descriptors.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>A working example can be found in the\n<a href=\"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/xml-config\">quickstarts/maven/xml-config</a> directory.\nAn extract of the plugin configuration is shown below:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example for an XML configuration</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><configuration>\n <namespace>test-ns</namespace>\n <images> <i class=\"conum\" data-value=\"1\"></i><b>(1)</b>\n <image>\n <name>xml-config-demo:1.0.0</name>\n <!-- \"alias\" is used to correlate to the containers in the pod spec -->\n <alias>camel-app</alias>\n <build>\n <from>fabric8/java-centos-openjdk8-jre</from>\n <assembly>\n <inline>\n <baseDirectory>/deployments</baseDirectory>\n </inline>\n </assembly>\n <env>\n <JAVA_LIB_DIR>/deployments</JAVA_LIB_DIR>\n <JAVA_MAIN_CLASS>org.apache.camel.cdi.Main</JAVA_MAIN_CLASS>\n </env>\n </build>\n </image>\n </images>\n\n <resources> <i class=\"conum\" data-value=\"2\"></i><b>(2)</b>\n <labels> <i class=\"conum\" data-value=\"3\"></i><b>(3)</b>\n <all>\n <group>quickstarts</group>\n </all>\n </labels>\n\n <replicas>2</replicas> <i class=\"conum\" data-value=\"4\"></i><b>(4)</b>\n <controllerName>${project.artifactId}</controllerName> <i class=\"conum\" data-value=\"5\"></i><b>(5)</b>\n\n <services> <i class=\"conum\" data-value=\"6\"></i><b>(6)</b>\n <service>\n <name>camel-service</name>\n <headless>true</headless>\n </service>\n </services>\n\n <serviceAccounts>\n <serviceAccount>\n <name>build-robot</name>\n </serviceAccount>\n </serviceAccounts>\n </resources>\n</configuration></code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td>Standard XML configuration for building one single Docker image</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"2\"></i><b>2</b></td>\n<td>Kubernetes / OpenShift resources to create</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"3\"></i><b>3</b></td>\n<td>Labels which should be applied globally to all resource objects</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"4\"></i><b>4</b></td>\n<td>Number of replicas desired</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"5\"></i><b>5</b></td>\n<td>Name of controller created by plugin</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"6\"></i><b>6</b></td>\n<td>One or more <a href=\"http://kubernetes.io/docs/user-guide/services/\">Service</a> definitions.</td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<p>The XML resource configuration is based on plain Kubernetes resource objects. When targeting OpenShift, Kubernetes resource descriptors will be automatically converted to their OpenShift counterparts, e.g. a Kubernetes <a href=\"http://kubernetes.io/docs/user-guide/deployments/\">Deployment</a> will be converted to an OpenShift <a href=\"https://docs.openshift.com/container-platform/4.1/applications/deployments/what-deployments-are.html#deployments-and-deploymentconfigs_what-deployments-are\">DeploymentConfig</a>.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_resource_fragments\">1.4.3. Resource Fragments</h4>\n<div class=\"paragraph\">\n<p>The third configuration option is to use an external configuration in form of YAML resource descriptors which are located in the <code>src/main/jkube</code> directory. Each resource gets its own file, which contains a skeleton of a resource descriptor. The plugin will pick up the resource, enrich it and then combine all to a single <code>kubernetes.yml</code> and <code>openshift.yml</code> file. Within these descriptor files you are can freely use any Kubernetes feature.</p>\n</div>\n<div class=\"paragraph\">\n<p>Note: In order to support simultaneously both OpenShift and Kubernetes, there is currently no way to specify OpenShift-only features this way, though this might change in future releases.</p>\n</div>\n<div class=\"paragraph\">\n<p>Let’s have a look at an example from\n<a href=\"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/external-resources\">quickstarts/maven/external-resources</a>.\nThis is a plain Spring Boot application, whose images are auto generated like in the <a href=\"#zero-config\">Zero-Config</a> case.\nThe resource fragments are in <code>src/main/jkube</code>.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example fragment \"deployment.yml\"</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">spec:\n replicas: 1\n template:\n spec:\n volumes:\n - name: config\n gitRepo:\n repository: 'https://github.com/jstrachan/sample-springboot-config.git'\n revision: 667ee4db6bc842b127825351e5c9bae5a4fb2147\n directory: .\n containers:\n - volumeMounts:\n - name: config\n mountPath: /app/config\n env:\n - name: KUBERNETES_NAMESPACE\n valueFrom:\n fieldRef:\n apiVersion: v1\n fieldPath: metadata.namespace\n serviceAccount: ribbon</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>As you can see, there is no <code>metadata</code> section as would be expected for Kubernetes resources because it will be automatically added by the <code>openshift-maven-plugin</code>. The object’s <code>Kind</code>, if not given, is automatically derived from the\nfilename. In this case, the <code>openshift-maven-plugin</code> will create a <code>Deployment</code> because the file is called <code>deployment.yml</code>. Similar mappings between file names and resource type exist for each supported resource kind, the\ncomplete list of which (along with associated abbreviations) can be found in the <a href=\"#appendix-kind-mapping\">Appendix</a>.</p>\n</div>\n<div class=\"admonitionblock note\">\n<table>\n<tr>\n<td class=\"icon\">\n<i class=\"fa icon-note\" title=\"Note\"></i>\n</td>\n<td class=\"content\">\nNow that sidecar containers are supported in this plugin(if <code>jkube.sidecar</code> is enabled), be careful whenever you’re supplying container name in the resource fragment. If container specified in resource fragment doesn’t have a name or it’s name is equal to default fmp generated application’s container name; it would not be treated as sidecar and it would be merged into main container. However, You can override plugin’s default name for main container via <code>jkube.generator.alias</code> property.\n</td>\n</tr>\n</table>\n</div>\n<hr>\n<div class=\"paragraph\">\n<p>Additionally, if you name your fragment using a name prefix followed by a dash and the mapped file name, the plugin will automatically use that name for your resource. So, for example, if you name your deployment fragment\n<code>myapp-deployment.yml</code>, the plugin will name your resource <code>myapp</code>. In the absence of such provided name for your resource, a name will be automatically derived from your project’s metadata (in particular, its <code>artifactId</code> as specified in your POM).</p>\n</div>\n<div class=\"paragraph\">\n<p>No image is also referenced in this example because the plugin also fills in the image details based on the configured image you are building with (either from a generator or from a dedicated image plugin configuration, as seen before).</p>\n</div>\n<div class=\"admonitionblock note\">\n<table>\n<tr>\n<td class=\"icon\">\n<i class=\"fa icon-note\" title=\"Note\"></i>\n</td>\n<td class=\"content\">\nFor building images there is also an alternative mode using external Dockerfiles, in addition to the XML based configuration. Refer to <a href=\"#build-overview\">oc:build</a> for details.\n</td>\n</tr>\n</table>\n</div>\n<hr>\n<div class=\"paragraph\">\n<p>Enrichment of resource fragments can be fine-tuned by using profile sub-directories. For more details see <a href=\"#profiles\">Profiles</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>Now that we have seen some examples of the various ways how this plugin can be used, the following sections will describe the plugin goals and extension points in detail.</p>\n</div>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"compatibility-with-OpenShift\">2. Compatibility with OpenShift</h2>\n<div class=\"sectionbody\">\n<div class=\"sect2\">\n<h3 id=\"openshift-compatibility\">2.1. OpenShift Compatibility</h3>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 2. OpenShift Compatibility</caption>\n<colgroup>\n<col style=\"width: 25%;\">\n<col style=\"width: 25%;\">\n<col style=\"width: 25%;\">\n<col style=\"width: 25%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">OMP</th>\n<th class=\"tableblock halign-left valign-top\">OpenShift 4.4</th>\n<th class=\"tableblock halign-left valign-top\">OpenShift 4.2</th>\n<th class=\"tableblock halign-left valign-top\">OpenShift 3.11</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">OMP 1.0.2</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">OMP 1.0.1</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">OMP 1.0.0</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">OMP 0.2.0</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">OMP 0.1.1</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">OMP 0.1.0</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">✓</p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"installation\">3. Installation</h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>This plugin is available from Maven central and can be connected to\npre- and post-integration phase as seen below. The configuration and\navailable goals are described below.</p>\n</div>\n<div class=\"paragraph\">\n<p>By default, Maven will only search for plugins in the <code>org.apache.maven.plugins</code> and <code>org.codehaus.mojo</code> packages. In order to resolve the provider for the JKube plugin goals, you need to edit <code>~/.m2/settings.xml</code> and add the <code>org.eclipse.jkube</code> namespace so the <code><pluginGroups></code> configuration.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><settings>\n ...\n\n <pluginGroups>\n <pluginGroup>org.eclipse.jkube</pluginGroup>\n </pluginGroups>\n\n ...\n</settings></code></pre>\n</div>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n <version>1.0.2</version>\n\n <configuration>\n ....\n <images>\n <!-- A single's image configuration -->\n <image>\n ...\n <build>\n ....\n </build>\n </image>\n ....\n </images>\n </configuration>\n\n <!-- Connect oc:resource, oc:build and oc:helm to lifecycle phases -->\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>build</goal>\n <goal>helm</goal>\n </goals>\n </execution>\n </executions>\n</plugin></code></pre>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"goals\">4. Goals Overview</h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>This plugin supports a rich set for providing a smooth Java developer experience. These goals can be categorized in multiple groups:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><a href=\"#goals-build\">Build goals</a> are all about creating and managing Kubernetes build artifacts like Docker images or S2I builds.</p>\n</li>\n<li>\n<p><a href=\"#goals-develop\">Development goals</a> target help not only in deploying resource descriptors to the development cluster but also to manage the lifecycle of the development cluster as well.</p>\n</li>\n</ul>\n</div>\n<table id=\"goals-build\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 3. Build Goals</caption>\n<colgroup>\n<col style=\"width: 25%;\">\n<col style=\"width: 75%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Goal</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong><a href=\"#jkube:build\"><strong>oc:build</strong></a></strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Build images</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong><a href=\"#jkube:push\"><strong>oc:push</strong></a></strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Push images to a registry</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong><a href=\"#jkube:resource\"><strong>oc:resource</strong></a></strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Create Kubernetes or OpenShift resource descriptors</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong><a href=\"#jkube:apply\"><strong>oc:apply</strong></a></strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Apply resources to a running cluster</p></td>\n</tr>\n</tbody>\n</table>\n<table id=\"goals-develop\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 4. Development Goals</caption>\n<colgroup>\n<col style=\"width: 25%;\">\n<col style=\"width: 75%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Goal</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong><a href=\"#jkube:deploy\"><strong>oc:deploy</strong></a></strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Deploy resources descriptors to a cluster after creating them and building the app. Same as <a href=\"#jkube:apply\"><strong>oc:apply</strong></a> except that it runs in the background.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong><a href=\"#jkube:undeploy\"><strong>oc:undeploy</strong></a></strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Undeploy and remove resources descriptors from a cluster.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong><a href=\"#jkube:watch\"><strong>oc:watch</strong></a></strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Watch for file changes and perform rebuilds and redeployments</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong><a href=\"#jkube:log\"><strong>oc:log</strong></a></strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Show the logs of the running application</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong><a href=\"#jkube:debug\"><strong>oc:debug</strong></a></strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Enable remote debugging</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Depending on whether the OpenShift or Kubernetes operational mode is used, the workflow and the performed actions differs :</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 5. Workflows</caption>\n<colgroup>\n<col style=\"width: 11.1111%;\">\n<col style=\"width: 44.4444%;\">\n<col style=\"width: 44.4445%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Use Case</th>\n<th class=\"tableblock halign-left valign-top\">Kubernetes</th>\n<th class=\"tableblock halign-left valign-top\">OpenShift</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Build</p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p><code>oc:build</code> <code>oc:push</code></p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Creates an image against an exposed Docker daemon (with a <code>docker.tar</code>)</p>\n</li>\n<li>\n<p>Pushes the image to a registry which is then referenced from the configuration</p>\n</li>\n</ul>\n</div></div></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p><code>oc:build</code></p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Creates or uses a <code>BuildConfig</code></p>\n</li>\n<li>\n<p>Creates or uses an <code>ImageStream</code> which can be referenced by the deployment descriptors in a <code>DeploymenConfig</code></p>\n</li>\n<li>\n<p>Starts an OpenShift build with a <code>docker.tar</code> as input</p>\n</li>\n</ul>\n</div></div></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Deploy</p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p><code>oc:deploy</code></p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Applies a Kubernetes resource descriptor to cluster</p>\n</li>\n</ul>\n</div></div></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p><code>oc:deploy</code></p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Applies an OpenShift resource descriptor to a cluster</p>\n</li>\n</ul>\n</div></div></td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"goals-overview-build\">5. Build Goals</h2>\n<div class=\"sectionbody\">\n<div class=\"sect2\">\n<h3 id=\"jkube:resource\">5.1. <strong>oc:resource</strong></h3>\n<div class=\"paragraph\">\n<p>This goal generates Kubernetes resources based on your project. It can either be opinionated defaults or\nbased on the configuration provided in XML config or resource fragments in <code>src/main/jkube</code>.\nGenerated resources are in <code>target/classes/META-INF/jkube/openshift</code> directory.</p>\n</div>\n<div class=\"sect3\">\n<h4 id=\"resource-labels-annotations\">5.1.1. Labels and Annotations</h4>\n<div class=\"paragraph\">\n<p>Labels and annotations can be easily added to any resource object. This is best explained by an example.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example for label and annotations</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <!-- ... -->\n <configuration>\n <!-- ... -->\n <resources>\n <labels> <i class=\"conum\" data-value=\"1\"></i><b>(1)</b>\n <all> <i class=\"conum\" data-value=\"1\"></i><b>(1)</b>\n <property> <i class=\"conum\" data-value=\"2\"></i><b>(2)</b>\n <name>organisation</name>\n <value>unesco</value>\n </property>\n </all>\n <service> <i class=\"conum\" data-value=\"3\"></i><b>(3)</b>\n <property>\n <name>database</name>\n <value>mysql</value>\n </property>\n <property>\n <name>persistent</name>\n <value>true</value>\n </property>\n </service>\n <replicaSet> <i class=\"conum\" data-value=\"4\"></i><b>(4)</b>\n <!-- ... -->\n </replicaSet>\n <pod> <i class=\"conum\" data-value=\"5\"></i><b>(5)</b>\n <!-- ... -->\n </pod>\n <deployment> <i class=\"conum\" data-value=\"6\"></i><b>(6)</b>\n <!-- ... -->\n </deployment>\n </labels>\n\n <annotations> <i class=\"conum\" data-value=\"7\"></i><b>(7)</b>\n <!-- ... -->\n </annotations>\n <remotes> <i class=\"conum\" data-value=\"8\"></i><b>(8)</b>\n <remote>https://gist.githubusercontent.com/lordofthejars/ac2823cec7831697d09444bbaa76cd50/raw/e4b43f1b6494766dfc635b5959af7730c1a58a93/deployment.yaml</remote>\n </remotes>\n </resource>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td><code><labels></code> section with <code><resources></code> contains labels which should be applied to objects of various kinds</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"2\"></i><b>2</b></td>\n<td>Within <code><all></code> labels which should be applied to <strong>every</strong> object can be specified</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"3\"></i><b>3</b></td>\n<td><code><service></code> labels are used to label services</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"4\"></i><b>4</b></td>\n<td><code><replicaSet></code> labels are for replica set and replication controller</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"5\"></i><b>5</b></td>\n<td><code><pod></code> holds labels for pod specifications in replication controller, replica sets and deployments</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"6\"></i><b>6</b></td>\n<td><code><deployment></code> is for labels on deployments (kubernetes) and deployment configs (openshift)</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"7\"></i><b>7</b></td>\n<td>The subelements are also available for specifying annotations.</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"8\"></i><b>8</b></td>\n<td><code><remotes></code> you can set location of fragments as <code>URL</code>.</td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<p>Labels and annotations can be specified in free form as a map. In this map, the element name is the name of the label or annotation respectively, whereas the content is the value to set.</p>\n</div>\n<div class=\"paragraph\">\n<p>The following subelements are possible for <code><labels></code> and <code><annotations></code> :</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 6. Label and annotation configuration</caption>\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 85.7143%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>all</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">All entries specified in the <code><all></code> sections are applied to all resource objects created.\n This also implies build object like image stream and build configs which are created implicitly for an <a href=\"#build-openshift\">Kubernetes build</a>.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>deployment</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Labels and annotations applied to <code>Deployment</code> (for Kubernetes).\n And <code>DeploymentConfig</code> (for OpenShift) objects.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>pod</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Labels and annotations applied pod specification as used in <code>ReplicationController</code>, <code>ReplicaSets</code>, <code>Deployments</code> and <code>DeploymentConfigs</code> objects.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>replicaSet</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Labels and annotations applied to <code>ReplicaSet</code> and <code>ReplicationController</code> objects.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>service</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Labels and annotations applied to <code>Service</code> objects.</p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect3\">\n<h4 id=\"resource-secrets\">5.1.2. Secrets</h4>\n<div class=\"paragraph\">\n<p>Once you’ve configured some docker registry credentials into <code>~/.m2/setting.xml</code>, as explained in the\n<a href=\"#authentication\">Authentication</a> section, you can create Kubernetes secrets from a server declaration.</p>\n</div>\n<div class=\"paragraph\">\n<p><strong>XML configuration</strong></p>\n</div>\n<div class=\"paragraph\">\n<p>You can create a secret using xml configuration in the <code>pom.xml</code> file. It should contain the following fields:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">key</th>\n<th class=\"tableblock halign-left valign-top\">required</th>\n<th class=\"tableblock halign-left valign-top\">description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>dockerServerId</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>true</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">the server id which is configured in\n<code>~/.m2/setting.xml</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>name</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>true</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">this will be used as name of the kubernetes secret resource</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>namespace</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>false</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">the secret resource will be applied to the specific\nnamespace, if provided</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>This is best explained by an example.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example for XML configuration</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><properties>\n <jkube.docker.registry>docker.io</docker.registry>\n</properties></code></pre>\n</div>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><configuration>\n <resources>\n <secrets>\n <secret>\n <dockerServerId>${docker.registry}</dockerServerId>\n <name>mydockerkey</name>\n </secret>\n </secrets>\n </resources>\n</configuration></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p><strong>Yaml fragment with annotation</strong></p>\n</div>\n<div class=\"paragraph\">\n<p>You can create a secret using a yaml fragment. You can reference the docker server id with an annotation\n<code>maven.jkube.io/dockerServerId</code>. The yaml fragment file should be put under\nthe <code>src/main/jkube/</code> folder.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">apiVersion: v1\nkind: Secret\nmetadata:\n name: mydockerkey\n namespace: default\n annotations:\n maven.jkube.io/dockerServerId: ${docker.registry}\ntype: kubernetes.io/dockercfg</code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"resource-validation\">5.1.3. Resource Validation</h4>\n<div class=\"paragraph\">\n<p>Resource goal also validates the generated resource descriptors using API specification of <a href=\"https://raw.githubusercontent.com/kubernetes/kubernetes/master/api/openapi-spec/swagger.json\">Kubernetes</a>.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 7. Validation Configuration</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipResourceValidation</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If value is set to <code>true</code> then resource validation is skipped. This may be useful if resource validation is failing\n for some reason but you still want to continue the deployment.</p>\n<p class=\"tableblock\"> Default is <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skipResourceValidation</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>failOnValidationError</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If value is set to <code>true</code> then any validation error will block the plugin execution. A warning will be printed\n otherwise.</p>\n<p class=\"tableblock\"> Default is <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.failOnValidationError</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect3\">\n<h4 id=\"resource-route-generation\">5.1.4. Route Generation</h4>\n<div class=\"paragraph\">\n<p>When the <code>oc:resource</code> goal is run, an Kubernetes\n<a href=\"https://docs.openshift.org/latest/architecture/networking/routes.html\">Route</a> descriptor (<code>route.yml</code>) will also be\ngenerated along the service if an Kubernetes cluster is targeted.\nIf you do not want to generate a Route descriptor, you can set the <code>jkube.openshift.generateRoute</code> property to <code>false</code>.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 8. Route Generation Configuration</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>generateRoute</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If value is set to <code>false</code> then no Route descriptor will be generated.\n By default it is set to <code>true</code>, which will create a <code>route.yml</code> descriptor and also add Route resource to <code>openshift.yml</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.openshift.generateRoute</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-openshift-route.generateRoute</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>tlsTermination</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>tlsTermination indicates termination type. The following values are supported:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>edge (default)</p>\n</li>\n<li>\n<p>passthrough</p>\n</li>\n<li>\n<p>reencrypt</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>See <a href=\"https://docs.openshift.com/container-platform/3.11/architecture/networking/routes.html#secured-routes\" class=\"bare\">https://docs.openshift.com/container-platform/3.11/architecture/networking/routes.html#secured-routes</a> or <a href=\"https://docs.openshift.com/container-platform/latest/networking/routes/secured-routes.html\" class=\"bare\">https://docs.openshift.com/container-platform/latest/networking/routes/secured-routes.html</a></p>\n</div></div></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-route.tlsTermination</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>tlsInsecureEdgeTerminationPolicy</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>tlsInsecureEdgeTerminationPolicy indicates the desired behavior for insecure connections to a route.\nWhile each router may make its own decisions on which ports to expose, this is normally port 80.</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Allow - traffic is sent to the server on the insecure port (default)</p>\n</li>\n<li>\n<p>Disable - no traffic is allowed on the insecure port.</p>\n</li>\n<li>\n<p>Redirect - clients are redirected to the secure port.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>See <a href=\"https://docs.openshift.com/container-platform/latest/rest_api/network_apis/route-route-openshift-io-v1.html\" class=\"bare\">https://docs.openshift.com/container-platform/latest/rest_api/network_apis/route-route-openshift-io-v1.html</a></p>\n</div></div></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-route.tlsInsecureEdgeTerminationPolicy</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Below is an example of generating a Route with \"edge\" termination and \"Allow\" insecureEdgeTerminationPolicy:\n.Example for generating route resource by configuring it in <code>pom.xml</code></p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n <version>1.0.2</version>\n <configuration>\n <enricher>\n <config>\n <jkube-openshift-route>\n <generateRoute>true</generateRoute>\n <tlsInsecureEdgeTerminationPolicy>Allow</tlsInsecureEdgeTerminationPolicy>\n <tlsTermination>edge</tlsTermination>\n </jkube-openshift-route>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Adding certificates for routes is not directly supported in the pom, but can be added via a yaml fragment.</p>\n</div>\n<div class=\"paragraph\">\n<p>If you do not want to generate a Route descriptor, you can also specify so in the plugin configuration in your POM as seen below.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example for not generating route resource by configuring it in <code>pom.xml</code></div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n <version>1.0.2</version>\n <configuration>\n <enricher>\n <config>\n <jkube-openshift-route>\n <generateRoute>false</generateRoute>\n </jkube-openshift-route>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>If you are using resource fragments, then also you can configure it in your Service resource fragment (e.g. <code>service.yml</code>).\nYou need to add an <code>expose</code> label to the <code>metadata</code> section of your service and set it to <code>false</code>.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example for not generating route resource by configuring it in resource fragments</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">metadata:\n annotations:\n api.service.kubernetes.io/path: /hello\n labels:\n expose: \"false\"\nspec:\n type: LoadBalancer</code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"Supported-Properties-Resource\">5.1.5. Supported Properties for Resource goal</h4>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 9. Options available with resource goal</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>enableAutomaticTrigger</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If the value is set to <code>false</code> then automatic deployments would be disabled.</p>\n<p class=\"tableblock\"> Defaults to <code>true</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.openshift.enableAutomaticTrigger</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>deployTimeoutSeconds</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The OpenShift deploy timeout in seconds.</p>\n<p class=\"tableblock\"> Defaults to <code>3600</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.openshift.deployTimeoutSeconds</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>imageChangeTriggers</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add ImageChange triggers to DeploymentConfigs when on openshift.</p>\n<p class=\"tableblock\"> Defaults to <code>true</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.openshift.imageChangeTriggers</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>trimImageInContainerSpec</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set to true it would set the container image reference to \"\", this is done to handle weird behavior of OpenShift\n 3.7 in which subsequent rollouts lead to ImagePullErr.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.openshift.trimImageInContainerSpec</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>enrichAllWithImageChangeTrigger</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Adds ImageChangeTriggers with respect to all containers specified inside DeploymentConfig.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.openshift.enrichAllWithImageChangeTrigger</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>profile</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Profile to use. A profile contains the enrichers and generators to use as well as their configuration. Profiles are\n looked up in the classpath and can be provided as yaml files.</p>\n<p class=\"tableblock\"> Defaults to <code>default</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.profile</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>sidecar</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Whether to enable sidecar behavior or not. By default pod specs are merged into main application container.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.sidecar</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipHealthCheck</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Whether to skip health checks addition in generated resources or not.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skipHealthCheck</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>workDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The JKube working directory. Defaults to <code>${project.build.directory}/jkube</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.workDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>environment</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Environment name where resources are placed. For example, if you set this property to dev and resourceDir is the\n default one, plugin will look at <code>src/main/jkube/dev</code>.</p>\n<p class=\"tableblock\"> Defaults to <code>null</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.environment</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>useProjectClassPath</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Should we use the project’s compile time classpath to scan for additional enrichers/generators.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.useProjectClassPath</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>resourceDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Folder where to find project specific files.</p>\n<p class=\"tableblock\"> Defaults to <code>${basedir}/src/main/jkube</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.resourceDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>targetDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The generated Kubernetes manifests target direcotry.</p>\n<p class=\"tableblock\"> Defaults to <code>${project.build.outputDirectory}/META-INF/jkube</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.targetDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>resourceType</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The artifact type for attaching the generated resource file to the project. Can be either 'json' or 'yaml'.</p>\n<p class=\"tableblock\"> Defaults to <code>yaml</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.resourceType</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>mergeWithDekorate</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">When resource generation is delegated to Dekorate, should JKube resources be merged with Dekorate generated ones.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.mergeWithDekorate</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>interpolateTemplateParameters</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Interpolate parameter values from <code>*template.yml</code> fragments in the generated resource list (<code>kubernetes.yml</code>).</p>\n<p class=\"tableblock\"> This is useful when using JKube in combination with Helm.</p>\n<p class=\"tableblock\"> Placeholders for variables defined in template files can be used in the different resource fragments. Helm generated\n charts will contain these placeholders/parameters.</p>\n<p class=\"tableblock\"> For <code>resource</code> goal, these placeholders are replaced in the\n aggregated resource list YAML file (not in the individual generated resources) if this option is enabled.</p>\n<p class=\"tableblock\"> Defaults to <code>true</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.interpolateTemplateParameters</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipResource</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Skip resource generation.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skip.resource</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>createExternalUrls</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Should we create external Ingress for any LoadBalancer Services which don’t already have them.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.createExternalUrls</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>domain</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Domain added to the Service ID when creating Kubernetes Ingresses or OpenShift routes.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.domain</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"jkube:build\">5.2. <strong>oc:build</strong></h3>\n<div class=\"paragraph\">\n<p>This goal is for building Docker images.</p>\n</div>\n<div class=\"sect3\">\n<h4 id=\"build-kubernetes\">5.2.1. Kubernetes Build</h4>\n<div class=\"paragraph\">\n<p>A normal Docker build is performed by default. The connection configuration to\naccess the Docker daemon is described in <a href=\"#access-configuration\">Access Configuration</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>In order to make the generated images available to the Kubernetes cluster the generated images need to be pushed to a\nregistry with the goal <a href=\"#jkube:push\"><strong>oc:push</strong></a>. This is not necessary for single node clusters, though as there is no need to\ndistribute images.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"build-openshift\">5.2.2. OpenShift Build</h4>\n<div class=\"paragraph\">\n<p>For the <code>openshift</code> mode, OpenShift specific\n<a href=\"https://docs.openshift.com/enterprise/latest/architecture/core_concepts/builds_and_image_streams.html\">builds</a> will be\nperformed. These are so called\n<a href=\"https://docs.openshift.com/enterprise/latest/architecture/core_concepts/builds_and_image_streams.html\">Binary Source</a>\nbuilds (\"binary builds\" in short), where the data specified with the <a href=\"#build-configuration\">build configuration</a> is\nsent directly to OpenShift as a binary archive.</p>\n</div>\n<div class=\"paragraph\">\n<p>There are two kind of binary builds supported by this plugin, which can be selected with the <code>buildStrategy</code> configuration option (<code>jkube.build.strategy</code> property)</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 10. Build Strategies</caption>\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 85.7143%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\"><code>buildStrategy</code></th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>s2i</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The <a href=\"https://docs.openshift.com/enterprise/latest/architecture/core_concepts/builds_and_image_streams.html#source-build\">Source-to-Image</a> (S2I) build strategy uses so called builder images for creating new application images from binary build data. The builder image to use is taken from the base image configuration specified with <a href=\"#build-config-from\">from</a> in the image build configuration. See below for a list of builder images which can be used with this plugin.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>docker</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A <a href=\"https://docs.openshift.com/enterprise/latest/architecture/core_concepts/builds_and_image_streams.html#docker-build\">Docker Build</a> is similar to a normal Docker build except that it is done by the OpenShift cluster and not by a Docker daemon. In addition this build pushes the generated image to the OpenShift internal registry so that it is accessbile in the whole cluster.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Both build strategies update an\n<a href=\"https://docs.openshift.com/enterprise/latest/architecture/core_concepts/builds_and_image_streams.html#image-streams\">Image Stream</a>\nafter the image creation.</p>\n</div>\n<div class=\"paragraph\">\n<p>The <a href=\"https://docs.openshift.com/enterprise/latest/dev_guide/builds.html#defining-a-buildconfig\">Build Config</a> and\n<a href=\"https://docs.openshift.com/enterprise/latest/architecture/core_concepts/builds_and_image_streams.html#image-streams\">Image streams</a>\ncan be managed by this plugin. If they do not exist, they will be automatically created by <code>oc:build</code>.\nIf they do already exist, they are reused, except when the <code>buildRecreate</code> configuration option\n(property <code>jkube.build.recreate</code>) is set to a value as described in <a href=\"#build-goal-configuration\">Configuration</a>.\nAlso if the provided build strategy is different than the one defined in the existing build configuration, the Build\nConfig is edited to reflect the new type (which in turn removes all build associated with the previous build).</p>\n</div>\n<div class=\"paragraph\">\n<p>This image stream created can then be directly referenced from\n<a href=\"https://docs.openshift.com/enterprise/latest/architecture/core_concepts/deployments.html#deployments-and-deployment-configurations\">Deployment Configuration</a>\nobjects created by <a href=\"#jkube:resource\"><strong>oc:resource</strong></a>.\nBy default, image streams are created with a local lookup policy, so that they can be used also by other resources such\nas Deployments or StatefulSets.\nThis behavior can be turned off by setting the <code>jkube.s2i.imageStreamLookupPolicyLocal</code> property to <code>false</code> when building\nthe project.</p>\n</div>\n<div class=\"paragraph\">\n<p>In order to be able to create these OpenShift resource objects access to an OpenShift installation is required.\nThe access parameters are described in <a href=\"#access-configuration\">Access Configuration</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>Regardless of which build mode is used, the images are configured in the same way.</p>\n</div>\n<div class=\"paragraph\">\n<p>The configuration consists of two parts:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>a global section which defines the overall behaviour of this plugin</p>\n</li>\n<li>\n<p>and an <code><images></code> section which defines how the images should be build</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>Many of the options below are relevant for the <a href=\"#build-kubernetes\">Kubernetes Workflow</a> or the <a href=\"#build-openshift\">OpenShift Workflow</a> with Docker builds as they influence how the Docker image is build.</p>\n</div>\n<div class=\"paragraph\">\n<p>For an S2I binary build, on the other hand, the most relevant section is the <a href=\"#build-assembly\">Assembly</a> one because the build depends on which buider/base image is used and how it interprets the content of the uploaded <code>docker.tar</code>.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"build-goal-configuration\">5.2.3. Configuration (XML)</h4>\n<div class=\"paragraph\">\n<p>The following sections describe the usual configuration, which is similar to the build configuration used in the\n <a href=\"https://dmp.fabric8.io\">docker-maven-plugin</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>In addition a more automatic way for creating predefined build configuration can be performed with so called <a href=\"#generators\">Generators</a>. Generators are very flexible and can be easily created. These are described in an extra <a href=\"#generators\">section</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>Global configuration parameters specify overall behavior common for all images to build. Some of the configuration options are shared with other goals.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 11. Global configuration</caption>\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 71.4285%;\">\n<col style=\"width: 14.2858%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>buildStrategy</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>Defines what build strategy to choose while building container image.\nPossible values are <code>docker</code> and <code>jib</code> out of which <code>docker</code> is default.</p>\n</div>\n<div class=\"paragraph\">\n<p>If the effective <a href=\"#build-mode\">mode</a> is <code>openshift</code> an additional <code>s2i</code> option is available\nand selected by default.</p>\n</div>\n<div class=\"paragraph\">\n<p>Available strategies for OpenShift are:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>s2i</code> for a <a href=\"https://docs.openshift.com/enterprise/latest/architecture/core_concepts/builds_and_image_streams.html#source-build\">Source-to-Image build</a> with a binary source</p>\n</li>\n<li>\n<p><code>docker</code> for a <a href=\"https://docs.openshift.com/enterprise/latest/architecture/core_concepts/builds_and_image_streams.html#docker-build\">Docker build</a> with a binary source</p>\n</li>\n</ul>\n</div></div></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.build.strategy</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>apiVersion</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Use this variable if you are using an older version of docker not compatible with the current default use to\n communicate with the server.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.apiVersion</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>authConfig</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Authentication information when pulling from or pushing to Docker registry. There is a dedicated section\n <a href=\"#authentication\">Authentication</a> for how to do security.</p></td>\n<td class=\"tableblock halign-left valign-top\"></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>autoPull</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>Decide how to pull missing base images or images to start:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>on</code> : Automatic download any missing images (default)</p>\n</li>\n<li>\n<p><code>off</code> : Automatic pulling is switched off</p>\n</li>\n<li>\n<p><code>always</code> : Pull images always even when they already exist locally</p>\n</li>\n<li>\n<p><code>once</code> : For multi-module builds images are only checked once and pulled for the whole build.</p>\n</li>\n</ul>\n</div></div></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.autoPull</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>buildRecreate</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>If the effective <a href=\"#build-mode\">mode</a> is <code>openshift</code> then this option decides how the OpenShift resource objects\n associated with the build should be treated when they already exist:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>buildConfig</code> or <code>bc</code> : Only the BuildConfig is recreated</p>\n</li>\n<li>\n<p><code>imageStream</code> or <code>is</code> : Only the ImageStream is recreated</p>\n</li>\n<li>\n<p><code>all</code> : Both, BuildConfig and ImageStream are recreated</p>\n</li>\n<li>\n<p><code>none</code> : Neither BuildConfig nor ImageStream is recreated</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>The default is <code>none</code>. If you provide the property without value then <code>all</code> is assumed, so everything gets recreated.</p>\n</div></div></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.build.recreate</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>forcePull</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Applicable only for OpenShift, S2I build strategy.</p>\n<p class=\"tableblock\">While creating a BuildConfig, By default, if the builder image specified in the\nbuild configuration is available locally on the node, that image will be used.</p>\n<p class=\"tableblock\">Using forcePull will override the local image and refresh it from the registry the image stream points to.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.build.forcePull</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a id=\"image-pull-policy\"></a> <strong>imagePullPolicy</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>Specify whether images should be pull when looking for base images while building or images for starting.\nThis property can take the following values (case insensitive):</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>IfNotPresent</code>: Automatic download any missing images (default)</p>\n</li>\n<li>\n<p><code>Never</code> : Automatic pulling is switched off always</p>\n</li>\n<li>\n<p><code>Always</code> : Pull images always even when they already exist locally.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>By default a progress meter is printed out on the console, which is omitted when using Maven in batch mode (option <code>-B</code>). A very simplified progress meter is provided when using no color output (i.e. with <code>-Djkube.useColor=false</code>).</p>\n</div></div></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.imagePullPolicy</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>certPath</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Path to SSL certificate when SSL is used for communicating with the Docker daemon. These certificates are normally\n stored in <code>~/.docker/</code>. With this configuration the path can be set explicitly. If not set, the fallback is first\n taken from the environment variable <code>DOCKER_CERT_PATH</code> and then as last resort <code>~/.docker/</code>. The keys in this are\n expected with it standard names <code>ca.pem</code>, <code>cert.pem</code> and <code>key.pem</code>.\n Please refer to the <a href=\"https://docs.docker.com/articles/https\">Docker documentation</a> for more information about SSL\n security with Docker.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.certPath</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>dockerHost</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>The URL of the Docker Daemon. If this configuration option is not given, then the optional <code><machine></code> configuration\nsection is consulted. The scheme of the URL can be either given directly as <code>http</code> or <code>https</code>\ndepending on whether plain HTTP communication is enabled or SSL should\nbe used. Alternatively the scheme could be <code>tcp</code> in which case the\nprotocol is determined via the IANA assigned port: 2375 for <code>http</code>\nand 2376 for <code>https</code>. Finally, Unix sockets are supported by using\nthe scheme <code>unix</code> together with the filesystem path to the unix socket.</p>\n</div>\n<div class=\"paragraph\">\n<p>The discovery sequence used by the docker-maven-plugin to determine\nthe URL is:</p>\n</div>\n<div class=\"olist arabic\">\n<ol class=\"arabic\">\n<li>\n<p>Value of <strong>dockerHost</strong> (<code>jkube.docker.host</code>)</p>\n</li>\n<li>\n<p>The Docker host associated with the docker-machine named in <code><machine></code>, i.e. the <code>DOCKER_HOST</code> from <code>docker-machine env</code>. See <a href=\"#docker-machine\">below</a> for more information about Docker machine support.</p>\n</li>\n<li>\n<p>The value of the environment variable <code>DOCKER_HOST</code>.</p>\n</li>\n<li>\n<p><code>unix:///var/run/docker.sock</code> if it is a readable socket.</p>\n</li>\n</ol>\n</div></div></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.host</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>filter</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">In order to temporarily restrict the operation of plugin goals this configuration option can be used.\n Typically this will be set via the system property <code>jkube.image.filter</code> when Maven is called. The value can be a single\n image name (either its alias or full name) or it can be a comma separated list with multiple image names. Any name\n which doesn’t refer an image in the configuration will be ignored.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.image.filter</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>machine</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Docker machine configuration. See <a href=\"#docker-machine\">Docker Machine</a> for possible values.</p></td>\n<td class=\"tableblock halign-left valign-top\"></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>maxConnections</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Number of parallel connections are allowed to be opened to the Docker Host. For parsing log output, a connection needs\n to be kept open (as well for the wait features), so don’t put that number to low. Default is 100 which should be\n suitable for most of the cases.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.maxConnections</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>access</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Group of configuration parameters to connect to Kubernetes/OpenShift cluster.</p></td>\n<td class=\"tableblock halign-left valign-top\"></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>outputDirectory</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Default output directory to be used by this plugin.\n The default value is <code>target/docker</code> and is only used for the goal <code>oc:build</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.build.target.dir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>profile</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Profile to which contains enricher and generators configuration. See <a href=\"#profiles\">Profiles</a> for details.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.profile</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>pullSecret</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The name to use for naming pullSecret to be created to pull the base image in case pulling from a private registry\n which requires authentication for OpenShift.</p>\n<p class=\"tableblock\"> The default value for pull registry will be picked from <code>jkube.docker.pull.registry</code>/<code>jkube.docker.registry</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.build.pullSecret</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>registry</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Specify globally a registry to use for pulling and pushing images. See <a href=\"#registry\">Registry handling</a> for details.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.registry</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skip</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">With this parameter the execution of this plugin can be skipped completely.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skip</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipBuild</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set not images will be build (which implies also <em>skip.tag</em>) with <code>oc:build</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skip.build</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipBuildPom</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set the build step will be skipped for modules of type <code>pom</code>. If not set, then by default projects of type <code>pom</code>\n will be skipped if there are no image configurations contained.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skip.build.pom</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipTag</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set to <code>true</code> this plugin won’t add any tags to images that have been built with <code>oc:build</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skip.tag</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipMachine</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Skip using docker machine in any case</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.skip.machine</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>sourceDirectory</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Default directory that contains the assembly descriptor(s) used by the plugin. The default value is <code>src/main/docker</code>.\n This option is only relevant for the <code>oc:build</code> goal.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.build.source.dir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>verbose</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Boolean attribute for switching on verbose output like the build steps when doing a Docker build. Default is <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.verbose</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>logDate</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The date format to use when logging messages from Docker. Default is <code>DEFAULT</code> (<code>HH:mm:ss.SSS</code>)</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.logDate</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>logStdout</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Log to stdout regardless if log files are configured or not. Default is <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.logStdout</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_kubernetes_access_configuration\">5.2.4. Kubernetes Access Configuration</h4>\n<div class=\"paragraph\">\n<p>You can configure parameters to define how plugin is going to connect to Kubernetes cluster instead of relying on default parameters.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><configuration>\n <access>\n <username></username>\n <password></password>\n <masterUrl></masterUrl>\n <apiVersion></apiVersion>\n </access>\n</configuration></code></pre>\n</div>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 71.4285%;\">\n<col style=\"width: 14.2858%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>username</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Username on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.username</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>password</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Password on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.password</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>namespace</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Namespace on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.namespace</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>masterUrl</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Master URL on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.masterUrl</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>apiVersion</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Api version on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.apiVersion</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>caCertFile</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">CaCert File on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.caCertFile</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>caCertData</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">CaCert Data on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.caCertData</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>clientCertFile</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Client Cert File on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.clientCertFile</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>clientCertData</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Client Cert Data on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.clientCertData</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>clientKeyFile</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Client Key File on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.clientKeyFile</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>clientKeyData</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Client Key Data on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.clientKeyData</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>clientKeyAlgo</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Client Key Algorithm on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.clientKeyAlgo</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>clientKeyPassphrase</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Client Key Passphrase on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.clientKeyPassphrase</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>trustStoreFile</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Trust Store File on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.trustStoreFile</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>trustStorePassphrase</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Trust Store Passphrase on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.trustStorePassphrase</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>keyStoreFile</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Key Store File on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.keyStoreFile</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>keyStorePassphrase</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Key Store Passphrase on which to operate.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.keyStorePassphrase</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_image_configuration\">5.2.5. Image Configuration</h4>\n<div class=\"paragraph\">\n<p>The configuration how images should be created a defined in a dedicated <code><images></code> sections. These are specified for\neach image within the <code><images></code> element of the configuration with one <code><image></code> element per image to use.</p>\n</div>\n<div class=\"paragraph\">\n<p>The <code><image></code> element can contain the following sub elements:</p>\n</div>\n<table id=\"config-image\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 12. Image Configuration</caption>\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 83.3334%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#image-name\"><strong>name</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Each <code><image></code> configuration has a mandatory, unique docker\nrepository <em>name</em>. This can include registry and tag parts, but also placeholder parameters. See below for a detailed explanation.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>alias</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Shortcut name for an image which can be used for\nidentifying the image within this configuration. This is used when\nlinking images together or for specifying it with the global <strong>image</strong> configuration element.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#registry\"><strong>registry</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Registry to use for this image. If the <code>name</code> already contains a registry this takes precedence. See <a href=\"#registry\">Registry handling</a> for more details.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#config-image-build\"><strong>build</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Element which contains all the configuration aspects when doing a <a href=\"#jkube:build\"><strong>oc:build</strong></a>. This element can be omitted if the image is only pulled from a registry e.g. as support for integration tests like database images.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>The <code><build></code> section is mandatory and is explained in <a href=\"#build-configuration\">below</a>.</p>\n</div>\n<div id=\"image-name\" class=\"paragraph\">\n<p>When specifying the image name in the configuration with the <code><name></code> field you can use several placeholders which are replaced during runtime by this plugin. In addition you can use regular Maven properties which are resolved by Maven itself.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 13. Image Names</caption>\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 83.3334%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Placeholder</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>%g</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The last part of the Maven group name, sanitized so that it can be used as username on GitHub. Only the part after the last dot is used. E.g. for a group id <code>org.eclipse.jkube</code> this placeholder would insert <code>jkube</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>%a</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A sanitized version of the artefact id so that it can be used as part of an Docker image name. I.e. it is converted to all lower case (as required by Docker)</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>%v</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The project version. Synonym to <code>${project.version}</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>%l</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If the project version ends with <code>-SNAPSHOT</code> then this placeholder is <code>latest</code>, otherwise its the full version (same as <code>%v</code>)</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>%t</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If the project version ends with <code>-SNAPSHOT</code> this placeholder resolves to <code>snapshot-<timestamp></code> where timestamp has the date format <code>yyMMdd-HHmmss-SSSS</code> (eg <code>snapshot-</code>). This feature is especially useful during development in oder to avoid conflicts when images are to be updated which are still in use. You need to take care yourself of cleaning up old images afterwards, though.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"listingblock\">\n<div class=\"title\">Example for <image></div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><configuration>\n <!-- .... -->\n <images>\n <image> <i class=\"conum\" data-value=\"1\"></i><b>(1)</b>\n <name>%g/jkube-build-demo:0.1</name> <i class=\"conum\" data-value=\"2\"></i><b>(2)</b>\n <alias>service</alias> <i class=\"conum\" data-value=\"3\"></i><b>(3)</b>\n <build>....</build> <i class=\"conum\" data-value=\"4\"></i><b>(4)</b>\n </image>\n <image>\n ....\n </image>\n </images>\n</configuration></code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td>One or more <code><image></code> definitions</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"2\"></i><b>2</b></td>\n<td>The Docker image name used when creating the image. Note that <code>%g</code> would be replaced by project group id.</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"3\"></i><b>3</b></td>\n<td>An alias which can be used in other parts of the plugin to reference to this image. This alias must be unique.</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"4\"></i><b>4</b></td>\n<td>A <code><build></code> section as described in <a href=\"#buid-configuration\">Build Configuration</a></td>\n</tr>\n</table>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"build-configuration\">5.2.6. Build Configuration</h4>\n<div id=\"build-overview\" class=\"paragraph\">\n<p>There are two different modes how images can be built:</p>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Inline plugin configuration</div>\n<p>With an inline plugin configuration all information required to build the image is contained in the plugin configuration. By default its the standard XML based configuration for the plugin but can be switched to a property based configuration syntax as described in the section <a href=\"#external-configuration\">External configuration</a>. The XML configuration syntax is recommended because of its more structured and typed nature.</p>\n</div>\n<div class=\"paragraph\">\n<p>When using this mode, the Dockerfile is created on the fly with all instructions extracted from the configuration given.</p>\n</div>\n<div id=\"external-dockerfile\" class=\"paragraph\">\n<div class=\"title\">External Dockerfile or Docker archive</div>\n<p>Alternatively an external Dockerfile template or Docker archive can be used. This mode is switched on by using one of these three configuration options within</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><strong>contextDir</strong> specifies docker build context if an external dockerfile is located outside of Docker build context. If not specified, Dockerfile’s parent directory is used as build context.</p>\n</li>\n<li>\n<p><strong>dockerFile</strong> specifies a specific Dockerfile path. The Docker build context directory is set to <code>contextDir</code> if given. If not the directory by default is the directory in which the Dockerfile is stored.</p>\n</li>\n<li>\n<p><strong>dockerArchive</strong> specifies a previously saved image archive to load directly. If a <code>dockerArchive</code> is provided, no <code>dockerFile</code> must be given.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>All paths can be either absolute or relative paths. A relative path is looked up in <code>${project.basedir}/src/main/docker</code> by default. You can make it easily an absolute path by using <code>${project.basedir}</code> in your configuration.</p>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Adding assemblies in Dockerfile mode</div>\n<p>You can also use an assembly if specified in an <a href=\"#build-assembly\">assembly configuration</a>.\nHowever, you need to add the files on your own in the Dockerfile with an <code>ADD</code> or <code>COPY</code> command.\nThe files of the assembly are stored in a build context relative directory <code>maven/</code> but can be changed by changing the assembly name with the option <code><name></code> in the assembly configuration.</p>\n</div>\n<div class=\"paragraph\">\n<p>E.g. the files can be added with</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-dockerfile\" data-lang=\"dockerfile\">COPY maven/ /my/target/directory</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>so that the assembly files will end up in <code>/my/target/directory</code> within the container.</p>\n</div>\n<div class=\"paragraph\">\n<p>If this directory contains a <code>.maven-dockerignore</code> (or alternatively, a <code>.maven-dockerexclude</code> file), then it is used for excluding files for the build. Each line in this file is treated as a <a href=\"http://ant.apache.org/manual/Types/fileset.html\">FileSet exclude pattern</a> as used by the <a href=\"http://maven.apache.org/plugins/maven-assembly-plugin\">maven-assembly-plugin</a>. It is similar to <code>.dockerignore</code> when using Docker but has a slightly different syntax (hence the different name).\n<a href=\"#ex-build-dockerexclude\">Example <code>.maven-dockerexclude</code> or <code>.maven-dockerignore</code></a> is an example which excludes all compiled Java classes.</p>\n</div>\n<div id=\"ex-build-dockerexclude\" class=\"exampleblock\">\n<div class=\"title\">Example 1. Example <code>.maven-dockerexclude</code> or <code>.maven-dockerignore</code></div>\n<div class=\"content\">\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code>target/classes/** <i class=\"conum\" data-value=\"1\"></i><b>(1)</b></code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td>Exclude all compiled classes</td>\n</tr>\n</table>\n</div>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>If this directory contains a <code>.maven-dockerinclude</code> file, then it is used for including only those files for the build. Each line in this file is also treated as a <a href=\"http://ant.apache.org/manual/Types/fileset.html\">FileSet exclude pattern</a> as used by the <a href=\"http://maven.apache.org/plugins/maven-assembly-plugin\">maven-assembly-plugin</a>. <a href=\"#ex-build-dockerinclude\">Example <code>.maven-dockerinclude</code></a> shows how to include only jar file that have build to the Docker build context.</p>\n</div>\n<div id=\"ex-build-dockerinclude\" class=\"exampleblock\">\n<div class=\"title\">Example 2. Example <code>.maven-dockerinclude</code></div>\n<div class=\"content\">\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code>target/*.jar <i class=\"conum\" data-value=\"1\"></i><b>(1)</b></code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td>Only add jar file to you Docker build context.</td>\n</tr>\n</table>\n</div>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Except for the <a href=\"#build-assembly\">assembly configuration</a> all other configuration options are ignored for now.</p>\n</div>\n<div id=\"simple-dockerfile-build\" class=\"paragraph\">\n<div class=\"title\">Simple Dockerfile build</div>\n<p>When only a single image should be built with a Dockerfile no XML configuration is needed at all.\nAll what need to be done is to place a <code>Dockerfile</code> into the top-level module directory, alongside to <code>pom.xml</code>.\nYou can still configure <a href=\"#global-configuration\">global aspects</a> in the plugin configuration, but as soon as you add an <code><image></code> in the XML configuration, you need to configure also the build explicitly.</p>\n</div>\n<div class=\"paragraph\">\n<p>The image name is by default set from the Maven coordinates (<code>%g/%a:%l</code>, see <a href=\"#image-name\">Image Name </a> for an explanation of the params which are essentially the Maven GAV)\nThis name can be set with the property <code>jkube.image.name</code>.</p>\n</div>\n<div id=\"build-filtering\" class=\"paragraph\">\n<div class=\"title\">Filtering</div>\n<p>openshift-maven-plugin filters given Dockerfile with Maven properties, much like the <code>maven-resource-plugin</code> does. Filtering is enabled by default and can be switched off with a build config <code><filter>false</filter></code>. Properties which we want to replace are specified with the <code>${..}</code> syntax.\nReplacement includes Maven project properties such as <code>${project.artifactId}</code>, properties set in the build, command-line properties, and system properties. Unresolved properties remain untouched.</p>\n</div>\n<div class=\"paragraph\">\n<p>This partial replacement means that you can easily mix it with Docker build arguments and environment variable reference, but you need to be careful.\nIf you want to be more explicit about the property delimiter to clearly separate Docker properties and Maven properties you can redefine the delimiter.\nIn general, the <code>filter</code> option can be specified the same way as delimiters in the resource plugin.\nIn particular, if this configuration contains a * then the parts left, and right of the asterisks are used as delimiters.</p>\n</div>\n<div class=\"paragraph\">\n<p>For example, the default <code><filter>${*}</filter></code> parse Maven properties in the format that we know.\nIf you specify a single character for <code><filter></code> then this delimiter is taken for both, the start and the end.\nE.g a <code><filter>@</filter></code> triggers on parameters in the format <code>@…​@</code>, much like in the <code>maven-invoker-plugin</code>.\nUse something like this if you want to clearly separate from Docker builds args.\nThis form of property replacement works for Dockerfile only.\nFor replacing other data in other files targeted for the Docker image, please use the <code>maven-resource-plugin</code> or an <a href=\"#build-assembly\">assembly configuration</a> with filtering to make them available in the docker build context.</p>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Example</div>\n<p>The following example replaces all properties in the format <code>@property@</code> within the Dockerfile.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <configuration>\n <images>\n <image>\n <name>user/demo</name>\n <build>\n <filter>@</filter>\n </build>\n </image>\n </images>\n </configuration>\n ...\n</plugin></code></pre>\n</div>\n</div>\n<div id=\"build-plugin\" class=\"paragraph\">\n<div class=\"title\">Build Plugins</div>\n<p>This plugin supports so call <strong>dmp-plugins</strong> which are used during the build phase.\ndmp-plugins are enabled by just declaring a dependency in the plugin declaration:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n\n <dependencies>\n <dependency>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>run-java-sh</artifactId>\n <version>1.2.2</version>\n </dependency>\n </dependencies>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code>org.eclipse.jkube.runsh.RunShLoader</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>During a build with <code>openshift-maven-plugin:build</code>, those classes are loaded and certain fixed method are called.</p>\n</div>\n<div class=\"paragraph\">\n<p>The following methods are supported:</p>\n</div>\n<table id=\"build-plugin-methods\" class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 83.3334%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Method</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>addExtraFiles</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A <em>static</em> method called by dmp with a single <code>File</code> argument. This will point to a directory <code>docker-extra</code> which can be referenced easily by a Dockerfile or an assembly. A dmp plugin typically will create an own subdirectory to avoid a clash with other dmp-plugins.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>If a configured plugin does not provide method of this name and signature, then it will be simply ignored.\nAlso, no interface needs to be implemented to keep the coupling low.</p>\n</div>\n<div class=\"paragraph\">\n<p>The following official dmp-plugins are known and supported:</p>\n</div>\n<table id=\"build-plugins-official\" class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 71.4286%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Name</th>\n<th class=\"tableblock halign-left valign-top\">G,A</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"https://github.com/fabric8io-images/run-java-sh\">run-java.sh</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.io</code>, <code>run-java</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">General purpose startup script fo running Java applications. The dmp plugin creates a\n <code>target/docker-extra/run-java/run-java.sh</code> which can be included in a Dockerfile (see the example above).\n See the <a href=\"https://github.com/fabric8io-images/run-java-sh\">run-java.sh Documentation</a> for more details.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Check out <code>samples/run-java</code> for a fully working example.</p>\n</div>\n<div class=\"paragraph\">\n<p>All build relevant configuration is contained in the <code><build></code> section\nof an image configuration. The following configuration options are supported:</p>\n</div>\n<table id=\"config-image-build\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 14. Build configuration (<a href=\"#config-image\"><image> </a>)</caption>\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 83.3334%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#config-image-build-assembly\"><strong>assembly</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Specifies the assembly configuration as described in <a href=\"#build-assembly\">Build Assembly</a></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#build-buildargs\"><strong>args</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Map specifying the value of <a href=\"https://docs.docker.com/engine/reference/commandline/build/#set-build-time-variables-build-arg\">Docker build args</a>\nwhich should be used when building the image with an external Dockerfile which uses build arguments. The key-value syntax is the same as when defining Maven properties (or <code>labels</code> or <code>env</code>).\nThis argument is ignored when no external Dockerfile is used. Build args can also be specified as properties as\ndescribed in <a href=\"#build-buildargs\">Build Args</a></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>buildOptions</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Map specifying the build options to provide to the docker daemon when building the image. These options map to the ones listed as query parameters in the\n<a href=\"https://docs.docker.com/engine/reference/api/docker_remote_api_v1.24/#build-image-from-a-dockerfile\">Docker Remote API</a> and are restricted to simple options\n(e.g.: memory, shmsize). If you use the respective configuration options for build options natively supported by the build configuration (i.e. <code>noCache</code>, <code>cleanup=remove</code> for buildoption <code>forcerm=1</code> and <code>args</code> for build args) then these will override any corresponding options given here. The key-value syntax is the same as when defining environment variables or labels as described in <a href=\"#misc-env\">Setting Environment Variables and Labels</a>.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>cleanup</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Cleanup dangling (untagged) images after each build (including any containers created from them). Default is <code>try</code> which tries to remove the old image, but doesn’t fail the build if this is not possible because e.g. the image is still used by a running container. Use <code>remove</code> if you want to fail the build and <code>none</code> if no cleanup is requested.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a id=\"context-dir\"></a><strong>contextDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Path to a directory used for the build’s context. You can specify the <code>Dockerfile</code> to use with <strong>dockerFile</strong>, which by default is the Dockerfile found in the <code>contextDir</code>. The Dockerfile can be also located outside of the <code>contextDir</code>, if provided with an absolute file path. See <a href=\"#external-dockerfile\">External Dockerfile</a> for details.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#misc-startup\"><strong>cmd</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A command to execute by default (i.e. if no command is provided when a container for this image is started). See <a href=\"#misc-startup\">Startup Arguments</a> for details.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>compression</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The compression mode how the build archive is transmitted to the docker daemon (<code>oc:build</code>) and how docker build archives are attached to this build as sources (<code>oc:source</code>). The value can be <code>none</code> (default), <code>gzip</code> or <code>bzip2</code>.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>dockerFile</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Path to a <code>Dockerfile</code> which also triggers <em>Dockerfile mode</em>. See <a href=\"#external-dockerfile\">External Dockerfile</a> for details.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>dockerArchive</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Path to a saved image archive which is then imported. See <a href=\"#external-dockerfile\">Docker archive</a> for details.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#misc-startup\"><strong>entryPoint</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">An entrypoint allows you to configure a container that will run as an executable. See <a href=\"#misc-startup\">Startup Arguments</a> for details.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#misc-env\"><strong>env</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The environments as described in <a href=\"#misc-env\">Setting Environment Variables and Labels</a>.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>filter</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Enable and set the delimiters for property replacements. By default properties in the format <code>${..}</code> are replaced with Maven properties. You can switch off property replacement by setting this property to <code>false</code>. When using a single char like <code>@</code> then this is used as a delimiter (e.g <code>@…​@</code>). See <a href=\"#build-filtering\">Filtering</a> for more details.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a id=\"build-config-from\"></a><strong>from</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The base image which should be used for this image. If not given this default to <code>busybox:latest</code> and is suitable for a pure data image.\nIn case of an <a href=\"#build-openshift\">S2I Binary build</a> this parameter specifies the S2I Builder Image to use, which by default is <code>fabric8/s2i-java:latest</code>. See also <a href=\"#build-config-from-ext\">from-ext</a> how to add additional properties for the base image.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a id=\"build-config-from-ext\"></a><strong>fromExt</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>Extended definition for a base image. This field holds a map of defined in <code><key>value</key></code> format. The known keys are:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code><name></code> : Name of the base image</p>\n</li>\n<li>\n<p><code><kind></code> : Kind of the reference to the builder image when in S2I build mode. By default its <code>ImageStreamTag</code> but can be also <code>ImageStream</code>. An alternative would be <code>DockerImage</code></p>\n</li>\n<li>\n<p><code><namespace></code> : Namespace where this builder image lives.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>A provided <code><from></code> takes precedence over the name given here. This tag is useful for extensions of this plugin.</p>\n</div></div></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#build-healthcheck\"><strong>healthCheck</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Definition of a health check as described in <a href=\"#build-healthcheck\">Healthcheck</a></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>imagePullPolicy</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Specific pull policy for the base image. This overwrites any global pull policy.\n See the global configuration option <a href=\"#image-pull-policy\">imagePullPolicy</a> for the possible values and the default.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#misc-env\"><strong>labels</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Labels as described in <a href=\"#misc-env\">Setting Environment Variables and Labels</a>.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>maintainer</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The author (<code>MAINTAINER</code>) field for the generated image</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>noCache</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Don’t use Docker’s build cache. This can be overwritten by setting a system property <code>docker.noCache</code> when running Maven.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>cacheFrom</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A list of <code><image></code> elements specifying image names to use as cache sources.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>optimise</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">if set to true then it will compress all the <code>runCmds</code> into a single <code>RUN</code> directive so that only one image layer is created.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>ports</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The exposed ports which is a list of <code><port></code> elements, one for each port to expose. Whitespace is trimmed from each element and empty elements are ignored. The format can be either pure numerical (\"8080\") or with the protocol attached (\"8080/tcp\").</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>shell</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Shell to be used for the <strong>runCmds</strong>. It contains <strong>arg</strong> elements which are defining the executable and its params.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>runCmds</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Commands to be run during the build process. It contains <strong>run</strong> elements which are passed to the shell. Whitespace is trimmed from each element and empty elements are ignored. The run commands are inserted right after the assembly and after <strong>workdir</strong> into the Dockerfile.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skip</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">if set to true disables building of the image. This config option is best used together with a maven property</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipTag</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set to <code>true</code> this plugin won’t add any tags to images.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>tags</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">List of additional <code>tag</code> elements with which an image is to be tagged after the build. Whitespace is trimmed from each element and empty elements are ignored.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>user</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">User to which the Dockerfile should switch to the end (corresponds to the <code>USER</code> Dockerfile directive).</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>volumes</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">List of <code>volume</code> elements to create a container volume. Whitespace is trimmed from each element and empty elements are ignored.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>workdir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Directory to change to when starting the container.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>From this configuration this Plugin creates an in-memory Dockerfile,\ncopies over the assembled files and calls the Docker daemon via its\nremote API.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><build>\n <from>java:8u40</from>\n <maintainer>john.doe@example.com</maintainer>\n <tags>\n <tag>latest</tag>\n <tag>${project.version}</tag>\n </tags>\n <ports>\n <port>8080</port>\n </ports>\n <volumes>\n <volume>/path/to/expose</volume>\n </volumes>\n <buildOptions>\n <shmsize>2147483648</shmsize>\n </buildOptions>\n\n <shell>\n <exec>\n <arg>/bin/sh</arg>\n <arg>-c</arg>\n </exec>\n </shell>\n <runCmds>\n <run>groupadd -r appUser</run>\n <run>useradd -r -g appUser appUser</run>\n </runCmds>\n\n <entryPoint>\n <!-- exec form for ENTRYPOINT -->\n <exec>\n <arg>java</arg>\n <arg>-jar</arg>\n <arg>/opt/demo/server.jar</arg>\n </exec>\n </entryPoint>\n\n <assembly>\n <mode>dir</mode>\n <targetDir>/opt/demo</targetDir>\n <descriptor>assembly.xml</descriptor>\n </assembly>\n</build></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>In order to see the individual build steps you can switch on <code>verbose</code> mode either by setting the property\n<code>jkube.docker.verbose</code> or by using <code><verbose>true</verbose></code> in the <a href=\"#build-goal-configuration\">Build Goal configuration</a></p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"build-assembly\">5.2.7. Assembly</h4>\n<div class=\"paragraph\">\n<p>The <code><assembly></code> element within <code><build></code> element has an XML structure and defines how build artifacts and other files\ncan be added to the Docker image.</p>\n</div>\n<table id=\"config-image-build-assembly\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 15. Assembly Configuration (<a href=\"#config-image\"><image> </a> : <a href=\"#config-image-build\"><build> </a>)</caption>\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 83.3334%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>name</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Assembly name, which is <code>maven</code> by default. This name is used for the archives and directories created during the build.\n This directory holds the files specified by the assembly. If an <a href=\"#external-dockerfile\">external Dockerfile</a> is used then\n this name is also the relative directory which contains the assembly files.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>targetDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Directory under which the files and artifacts contained in the assembly will be copied within the container.\n The default value for this is <code>/<assembly name></code>, so <code>/maven</code> if <strong>name</strong> is not set to a different value.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#build-assembly-inline\"><strong>inline</strong></a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Inlined assembly descriptor as described in <a href=\"#build-assembly-inline\">Assembly - Inline</a> below.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>exportTargetDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Specification whether the <code>targetDir</code> should be exported as a volume. This value is <code>true</code> by default except in the\n case the <code>targetDir</code> is set to the container root (<code>/</code>). It is also <code>false</code> by default when a base image is used with\n <code>from</code> since exporting makes no sense in this case and will waste disk space unnecessarily.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>excludeFinalOutputArtifact</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">By default, the project’s final artifact will be included in the assembly, set this flag to true in case the\n artifact should be excluded from the assembly.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>mode</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>Mode how the how the assembled files should be collected:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>dir</code> : Files are simply copied (default),</p>\n</li>\n<li>\n<p><code>tar</code> : Transfer via tar archive</p>\n</li>\n<li>\n<p><code>tgz</code> : Transfer via compressed tar archive</p>\n</li>\n<li>\n<p><code>zip</code> : Transfer via ZIP archive</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>The archive formats have the advantage that file permission can be preserved better (since the copying is independent\nfrom the underlying files systems), but might triggers internal bugs from the Maven assembler (as it has been reported\nin <a href=\"https://github.com/fabric8io/docker-maven-plugin/issues/171\">#171</a>)</p>\n</div></div></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>permissions</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>Permission of the files to add:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>ignore</code> to use the permission as found on files regardless on any\nassembly configuration</p>\n</li>\n<li>\n<p><code>keep</code> to respect the assembly provided permissions</p>\n</li>\n<li>\n<p><code>exec</code> for setting the executable bit on all files (required for Windows when using an assembly mode <code>dir</code>)</p>\n</li>\n<li>\n<p><code>auto</code> to let the plugin select <code>exec</code> on Windows and <code>keep</code> on others.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p><code>keep</code> is the default value.</p>\n</div></div></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>tarLongFileMode</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Sets the TarArchiver behaviour on file paths with more than 100 characters length. Valid values are: \"warn\"(default), \"fail\", \"truncate\", \"gnu\", \"posix\", \"posix_warn\" or \"omit\"</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>user</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>User and/or group under which the files should be added. The user must already exist in the base image.</p>\n</div>\n<div class=\"paragraph\">\n<p>It has the general format <code>user[:group[:run-user]]</code>. The user and group can be given either as numeric user- and group-id or as names. The group id is optional.</p>\n</div>\n<div class=\"paragraph\">\n<p>If a third part is given, then the build changes to user <code>root</code> before changing the ownerships, changes the ownerships and then change to user <code>run-user</code> which is then used for the final command to execute. This feature might be needed, if the base image already changed the user (e.g. to 'jboss') so that a <code>chown</code> from root to this user would fail.</p>\n</div>\n<div class=\"paragraph\">\n<p>For example, the image <code>jboss/wildfly</code> use a \"jboss\" user under which all commands are executed. Adding files in Docker always happens under the UID root. These files can only be changed to \"jboss\" is the <code>chown</code> command is executed as root. For the following commands to be run again as \"jboss\" (like the final <code>standalone.sh</code>), the plugin switches back to user <code>jboss</code> (this is this \"run-user\") after changing the file ownership. For this example a specification of\n<code>jboss:jboss:jboss</code> would be required.</p>\n</div></div></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>In the event you do not need to include any artifacts with the image, you may safely omit this element from the configuration.</p>\n</div>\n<div class=\"sect4\">\n<h5 id=\"build-assembly-inline\">Assembly - Inline</h5>\n<div class=\"paragraph\">\n<p>Inlined assembly description with a format very similar to\n<a href=\"https://maven.apache.org/plugins/maven-assembly-plugin/assembly.html\">Maven Assembly Plugin</a>.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 16. Assembly - Inline (<a href=\"#config-image\"><image> </a> : <a href=\"#config-image-build\"><build> </a> : <a href=\"#config-image-build-assembly\"><assembly> </a>)</caption>\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 83.3334%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>id</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Unique ID for the assembly.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>files</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>List of files for the assembly.</p>\n</div>\n<div class=\"paragraph\">\n<p>Each file has the following fields:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>source</code>: Absolute or relative path from the project’s directory of the file to be included in the assembly.</p>\n</li>\n<li>\n<p><code>outputDirectory</code>: Output directory relative to the root of the root directory of the assembly.</p>\n</li>\n<li>\n<p><code>destName</code>: Destination filename in the outputDirectory.</p>\n</li>\n<li>\n<p><code>fileMode</code>: Similar to a UNIX permission, sets the file mode of the file included.</p>\n</li>\n</ul>\n</div></div></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>fileSets</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>List of filesets for the Assembly.</p>\n</div>\n<div class=\"paragraph\">\n<p>Each fileset has the following fields:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>directory</code>: Absolute or relative location from the project’s directory.</p>\n</li>\n<li>\n<p><code>outputDirectory</code>: Output directory relative to the root of the root directory of the assembly fileSet.</p>\n</li>\n<li>\n<p><code>includes</code>: A set of files and directories to include.</p>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>If none is present, then everything is included.</p>\n</li>\n<li>\n<p>Files can be referenced by using their complete path name.</p>\n</li>\n<li>\n<p>Wildcards are also supported, patterns will be matched using\n<a href=\"https://docs.oracle.com/en/java/javase/11/docs/api/java.base/java/nio/file/FileSystem.html#getPathMatcher(java.lang.String)\">\nFileSystem#getPathMatcher</a> <code>glob</code> syntax.</p>\n</li>\n</ul>\n</div>\n</li>\n<li>\n<p><code>excludes</code>: A set of files and directory to exclude.</p>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>If none is present, then there are no exclusions.</p>\n</li>\n</ul>\n</div>\n</li>\n<li>\n<p><code>fileMode</code>: Similar to a UNIX permission, sets the file mode of the files included.</p>\n</li>\n<li>\n<p><code>directoryMode</code>: Similar to a UNIX permission, sets the directory mode of the directories included.</p>\n</li>\n</ul>\n</div></div></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>baseDirectory</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Base directory from which to resolve the Assembly files and filesets.</p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"misc-env\">5.2.8. Environment and Labels</h4>\n<div class=\"paragraph\">\n<p>When creating a container one or more environment variables can be set via configuration with the <code>env</code> parameter</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><env>\n <JAVA_HOME>/opt/jdk8</JAVA_HOME>\n <CATALINA_OPTS>-Djava.security.egd=file:/dev/./urandom</CATALINA_OPTS>\n</env></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>If you put this configuration into profiles you can easily create various test variants with a single image (e.g. by switching the JDK or whatever).</p>\n</div>\n<div class=\"paragraph\">\n<p>It is also possible to set the environment variables from the outside of the plugin’s configuration with the parameter <code>envPropertyFile</code>. If given, this property file is used to set the environment variables where the keys and values specify the environment variable. Environment variables specified in this file override any environment variables specified in the configuration.</p>\n</div>\n<div class=\"paragraph\">\n<p>Labels can be set inline the same way as environment variables:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><labels>\n <com.example.label-with-value>foo</com.example.label-with-value>\n <version>${project.version}</version>\n <artifactId>${project.artifactId}</artifactId>\n</labels></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"misc-startup\">5.2.9. Startup Arguments</h4>\n<div class=\"paragraph\">\n<p>Using <code>entryPoint</code> and <code>cmd</code> it is possible to specify the <a href=\"https://docs.docker.com/reference/builder/#entrypoint\">entry point</a>\nor <a href=\"https://docs.docker.com/reference/builder/#cmd\">cmd</a> for a container.</p>\n</div>\n<div class=\"paragraph\">\n<p>The difference is, that an <code>entrypoint</code> is the command that always be executed, with the <code>cmd</code> as argument. If no <code>entryPoint</code> is provided, it defaults to <code>/bin/sh -c</code> so any <code>cmd</code> given is executed with a shell. The arguments given to <code>docker run</code> are always given as arguments to the\n<code>entrypoint</code>, overriding any given <code>cmd</code> option. On the other hand if no extra arguments are given to <code>docker run</code> the default <code>cmd</code> is used as argument to <code>entrypoint</code>.</p>\n</div>\n<div class=\"sidebarblock\">\n<div class=\"content\">\n<div class=\"paragraph\">\n<p>See this <a href=\"http://stackoverflow.com/questions/21553353/what-is-the-difference-between-cmd-and-entrypoint-in-a-dockerfile\">stackoverflow question</a> for a detailed explanation.</p>\n</div>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>An entry point or command can be specified in two alternative formats:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 17. Entrypoint and Command Configuration</caption>\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 83.3334%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Mode</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>shell</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Shell form in which the whole line is given to <code>shell -c</code> for interpretation.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>exec</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">List of arguments (with inner <code><args></code>) arguments which will be given to the <code>exec</code> call directly without any shell interpretation.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Either shell or params should be specified.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><entryPoint>\n <!-- shell form -->\n <shell>java -jar $HOME/server.jar</shell>\n</entryPoint></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>or</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><entryPoint>\n <!-- exec form -->\n <exec>\n <arg>java</arg>\n <arg>-jar</arg>\n <arg>/opt/demo/server.jar</arg>\n </exec>\n</entryPoint></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This can be formulated also more dense with:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><!-- shell form -->\n<entryPoint>java -jar $HOME/server.jar</entryPoint></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>or</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><entryPoint>\n <!-- exec form -->\n <arg>java</arg>\n <arg>-jar</arg>\n <arg>/opt/demo/server.jar</arg>\n</entryPoint></code></pre>\n</div>\n</div>\n<div class=\"dlist\">\n<dl>\n<dt class=\"hdlist1\">INFO</dt>\n<dd>\n<p>Startup arguments are not used in S2I builds</p>\n</dd>\n</dl>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"build-buildargs\">5.2.10. Build Args</h4>\n<div id=\"property-buildargs\" class=\"paragraph\">\n<p>As described in section <a href=\"#build-configuration\">Configuration</a> for external Dockerfiles <a href=\"https://docs.docker.com/engine/reference/commandline/build/#set-build-time-variables-build-arg\">Docker build arg</a> can be used. In addition to the\nconfiguration within the plugin configuration you can also use properties to specify them:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Set a system property when running Maven, eg.: <code>-Ddocker.buildArg.http_proxy=http://proxy:8001</code>. This is especially\nuseful when using predefined Docker arguments for setting proxies transparently.</p>\n</li>\n<li>\n<p>Set a project property within the <code>pom.xml</code>, eg.:</p>\n</li>\n</ul>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><docker.buildArg.myBuildArg>myValue</docker.buildArg.myBuildArg></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Please note that the system property setting will always override the project property. Also note that for all\nproperties which are not Docker <a href=\"https://docs.docker.com/engine/reference/builder/#arg\">predefined</a> properties, the\nexternal Dockerfile must contain an <code>ARGS</code> instruction.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"build-healthcheck\">5.2.11. Healthcheck</h4>\n<div class=\"paragraph\">\n<p>Healthchecks has been introduced since Docker 1.12 and are a way to tell Docker how to test a container to check that it’s still working. With a health check you specify a command which is periodically executed and checked for its return value. If the healtcheck return with an exit 0 the container is considered to be healthy, if it returns with 1 then the container is not working correctly.</p>\n</div>\n<div class=\"paragraph\">\n<p>The healtcheck configuration can have the following options</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 18. Healthcheck Configuration</caption>\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 83.3334%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>cmd</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Command to execute, which can be given in an shell or exec format as described in <a href=\"#misc-startup\">Startup Arguments</a>.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>interval</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Interval for how often to run the healthcheck. The time is specified in seconds, but a time unit can be appended to change this.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>mode</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Mode of the healthcheck. This can be <code>cmd</code> which is the default and specifies that the health check should be executed. Or <code>none</code> to disable a health check from the base image. Only use this option with <code>none</code> for disabling some healthcheck from the base image.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>retries</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">How many retries should be performed before the container is to be considered unhealthy.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>startPeriod</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Initialization time for containers that need time to bootstrap. Probe failure during that period will not be counted towards the maximum number of retries. However, if a health check succeeds during the start period, the container is considered started and all consecutive failures will be counted towards the maximum number of retries. Given in seconds, but another time unit can be appended.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>timeout</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Timeout after which healthckeck should be stopped and considered to have failed. Given in seconds, but another time unit can be appended.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>The following example queries an URL every 10s as an healthcheck:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><healthCheck>\n <!-- Check every 5 minutes -->\n <interval>5m</interval>\n <!-- Fail if no response after 3 seconds -->\n <timeout>3s</timeout>\n <!-- Allow 30 minutes for the container to start before being flagged as unhealthy -->\n <startPeriod>30m</startPeriod>\n <!-- Fail 3 times until the container is considerd unhealthy -->\n <retries>3</retries>\n <!-- Command to execute in shell form -->\n <cmd>curl -f http://localhost/ || exit 1</cmd>\n</healthCheck></code></pre>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"jkube:push\">5.3. <strong>oc:push</strong></h3>\n<div class=\"admonitionblock warning\">\n<table>\n<tr>\n<td class=\"icon\">\n<i class=\"fa icon-warning\" title=\"Warning\"></i>\n</td>\n<td class=\"content\">\nSection needs review and rearrangements\n</td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<p>This goal uploads images to the registry which have a <code><build></code> configuration section. The images to push can be restricted with\nthe global option <code>filter</code> (see <a href=\"#build-goal-configuration\">Build Goal Configuration</a> for details). The registry to push is by\ndefault <code>docker.io</code> but can be specified as part of the images’s <code>name</code> the Docker way.\nE.g. <code>docker.test.org:5000/data:1.5</code> will push the image <code>data</code> with tag <code>1.5</code> to the registry <code>docker.test.org</code> at port\n<code>5000</code>. Registry credentials (i.e. username and password) can be specified in multiple ways as described in section <a href=\"#authentication\">Authentication</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>By default a progress meter is printed out on the console, which is omitted when using Maven in batch mode (option <code>-B</code>).\nA very simplified progress meter is provided when using no color output (i.e. with <code>-Djkube.useColor=false</code>).</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 19. Push options</caption>\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 71.4285%;\">\n<col style=\"width: 14.2858%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipPush</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set to <code>true</code> the plugin won’t push any images that have been built.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skip.push</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipTag</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set to <code>true</code> this plugin won’t push any tags</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skip.tag</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>pushRegistry</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The registry to use when pushing the image. See <a href=\"#registry\">Registry Handling</a> for\nmore details.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.push.registry</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>retries</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">How often should a push be retried before giving up. This useful for flaky registries which tend to return 500 error codes from time to time. The default is 0 which means no retry at all.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.docker.push.retries</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect2\">\n<h3 id=\"jkube:apply\">5.4. <strong>oc:apply</strong></h3>\n<div class=\"paragraph\">\n<p>This goal applies the resources created with <a href=\"#jkube:resource\"><strong>oc:resource</strong></a> to a connected Kubernetes cluster. It’s similar to <a href=\"#jkube:deploy\"><strong>oc:deploy</strong></a> but does not the full deployment cycle of creating the resource, creating the application image and sending the resource descriptors to the clusters. This goal can be easily bound to <code><executions></code> within the plugin’s configuration and binds by default to the <code>install</code> lifecycle phase.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn oc:apply</code></pre>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"Supported-Properties-Apply\">5.4.1. Supported Properties For Apply goal</h4>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 20. Other options available with apply goal</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>recreate</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Should we update resources by deleting them first and then creating them again.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.recreate</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>openshiftManifest</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The generated kubernetes YAML file.</p>\n<p class=\"tableblock\"> Defaults to <code>${basedir}/target/classes/META-INF/jkube/openshift.yml</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.openshiftManifest</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>create</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Should we create new resources.</p>\n<p class=\"tableblock\"> Defaults to <code>true</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.deploy.create</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>rolling</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Should we use rolling updates to apply changes.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.rolling</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>failOnNoKubernetesJson</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Should we fail if there is no Kubernetes JSON.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.deploy.failOnNoKubernetesJson</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>servicesOnly</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">In services only mode we only process services so that those can be recursively created/updated first before\n creating/updating any pods and replication controllers.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.deploy.servicesOnly</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>ignoreServices</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Do we want to ignore services. This is particularly useful when in recreate mode to let you easily recreate all the\n ReplicationControllers and Pods but leave any service definitions alone to avoid changing the portalIP addresses and\n breaking existing pods using the service.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.deploy.ignoreServices</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>processTemplatesLocally</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Process templates locally in Java so that we can apply OpenShift templates on any Kubernetes environment.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.deploy.processTemplatesLocally</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>deletePods</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Should we delete all the pods if we update a Replication Controller.</p>\n<p class=\"tableblock\"> Defaults to <code>true</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.deploy.deletePods</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>ignoreRunningOAuthClients</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Do we want to ignore OAuthClients which are already running?. OAuthClients are shared across namespaces so we should\n not try to update or create/delete global oauth clients.</p>\n<p class=\"tableblock\"> Defaults to <code>true</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.deploy.ignoreRunningOAuthClients</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>jsonLogDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The folder we should store any temporary json files or results.</p>\n<p class=\"tableblock\"> Defaults to <code>${basedir}/target/jkube/applyJson</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.deploy.jsonLogDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>waitSeconds</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">How many seconds to wait for a URL to be generated for a service.</p>\n<p class=\"tableblock\"> Defaults to <code>5</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.serviceUrl.waitSeconds</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>resourceDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Folder where to find project specific files.</p>\n<p class=\"tableblock\"> Defaults to <code>${basedir}/src/main/jkube</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.resourceDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>environment</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Environment name where resources are placed. For example, if you set this property to dev and resourceDir is the\n default one, jkube will look at <code>src/main/jkube/dev</code>.</p>\n<p class=\"tableblock\"> Defaults to <code>null</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.environment</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>skipApply</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Skip applying the resources.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.skip.apply</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"jkube:helm\">5.5. <strong>oc:helm</strong></h3>\n<div class=\"paragraph\">\n<p>This goal is for creating\n<a href=\"https://helm.sh/docs/topics/charts\">Helm charts</a>\nfor your Maven project so that you can install, update or delete your app in Kubernetes\nusing <a href=\"https://github.com/helm/helm\">Helm</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>For creating a Helm chart you simply call <code>oc:helm</code> goal on the command line:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn oc:resource oc:helm</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The <code>oc:resource</code> goal is required to create the resource descriptors which are included in the Helm chart.\nIf you have already built the resource then you can omit this goal.</p>\n</div>\n<div class=\"paragraph\">\n<p>The configuration is defined in a <code><helm></code> section within the plugin’s configuration:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example Helm configuration</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <configuration>\n <helm>\n <chart>Jenkins</chart>\n <keywords>ci,cd,server</keywords>\n </helm>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This configuration section knows the following sub-elements in order to configure your Helm chart.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 21. Helm configuration</caption>\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 71.4285%;\">\n<col style=\"width: 14.2858%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>chart</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Chart name, which is <code>${project.artifactId}</code> if not provided.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.chart</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>version</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Chart SemVer version, which is <code>${project.version}</code> if not provided.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.version</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>description</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Chart single-sentence description, which is <code>${project.description}</code> if not provided.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.description</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>home</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Chart URL for this project’s home page, which is <code>${project.url}</code> if not provided.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.home</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>sources</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Chart list of URLs to source code for this project, defaults to the list of <code>${project.scm.url}</code> if not provided.</p></td>\n<td class=\"tableblock halign-left valign-top\"></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>maintainers</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Chart list of maintainers (name+email), defaults to the list of\n `${project.developers.name}:${project.developers.name}`if not provided.</p></td>\n<td class=\"tableblock halign-left valign-top\"></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>icon</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Chart URL to an SVG or PNG image to be used as an icon, default is extracted from the kubernetes manifest\n (<code>kubernetes.yml</code>) <code>jkube.io/iconUrl</code> annotation if not provided.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.icon</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>keywords</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Comma separated list of keywords to add to the chart.</p></td>\n<td class=\"tableblock halign-left valign-top\"></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>engine</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The template engine to use.</p></td>\n<td class=\"tableblock halign-left valign-top\"></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>additionalFiles</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The list of additional files to be included in the Chart archive. Any file named <code>README</code> or <code>LICENSE</code> will <strong>always</strong>\n be included by default.</p></td>\n<td class=\"tableblock halign-left valign-top\"></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>type</strong> / <strong>types</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Platform for which to generate the chart. By default this is <code>kubernetes</code>, but can be also <code>openshift</code> for using\n OpenShift specific resources in the chart. You can also add both values as a comma separated list.</p>\n<p class=\"tableblock\"> <em>Please note that there is no OpenShift support yet for charts, so this is experimental.</em></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.type</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>sourceDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Where to find the resource descriptors generated with <code>oc:resource</code>.\n By default this is <code>${basedir}/target/classes/META-INF/jkube., which is also the output directory used by `oc:resource</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.sourceDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>outputDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Where to create the Helm chart, which is <code>${basedir}/target/jkube/helm</code> by default for Kubernetes\n and <code>${basedir}/target/jkube/helmshift</code> for OpenShift.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.outputDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>tarballOutputDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Where to create the the Helm chart archive, which is <code>${basedir}/target</code> if not provided.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.tarballOutputDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>chartExtension</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Helm chart file extension (<code>tgz</code>, <code>tar.bz</code>, <code>tar.bzip2</code>, <code>tar.bz2</code>), default value is <code>tar.gz</code> if not provided.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.helm.chartExtension</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>In a next step you can install this via the <a href=\"https://github.com/helm/helm/releases\">helm command line tool</a> as follows:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">helm install nameForChartInRepository target/jkube/helm/${chartName}/kubernetes</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>or</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre>helm install target/jkube/helm/${chartName}/kubernetes --generate-name</pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>To add the <code>helm</code> goal to your project so that it is automatically executed just add the <code>helm</code> goal to the <code>executions</code>\nsection of the <code>openshift-maven-plugin</code> section of your <code>pom.xml</code>.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Add helm goal</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n\n <!-- ... -->\n\n <executions>\n <execution>\n <goals>\n <goal>resource</goal>\n <goal>helm</goal>\n <goal>build</goal>\n <goal>deploy</goal>\n </goals>\n </execution>\n </executions>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>In addition, this goal will also create a tar-archive below <code>${basedir}/target</code> which contains the chart with its template.\nThis tar is added as an artifact with classifier <code>helm</code> to the build (<code>helmshift</code> for the OpenShift mode).</p>\n</div>\n<div class=\"sect3\">\n<h4 id=\"helm-multi-module\">5.5.1. Multi-module projects</h4>\n<div class=\"paragraph\">\n<p>In multi-module Maven projects, some configuration default values differ from what you may expect.</p>\n</div>\n<div class=\"paragraph\">\n<p>Given a project with a parent module and at least a child module, if you run the helm goal within the child\nmodule, values for <code>home</code> and <code>sources</code> will get the submodule’s artifactId appended.</p>\n</div>\n<div class=\"paragraph\">\n<p>This behavior is normal, since the helm goal is executed in the scope of the submodule. The Maven\nvariables from which JKube extracts these defaults (<code>${project.url}</code> and <code>${project.scm.url}</code>)\nalready contain the appended submodule’s artifactId.</p>\n</div>\n<div class=\"paragraph\">\n<p>In order to prevent this, there are several alternatives:</p>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Manual configuration</div>\n<p>Provide the configuration manually for these values:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <configuration>\n <helm>\n <home>https://valid-home-with-no-appended-values.example.com</home>\n <sources>\n <source>https://github.com/valid-repo/with-no-appended-values</source>\n </sources>\n </helm>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Manual configuration using properties in child module</div>\n<p>Following the previous approach, if you don’t want to hardcode the values, or if you\nalready defined them in the parent module you can proceed with the following configuration\nin the <strong>child</strong> module:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><properties>\n <!-- ... -->\n <helm.home>${project.parent.url}</helm.home>\n <helm.source>${project.parent.scm.url}</helm.source>\n</properties>\n<!-- ... -->\n<plugin>\n <configuration>\n <helm>\n <home>${helm.home}</home>\n <sources>\n <source>${helm.source}</source>\n </sources>\n </helm>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Configure inheritance in parent project for the affected elements</div>\n<p>Configure inheritance of the <code>project</code> and <code>scm</code> elements in the <strong>parent</strong> module:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><project xmlns=\"http://maven.apache.org/POM/4.0.0\" xmlns:xsi=\"http://www.w3.org/2001/XMLSchema-instance\"\n xsi:schemaLocation=\"http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd\"\n child.project.url.inherit.append.path=\"false\"\n >\n<!-- ... -->\n <url>https://jkube.example.com</url>\n <scm child.scm.url.inherit.append.path=\"false\">\n <url>https://github.com/eclipse/jkube</url>\n </scm>\n<!-- ... -->\n</project></code></pre>\n</div>\n</div>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"goals-overview-develop\">6. Development Goals</h2>\n<div class=\"sectionbody\">\n<div class=\"sect2\">\n<h3 id=\"jkube:deploy\">6.1. <strong>oc:deploy</strong></h3>\n<div class=\"paragraph\">\n<p>This is the main goal for building your docker image, generating the kubernetes resources and deploying them into the cluster (insofar your pom.xml is set up correct; keep reading :)).</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn oc:deploy</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This goal is designed to run <a href=\"#jkube:build\"><strong>oc:build</strong></a> and <a href=\"#jkube:resource\"><strong>oc:resource</strong></a> before the deploy <strong>if</strong> you have the goals bound in your pom.xml:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n <version>1.0.2</version>\n\n <!-- Connect oc:resource, oc:build and oc:helm to lifecycle phases -->\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>build</goal>\n <goal>helm</goal>\n </goals>\n </execution>\n </executions>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Effectively this builds your project then invokes these goals:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><a href=\"#jkube:build\"><strong>oc:build</strong></a></p>\n</li>\n<li>\n<p><a href=\"#jkube:apply\"><strong>oc:apply</strong></a></p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>By default the behaviour of resource goal is it generates <code>route.yml</code> for a service if you have not done any configuration changes. Sometimes there may be case when you want to generate route.yml but do not want to create route resource on OpenShift Cluster. This can be achieved by the following configuration.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example for not generating route resource on your cluster</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n <version>1.0.2</version>\n <configuration>\n <enricher>\n <excludes>\n <exclude>jkube-expose</exclude>\n </excludes>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"jkube:undeploy\">6.2. <strong>oc:undeploy</strong></h3>\n<div class=\"paragraph\">\n<p>This goal is for deleting the kubernetes resources that you deployed via the <a href=\"#jkube:apply\"><strong>oc:apply</strong></a> or <a href=\"#jkube:deploy\"><strong>oc:deploy</strong></a> goals</p>\n</div>\n<div class=\"paragraph\">\n<p>It iterates through all the resources generated by the <a href=\"#jkube:resource\"><strong>oc:resource</strong></a> goal and deletes them from your current kubernetes cluster.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn oc:undeploy</code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"jkube:log\">6.3. <strong>oc:log</strong></h3>\n<div class=\"paragraph\">\n<p>This goal tails the log of the app that you deployed via the <a href=\"#jkube:deploy\"><strong>oc:deploy</strong></a> goal</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn oc:log</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>You can then terminate the output by hitting <code>Ctrl+C</code></p>\n</div>\n<div class=\"paragraph\">\n<p>If you wish to get the log of the app and then terminate immediately then try:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn oc:log -Djkube.log.follow=false</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This lets you pipe the output into grep or some other tool</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn oc:log -Djkube.log.follow=false | grep Exception</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>If your app is running in multiple pods you can configure the pod name to log via the <code>jkube.log.pod</code> property, otherwise it defaults to the latest pod:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn oc:log -Djkube.log.pod=foo</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>If your pod has multiple containers you can configure the container name to log via the <code>jkube.log.container</code> property, otherwise it defaults to the first container:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn oc:log -Djkube.log.container=foo</code></pre>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"Supported-Properties-Log\">6.3.1. Supported Properties for Log goal</h4>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 22. Options available with log goal</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>logFollow</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Get follow logs for your application inside Kubernetes.</p>\n<p class=\"tableblock\"> Defaults to <code>true</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.log.follow</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>logContainer</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Get logs of some specific container inside your application Deployment.</p>\n<p class=\"tableblock\"> Defaults to <code>null</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.log.container</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>logPod</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Get logs of some specific pod inside your application Deployment.</p>\n<p class=\"tableblock\"> Defaults to <code>null</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.log.pod</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"jkube:debug\">6.4. <strong>oc:debug</strong></h3>\n<div class=\"paragraph\">\n<p>This goal enables debugging in your Java app and then port forwards from localhost to the latest running pod of your app so that you can easily debug your app from your Java IDE.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn oc:debug</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Then follow the on screen instructions.</p>\n</div>\n<div class=\"paragraph\">\n<p>The default debug port is <code>5005</code>. If you wish to change the local port to use for debugging then pass in the <code>jkube.debug.port</code> parameter:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn oc:debug -Djkube.debug.port=8000</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Then in your IDE you start a Remote debug execution using this remote port using localhost and you should be able to set breakpoints and step through your code.</p>\n</div>\n<div class=\"paragraph\">\n<p>This lets you debug your apps while they are running inside a Kubernetes cluster - for example if you wish to debug a REST endpoint while another pod is invoking it.</p>\n</div>\n<div class=\"paragraph\">\n<p>Debug is enabled via the <code>JAVA_ENABLE_DEBUG</code> environment variable being set to <code>true</code>. This environment variable is used for all the standard Java docker images used by Spring Boot, flat classpath and executable JAR projects and Wildfly Swarm. If you use your own custom docker base image you may wish to also respect this environment variable too to enable debugging.</p>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_speeding_up_debugging\">6.4.1. Speeding up debugging</h4>\n<div class=\"paragraph\">\n<p>By default the <code>oc:debug</code> goal has to edit your Deployment to enable debugging then wait for a pod to start. It might be in development you frequently want to debug things and want to speed things up a bit.</p>\n</div>\n<div class=\"paragraph\">\n<p>If so you can enable debug mode for each build via the <code>jkube.debug.enabled</code> property.</p>\n</div>\n<div class=\"paragraph\">\n<p>e.g. you can pass this property on the command line:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn oc:deploy -Djkube.debug.enabled=true</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Or you can add something like this to your <code>~/.m2/settings.xml</code> file so that you enable debug mode for all maven builds on your laptop by using a profile :</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><?xml version=\"1.0\"?>\n<settings>\n <profiles>\n <profile>\n <id>enable-debug</id>\n <activation>\n <activeByDefault>true</activeByDefault>\n </activation>\n <properties>\n <jkube.debug.enabled>true</jkube.debug.enabled>\n </properties>\n </profile>\n </profiles>\n</settings></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Then whenever you type the <code>oc:debug</code> goal there is no need for the maven goal to edit the <code>Deployment</code> and wait for a pod to restart; we can immediately start debugging when you type:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn oc:debug</code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_debugging_with_suspension\">6.4.2. Debugging with suspension</h4>\n<div class=\"paragraph\">\n<p>The <code>oc:debug</code> goal allows to attach a remote debugger to a running container, but the application is free to execute when the debugger is not attached.\nIn some cases, you may want to have complete control on the execution, e.g. to investigate the application behavior at startup. This can be done using the <code>jkube.debug.suspend</code> flag:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn oc:debug -Djkube.debug.suspend</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The suspend flag will set the <code>JAVA_DEBUG_SUSPEND</code> environment variable to <code>true</code> and <code>JAVA_DEBUG_SESSION</code> to a random number in your deployment.\nWhen the <code>JAVA_DEBUG_SUSPEND</code> environment variable is set, standard docker images will use <code>suspend=y</code> in the JVM startup options for debugging.</p>\n</div>\n<div class=\"paragraph\">\n<p>The <code>JAVA_DEBUG_SESSION</code> environment variable is always set to a random number (each time you run the debug goal with the suspend flag) in order to tell Kubernetes to restart the pod.\nThe remote application will start only after a remote debugger is attached. You can use the remote debugging feature of your IDE to connect (on <code>localhost</code>, port <code>5005</code> by default).</p>\n</div>\n<div class=\"admonitionblock warning\">\n<table>\n<tr>\n<td class=\"icon\">\n<i class=\"fa icon-warning\" title=\"Warning\"></i>\n</td>\n<td class=\"content\">\nThe <code>jkube.debug.suspend</code> flag will disable readiness probes in the Kubernetes deployment in order to start port-forwarding during the early phases of application startup\n</td>\n</tr>\n</table>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"Supported-Properties-Debug\">6.4.3. Supported Properties For Debug Goal</h4>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 23. Options available with debug goal</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>debugPort</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Default port available for debugging your application inside Kubernetes.</p>\n<p class=\"tableblock\"> Defaults to <code>5005</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.debug.port</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>debugSuspend</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Disables readiness probes in Kubernetes Deployment in order to start port forwarding during early phases of\n application startup.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.debug.suspend</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"jkube:watch\">6.5. <strong>oc:watch</strong></h3>\n<div class=\"paragraph\">\n<p>This goal is used to monitor the project workspace for changes and automatically trigger a redeploy of the application\nrunning on Kubernetes. There are two kinds of watchers present at the moment:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Docker Image Watcher(watches docker images)</p>\n</li>\n<li>\n<p>Spring Boot Watcher(based on Spring Boot Devtools)</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>Before entering the watch mode, this goal must generate the docker image and the Kubernetes resources\n(optionally including some development libraries/configuration),\nand deploy the app on Kubernetes. Lifecycle bindings should be configured as follows to allow\nthe generation of such resources.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Lifecycle bindings for oc:watch</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n\n <!-- ... -->\n\n <executions>\n <execution>\n <goals>\n <goal>resource</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>For any application having <code>resource</code> and <code>build</code> goals bound to the lifecycle, the following\ncommand can be used to run the watch task.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-bash\" data-lang=\"bash\">mvn oc:watch</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This plugin supports different watcher providers, enabled automatically if the project satisfies certain conditions.</p>\n</div>\n<div class=\"paragraph\">\n<p>Watcher providers can also be configured manually. The <a href=\"#generator-example\">Generator example</a> is a good blueprint, simply replace <code><generator></code> with <code><watcher></code>. The configuration is structurally identical.</p>\n</div>\n<div class=\"sect3\">\n<h4 id=\"watcher-spring-boot\">6.5.1. Spring Boot</h4>\n<div class=\"paragraph\">\n<p>This watcher is enabled by default for all Spring Boot projects. It performs the following actions:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>deploys your application with Spring Boot DevTools enabled</p>\n</li>\n<li>\n<p>tails the log of the latest running pod for your application</p>\n</li>\n<li>\n<p>watches the local development build of your Spring Boot based application and then triggers a reload of the application when there are changes</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>You need to make sure that <code>devtools</code> is included in the repacked archive, as shown in the following listing:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.springframework.boot</groupId>\n <artifactId>spring-boot-maven-plugin</artifactId>\n <configuration>\n <excludeDevtools>false</excludeDevtools>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Then you need to set a <code>spring.devtools.remote.secret</code> in application.properties, as shown in the following example:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre>spring.devtools.remote.secret=mysecret</pre>\n</div>\n</div>\n<div class=\"admonitionblock warning\">\n<table>\n<tr>\n<td class=\"icon\">\n<i class=\"fa icon-warning\" title=\"Warning\"></i>\n</td>\n<td class=\"content\">\nSpring devtools automatically ignores projects named <code>spring-boot</code>, <code>spring-boot-devtools</code>,\n <code>spring-boot-autoconfigure</code>, <code>spring-boot-actuator</code>, <code>and spring-boot-starter</code>\n</td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<p>You can try it on any spring boot application via:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn oc:watch</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Once the goal starts up the spring boot RemoteSpringApplication it will watch for local development changes.</p>\n</div>\n<div class=\"paragraph\">\n<p>e.g. if you edit the java code of your app and then build it via something like this:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn package</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>You should see your app reload on the fly in the shell running the <a href=\"#jkube:watch\"><strong>oc:watch</strong></a> goal!</p>\n</div>\n<div class=\"paragraph\">\n<p>There is also support for LiveReload as well.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"watcher-docker-image\">6.5.2. Docker Image</h4>\n<div class=\"paragraph\">\n<p>This is a generic watcher that can be used in Kubernetes mode only. Once activated, it listens for changes in the project workspace\n in order to trigger a redeploy of the application. This enables rebuilding of images and restarting of containers in case of updates.</p>\n</div>\n<div class=\"paragraph\">\n<p>There are five watch modes, which can be specified in multiple ways:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>build</code>: Automatically rebuild one or more Docker images when one of the files selected by an assembly changes. This works for all files included in assembly.</p>\n</li>\n<li>\n<p><code>run</code>: Automatically restart your application when their associated images change.</p>\n</li>\n<li>\n<p><code>copy</code>: Copy changed files into the running container. This is the fast way to update a container, however the target container must support hot deploy, too so that it makes sense. Most application servers like Tomcat supports this.</p>\n</li>\n<li>\n<p><code>both</code>: Enables both <code>build</code> and <code>run</code>. <strong>This is the default</strong>.</p>\n</li>\n<li>\n<p><code>none</code>: Image is completely ignored for watching.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>The watcher can be activated e.g. by running this command in another shell:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn package</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The watcher will detect that the binary artifact has changed and will first rebuild the docker image,\nthen start a redeploy of the Kubernetes pod.</p>\n</div>\n<div class=\"paragraph\">\n<p>It uses the watch feature of the <a href=\"https://dmp.fabric8.io/#docker:watch\">docker-maven-plugin</a> under the hood.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"Supported-Properties-Watch\">6.5.3. Supported Properties for Watch goal</h4>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 24. Options available with watch goal</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>kubernetesManifest</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The generated kubernetes YAML file.</p>\n<p class=\"tableblock\"> Defaults to <code>${basedir}/target/classes/META-INF/jkube/kubernetes.yml</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.kubernetesManifest</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>watchMode</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><div class=\"content\"><div class=\"paragraph\">\n<p>How to watch for image changes.</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>copy</code>: Copy watched artifacts into container</p>\n</li>\n<li>\n<p><code>build</code>: Build only images</p>\n</li>\n<li>\n<p><code>run</code>: Run images</p>\n</li>\n<li>\n<p><code>both</code>: Build and run images</p>\n</li>\n<li>\n<p><code>none</code>: Neither build nor run</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>Defaults to <code>both</code>.</p>\n</div></div></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.watch.mode</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>watchInterval</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Interval in milliseconds (how often to check for changes).</p>\n<p class=\"tableblock\"> Defaults to <code>5000</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.watch.interval</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>keepRunning</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set to true all containers will be kept running after oc:watch has been stopped.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.watch.keepRunning</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>watchPostGoal</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A maven goal which should be called if a rebuild or a restart has been performed.</p>\n<p class=\"tableblock\"> This goal must have the format <code><pluginGroupId>:<pluginArtifactId>:<goal></code> and the plugin must be\n configured in the pom.xml.</p>\n<p class=\"tableblock\"> For example a post-goal <code>com.example:group:delete-pods</code> will trigger the <code>delete-pods</code>\n goal of this hypothetic example.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.watch.postGoal</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>watchPostExec</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A command which is executed within the container after files are copied into this container\n when watchMode is copy. Note that this container must be running.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.watch.postExec</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>keepContainer</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If this is set to <code>false</code> (and <code>keepRunning</code> is disabled) then all containers will be removed after\n they have been stopped.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.watch.keepContainer</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>removeVolumes</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set to <code>true</code> remove any volumes associated with the container as well.</p>\n<p class=\"tableblock\"> This option will be ignored if either <code>keepContainer</code> or <code>keepRunning</code> is <code>true</code>.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.watch.removeVolumes</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>watchShowLogs</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set to <code>true</code>, logs will be shown for watched container.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.watch.showLogs</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>watchFollow</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If <code>watchShowLogs</code> is set to <code>false</code>, and there is a run image configuration, logs are followed\n if set to <code>true</code>.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.watch.follow</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"generators\">7. Generators</h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>The usual way to define Docker images is with the plugin configuration as explained in <a href=\"#jkube:build\"><strong>oc:build</strong></a>. This can either be done completely within the <code>pom.xml</code> or by referring to an external Dockerfile. Since openshift-maven-plugin includes <a href=\"https://github.com/jkubeio/docker-maven-plugin\">docker-maven-plugin</a> the way by which images are built is identical.</p>\n</div>\n<div class=\"paragraph\">\n<p>However, this plugin provides an additional route for defining image configurations. This is done by so called <em>Generators</em>. A generator is a Java component providing an auto-detection mechanism for certain build types like a Spring Boot build or a plain Java build. As soon as a <em>Generator</em> detects that it is applicable it will be called with the list of images configured in the <code>pom.xml</code>. Typically a generator only creates dynamically a new image configuration if this list is empty. But a generator is free to also add new images to an existing list or even change the current image list.</p>\n</div>\n<div class=\"paragraph\">\n<p>You can easily create your own generator as explained in <a href=\"#generators-api\">Generator API</a>. This section will focus on existing generators and how you can configure them.</p>\n</div>\n<div class=\"paragraph\">\n<p>The included <em>Generators</em> are enabled by default, but you can easily disable them or only select a certain set of generators. Each generator has a <em>name</em>, which is unique for a generator.</p>\n</div>\n<div class=\"paragraph\">\n<p>The generator configuration is embedded in a <code><generator></code> configuration section:</p>\n</div>\n<div id=\"generator-example\" class=\"listingblock\">\n<div class=\"title\">Example for a generator configuration</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n ....\n <configuration>\n ....\n <generator> <i class=\"conum\" data-value=\"1\"></i><b>(1)</b>\n <includes> <i class=\"conum\" data-value=\"2\"></i><b>(2)</b>\n <include>spring-boot</include>\n </includes>\n <config> <i class=\"conum\" data-value=\"3\"></i><b>(3)</b>\n <spring-boot> <i class=\"conum\" data-value=\"4\"></i><b>(4)</b>\n <alias>ping</alias>\n </spring-boot>\n </config>\n </generator>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td>Start of generators' configuration.</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"2\"></i><b>2</b></td>\n<td>Generators can be included and excluded. Includes have precedence, and the generators are called in the given order.</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"3\"></i><b>3</b></td>\n<td>Configuration for individual generators.</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"4\"></i><b>4</b></td>\n<td>The config is a map of supported config values. Each section is embedded in a tag named after the generator.</td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<p>The following sub-elements are supported:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 25. Generator configuration</caption>\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 85.7143%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code><includes></code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Contains one ore more <code><include></code> elements with generator names which should be included. If given only this list of generators are included in this given order. The order is important because by default only the first matching generator kicks in. The generators from every active profile are included, too. However the generators listed here are moved to the front of the list, so that they are called first. Use the profile <code>raw</code> if you want to explicitly set the complete list of generators.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code><excludes></code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Holds one or more <code><exclude></code> elements with generator names to exclude. If set then all detected generators are used except the ones mentioned in this section.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code><config></code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Configuration for all generators. Each generator support a specific set of configuration values as described in the documentation. The subelements of this section are generator names to configure. E.g. for generator <code>spring-boot</code>, the sub-element is called <code><spring-boot></code>. This element then holds the specific generator configuration like <code><name></code> for specifying the final image name. See above for an example. Configuration coming from profiles are merged into this config, but not overriding the configuration specified here.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Beside specifying generator configuration in the plugin’s configuration it can be set directly with properties, too:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example generator property config</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn -Djkube.generator.java-exec.webPort=8082</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The general scheme is a prefix <code>jkube.generator.</code> followed by the unique generator name and then the generator specific key.</p>\n</div>\n<div class=\"paragraph\">\n<p>In addition to the provided default <em>Generators</em> described in the next section <a href=\"#generators-default\">Default Generators</a>, custom generators can be easily added. There are two ways to include generators:</p>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Plugin dependency</div>\n<p>You can declare the generator holding jars as dependency to this plugin as shown in this example</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <artifactId>openshift-maven-plugin</artifactId>\n ....\n <dependencies>\n <dependency>\n <groupId>io.acme</groupId>\n <artifactId>mygenerator</artifactId>\n <version>1.0</version>\n </dependency>\n </dependencies>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Compile time dependency</div>\n<p>Alternatively and if your application code comes with a custom generator you can set the global configuration option <code>useProjectClasspath</code> (property: <code>jkube.useProjectClasspath</code>) to true. In this case also the project artifact and its dependencies are looked up for <em>Generators</em>. See <a href=\"#generators-api\">Generator API</a> for details how to write your own generators.</p>\n</div>\n<div class=\"sect2\">\n<h3 id=\"generators-default\">7.1. Default Generators</h3>\n<div class=\"paragraph\">\n<p>All default generators examine the build information for certain aspects and generate a Docker build configuration on the fly. They can be configured to a certain degree, where the configuration is generator specific.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 26. Default Generators</caption>\n<colgroup>\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 16.6666%;\">\n<col style=\"width: 66.6668%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Generator</th>\n<th class=\"tableblock halign-left valign-top\">Name</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-java-exec\">Java Applications</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>java-exec</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Generic generator for flat classpath and fat-jar Java applications</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-spring-boot\">Spring Boot</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>spring-boot</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Spring Boot specific generator</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-wildfly-swarm\">Wildfly Swarm</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>wildfly-swarm</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Generator for Wildfly Swarm apps</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-thorntail-v2\">Thorntail v2</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>thorntail-v2</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Generator for Thorntail v2 apps</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-vertx\">Vert.x</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Generator for Vert.x applications</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-karaf\">Karaf</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>karaf</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Generator for Karaf based apps</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-webapp\">Web applications</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>webapps</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Generator for WAR based applications supporting Tomcat, Jetty and Wildfly base images</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-quarkus\">Quarkus</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>Quarkus</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Generator for Quarkus based applications</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-openliberty\">Open Liberty</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>openliberty</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Generator for Open Liberty applications</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#generator-wildfly-jar\">WildFly Bootable JAR</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>wildfly-jar</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Generator for WildFly Bootable JAR applications</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>There are some configuration options which are shared by all generators:</p>\n</div>\n<table id=\"generator-options-common\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 27. Common generator options</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>add</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">When set to <code>true</code>, then the generator <em>adds</em> to an existing image configuration. By default this is disabled, so\n that a generator only kicks in when there are no other image configurations in the build, which are either configured\n directly for a <code>oc:build</code> or already added by a generator which has been run previously.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.add</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>alias</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">An alias name for referencing this image in various other parts of the configuration. This is also used in the log\n output. The default alias name is the name of the generator.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.alias</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>from</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">This is the base image from where to start when creating the images. By default the generators make an opinionated\n decision for the base image which are described in the respective generator section.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.from</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>fromMode</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Whe using OpenShift S2I builds the base image can be either a plain docker image (mode: <code>jib</code>) or a reference to an\n <a href=\"https://docs.openshift.com/container-platform/3.3/architecture/core_concepts/builds_and_image_streams.html\"> ImageStreamTag</a>\n (mode: <code>istag</code>). In the case of an ImageStreamTag, <code>from</code> has to be specified in the form <code>namespace/image-stream:tag</code>.\n The mode takes only effect when running in OpenShift mode.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.fromMode</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>name</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Docker image name used when doing Docker builds. For OpenShift S2I builds its the name of the image stream. This\n can be a pattern as descibed in <a href=\"#image-name-placeholders\">Name Placeholders</a>. The default is <code>%g/%a:%l</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.name</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>registry</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A optional Docker registry used when doing Docker builds. It has no effect for OpenShift S2I builds.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.registry</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>When used as properties they can be directly referenced with the property names above.</p>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-java-exec\">7.1.1. Java Applications</h4>\n<div class=\"paragraph\">\n<p>One of the most generic <em>Generators</em> is the <code>java-exec</code> generator.\nIt is responsible for starting up arbitrary Java application.\nIt knows how to deal with fat-jar applications where the application and all dependencies are included within a single jar and the <code>MANIFEST.MF</code> within the jar references a main class.\nBut also flat classpath applications, where the dependencies are separate jar files and a main class is given.</p>\n</div>\n<div class=\"paragraph\">\n<p>If no main class is explicitly configured, the plugin first attempts to locate a fat jar.\nIf the Maven build creates a JAR file with a <code>META-INF/MANIFEST.MF</code> containing a <code>Main-Class</code> entry, then this is considered to be the fat jar to use.\nIf there are more than one of such files then the largest one is used.</p>\n</div>\n<div class=\"paragraph\">\n<p>If a main class is configured (see below) then the image configuration will contain the application jar plus all dependency jars.\nIf no main class is configured as well as no fat jar being detected, then this <em>Generator</em> tries to detect a single main class by searching for <code>public static void main(String args[])</code> among the application classes. If exactly one class is found this is considered to be the main class. If no or more than one is found the <em>Generator</em> finally does nothing.</p>\n</div>\n<div class=\"paragraph\">\n<p>It will use the following base image by default, but as explained <a href=\"#generator-options-common\">above</a> and can be changed with the <code>from</code> configuration.</p>\n</div>\n<table id=\"generator-java-exec-from\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 28. Java Base Images</caption>\n<colgroup>\n<col style=\"width: 7.6923%;\">\n<col style=\"width: 30.7692%;\">\n<col style=\"width: 30.7692%;\">\n<col style=\"width: 30.7693%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\"></th>\n<th class=\"tableblock halign-left valign-top\">Docker Build</th>\n<th class=\"tableblock halign-left valign-top\">S2I Build</th>\n<th class=\"tableblock halign-left valign-top\">ImageStream</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>Community</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>quay.io/jkube/jkube-java-binary-s2i</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>quay.io/jkube/jkube-java-binary-s2i</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube-java</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>These images always refer to the latest tag.</p>\n</div>\n<div class=\"paragraph\">\n<p>When a <code>fromMode</code> of <code>istag</code> is used to specify an <code>ImageStreamTag</code> and when no <code>from</code> is given, then as default the\n<code>ImageStreamTag</code> <code>jkube-java</code> in the namespace <code>openshift</code> is chosen.\nBy default, <code>fromMode = \"docker\"</code> which use the a plain Docker image reference for the S2I builder image.</p>\n</div>\n<div class=\"paragraph\">\n<p>Beside the common configuration parameters described in the table <a href=\"#generator-options-common\">common generator options</a>\nthe following additional configuration options are recognized:</p>\n</div>\n<table id=\"generator-java-exec-options\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 29. Java Application configuration options</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>targetDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Directory within the generated image where to put the detected artefacts into. Change this only if the base image is\n changed, too.</p>\n<p class=\"tableblock\"> Defaults to <code>/deployments</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.java-exec.targetDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>jolokiaPort</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Port of the Jolokia agent exposed by the base image. Set this to 0 if you don’t want to expose the Jolokia port.</p>\n<p class=\"tableblock\"> Defaults to <code>8778</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.java-exec.jolokiaPort</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>mainClass</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Main class to call. If not given first a check is performed to detect a fat-jar (see above). Next a class is looked up\n by scanning <code>target/classes</code> for a single class with a main method. If no such class is found or if more than one is\n found, then this generator does nothing.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.java-exec.mainClass</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>prometheusPort</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Port of the Prometheus jmx_exporter exposed by the base image. Set this to 0 if you don’t want to expose the Prometheus\n port.</p>\n<p class=\"tableblock\"> Defaults to <code>9779</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.java-exec.prometheusPort</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>webPort</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Port to expose as service, which is supposed to be the port of a web application. Set this to 0 if you don’t want to\n expose a port.</p>\n<p class=\"tableblock\"> Defaults to <code>8080</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.java-exec.webPort</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>The exposed ports are typically later on use by <a href=\"#enrichers\">Enrichers</a> to create default Kubernetes or OpenShift services.</p>\n</div>\n<div class=\"paragraph\">\n<p>You can add additional files to the target image within <code>baseDir</code> by placing files into <code>src/main/jkube-includes</code>.\nThese will be added with mode <code>0644</code>, while everything in <code>src/main/jkube-includes/bin</code> will be added with <code>0755</code>.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-spring-boot\">7.1.2. Spring Boot</h4>\n<div class=\"paragraph\">\n<p>This generator is called <code>spring-boot</code> and gets activated when it finds a <code>spring-boot-maven-plugin</code> in the pom.xml.</p>\n</div>\n<div class=\"paragraph\">\n<p>This generator is based on the <a href=\"#generator-java-exec\">Java Application</a> Generator and inherits all of its configuration values. The generated container port is read from the <code>server.port</code> property <code>application.properties</code>, defaulting to <code>8080</code> if it is not found. It also uses the same default images as the <a href=\"#generator-java-exec-from\">java-exec Generator</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>Beside the <a href=\"#generator-options-common\">common generator options</a> and the <a href=\"#generator-java-exec-options\">java-exec options</a> the following additional configuration is recognized:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 30. Spring-Boot configuration options</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>color</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set, force the use of color in the Spring Boot console output.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.spring-boot.color</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>The generator adds Kubernetes liveness and readiness probes pointing to either the management or server port as read from the <code>application.properties</code>.\nIf the <code>management.port</code> (for Spring Boot 1) or <code>management.server.port</code> (for Spring Boot 2) and <code>management.ssl.key-store</code> (for Spring Boot 1) or <code>management.server.ssl.key-store</code> (for Spring Boot 2) properties are set in <code>application.properties</code> otherwise or <code>server.ssl.key-store</code> property is set in <code>application.properties</code> then the probes are automatically set to use <code>https</code>.</p>\n</div>\n<div class=\"paragraph\">\n<p>The generator works differently when called together with <code>oc:watch</code>.\nIn that case it enables support for <a href=\"http://docs.spring.io/spring-boot/docs/current/reference/html/using-boot-devtools.html\">Spring Boot Developer Tools</a> which allows for hot reloading of the Spring Boot app.\nIn particular, the following steps are performed:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>If a secret token is not provided within the Spring Boot application configuration <code>application.properties</code> or <code>application.yml</code> with the key <code>spring.devtools.remote.secret</code> then a custom secret token is created and added to <code>application.properties</code></p>\n</li>\n<li>\n<p>Add <code>spring-boot-devtools.jar</code> as <code>BOOT-INF/lib/spring-devtools.jar</code> to the spring-boot fat jar.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>Since during <code>oc:watch</code> the application itself within the <code>target/</code> directory is modified for allowing easy reloading you must ensure that you do a <code>mvn clean</code> before building an artifact which should be put into production.\nSince the released version are typically generated with a CI system which does a clean build anyway this should be only a theoretical problem.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-wildfly-swarm\">7.1.3. Wildfly Swarm</h4>\n<div class=\"paragraph\">\n<p>The WildFly Swarm generator detects a WildFly Swarm build and disables the Prometheus Java agent because of this <a href=\"https://issues.jboss.org/browse/THORN-1859\">issue</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>Otherwise this generator is identical to the <a href=\"#generator-java-exec\">java-exec generator</a>.\nIt supports the <a href=\"#generator-options-common\">common generator options</a> and the <a href=\"#generator-java-exec-options\"><code>java-exec</code> options</a>.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-thorntail-v2\">7.1.4. Thorntail v2</h4>\n<div class=\"paragraph\">\n<p>The Thorntail v2 generator detects a Thorntail v2 build and disables the Prometheus Java agent because of this <a href=\"https://issues.jboss.org/browse/THORN-1859\">issue</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>Otherwise this generator is identical to the <a href=\"#generator-java-exec\">java-exec generator</a>. It supports the <a href=\"#generator-options-common\">common generator options</a> and the <a href=\"#generator-java-exec-options\"><code>java-exec</code> options</a>.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-vertx\">7.1.5. Vert.x</h4>\n<div class=\"paragraph\">\n<p>The Vert.x generator detects an application using Eclipse Vert.x. It generates the metadata to start the application as a fat jar.</p>\n</div>\n<div class=\"paragraph\">\n<p>Currently, this generator is enabled if:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>you are using the Vert.x Maven Plugin (<a href=\"https://github.com/reactiverse/vertx-maven-plugin\" class=\"bare\">https://github.com/reactiverse/vertx-maven-plugin</a>)</p>\n</li>\n<li>\n<p>you are depending on <code>io.vertx:vertx-core</code> and uses the Maven Shader plugin</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>Otherwise this generator is identical to the <a href=\"#generator-java-exec\">java-exec generator</a>. It supports the <a href=\"#generator-options-common\">common generator options</a> and the <a href=\"#generator-java-exec-options\"><code>java-exec</code> options</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>The generator automatically:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>enable metrics and JMX publishing of the metrics when <code>io.vertx:vertx-dropwizard-metrics</code> is in the project’s classpath / dependencies.</p>\n</li>\n<li>\n<p>enable clustering when a Vert.x cluster manager is available in the project’s classpath / dependencies. this is done by appending <code>-cluster</code> to the command line.</p>\n</li>\n<li>\n<p>Force IPv4 stack when <code>vertx-infinispan</code> is used.</p>\n</li>\n<li>\n<p>Disable the async DNS resolver to fallback to the regular JVM DNS resolver.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>You can pass application parameter by setting the <code>JAVA_ARGS</code> env variable. You can pass system properties either using the same variable or using <code>JAVA_OPTIONS</code>. For instance, create <code>src/main/jkube/deployment.yml</code> with the following content to configure <code>JAVA_ARGS</code>:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">spec:\n template:\n spec:\n containers:\n - env:\n - name: JAVA_ARGS\n value: \"-Dfoo=bar -cluster -instances=2\"</code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-karaf\">7.1.6. Karaf</h4>\n<div class=\"paragraph\">\n<p>This generator named <code>karaf</code> kicks in when the build uses a <code>karaf-maven-plugin</code>. By default the following base images are used:</p>\n</div>\n<table id=\"generator-karaf-from\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 31. Karaf Base Images</caption>\n<colgroup>\n<col style=\"width: 7.6923%;\">\n<col style=\"width: 30.7692%;\">\n<col style=\"width: 30.7692%;\">\n<col style=\"width: 30.7693%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\"></th>\n<th class=\"tableblock halign-left valign-top\">Docker Build</th>\n<th class=\"tableblock halign-left valign-top\">S2I Build</th>\n<th class=\"tableblock halign-left valign-top\">ImageStream</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>Community</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>quay.io/jkube/jkube-karaf-binary-s2i</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>quay.io/jkube/jkube-karaf-binary-s2i</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube-karaf</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>When a <code>fromMode</code> of <code>istag</code> is used to specify an <code>ImageStreamTag</code> and when no <code>from</code> is given, then as default the\n<code>ImageStreamTag</code> <code>jkube-karaf</code> in the namespace <code>openshift</code> is chosen.</p>\n</div>\n<div class=\"paragraph\">\n<p>In addition to the <a href=\"#generator-options-common\">common generator options</a> this generator can be configured with the following options:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 32. Karaf configuration options</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>baseDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Directory within the generated image where to put the detected artifacts into. Change this only if the base image is\n changed, too.</p>\n<p class=\"tableblock\"> Defaults to <code>/deployments</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.karaf.baseDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>webPort</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Port to expose as service, which is supposed to be the port of a web application. Set this to 0 if you don’t want to\nexpose a port.</p>\n<p class=\"tableblock\"> Defaults to <code>8080</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.karaf.webPort</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-webapp\">7.1.7. Web Applications</h4>\n<div class=\"paragraph\">\n<p>The <code>webapp</code> generator tries to detect WAR builds and selects a base servlet container image based on the configuration found in the <code>pom.xml</code>:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>A <strong>Tomcat</strong> base image is selected when a <code>tomcat6-maven-plugin</code> or <code>tomcat7-maven-plugin</code> is present or when a <code>META-INF/context.xml</code> could be found in the classes directory.</p>\n</li>\n<li>\n<p>A <strong>Jetty</strong> base image is selected when a <code>jetty-maven-plugin</code> is present or one of the files <code>WEB-INF/jetty-web.xml</code> or <code>WEB-INF/jetty-logging.properties</code> is found.</p>\n</li>\n<li>\n<p>A <strong>Wildfly</strong> base image is chosen for a given <code>jboss-as-maven-plugin</code> or <code>wildfly-maven-plugin</code> or when a Wildfly specific deployment descriptor like <code>jboss-web.xml</code> is found.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>The base images chosen are:</p>\n</div>\n<table id=\"generator-webapp-from\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 33. Webapp Base Images</caption>\n<colgroup>\n<col style=\"width: 11.1111%;\">\n<col style=\"width: 44.4444%;\">\n<col style=\"width: 44.4445%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\"></th>\n<th class=\"tableblock halign-left valign-top\">Docker Build</th>\n<th class=\"tableblock halign-left valign-top\">S2I Build</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>Tomcat</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>quay.io/jkube/jkube-tomcat9-binary-s2i</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>quay.io/jkube/jkube-tomcat9-binary-s2i</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>Jetty</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>quay.io/jkube/jkube-jetty9-binary-s2i</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>quay.io/jkube/jkube-jetty9-binary-s2i</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>Wildfly</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jboss/wildfly</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"https://github.com/wildfly/wildfly-s2i\"><code>quay.io/wildfly/wildfly-centos7</code></a></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>In addition to the <a href=\"#generator-options-common\">common generator options</a> this generator can be configured with the following options:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 34. Webapp configuration options</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>server</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Fix server to use in the base image. Can be either <strong>tomcat</strong>, <strong>jetty</strong> or <strong>wildfly</strong>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.webapp.server</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>targetDir</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Where to put the war file into the target image. By default its selected by the base image chosen but can be\n overwritten with this option.</p>\n<p class=\"tableblock\"> Defaults to <code>/deployments</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.webapp.targetDir</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>user</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">User and/or group under which the files should be added. The syntax of this options is descriped in\n <a href=\"#config-image-build-assembly-user\">Assembly Configuration</a>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.webapp.user</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>path</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Context path with which the application can be reached by default.</p>\n<p class=\"tableblock\"> Defaults to <code>/</code> (root context).</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.webapp.path</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>cmd</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Command to use to start the container. By default the base images startup command is used.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.webapp.cmd</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>ports</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Comma separated list of ports to expose in the image and which eventually are translated later to Kubernetes services.\n The ports depend on the base image and are selected automatically. But they can be overridden here.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.generator.webapp.ports</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-quarkus\">7.1.8. Quarkus</h4>\n<div class=\"paragraph\">\n<p>The <code>Quarkus</code> generator tried to detect quarkus based projects looking at project <code>pom.xml</code>:</p>\n</div>\n<div class=\"paragraph\">\n<p>The base images chosen are:</p>\n</div>\n<table id=\"generator-quarkus-from\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 35. Webapp Base Images</caption>\n<colgroup>\n<col style=\"width: 11.1111%;\">\n<col style=\"width: 44.4444%;\">\n<col style=\"width: 44.4445%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\"></th>\n<th class=\"tableblock halign-left valign-top\">Docker Build</th>\n<th class=\"tableblock halign-left valign-top\">S2I Build</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>Native</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>registry.access.redhat.com/ubi8/ubi-minimal:8.1</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">---</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>Normal Build</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>openjdk:11</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">---</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"admonitionblock important\">\n<table>\n<tr>\n<td class=\"icon\">\n<i class=\"fa icon-important\" title=\"Important\"></i>\n</td>\n<td class=\"content\">\n<div class=\"paragraph\">\n<p>S2I builds are currently not yet supported for the Quarkus generator.</p>\n</div>\n</td>\n</tr>\n</table>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-openliberty\">7.1.9. Open Liberty</h4>\n<div class=\"paragraph\">\n<p>The Open Liberty generator runs when the Open Liberty plugin is enabled in the maven build.</p>\n</div>\n<div class=\"paragraph\">\n<p>The generator is similar to the <a href=\"#generator-java-exec\">java-exec generator</a>. It supports the <a href=\"#generator-options-common\">common generator options</a> and the <a href=\"#generator-java-exec-options\"><code>java-exec</code> options</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>For Open Liberty, the default value of webPort is 9080.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"generator-wildfly-jar\">7.1.10. Wildfly JAR Generator</h4>\n<div class=\"paragraph\">\n<p>The Wildfly JAR generator detects a WildFly Bootable JAR build and disables the Jolokia and Prometheus Java agent.</p>\n</div>\n<div class=\"paragraph\">\n<p>Otherwise this generator is identical to the <a href=\"#generator-java-exec\">java-exec generator</a>. It supports the <a href=\"#generator-options-common\">common generator options</a> and the <a href=\"#generator-java-exec-options\"><code>java-exec</code> options</a>.</p>\n</div>\n<div class=\"sect4\">\n<h5 id=\"_support_for_slim_bootable_jar\">Support for slim Bootable JAR</h5>\n<div class=\"paragraph\">\n<p>A slim Bootable JAR is a JAR that retrieves JBoss module artifacts from a Maven local cache. Such JAR are smaller and start faster. The WildFly JAR generator\nhas a builtin support to install a maven local cache in the image.</p>\n</div>\n<div class=\"paragraph\">\n<p>In order to build a slim Bootable JAR, configure the <em>wildfly-jar-maven-plugin</em> for slim server and maven local cache generation:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre> <plugin>\n <groupId>org.wildfly.plugins</groupId>\n <artifactId>wildfly-jar-maven-plugin</artifactId>\n <configuration>\n <plugin-options>\n <!-- Build a slim Bootable JAR -->\n <jboss-maven-dist/>\n <!-- Path to the Maven local cache that the plugin generates during build.\n It contains JBoss module artifacts required by the server. -->\n <jboss-maven-repo>target/myapp-repo</jboss-maven-repo>\n </plugin-options>\n ...\n </configuration>\n <executions>\n <execution>\n <goals>\n <goal>package</goal>\n </goals>\n </execution>\n </executions>\n </plugin></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The generator detects the path of the generated maven local repository directory\n(value of the <em><jboss-maven-repo></em> element) and copies it into the image <em>/deployments/<repo directory name></em> directory.\nNB: A relative path is considered relative to the maven project base directory.</p>\n</div>\n<div class=\"paragraph\">\n<p>In order for the Bootable JAR to retrieve the JBoss modules artifacts, the java\noption <em>-Dmaven.repo.local=/deployments/<repo directory name></em> is automatically added to the launch options.</p>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"generators-api\">7.2. Generator API</h3>\n<div class=\"admonitionblock warning\">\n<table>\n<tr>\n<td class=\"icon\">\n<i class=\"fa icon-warning\" title=\"Warning\"></i>\n</td>\n<td class=\"content\">\nThe API is still a bit in flux and will be documented later. Please refer to the\n <a href=\"https://github.com/eclipse/jkube/blob/master/jkube-kit/generator/api/src/main/java/org/eclipse/jkube/generator/api/Generator.java\">Generator</a>\n Interface in the meantime.\n</td>\n</tr>\n</table>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"enrichers\">8. Enrichers</h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>Enriching is the complementary concept to <a href=\"#generators\">Generators</a>. Whereas Generators are used to create and customize Docker images, Enrichers are use to create and customize Kubernetes resource objects.</p>\n</div>\n<div class=\"paragraph\">\n<p>There are a lot of similarities to Generators:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Each Enricher has a unique name.</p>\n</li>\n<li>\n<p>Enrichers are looked up automatically from the plugin dependencies and there is a set of default enrichers delivered with this plugin.</p>\n</li>\n<li>\n<p>Enrichers are configured the same ways as generators</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>The <a href=\"#generator-example\">Generator example</a> is a good blueprint, simply replace <code><generator></code> with <code><enricher></code>. The configuration is structural identical:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 36. Enricher configuration</caption>\n<colgroup>\n<col style=\"width: 25%;\">\n<col style=\"width: 75%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code><includes></code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Contains one ore more <code><include></code> elements with enricher names which should be included. If given, only this list of enrichers are included in this order. The enrichers from every active profile are included, too. However the enrichers listed here are moved to the front of the list, so that they are called first. Use the profile <code>raw</code> if you want to explicitly set the complete list of enrichers.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code><excludes></code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Holds one or more <code><exclude></code> elements with enricher names to exclude. This means all the detected enrichers are used except the ones mentioned in this section.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code><config></code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Configuration for all enrichers. Each enricher supports a specific set of configuration values as described in its documentation. The subelements of this section are enricher names. E.g. for enricher <code>jkube-service</code>, the sub-element is called <code><jkube-service></code>. This element then holds the specific enricher configuration like <code><name></code> for the service name. Configuration coming from profiles are merged into this config, but not overriding the configuration specified here.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>This plugin comes with a set of default enrichers. In addition custom enrichers can be easily added by providing implementation of the <a href=\"#enricher-api\">Enricher API</a> and adding these as a dependency to the build.</p>\n</div>\n<div class=\"sect2\">\n<h3 id=\"enrichers-default\">8.1. Default Enrichers</h3>\n<div class=\"paragraph\">\n<p>openshift-maven-plugin comes with a set of enrichers which are enabled by default. There are two categories of default enrichers:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><a href=\"#enrichers-generic\"><strong>Generic Enrichers</strong></a> are used to add default resource object when they are missing or add common\nmetadata extracted from the given build information.</p>\n</li>\n<li>\n<p><a href=\"#enrichers-specific\"><strong>Specific Enrichers</strong></a> are enrichers which are focused on a certain tech stack that they detect.</p>\n</li>\n</ul>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 37. Default Enrichers Overview</caption>\n<colgroup>\n<col style=\"width: 22.2222%;\">\n<col style=\"width: 77.7778%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Enricher</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-configmap-file\">jkube-configmap-file</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add ConfigMap elements defined as XML or as annotation.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-container-env-java-options\">jkube-container-env-java-options</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Merges <code>JAVA_OPTIONS</code> environment variable defined in <a href=\"#config-image-build\">Build configuration (<image> )</a>\n environment (<code>env</code>) with <code>Container</code> <code>JAVA_OPTIONS</code> environment variable added\n by other enrichers, XML configuration or fragment.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-controller\">jkube-controller</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Create default controller (replication controller, replica set or deployment <a href=\"https://kubernetes.io/docs/concepts/workloads/controllers/\">Kubernetes doc</a>) if missing.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-dependency\">jkube-dependency</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Examine build dependencies for <code>kubernetes.yml</code> and add the objects found therein.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-git\">jkube-git</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Check local <code>.git</code> directory and add build information as annotations.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-image\">jkube-image</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add the image name into a <code>PodSpec</code> of replication controller, replication sets and deployments, if missing.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-maven-issue-mgmt-enricher\">jkube-maven-issue-mgmt</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add Maven Issue Management information as annotations to the kubernetes/openshift resources</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-maven-scm-enricher\">jkube-maven-scm-enricher</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add Maven SCM information as annotations to the kubernetes/openshift resources</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-name\">jkube-name</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add a default name to every object which misses a name.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-pod-annotation\">jkube-pod-annotation</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Copy over annotations from a <code>Deployment</code> to a <code>Pod</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-portname\">jkube-portname</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add a default portname for commonly known service.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-project-label\">jkube-project-label</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add Maven coordinates as labels to all objects.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-prometheus\">jkube-prometheus</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add Prometheus annotations.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-revision-history-enricher\">jkube-revision-history</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add revision history limit (<a href=\"https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#revision-history-limit\">Kubernetes doc</a>) as a deployment spec property to the Kubernetes/OpenShift resources.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-secret-file\">jkube-secret-file</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add Secret elements defined as annotation.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-service\">jkube-service</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Create a default service if missing and extract ports from the Docker image configuration.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-serviceaccount\">jkube-serviceaccount</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add a ServiceAccount defined as XML or mentioned in resource fragment.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><a href=\"#jkube-triggers-annotation\">jkube-triggers-annotation</a></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Add ImageStreamTag change triggers on Kubernetes resources such as StatefulSets, ReplicaSets and DaemonSets using the <code>image.openshift.io/triggers</code> annotation.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"sect3\">\n<h4 id=\"enrichers-generic\">8.1.1. Generic Enrichers</h4>\n<div class=\"paragraph\">\n<p>Default generic enrichers are used for adding missing resources or adding metadata to given resource objects.\nThe following default enhancers are available out of the box.</p>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-configmap-file\">jkube-configmap-file</h5>\n<div class=\"paragraph\">\n<p>This enricher adds ConfigMap defined as <code>resources</code> in plugin configuration and/or resolves file content from an annotation.</p>\n</div>\n<div class=\"paragraph\">\n<p>As XML you can define:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">pom.xml</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><configuration>\n <resources>\n <configMap>\n <name>myconfigmap</name>\n <entries>\n <entry>\n <name>A</name>\n <value>B</value>\n </entry>\n </entries>\n </configMap>\n </resources>\n</configuration></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This creates a ConfigMap data with key <code>A</code> and value <code>B</code>.</p>\n</div>\n<div class=\"paragraph\">\n<p>You can also use <code>file</code> tag to refer to the content of a file.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><configuration>\n <resources>\n <configMap>\n <name>configmap-test</name>\n <entries>\n <entry>\n <file>src/test/resources/test-application.properties</file>\n </entry>\n </entries>\n </configMap>\n </resources>\n</configuration></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This creates a ConfigMap with key <code>test-application.properties</code> and value the content of the <code>src/test/resources/test-application.properties</code> file.\nIf you set <code>name</code> tag then this is used as key instead of the filename.</p>\n</div>\n<div class=\"paragraph\">\n<p>If you are defining a custom <code>ConfigMap</code> file, you can use an annotation to define a file name as key and its content as the value:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">metadata:\n name: ${project.artifactId}\n annotations:\n maven.jkube.io/cm/application.properties: src/test/resources/test-application.properties</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This creates a <code>ConfigMap</code> data with key <code>application.properties</code> (part defined after <code>cm</code>) and value the content of <code>src/test/resources/test-application.properties</code> file.</p>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-container-env-java-options\">jkube-container-env-java-options</h5>\n<div class=\"paragraph\">\n<p>Merges <code>JAVA_OPTIONS</code> environment variable defined in <a href=\"#config-image-build\">Build configuration (<image> )</a>\nenvironment (<code>env</code>) with <code>Container</code> <code>JAVA_OPTIONS</code> environment variable added\nby other enrichers, XML configuration or fragment.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Option</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>disable</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Disabled the enricher, any <code>JAVA_OPTIONS</code> environment variable defined by an enricher,\n XML configuration or YAML fragment will override the one defined by the generator\n or Image Build configuration.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-container-env-java-options.disable</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-controller\">jkube-controller</h5>\n<div class=\"paragraph\">\n<p>This enricher is used to ensure that a controller is present.\nThis can be either directly configured with fragments or with the XML configuration.\nAn explicit configuration always takes precedence over auto detection.\nSee <a href=\"https://kubernetes.io/docs/concepts/workloads/controllers/\">Kubernetes doc</a> for more information on types of controllers.</p>\n</div>\n<div class=\"paragraph\">\n<p>The following configuration parameters can be used to influence the behaviour of this enricher:</p>\n</div>\n<table id=\"enricher-jkube-controller\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 38. Default controller enricher</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>name</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Name of the Controller. Kubernetes Controller names must start with a letter. If the maven artifactId starts with a\n digit, <code>s</code> will be prefixed.</p>\n<p class=\"tableblock\"> Defaults to <code>${project.artifactId}</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-controller.name</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>pullPolicy</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Image pull policy to use for the container. One of: <em>IfNotPresent</em>, <em>Always</em>.</p>\n<p class=\"tableblock\"> Defaults to <code>IfNotPresent</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-controller.pullPolicy</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>type</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Type of Controller to create. One of: <em>ReplicationController</em>, <em>ReplicaSet</em>, <em>Deployment</em>, <em>DeploymentConfig</em>,\n <em>StatefulSet</em>, <em>DaemonSet</em>, <em>Job</em>.</p>\n<p class=\"tableblock\"> Defaults to <code>Deployment</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-controller.type</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>replicaCount</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Number of replicas for the container.</p>\n<p class=\"tableblock\"> Defaults to <code>1</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-controller.replicaCount</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-service\">jkube-service</h5>\n<div class=\"paragraph\">\n<p>This enricher is used to ensure that a service is present.\nThis can be either directly configured with fragments or with the XML configuration, but it can be also automatically inferred by looking at the ports exposed by an image configuration.\nAn explicit configuration always takes precedence over auto detection. For enriching an existing service this enricher actually works only on a configured service which matches with the configured (or inferred) service name.</p>\n</div>\n<div class=\"paragraph\">\n<p>The following configuration parameters can be used to influence the behaviour of this enricher:</p>\n</div>\n<table id=\"enricher-jkube-service\" class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 39. Default service enricher</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>name</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Service name to enrich by default. If not given here or configured elsewhere, the artifactId is used.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-service.name</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>headless</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Whether a headless service without a port should be configured. A headless service has the <code>ClusterIP</code> set to <code>None</code>\n and will be only used if no ports are exposed by the image configuration or by the configuration <code>port</code>.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-service.headless</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>expose</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">If set to true, a label <code>expose</code> with value <code>true</code> is added which can be picked up by the jkube.\n <a href=\"https://github.com/jenkins-x/exposecontroller\">expose-controller</a> to expose the service to the outside by various means.\n See the documentation of expose-controller for more details.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-service.expose</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>type</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Kubernetes / OpenShift service type to set like <em>LoadBalancer</em>, <em>NodePort</em> or <em>ClusterIP</em>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-service.type</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>port</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The service port to use. By default the same port as the ports exposed in the image configuration is used, but can be\n changed with this parameter. See <a href=\"#jkube-service-ports\">below</a> for a detailed description of the format which can be\n put into this variable.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-service.port</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>multiPort</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Set this to <code>true</code> if you want all ports to be exposed from an image configuration. Otherwise only the first port is\n used as a service port.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-service.multiPort</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>protocol</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Default protocol to use for the services. Must be <code>tcp</code> or <code>udp</code>.</p>\n<p class=\"tableblock\"> Defaults to <code>tcp</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-service.protocol</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>normalizePort</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Normalize the port numbering of the service to common and conventional port numbers.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-service.normalizePort</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Following is the Port mapping that comes in effect, when normalizePort option is set true.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 50%;\">\n<col style=\"width: 50%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Original Port</th>\n<th class=\"tableblock halign-left valign-top\">Normalized Port</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">8080</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">80</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">8081</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">80</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">8181</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">80</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">8180</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">80</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">8443</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">443</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">443</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">443</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>You specify the properties like for any enricher within the enrichers configuration like in</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><configuration>\n <!-- ... -->\n <enricher>\n <config>\n <jkube-service>\n <name>my-service</name>\n <type>NodePort</type>\n <multiPort>true</multiPort>\n </jkube-service>\n </config>\n </enricher>\n</configuration></code></pre>\n</div>\n</div>\n<div id=\"jkube-service-ports\" class=\"paragraph\">\n<div class=\"title\">Port specification</div>\n<p>With the option <code>port</code> you can influence the mapping how ports are mapped from the pod to the service.\nBy default and if this option is not given the ports exposed are dictated by the ports exposed from the Docker images contained in the pods.\nRemember, each image configured can be part of the pod.\nHowever you can expose also completely different ports as the images meta data declare.</p>\n</div>\n<div class=\"paragraph\">\n<p>The property <code>port</code> can contain a comma separated list of mappings of the following format:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-text\" data-lang=\"text\"><servicePort1>:<targetPort1>/<protocol>,<servicePort2>:<targetPort2>/<protocol>,....</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>where the <code>targetPort</code> and <code><protocol></code> specification is optional. These ports are overlayed over the ports exposed by the images, in the given order.</p>\n</div>\n<div class=\"paragraph\">\n<p>This is best explained by some examples.</p>\n</div>\n<div class=\"paragraph\">\n<p>For example if you have a pod which exposes a Microservice on port 8080 and you want to expose it as a service on port 80 (so that it can be accessed with <code><a href=\"http://myservice\" class=\"bare\">http://myservice</a></code>) you can simply use the following enricher configuration:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><configuration>\n <enricher>\n <config>\n <jkube-service>\n <name>myservice</name>\n <port>80:8080</port> <i class=\"conum\" data-value=\"1\"></i><b>(1)</b>\n </jkube-service>\n </config>\n </enricher>\n</configuration></code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td>80 is the service port, 8080 the port opened in from the pod’s images</td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<p>If your pod <em>exposes</em> their ports (which e.g. all generator do), then you can even omit the 8080 here (i.e. <code><port>80</port></code>).\nIn this case the <em>first</em> port exposed will be mapped to port 80, all other exposed ports will be omitted.</p>\n</div>\n<div class=\"paragraph\">\n<p>By default an automatically generated service only exposes the first port, even when more ports are exposed.\nWhen you want to map multiple ports you need to set the config option <code><multiPort>true</multiPort></code>.\nIn this case you can also provide multiple mappings as a comma separated list in the <code><port></code> specification where each element of the list are the mapping for the first, second, …​ port.</p>\n</div>\n<div class=\"paragraph\">\n<p>A more (and bit artificially constructed) specification could be <code><port>80,9779:9779/udp,443</port></code>.\nAssuming that the image exposes ports <code>8080</code> and <code>8778</code> (either directly or via <a href=\"#generators\">generators</a>) and we have switched on multiport mode, then the following service port mappings will be performed for the automatically generated service:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Pod port 8080 is mapped to service port 80.</p>\n</li>\n<li>\n<p>Pod port 9779 is mapped to service port 9779 with protocol UDP. Note how this second entry overrides the pod exposed port 8778.</p>\n</li>\n<li>\n<p>Pod port 443 is mapped to service port 443.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>This example shows also the mapping rules:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Port specification in <code>port</code> always override the port metadata of the contained Docker images (i.e. the ports exposed)</p>\n</li>\n<li>\n<p>You can always provide a complete mapping with <code>port</code> on your own</p>\n</li>\n<li>\n<p>The ports exposed by the images serve as <em>default values</em> which are used if not specified by this configuration option.</p>\n</li>\n<li>\n<p>You can map ports which are <em>not</em> exposed by the images by specifying them as target ports.</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>Multiple ports are <strong>only</strong> mapped when <em>multiPort</em> mode is enabled (which is switched off by default). If <em>multiPort</em> mode is disabled, only the first port from the list of mapped ports calculated as above is taken.</p>\n</div>\n<div class=\"paragraph\">\n<p>When you set <code>legacyPortMapping</code> to true than ports 8080 to 9090 are mapped to port 80 automatically if not explicitly mapped via <code><em>port</em></code>. I.e. when an image exposes port 8080 with a legacy mapping this mapped to a service port 80, not 8080. You <em>should not</em> switch this on for any good reason. In fact it might be that this option can vanish anytime.</p>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-image\">jkube-image</h5>\n\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-name\">jkube-name</h5>\n\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-portname\">jkube-portname</h5>\n\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-pod-annotation\">jkube-pod-annotation</h5>\n\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-project-label\">jkube-project-label</h5>\n<div class=\"paragraph\">\n<p>Enricher that adds standard labels and selectors to generated resources (e.g. <code>app</code>, <code>group</code>, <code>provider</code>, <code>version</code>).</p>\n</div>\n<div class=\"paragraph\">\n<p>The <code>jkube-project-label</code> enricher supports the following configuration options:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Option</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>useProjectLabel</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Enable this flag to turn on the generation of the old <code>project</code> label in Kubernetes resources. The <code>project</code> label has\nbeen replaced by the <code>app</code> label in newer versions of the plugin.</p>\n<p class=\"tableblock\"> Defaults to <code>false</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-project-label.useProjectLabel</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>app</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Makes it possible to define a custom <code>app</code> label used in the generated resource files used for deployment.</p>\n<p class=\"tableblock\">Defaults to the Maven <code>project.artifactId</code> property.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-project-label.app</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>The project labels which are already specified in the input fragments are not overridden by the enricher.</p>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-git\">jkube-git</h5>\n<div class=\"paragraph\">\n<p>Enricher that adds info from .git directory as annotations.</p>\n</div>\n<div class=\"paragraph\">\n<p>The git branch & latest commit on the branch are annotated as <code>jkube.io/git-branch</code> & <code>jkube.io/git-commit</code>.\n<code>jkube.io/git-url</code> is annotated as the URL of your configured remote.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Option</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>gitRemote</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Configures the git remote name, whose URL you want to annotate as 'git-url'.</p>\n<p class=\"tableblock\"> Defaults to <code>origin</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-git.gitRemote</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-dependency\">jkube-dependency</h5>\n\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-volume-permission\">jkube-volume-permission</h5>\n<div class=\"paragraph\">\n<p>Enricher which fixes the permission of persistent volume mount with the help of an init container.</p>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-openshift-autotls\">jkube-openshift-autotls</h5>\n<div class=\"paragraph\">\n<p>Enricher which adds appropriate annotations and volumes to enable OpenShift’s automatic\n<a href=\"https://docs.openshift.org/latest/dev_guide/secrets.html#service-serving-certificate-secrets\">Service Serving Certificate Secrets</a>.\nThis enricher adds an init container to convert the service serving certificates from PEM (the format that OpenShift generates them in) to\na JKS-format Java keystore ready for consumption in Java services.</p>\n</div>\n<div class=\"paragraph\">\n<p>This enricher is disabled by default. In order to use it, you must configure the openshift-maven-plugin to use this enricher:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n <version>1.0.2</version>\n <executions>\n <execution>\n <goals>\n <goal>resource</goal>\n </goals>\n </execution>\n </executions>\n <configuration>\n <enricher>\n <includes>\n <include>jkube-openshift-autotls</include>\n </includes>\n <config>\n <jkube-openshift-autotls>\n <!-- ... -->\n </jkube-openshift-autotls>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The auto-TLS enricher supports the following configuration options:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 75%;\">\n<col style=\"width: 12.5%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>tlsSecretName</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The name of the secret to be used to store the generated service serving certs.</p>\n<p class=\"tableblock\"> Defaults to <code><project.artifactId>-tls</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.tlsSecretName</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>tlsSecretVolumeMountPoint</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Where the service serving secret should be mounted to in the pod.</p>\n<p class=\"tableblock\"> Defaults to <code>/var/run/secrets/jkube.io/tls-pem</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.tlsSecretName</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>tlsSecretVolumeName</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The name of the secret volume.</p>\n<p class=\"tableblock\"> Defaults to <code>tls-pem</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.tlsSecretVolumeName</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>jksVolumeMountPoint</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Where the generated keystore volume should be mounted to in the pod.</p>\n<p class=\"tableblock\"> Defaults to <code>/var/run/secrets/jkube.io/tls-jks</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.the</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>jksVolumeName</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The name of the keystore volume.</p>\n<p class=\"tableblock\"> Defaults to <code>tls-jks</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.jksVolumeName</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>pemToJKSInitContainerImage</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The name of the image used as an init container to convert PEM certificate/key to Java keystore.</p>\n<p class=\"tableblock\"> Defaults to <code>jimmidyson/pemtokeystore:v0.1.0</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.pemToJKSInitContainerImage</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>pemToJKSInitContainerName</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">the name of the init container to convert PEM certificate/key to Java keystore.</p>\n<p class=\"tableblock\"> Defaults to <code>tls-jks-converter</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.pemToJKSInitContainerName</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>keystoreFileName</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The name of the generated keystore file.</p>\n<p class=\"tableblock\"> Defaults to <code>keystore.jks</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.keystoreFileName</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>keystorePassword</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The password to use for the generated keystore.</p>\n<p class=\"tableblock\"> Defaults to <code>changeit</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.keystorePassword</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>keystoreCertAlias</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The alias in the keystore used for the imported service serving certificate.</p>\n<p class=\"tableblock\"> Defaults to <code>server</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-openshift-autotls.keystoreCertAlias</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-prometheus\">jkube-prometheus</h5>\n<div class=\"paragraph\">\n<p>This enricher adds Prometheus annotation like:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">apiVersion: v1\nkind: List\nitems:\n- apiVersion: v1\n kind: Service\n metadata:\n annotations:\n prometheus.io/scrape: \"true\"\n prometheus.io/port: 9779\n prometheus.io/path: \"/metrics\"</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>By default the enricher inspects the images' BuildConfiguration and add the annotations if the port 9779 is listed.\nYou can force the plugin to add annotations by setting enricher’s config <code><code>prometheusPort</code></code></p>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-maven-scm-enricher\">jkube-maven-scm-enricher</h5>\n<div class=\"paragraph\">\n<p>This enricher adds additional <a href=\"https://maven.apache.org/pom.html#SCM\">SCM</a> related metadata to all objects supporting annotations.\nThese metadata will be added only if <a href=\"https://maven.apache.org/pom.html#SCM\">SCM</a> information is present in the maven <code>pom.xml</code> of the project.</p>\n</div>\n<div class=\"paragraph\">\n<p>The following annotations will be added to the objects that supports annotations,</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 40. Maven SCM Enrichers Annotation Mapping</caption>\n<colgroup>\n<col style=\"width: 28.5714%;\">\n<col style=\"width: 28.5714%;\">\n<col style=\"width: 42.8572%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Maven SCM Info</th>\n<th class=\"tableblock halign-left valign-top\">Annotation</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">scm/connection</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">jkube.io/scm-con-url</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The SCM connection that will be used to connect to the project’s SCM</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">scm/developerConnection</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">jkube.io/scm-devcon-url</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The SCM Developer Connection that will be used to connect to the project’s developer SCM</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">scm/tag</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">jkube.io/scm-tag</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The SCM tag that will be used to checkout the sources, like HEAD dev-branch etc.,</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">scm/url</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">jkube.io/scm-url</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The SCM web url that can be used to browse the SCM over web browser</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Lets say you have a maven pom.xml with the following scm information,</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><scm>\n <connection>scm:git:git://github.com/jkubeio/kubernetes-maven-plugin.git</connection>\n <developerConnection>scm:git:git://github.com/jkubeio/kubernetes-maven-plugin.git</developerConnection>\n <url>git://github.com/jkubeio/kubernetes-maven-plugin.git</url>\n</scm></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This information will be enriched as annotations in the generated manifest like,</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\"># ...\n kind: Service\n metadata:\n annotations\n jkube.io/scm-con-url: \"scm:git:git://github.com/jkubeio/kubernetes-maven-plugin.git\"\n jkube.io/scm-devcon-url: \"scm:git:git://github.com/jkubeio/kubernetes-maven-plugin.git\"\n jkube.io/scm-tag: \"HEAD\"\n jkube.io/scm-url: \"git://github.com/jkubeio/kubernetes-maven-plugin.git\"\n# ...</code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-maven-issue-mgmt-enricher\">jkube-maven-issue-mgmt</h5>\n<div class=\"paragraph\">\n<p>This enricher adds additional <a href=\"https://maven.apache.org/pom.html#Issue_Management\">Issue Management</a> related metadata to\nall objects supporting annotations.\nThese metadata will be added only if the <a href=\"https://maven.apache.org/pom.html#Issue_Management\">Issue Management</a>\ninformation is available in the <code>pom.xml</code> of the Maven project.</p>\n</div>\n<div class=\"paragraph\">\n<p>The following annotations will be added to the objects that support these annotations,</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 41. Maven Issue Tracker Enrichers Annotation Mapping</caption>\n<colgroup>\n<col style=\"width: 28.5714%;\">\n<col style=\"width: 28.5714%;\">\n<col style=\"width: 42.8572%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Maven Issue Tracker Info</th>\n<th class=\"tableblock halign-left valign-top\">Annotation</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">issueManagement/system</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">jkube.io/issue-system</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Issue Management system like Bugzilla, JIRA, GitHub etc.,</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">issueManagement/url</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">jkube.io/issue-tracker-url</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The Issue Management url e.g. GitHub Issues Url</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Lets say you have a maven pom.xml with the following issue management information,</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><issueManagement>\n <system>GitHub</system>\n <url>https://github.com/reactiverse/vertx-maven-plugin/issues/</url>\n</issueManagement></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This information will be enriched as annotations in the generated manifest like,</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\"># ...\n kind: Service\n metadata:\n annotations:\n jkube.io/issue-system: \"GitHub\"\n jkube.io/issue-tracker-url: \"https://github.com/reactiverse/vertx-maven-plugin/issues/\"\n# ...</code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-revision-history-enricher\">jkube-revision-history</h5>\n<div class=\"paragraph\">\n<p>This enricher adds <code>spec.revisionHistoryLimit</code> property to deployment spec of Kubernetes/OpenShift resources.\nA deployment’s revision history is stored in the replica sets, that specifies the number of old ReplicaSets to retain in order to allow rollback.\nFor more information read <a href=\"https://kubernetes.io/docs/concepts/workloads/controllers/deployment/#revision-history-limit\">Kubernetes documentation</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>The following configuration parameters can be used to influence the behaviour of this enricher:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 42. Default revision history enricher</caption>\n<colgroup>\n<col style=\"width: 20%;\">\n<col style=\"width: 40%;\">\n<col style=\"width: 40%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>limit</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Number of revision histories to retain.</p>\n<p class=\"tableblock\"> Defaults to <code>2</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>jkube.enricher.jkube-revision-history.limit</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Just as any other enricher you can specify required properties with in the enricher’s configuration as below,</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><!-- ... -->\n<enricher>\n <config>\n <jkube-revision-history>\n <limit>8</limit>\n </jkube-revision-history>\n </config>\n</enricher>\n<!-- ... --></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This information will be enriched as spec property in the generated manifest like,</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\"># ...\nkind: Deployment\nspec:\n revisionHistoryLimit: 8\n# ...</code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-triggers-annotation\">jkube-triggers-annotation</h5>\n<div class=\"paragraph\">\n<p>This enricher adds ImageStreamTag change triggers on Kubernetes resources that support the <code>image.openshift.io/triggers</code> annotation, such as StatefulSets, ReplicaSets and DaemonSets.</p>\n</div>\n<div class=\"paragraph\">\n<p>The trigger is added to all containers that apply, but can be restricted to a limited set of containers using the following configuration:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><!-- ... -->\n<enricher>\n <config>\n <jkube-triggers-annotation>\n <containers>container-name-1,c2</containers>\n </jkube-triggers-annotation>\n </config>\n</enricher>\n<!-- ... --></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-secret-file\">jkube-secret-file</h5>\n<div class=\"paragraph\">\n<p>This enricher adds Secret defined as file content from an annotation.</p>\n</div>\n<div class=\"paragraph\">\n<p>If you are defining a custom <code>Secret</code> file, you can use an annotation to define a file name as key and its content as the value:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">metadata:\n name: ${project.artifactId}\n annotations:\n maven.jkube.io/secret/application.properties: src/test/resources/test-application.properties</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This creates a <code>Secret</code> data with the key <code>application.properties</code> (part defined after <code>secret</code>) and value content of\n<code>src/test/resources/test-application.properties</code> file (base64 encoded).</p>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-serviceaccount\">jkube-serviceaccount</h5>\n\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"enrichers-specific\">8.1.2. Specific Enrichers</h4>\n<div class=\"paragraph\">\n<p>Specific enrichers provide resource manifest enhancement for a certain tech stack that they detect.</p>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-healthcheck-karaf\">jkube-healthcheck-karaf</h5>\n<div class=\"paragraph\">\n<p>This enricher adds kubernetes readiness and liveness probes with Apache Karaf. This requires that\n<code>jkube.karaf-checks</code> has been enabled in the Karaf startup features.</p>\n</div>\n<div class=\"paragraph\">\n<p>The enricher will use the following settings by default:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>port = <code>8181</code></p>\n</li>\n<li>\n<p>scheme = <code>HTTP</code></p>\n</li>\n<li>\n<p>failureThreshold = <code>3</code></p>\n</li>\n<li>\n<p>successThreshold = <code>1</code></p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>and use paths <code>/readiness-check</code> for readiness check and <code>/health-check</code> for liveness check.</p>\n</div>\n<div class=\"paragraph\">\n<p>These options cannot be configured.</p>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-healthcheck-spring-boot\">jkube-healthcheck-spring-boot</h5>\n<div class=\"paragraph\">\n<p>This enricher adds kubernetes readiness and liveness probes with Spring Boot. This requires the following dependency\nhas been enabled in Spring Boot</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><dependency>\n <groupId>org.springframework.boot</groupId>\n <artifactId>spring-boot-starter-actuator</artifactId>\n</dependency></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The enricher will try to discover the settings from the <code>application.properties</code> / <code>application.yaml</code> Spring Boot configuration file.</p>\n</div>\n<div class=\"paragraph\">\n<p>The port number is read from the <code>management.port</code> option, and will use the default value of <code>8080</code>\nThe scheme will use HTTPS if <code>server.ssl.key-store</code> option is in use, and fallback to use <code>HTTP</code> otherwise.</p>\n</div>\n<div class=\"paragraph\">\n<p>The enricher will use the following settings by default:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p><code>readinessProbeInitialDelaySeconds</code> : <code>10</code></p>\n</li>\n<li>\n<p><code>readinessProbePeriodSeconds</code> : <em><kubernetes-default></em></p>\n</li>\n<li>\n<p><code>livenessProbeInitialDelaySeconds</code> : <code>180</code></p>\n</li>\n<li>\n<p><code>livenessProbePeriodSeconds</code> : <em><kubernetes-default></em></p>\n</li>\n<li>\n<p><code>timeoutSeconds</code> : <em><kubernetes-default></em></p>\n</li>\n<li>\n<p><code>failureThreshold</code>: <code>3</code></p>\n</li>\n<li>\n<p><code>successThreshold</code>: <code>1</code></p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>These values can be configured by the enricher in the <code>openshift-maven-plugin</code> configuration as shown below:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n <version>1.0.2</version>\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>helm</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n <configuration>\n <enricher>\n <config>\n <jkube-healthcheck-spring-boot>\n <timeoutSeconds>5</timeoutSeconds>\n <readinessProbeInitialDelaySeconds>30</readinessProbeInitialDelaySeconds>\n <failureThreshold>3</failureThreshold>\n <successThreshold>1</successThreshold>\n </jkube-healthcheck-spring-boot>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-healthcheck-thorntail-v2\">jkube-healthcheck-thorntail-v2</h5>\n<div class=\"paragraph\">\n<p>This enricher adds kubernetes readiness and liveness probes with Thorntail v2. This requires the following fraction\nhas been enabled in Thorntail</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><dependency>\n <groupId>io.thorntail</groupId>\n <artifactId>microprofile-health</artifactId>\n</dependency></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The enricher will use the following settings by default:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>port = <code>8080</code></p>\n</li>\n<li>\n<p>scheme = <code>HTTP</code></p>\n</li>\n<li>\n<p>path = <code>/health</code></p>\n</li>\n<li>\n<p>failureThreshold = <code>3</code></p>\n</li>\n<li>\n<p>successThreshold = <code>1</code></p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>These values can be configured by the enricher in the <code>openshift-maven-plugin</code> configuration as shown below:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n <version>1.0.2</version>\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>helm</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n <configuration>\n <enricher>\n <config>\n <jkube-healthcheck-thorntail>\n <port>4444</port>\n <scheme>HTTPS</scheme>\n <path>health/myapp</path>\n <failureThreshold>3</failureThreshold>\n <successThreshold>1</successThreshold>\n </jkube-healthcheck-thorntail>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-healthcheck-vertx\">jkube-healthcheck-vertx</h5>\n<div class=\"paragraph\">\n<p>This enricher adds kubernetes readiness and liveness probes with Eclipse Vert.x applications.\nThe readiness probe lets Kubernetes detect when the application is ready, while the liveness probe allows Kubernetes to\nverify that the application is still alive.</p>\n</div>\n<div class=\"paragraph\">\n<p>This enricher allows configuring the readiness and liveness probes. The following probe types are supported:\n<code>http</code> (emit HTTP requests), <code>tcp</code> (open a socket), <code>exec</code> (execute a command).</p>\n</div>\n<div class=\"paragraph\">\n<p>By default, this enricher uses the same configuration for liveness and readiness probes. But specific configurations can\nbe provided too. The configurations can be overridden using project’s properties.</p>\n</div>\n<div class=\"sect5\">\n<h6 id=\"_using_the_jkube_healthcheck_vertx_enricher\">Using the jkube-healthcheck-vertx enricher</h6>\n<div class=\"paragraph\">\n<p>The enricher is automatically executed if your project uses the <code>vertx-maven-plugin</code> or depends on <code>io.vertx:vertx-core</code>.\nHowever, by default, no health check will be added to your deployment unless configured explicitly.</p>\n</div>\n</div>\n<div class=\"sect5\">\n<h6 id=\"_minimal_configuration\">Minimal configuration</h6>\n<div class=\"paragraph\">\n<p>The minimal configuration to add health checks is the following:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n <version>1.0.2</version>\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>helm</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n <configuration>\n <enricher>\n <config>\n <jkube-healthcheck-vertx>\n <path>/health</path>\n </jkube-healthcheck-vertx>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>It configures the readiness and liveness health checks using HTTP requests on the port <code>8080</code> (default port) and on the\npath <code>/health</code>. The defaults are:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>port = <code>8080</code> (for HTTP)</p>\n</li>\n<li>\n<p>scheme = <code>HTTP</code></p>\n</li>\n<li>\n<p>path = <em>none</em> (disabled)</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>the previous configuration can also be given use project’s properties:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><properties>\n <vertx.health.path>/health</vertx.health.path>\n</properties></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect5\">\n<h6 id=\"_configuring_differently_the_readiness_and_liveness_health_checks\">Configuring differently the readiness and liveness health checks</h6>\n<div class=\"paragraph\">\n<p>You can provide two different configuration for the readiness and liveness checks:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n <version>1.0.2</version>\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>helm</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n <configuration>\n <enricher>\n <config>\n <jkube-healthcheck-vertx>\n <readiness>\n <path>/ready</path>\n </readiness>\n <liveness>\n <path>/health</path>\n </liveness>\n </jkube-healthcheck-vertx>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>You can also use the <code>readiness</code> and <code>liveness</code> chunks in user properties:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><properties>\n <vertx.health.readiness.path>/ready</vertx.health.readiness.path>\n <vertx.health.liveness.path>/ready</vertx.health.liveness.path>\n</properties></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Shared (generic) configuration can be set outside of the specific configuration. For instance, to use the port 8081:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n <version>1.0.2</version>\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>helm</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n <configuration>\n <enricher>\n <config>\n <jkube-healthcheck-vertx>\n <port>8081</port>\n <readiness>\n <path>/ready</path>\n </readiness>\n <liveness>\n <path>/health</path>\n </liveness>\n </jkube-healthcheck-vertx>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Or:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><properties>\n <vertx.health.port>8081</vertx.health.port>\n <vertx.health.readiness.path>/ready</vertx.health.readiness.path>\n <vertx.health.liveness.path>/ready</vertx.health.liveness.path>\n</properties></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect5\">\n<h6 id=\"_configuration_structure\">Configuration Structure</h6>\n<div class=\"paragraph\">\n<p>The configuration is structured as follows</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><config>\n <jkube-healthcheck-vertx>\n <!-- Generic configuration, applied to both liveness and readiness -->\n <path>/both</path>\n <liveness>\n <!-- Specific configuration for the liveness probe -->\n <port-name>ping</port-name>\n </liveness>\n <readiness>\n <!-- Specific configuration for the readiness probe -->\n <port-name>ready</port-name>\n </readiness>\n </jkube-healthcheck-vertx>\n</config></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The same structure is used in project’s properties:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><properties>\n <!-- Generic configuration given as vertx.health.$attribute -->\n <vertx.health.path>/both</vertx.health.path>\n <!-- Specific liveness configuration given as vertx.health.liveness.$attribute -->\n <vertx.health.liveness.port-name>ping</vertx.health.liveness.port-name>\n <!-- Specific readiness configuration given as vertx.health.readiness.$attribute -->\n <vertx.health.readiness.port-name>ready</vertx.health.readiness.port-name>\n</properties></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p><strong>Important</strong>: Project’s plugin configuration override the project’s properties.\nThe overriding rules are:\n<em>specific configuration</em> > <em>specific properties</em> > <em>generic configuration</em> > <em>generic properties</em>.</p>\n</div>\n</div>\n<div class=\"sect5\">\n<h6 id=\"_probe_configuration\">Probe configuration</h6>\n<div class=\"paragraph\">\n<p>You can configure the different aspects of the probes. These attributes can be configured for both the readiness and\nliveness probes or be specific to one.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 43. Vert.x HealthCheck Enricher probe configuration</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 62.5%;\">\n<col style=\"width: 25%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>type</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The probe type among <code>http</code> (default), <code>tcp</code> and <code>exec</code>.</p>\n<p class=\"tableblock\"> Defaults to <code>http</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.type</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.type</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>initial-delay</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Number of seconds after the container has started before probes are initiated.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.initial-delay</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.initial-delay</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>period</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">How often (in seconds) to perform the probe.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.period</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.period</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>timeout</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Number of seconds after which the probe times out.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.timeout</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.timeout</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>success-threshold</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Minimum consecutive successes for the probe to be considered successful after having failed.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.success-threshold</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.success-threshold</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>failure-threshold</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Minimum consecutive failures for the probe to be considered failed after having succeeded.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.failure-threshold</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.failure-threshold</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>More details about probes are available on <a href=\"https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/\" class=\"bare\">https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/</a>.</p>\n</div>\n</div>\n<div class=\"sect5\">\n<h6 id=\"_http_specific_probe_configuration\">HTTP specific probe configuration</h6>\n<div class=\"paragraph\">\n<p>When using HTTP <code>GET</code> requests to determine readiness or liveness, several aspects can be configured. HTTP probes are used by default. To be more specific set the <code>type</code> attribute to <code>http</code>.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 44. Vert.x HealthCheck Enricher HTTP probe configuration</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 62.5%;\">\n<col style=\"width: 25%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>scheme</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Scheme to use for connecting to the host.</p>\n<p class=\"tableblock\"> Defaults to <code>HTTP</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.scheme</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.scheme</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>path</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Path to access on the HTTP server. An empty path disable the check.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.path</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.path</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>headers</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Custom headers to set in the request. HTTP allows repeated headers. It cannot be configured using project’s properties.\n An example is available below.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.headers</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.headers</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>port</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Port number to access the container. A 0 or negative number disables the check.</p>\n<p class=\"tableblock\"> Defaults to <code>8080</code>.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.port</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.port</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>port-name</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Name of the port to access on the container. If neither the <code>port</code> nor the <code>port-name</code> is set, the check is disabled.\n If both are set the configuration is considered invalid.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.port-name</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.port-name</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>Here is an example of HTTP probe configuration:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><config>\n <jkube-healthcheck-vertx>\n <initialDelay>3</initialDelay>\n <period>3</period>\n <liveness>\n <port>8081</port>\n <path>/ping</path>\n <scheme>HTTPS</scheme>\n <headers>\n <X-Custom-Header>Awesome</X-Custom-Header>\n </headers>\n </liveness>\n <readiness>\n <!-- disable the readiness probe -->\n <port>-1</port>\n </readiness>\n </jkube-healthcheck-vertx>\n</config></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect5\">\n<h6 id=\"_tcp_specific_probe_configuration\">TCP specific probe configuration</h6>\n<div class=\"paragraph\">\n<p>You can also configure the probes to just open a socket on a specific port. The <code>type</code> attribute must be set to <code>tcp</code>.</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 45. Vert.x HealthCheck Enricher TCP probe configuration</caption>\n<colgroup>\n<col style=\"width: 12.5%;\">\n<col style=\"width: 62.5%;\">\n<col style=\"width: 25%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n<th class=\"tableblock halign-left valign-top\">Property</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>port</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Port number to access the container. A 0 or negative number disables the check.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.port</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.port</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>port-name</code></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Name of the port to access on the container. If neither the <code>port</code> nor the <code>port-name</code> is set, the check is disabled.\n If both are set the configuration is considered invalid.</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>vertx.health.port-name</code></p>\n<p class=\"tableblock\"> <code>jkube.enricher.jkube-healthcheck-vertx.port-name</code></p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"paragraph\">\n<p>For example:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><config>\n <jkube-healthcheck-vertx>\n <initialDelay>3</initialDelay>\n <period>3</period>\n <liveness>\n <type>tcp</type>\n <port>8081</port>\n </liveness>\n <readiness>\n <!-- use HTTP Get probe -->\n <path>/ping</path>\n <port>8080</port>\n </readiness>\n </jkube-healthcheck-vertx>\n</config></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect5\">\n<h6 id=\"_exec_probe_configuration\">Exec probe configuration</h6>\n<div class=\"paragraph\">\n<p>You can also configure the probes to execute a command. If the command succeeds, it returns 0, and Kubernetes consider the pod to be alive and healthy. If the command returns a non-zero value, Kubernetes kills the pod and restarts it. To use a command, you must set the <code>type</code> attribute to <code>exec</code>:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><config>\n <jkube-healthcheck-vertx>\n <initialDelay>3</initialDelay>\n <period>3</period>\n <liveness>\n <type>exec</type>\n <command>\n <cmd>cat</cmd>\n <cmd>/tmp/healthy</cmd>\n </command>\n </liveness>\n <readiness>\n <-- use HTTP Get probe -->\n <path>/ping</path>\n <port>8080</port>\n </readiness>\n </jkube-healthcheck-vertx>\n</config></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>As you can see in the snippet above the command is passed using the <code>command</code> attribute. This attribute cannot be\nconfigured using project’s properties. An empty command disables the check.</p>\n</div>\n</div>\n<div class=\"sect5\">\n<h6 id=\"_disabling_health_checks\">Disabling health checks</h6>\n<div class=\"paragraph\">\n<p>You can disable the checks by setting:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>the <code>port</code> to 0 or to a negative number for <code>http</code> and <code>tcp</code> probes</p>\n</li>\n<li>\n<p>the <code>command</code> to an empty list for <code>exec</code></p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>In the first case, you can use project’s properties to disable them:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><!-- Disables <code>tcp</code> and <code>http</code> probes -->\n<vertx.health.port>-1</vertx.health.port></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>For <code>http</code> probes, an empty or not set <code>path</code> also disable the probe.</p>\n</div>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-healthcheck-webapp\">jkube-healthcheck-webapp</h5>\n<div class=\"paragraph\">\n<p>This enricher adds kubernetes readiness and liveness probes with WebApp. This requires that you have <code>maven-war-plugin</code> set.</p>\n</div>\n<div class=\"paragraph\">\n<p>The enricher will use the following settings by default:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>port = <code>8080</code></p>\n</li>\n<li>\n<p>scheme = <code>HTTP</code></p>\n</li>\n<li>\n<p>path = ``</p>\n</li>\n<li>\n<p>initialReadinessDelay = 10</p>\n</li>\n<li>\n<p>initialLivenessDelay = 180</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>If <code>path</code> attribute is not set (default value) then this enricher is disabled.</p>\n</div>\n<div class=\"paragraph\">\n<p>These values can be configured by the enricher in the <code>openshift-maven-plugin</code> configuration as shown below:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n <version>1.0.2</version>\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>helm</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n <configuration>\n <enricher>\n <config>\n <jkube-healthcheck-webapp>\n <path>/</path>\n </jkube-healthcheck-webapp>\n </config>\n </enricher>\n </configuration>\n <!-- ... -->\n</plugin></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-healthcheck-wildfly-swarm\">jkube-healthcheck-wildfly-swarm</h5>\n<div class=\"paragraph\">\n<p>This enricher adds kubernetes readiness and liveness probes with WildFly Swarm. This requires the following fraction\nhas been enabled in WildFly Swarm</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><dependency>\n <groupId>org.wildfly.swarm</groupId>\n <artifactId>microprofile-health</artifactId>\n</dependency></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The enricher will use the following settings by default:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>port = <code>8080</code></p>\n</li>\n<li>\n<p>scheme = <code>HTTP</code></p>\n</li>\n<li>\n<p>path = <code>/health</code></p>\n</li>\n<li>\n<p>failureThreshold = <code>3</code></p>\n</li>\n<li>\n<p>successThreshold = <code>1</code></p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>These values can be configured by the enricher in the <code>openshift-maven-plugin</code> configuration as shown below:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n <version>1.0.2</version>\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>helm</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n <configuration>\n <enricher>\n <config>\n <jkube-healthcheck-wildfly-swarm>\n <port>4444</port>\n <scheme>HTTPS</scheme>\n <path>health/myapp</path>\n <failureThreshold>3</failureThreshold>\n <successThreshold>1</successThreshold>\n </jkube-healthcheck-wildfly-swarm>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n</div>\n<div class=\"sect4\">\n<h5 id=\"jkube-healthcheck-wildfly-jar\">jkube-healthcheck-wildfly-jar</h5>\n<div class=\"paragraph\">\n<p>This enricher adds kubernetes readiness and liveness probes to WildFly JAR applications. Probes depend on the WildFly <em>microprofile-health</em> subsystem\n<em>/health/ready</em> and <em>/health/live</em> endpoints.\nWhen the WildFly Bootable JAR Maven plugin is configured with the <em><cloud></em> configuration item, <em>microprofile_health</em> subsystem\nis enforced in the bootable JAR server configuration.</p>\n</div>\n<div class=\"paragraph\">\n<p>This enricher looks for the <em><cloud></em> configuration item presence in the bootable JAR Maven plugin in order to add health check probes.\nIf <em><cloud></em> item has not been defined, you can still enforce the generation of readiness and liveness probes by setting <em>enforceProbes=true</em>.</p>\n</div>\n<div class=\"paragraph\">\n<p>The enricher will use the following settings by default:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>port = <code>9990</code></p>\n</li>\n<li>\n<p>scheme = <code>HTTP</code></p>\n</li>\n<li>\n<p>readinessPath = <code>/health/ready</code></p>\n</li>\n<li>\n<p>livenessPath = <code>/health/live</code></p>\n</li>\n<li>\n<p>livenessInitialDelay = <code>60</code></p>\n</li>\n<li>\n<p>readinessIntialDelay = <code>10</code></p>\n</li>\n<li>\n<p>failureThreshold = <code>3</code></p>\n</li>\n<li>\n<p>successThreshold = <code>1</code></p>\n</li>\n<li>\n<p>enforceProbes = 'false'</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>Setting the <code>port</code> to 0 or to a negative number disables liveness and readiness probes.</p>\n</div>\n<div class=\"paragraph\">\n<p>These values can be configured by the enricher in the <code>openshift-maven-plugin</code> configuration as shown below:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n <version>1.0.2</version>\n <executions>\n <execution>\n <id>jkube</id>\n <goals>\n <goal>resource</goal>\n <goal>build</goal>\n </goals>\n </execution>\n </executions>\n <configuration>\n <enricher>\n <config>\n <jkube-healthcheck-wildfly-jar>\n <port>4444</port>\n <scheme>HTTPS</scheme>\n <livenessPath>/myapp/live</livenessPath>\n <failureThreshold>3</failureThreshold>\n <successThreshold>1</successThreshold>\n </jkube-healthcheck-wildfly-jar>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"_enricher_api\">8.2. Enricher API</h3>\n<div class=\"paragraph\">\n<p><em>How to write your own enrichers and install them.</em></p>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"profiles\">9. Profiles</h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>Profiles can be used to combine a set of enrichers and generators and to give this combination a referable name.</p>\n</div>\n<div class=\"paragraph\">\n<p>Profiles are defined in YAML. The following example shows a simple profiles which uses only the\n<a href=\"#generator-spring-boot\">Spring Boot generator</a> and some enrichers adding for adding default resources:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Profile Definition</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">- name: my-spring-boot-apps <i class=\"conum\" data-value=\"1\"></i><b>(1)</b>\n generator: <i class=\"conum\" data-value=\"2\"></i><b>(2)</b>\n includes:\n - spring-boot\n enricher: <i class=\"conum\" data-value=\"3\"></i><b>(3)</b>\n includes: <i class=\"conum\" data-value=\"4\"></i><b>(4)</b>\n # Default Deployment object\n - jkube-controller\n # Add a default service\n - jkube-service\n excludes: <i class=\"conum\" data-value=\"5\"></i><b>(5)</b>\n - jkube-icon\n config: <i class=\"conum\" data-value=\"6\"></i><b>(6)</b>\n jkube-service:\n # Expose service as NodePort\n type: NodePort\n order: 10 <i class=\"conum\" data-value=\"7\"></i><b>(7)</b>\n- name: another-profile\n# ....</code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td>Profile’s name</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"2\"></i><b>2</b></td>\n<td><a href=\"#generators\">Generators</a> to use</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"3\"></i><b>3</b></td>\n<td><a href=\"#enrichers\">Enrichers</a> to use</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"4\"></i><b>4</b></td>\n<td>List of enricher to <strong>include</strong> in that given order</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"5\"></i><b>5</b></td>\n<td>List of enricher to <strong>exclude</strong></td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"6\"></i><b>6</b></td>\n<td>Configuration for services an enrichers</td>\n</tr>\n<tr>\n<td><i class=\"conum\" data-value=\"7\"></i><b>7</b></td>\n<td>An order which influences the way how profiles with the same name are merged</td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<p>Each <code>profiles.yml</code> has a list of profiles which are defined with these elements:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 46. Profile elements</caption>\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 85.7143%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>name</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Profile name. This plugin comes with a set of <a href=\"#profiles-predefined\">predefined profiles</a>. Those profiles can be\n extended by defining a custom profile with the same name of the profile to extend.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>generator</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">List of generator definitions. See <a href=\"#generator-enricher-definition\">below</a> for the format of these definitions.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>enricher</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">List of enrichers definitions. See <a href=\"#generator-enricher-definition\">below</a> for the format of these definitions.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>order</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The order of the profile which is used when profiles of the same name are merged.</p></td>\n</tr>\n</tbody>\n</table>\n<div class=\"sect2\">\n<h3 id=\"generator-enricher-definition\">9.1. Generator and Enricher definitions</h3>\n<div class=\"paragraph\">\n<p>The definition of generators and enrichers in the profile follows the same format:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 47. Generator and Enericher definition</caption>\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 85.7143%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Element</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>includes</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">List of generators or enrichers to include. The order in the list determines the order in which the processors are applied.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>excludes</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">List of generators or enrichers. These have precedences over <em>includes</em> and will exclude a processor even when referenced in an <em>includes</em> sections</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>config</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Configuration for generators or enrichers. This is a map where the keys are the name of the processor to configure and the value is again a map with configuration keys and values specific to the processor. See the documentation of the respective generator or enricher for the available configuration keys.</p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect2\">\n<h3 id=\"profiles-lookup-order\">9.2. Lookup order</h3>\n<div class=\"paragraph\">\n<p>Profiles can be defined externally either directly as a build resource in <code>src/main/jkube/profiles.yml</code> or provided as part of a plugin’s dependency where it is supposed to be included as <code>META-INF/jkube/profiles.yml</code>. Multiple profiles can be include in these <code>profiles.yml</code> descriptors as a list:</p>\n</div>\n<div class=\"paragraph\">\n<p>If a profile is <a href=\"#profiles-using\">used</a> then it is looked up from various places in the following order:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>From the compile and plugin classpath from <code>META-INF/jkube/profiles-default.yml</code>. These files are reserved for profiles defined by this plugin</p>\n</li>\n<li>\n<p>From the compile and plugin classpath from <code>META-INF/jkube/profiles.yml</code>. Use this location for defining your custom profiles which you want to include via dependencies.</p>\n</li>\n<li>\n<p>From the project in <code>src/main/jkube/profiles.yml</code>. The directory can be tuned with the plugin option <code>resourceDir</code> (property: <code>jkube.resourceDir</code>)</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>When multiple profiles of the same name are found, then these profiles are merged. If profile have an order number, then the <em>higher</em> order takes precedences when merging profiles.</p>\n</div>\n<div class=\"paragraph\">\n<p>For <em>includes</em> of the same processors, the processor is moved to the earliest position. E.g consider the following two profiles with the name <code>my-profile</code></p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Profile A</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">name: my-profile\nenricher:\n includes: [ e1, e2 ]</code></pre>\n</div>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Profile B</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">name: my-profile\nenricher:\n includes: [ e3, e1 ]\norder: 10</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>then when merged results in the following profile (when no order is given, it defaults to 0):</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Profile merged</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">name: my-profile\nenricher:\n includes: [ e1, e2, e3 ]\norder: 10</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Profile with the same order number are merged according to the lookup order described above, where the latter profile is supposed to have a higher order.</p>\n</div>\n<div class=\"paragraph\">\n<p>The configuration for enrichers and generators are merged, too, where higher order profiles override configuration values with the same key of lower order profile configuration.</p>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"profiles-using\">9.3. Using Profiles</h3>\n<div class=\"paragraph\">\n<p>Profiles can be selected by defining them in the plugin configuration, by giving a system property or by using\n<a href=\"#profiles-resource-fragments\">special directories</a> in the directory holding the resource fragments.</p>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Profile used in plugin configuration</div>\n<p>Here is an example how the profile can be used in a plugin configuration:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n <configuration>\n <profile>my-spring-boot-apps</profile> <i class=\"conum\" data-value=\"1\"></i><b>(1)</b>\n <!-- ... -->\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"colist arabic\">\n<table>\n<tr>\n<td><i class=\"conum\" data-value=\"1\"></i><b>1</b></td>\n<td>Name which select the profile from the <code>profiles.yml</code></td>\n</tr>\n</table>\n</div>\n<div class=\"paragraph\">\n<div class=\"title\">Profile as system property</div>\n<p>Alternatively a profile can be also specified on the command line when calling Maven:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn -Djkube.profile=my-spring-boot-apps oc:build oc:deploy</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>If a configuration for enrichers and generators are provided as part of the plugin’s <code><configuration></code> then this takes precedence over any profile specified.</p>\n</div>\n<div id=\"profiles-resource-fragments\" class=\"paragraph\">\n<div class=\"title\">Profiles for resource fragments</div>\n<p>Profiles are also very useful when used together with resource fragments in <code>src/main/jkube</code>. By default the resource objects defined here are enriched with the configured profile (if any). A different profile can be selected easily by using a sub directory within <code>src/main/jkube</code>. The name of each sub directory is interpreted as a profile name and all resource definition files found in this sub directory are enhanced with the enhancers defined in this profile.</p>\n</div>\n<div class=\"paragraph\">\n<p>For example, consider the following directory layout:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code>src/main/oc:\n app-rc.yml\n app-svc.yml\n raw/ -->\n couchbase-rc.yml\n couchbase-svc.yml</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Here, the resource descriptors <code>app-rc.yml</code> and <code>app-svc.yml</code> are enhanced with the enrichers defined in the main configuration. The files two files <code>couchbase-rc.yml</code> and <code>couchbase-svc.yml</code> in the sub directory <code>raw/</code> instead are enriched with the profile <strong>raw</strong>. This is a predefined profile which includes no enricher at all, so the couchbase resource objects are not enriched and taken over literally. This is an easy way how you can fine tune enrichment for different object set.</p>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"profiles-predefined\">9.4. Predefined Profiles</h3>\n<div class=\"paragraph\">\n<p>This plugin comes with a list of the following predefined profiles:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 48. Predefined Profiles</caption>\n<colgroup>\n<col style=\"width: 14.2857%;\">\n<col style=\"width: 85.7143%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Profile</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>default</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">The default profile which is active if no profile is specified. It consists of a curated set of generator and enrichers. See <a href=\"#profiles-default\">below</a> for the current definition.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>minimal</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">This profile contains no generators and only enrichers for adding default objects (controller and services). No other enrichment is included.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>explicit</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Like default but without adding default objects like controllers and services.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>aggregate</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Includes no generators and only the <a href=\"#jkube-dependency\">jkube-dependency</a> enricher for picking up and combining resources from the compile time dependencies.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>internal-microservice</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Do not expose a port for the service to generate. Otherwise the same as the <em>default</em> profile.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><strong>osio</strong></p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Includes everything in the <em>default</em> profile, plus additional enrichers and generators relevant only to <a href=\"https://openshift.io\">OpenShift.io</a>.</p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect2\">\n<h3 id=\"profiles-extended\">9.5. Extending Profiles</h3>\n<div class=\"paragraph\">\n<p>A profile can also extend another profile to avoid repetition e.g of generators if the profile is only about including certain enrichers. For example, for a profile like:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">- name: minimal\n extends: default\n enricher:\n includes:\n - jkube-name\n - jkube-controller\n - jkube-service\n - jkube-image\n - jkube-project-label\n - jkube-debug\n - jkube-namespace\n - jkube-metadata\n - jkube-controller-from-configuration\n - jkube-openshift-deploymentconfig\n - jkube-openshift-project\n - jkube-openshift-service-expose\n - jkube-openshift-route</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>one then would not need to repeat all generators as they are inherited from the <code>default</code> profile.</p>\n</div>\n<div id=\"profiles-default\" class=\"listingblock\">\n<div class=\"title\">Default Profile</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\"># Default profile which is always activated\n- name: default\n enricher:\n # The order given in \"includes\" is the order in which enrichers are called\n includes:\n - jkube-metadata\n - jkube-name\n - jkube-controller\n - jkube-controller-from-configuration\n - jkube-service\n - jkube-namespace\n - jkube-image\n - jkube-portname\n - jkube-project-label\n - jkube-dependency\n - jkube-pod-annotations\n - jkube-git\n - jkube-maven-scm\n - jkube-serviceaccount\n - jkube-maven-issue-mgmt\n # TODO: Documents and verify enrichers below\n - jkube-debug\n - jkube-remove-build-annotations\n - jkube-volume-permission\n - jkube-configmap-file\n - jkube-secret-file\n\n # Route exposure\n - jkube-openshift-service-expose\n - jkube-openshift-route\n - jkube-openshift-deploymentconfig\n - jkube-openshift-project\n\n # Ingress\n - jkube-ingress\n\n # -----------------------------------------\n # TODO: Document and verify enrichers below\n # Health checks\n - jkube-healthcheck-quarkus\n - jkube-healthcheck-spring-boot\n - jkube-healthcheck-wildfly-swarm\n - jkube-healthcheck-thorntail-v2\n - jkube-healthcheck-wildfly-jar\n - jkube-healthcheck-karaf\n - jkube-healthcheck-vertx\n - jkube-healthcheck-docker\n - jkube-healthcheck-webapp\n - jkube-prometheus\n\n # Value merge enrichers\n - jkube-container-env-java-options\n\n # Dependencies shouldn't be enriched anymore, therefore it's last in the list\n - jkube-dependency\n - jkube-revision-history\n - jkube-docker-registry-secret\n - jkube-triggers-annotation\n - jkube-openshift-imageChangeTrigger\n\n generator:\n # The order given in \"includes\" is the order in which generators are called\n includes:\n - quarkus\n - spring-boot\n - wildfly-swarm\n - thorntail-v2\n - wildfly-jar\n - openliberty\n - karaf\n - vertx\n - java-exec\n - webapp\n watcher:\n includes:\n - spring-boot\n - docker-image</code></pre>\n</div>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"access-configuration\">10. Access configuration</h2>\n<div class=\"sectionbody\">\n<div class=\"sect2\">\n<h3 id=\"_docker_access\">10.1. Docker Access</h3>\n<div class=\"paragraph\">\n<p>For Kubernetes builds the openshift-maven-plugin uses the Docker remote API so the URL of your Docker Daemon must be specified. The URL can be specified by the dockerHost or machine configuration, or by the <code>DOCKER_HOST</code> environment variable. If not given</p>\n</div>\n<div class=\"paragraph\">\n<p>The Docker remote API supports communication via SSL and\nauthentication with certificates. The path to the certificates can\nbe specified by the certPath or machine configuration, or by the\n<code>DOCKER_CERT_PATH</code> environment variable.</p>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"_openshift_and_kubernetes_access\">10.2. OpenShift and Kubernetes Access</h3>\n<div class=\"paragraph\">\n<p>Plugin reads your <code>kubeconfig</code> file to read your Kubernetes/OpenShift configuration. By default, <code>kubeconfig</code> file is assumed to be either\nin <code>~/.kube/config</code> or using the environment variable <code>KUBECONFIG</code>.</p>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"registry\">11. Registry handling</h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>Docker uses registries to store images. The registry is typically\nspecified as part of the name. I.e. if the first part (everything\nbefore the first <code>/</code>) contains a dot (<code>.</code>) or colon (<code>:</code>) this part is\ninterpreted as an address (with an optionally port) of a remote\nregistry. This registry (or the default <code>docker.io</code> if no\nregistry is given) is used during push and pull operations. This\nplugin follows the same semantics, so if an image name is specified\nwith a registry part, this registry is contacted. Authentication is\nexplained in the next <a href=\"#authentication\">section</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>There are some situations however where you want to have more\nflexibility for specifying a remote registry. This might be because\nyou do not want to hard code a registry into <code>pom.xml</code> but\nprovide it from the outside with an environment variable or a system\nproperty.</p>\n</div>\n<div class=\"paragraph\">\n<p>This plugin supports various ways of specifying a registry:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>If the image name contains a registry part, this registry is used\nunconditionally and can not be overwritten from the outside.</p>\n</li>\n<li>\n<p>If an image name doesn’t contain a registry, then by default the\ndefault Docker registry <code>docker.io</code> is used for push and pull\noperations. But this can be overwritten through various means:</p>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>If the <code><image></code> configuration contains a <code><registry></code> subelement\nthis registry is used.</p>\n</li>\n<li>\n<p>Otherwise, a global configuration element <code><registry></code> is\nevaluated which can be also provided as system property via\n<code>-Djkube.docker.registry</code>.</p>\n</li>\n<li>\n<p>Finally an environment variable <code>DOCKER_REGISTRY</code> is looked up for\ndetecting a registry.</p>\n</li>\n</ul>\n</div>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>This registry is used for pulling (i.e. for autopull the base image\nwhen doing a <code>oc:build</code>) and pushing with <code>oc:push</code>. However,\nwhen these two goals are combined on the command line like in <code>mvn\n-Djkube.docker.registry=myregistry:5000 package oc:build oc:push</code>\nthe same registry is used for both operation. For a more fine grained\ncontrol, separate registries for <em>pull</em> and <em>push</em> can be specified.</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>In the plugin’s configuration with the parameters <code><pullRegistry></code> and\n<code><pushRegistry></code>, respectively.</p>\n</li>\n<li>\n<p>With the system properties <code>jkube.docker.pull.registry</code> and\n<code>jkube.docker.push.registry</code>, respectively.</p>\n</li>\n</ul>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><configuration>\n <registry>docker.jolokia.org:443</registry>\n <images>\n <image>\n <!-- Without an explicit registry ... -->\n <name>jolokia/jolokia-java</name>\n <!-- ... hence use this registry -->\n <registry>docker.ro14nd.de</registry>\n <!-- ... -->\n </image>\n <image>\n <name>postgresql</name>\n <!-- No registry in the name, hence use the globally\n configured docker.jolokia.org:443 as registry -->\n <!-- ... -->\n </image>\n <image>\n <!-- Explicitly specified always wins -->\n <name>docker.example.com:5000/another/server</name>\n </image>\n </images>\n</configuration></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>There is some special behaviour when using an externally provided\nregistry like described above:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>When <em>pulling</em>, the image pulled will be also tagged with a repository\nname <strong>without</strong> registry. The reasoning behind this is that this\nimage then can be referenced also by the configuration when the\nregistry is not specified anymore explicitly.</p>\n</li>\n<li>\n<p>When <em>pushing</em> a local image, temporarily a tag including the\nregistry is added and removed after the push. This is required\nbecause Docker can only push registry-named images.</p>\n<div id=\"authentication\" class=\"paragraph\">\n<p>= Authentication</p>\n</div>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>When pulling (via the <code>autoPull</code> mode of <code>oc:build</code>) or pushing image, it\nmight be necessary to authenticate against a Docker registry.</p>\n</div>\n<div class=\"paragraph\">\n<p>There are five different locations searched for credentials. In order, these are:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Providing system properties <code>jkube.docker.username</code> and <code>jkube.docker.password</code> from the outside.</p>\n</li>\n<li>\n<p>Using a <code><authConfig></code> section in the plugin configuration with <code><username></code> and <code><password></code> elements.</p>\n</li>\n<li>\n<p>Using OpenShift configuration in <code>~/.config/kube</code></p>\n</li>\n<li>\n<p>Using a <code><server></code> configuration in <code>~/.m2/settings.xml</code></p>\n</li>\n<li>\n<p>Login into a registry with <code>docker login</code> (credentials in a credential helper or in <code>~/.docker/config.json</code>)</p>\n</li>\n</ul>\n</div>\n<div class=\"paragraph\">\n<p>Using the username and password directly in the <code>pom.xml</code> is not\nrecommended since this is widely visible. This is the easiest and\ntransparent way, though. Using an <code><authConfig></code> is straight forward:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <configuration>\n <image>consol/tomcat-7.0</image>\n <!-- ... -->\n <authConfig>\n <username>jolokia</username>\n <password>s!cr!t</password>\n </authConfig>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The system property provided credentials are a good compromise when\nusing CI servers like Jenkins. You simply provide the credentials from\nthe outside:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-sh\" data-lang=\"sh\">mvn -Djkube.docker.username=jolokia -Djkube.docker.password=s!cr!t oc:push</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The most <em>mavenish</em> way is to add a server to the Maven settings file <code>~/.m2/settings.xml</code>:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><servers>\n <server>\n <id>docker.io</id>\n <username>jolokia</username>\n <password>s!cr!t</password>\n </server>\n <!-- ... -->\n</servers></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The server id must specify the registry to push to/pull from, which by\ndefault is central index <code>docker.io</code> (or <code>index.docker.io</code> / <code>registry.hub.docker.com</code> as fallbacks).\nHere you should add your docker.io account for your repositories. If you have multiple accounts\nfor the same registry, the second user can be specified as part of the ID. In the example above, if you\nhave a second account 'jkubeio' then use an <code><id>docker.io/jkubeio</id></code> for this second entry. I.e. add the\nusername with a slash to the id name. The default without username is only taken if no server entry with\na username appended id is chosen.</p>\n</div>\n<div class=\"paragraph\">\n<p>The most <em>secure</em> way is to rely on docker’s credential store or credential helper and read confidential information\nfrom an external credentials store, such as the native keychain of the operating system. Follow the instruction on\n<a href=\"https://docs.docker.com/engine/reference/commandline/login/#credentials-store\">the docker login documentation</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>As a final fallback, this plugin consults <code>$DOCKER_CONFIG/config.json</code> if <code>DOCKER_CONFIG</code> is set, or <code>~/.docker/config.json</code> if not, and reads credentials stored directly within this\nfile. This unsafe behavior happened when connecting to a registry with the command <code>docker login</code> from the command line\nwith older versions of docker (pre 1.13.0) or when docker is not configured to use a\n<a href=\"https://docs.docker.com/engine/reference/commandline/login/#credentials-store\">credential store</a>.</p>\n</div>\n<div class=\"sect2\">\n<h3 id=\"_pull_vs_push_authentication\">11.1. Pull vs. Push Authentication</h3>\n<div class=\"paragraph\">\n<p>The credentials lookup described above is valid for both push and\npull operations. In order to narrow things down, credentials can be\nprovided for pull or push operations alone:</p>\n</div>\n<div class=\"paragraph\">\n<p>In an <code><authConfig></code> section a sub-section <code><pull></code> and/or <code><push></code>\ncan be added. In the example below the credentials provider are only\nused for image push operations:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <configuration>\n <image>consol/tomcat-7.0</image>\n <!-- ... -->\n <authConfig>\n <push>\n <username>jolokia</username>\n <password>s!cr!t</password>\n </push>\n </authConfig>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>When the credentials are given on the command line as system\nproperties, then the properties <code>jkube.docker.pull.username</code> /\n<code>jkube.docker.pull.password</code> and <code>jkube.docker.push.username</code> /\n<code>jkube.docker.push.password</code> are used for pull and push operations,\nrespectively (when given). Either way, the standard lookup algorithm\nas described in the previous section is used as fallback.</p>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"_openshift_authentication\">11.2. OpenShift Authentication</h3>\n<div class=\"paragraph\">\n<p>When working with the default registry in OpenShift, the credentials\nto authenticate are the OpenShift username and access token. So, a\ntypical interaction with the OpenShift registry from the outside is:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre>oc login\n...\nmvn -Djkube.docker.registry=docker-registry.domain.com:80/default/myimage \\\n -Djkube.docker.username=$(oc whoami) \\\n -Djkube.docker.password=$(oc whoami -t)</pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>(note, that the image’s username part (\"default\" here\") must\ncorrespond to an OpenShift project with the same name to which you\ncurrently connected account has access).</p>\n</div>\n<div class=\"paragraph\">\n<p>This can be simplified by using the system property\n<code>docker.useOpenShiftAuth</code> in which case the plugin does the\nlookup. The equivalent to the example above is</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre>oc login\n...\nmvn -Ddocker.registry=docker-registry.domain.com:80/default/myimage \\\n -Ddocker.useOpenShiftAuth</pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Alternatively the configuration option <code><useOpenShiftAuth></code> can be\nadded to the <code><authConfig></code> section.</p>\n</div>\n<div class=\"paragraph\">\n<p>For dedicated <em>pull</em> and <em>push</em> configuration the system properties\n<code>jkube.docker.pull.useOpenShiftAuth</code> and <code>jkube.docker.push.useOpenShiftAuth</code> are\navailable as well as the configuration option <code><useOpenShiftAuth></code> in\nan <code><pull></code> or <code><push></code> section within the <code><authConfig></code>\nconfiguration.</p>\n</div>\n<div class=\"paragraph\">\n<p>If <code>useOpenShiftAuth</code> is enabled then the OpenShift configuration will be looked up in <code>$KUBECONFIG</code> or, if this environment variable is not set, in <code>~/.kube/config</code>.</p>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"password-encryption\">11.3. Password encryption</h3>\n<div class=\"paragraph\">\n<p>Regardless of which mode you choose you can encrypt password as described\nin the\n<a href=\"http://maven.apache.org/guides/mini/guide-encryption.html\">Maven documentation</a>. Assuming\nthat you have setup a <em>master password</em> in\n<code>~/.m2/security-settings.xml</code> you can create easily encrypt\npasswords:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"title\">Example</div>\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-bash\" data-lang=\"bash\">$ mvn --encrypt-password\nPassword:\n{QJ6wvuEfacMHklqsmrtrn1/ClOLqLm8hB7yUL23KOKo=}</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>This password then can be used in <code>authConfig</code>, <code>docker.password</code>\nand/or the <code><server></code> setting configuration. However, putting an\nencrypted password into <code>authConfig</code> in the <code>pom.xml</code> doesn’t make\nmuch sense, since this password is encrypted with an individual master\npassword.</p>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"extended-authentication\">11.4. Extended Authentication</h3>\n<div class=\"paragraph\">\n<p>Some docker registries require additional steps to authenticate.\n<a href=\"https://docs.aws.amazon.com/AmazonECR/latest/userguide/ECR_GetStarted.html\">Amazon ECR</a> requires using an IAM access key to obtain temporary docker login credentials.\nThe <a href=\"#jkube:push\"><strong>oc:push</strong></a> and <a href=\"#jkube:build\"><strong>oc:build</strong></a> goals automatically execute this exchange for any registry of the form\n<em><awsAccountId></em> <strong>.dkr.ecr.</strong> <em><awsRegion></em> <strong>.amazonaws.com</strong>, unless the <code>skipExtendedAuth</code> configuration\n(<code>jkube.docker.skip.extendedAuth</code> property) is set true.</p>\n</div>\n<div class=\"paragraph\">\n<p>Note that for an ECR repository with URI <code>123456789012.dkr.ecr.eu-west-1.amazonaws.com/example/image</code> the d-m-p’s <code>jkube.docker.registry</code> should be set to <code>123456789012.dkr.ecr.eu-west-1.amazonaws.com</code> and <code>example/image</code> is the <code><name></code> of the image.</p>\n</div>\n<div class=\"paragraph\">\n<p>You can use any IAM access key with the necessary permissions in any of the locations mentioned above except <code>~/.docker/config.json</code>.\nUse the IAM <strong>Access key ID</strong> as the username and the <strong>Secret access key</strong> as the password.\nIn case you’re using temporary security credentials provided by the AWS Security Token Service (AWS STS), you have to provide the <strong>security token</strong> as well.\nTo do so, either specify the <code>docker.authToken</code> system property or provide an <code><auth></code> element alongside username & password in the <code>authConfig</code>.</p>\n</div>\n<div class=\"paragraph\">\n<p>In case you are running on an EC2 instance that has an appropriate IAM role assigned\n(e.g. a role that grants the AWS built-in policy <em>AmazonEC2ContainerRegistryPowerUser</em>)\nauthentication information doesn’t need to be provided at all. Instead the instance\nmeta-data service is queried for temporary access credentials supplied by the\nassigned role.</p>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"volume-configuration\">12. Volume Configuration</h2>\n<div class=\"sectionbody\">\n<div class=\"paragraph\">\n<p>openshift-maven-plugin supports volume configuration in XML format in pom.xml. These are the volume types which are supported:</p>\n</div>\n<table class=\"tableblock frame-all grid-all stretch\">\n<caption class=\"title\">Table 49. Supported Volume Types</caption>\n<colgroup>\n<col style=\"width: 4.3478%;\">\n<col style=\"width: 95.6522%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Volume Type</th>\n<th class=\"tableblock halign-left valign-top\">Description</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">hostPath</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Mounts a file or directory from the host node’s filesystem into your pod</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">emptyDir</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Containers in the Pod can all read and write the same files in the emptyDir volume, though that volume can be mounted at the same or different paths in each Container. When a Pod is removed from a node for any reason, the data in the emptyDir is deleted forever.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">gitRepo</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">It mounts an empty directory and clones a git repository into it for your Pod to use.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">secret</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">It is used to pass sensitive information, such as passwords, to Pods.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">nfsPath</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Allows an existing NFS(Network File System) share to be mounted into your Pod.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">gcePdName</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Mounts a Google Compute Engine(GCE) into your Pod. You must create PD using <code>gcloud</code> or GCE API or UI before you can use it.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">glusterFsPath</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Allows a Glusterfs (an open source networked filesystem) volume to be mounted into your Pod.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">persistentVolumeClaim</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Used to mount a PersistentVolume into a Pod.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">awsElasticBlockStore</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Mounts an Amazon Web Services(AWS) EBS Volume into your Pod.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">azureDisk</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Mounts a Microsoft Azure Data Disk into a Pod</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">azureFile</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Mounts a Microsoft Azure File Volume(SMB 2.1 and 3.0 into a Pod.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">cephfs</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Allows an existing CephFS volume to be mounted into your Pod. You must have your own Ceph server running with the share exported before you can use it.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">fc</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Allows existing fibre channel volume to be mounted in a Pod. You must configure FC SAN Zoning to allocate and mask those LUNs (volumes) to the target WWNs beforehand so that Kubernetes hosts can access them.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">flocker</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Flocker is an open source clustered Container data volume manager. A <code>flocker</code> volume allows a Flocker dataset to be mounted into a Pod. You must have your own Flocker installation running before you can use it.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">iscsi</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Allows an existing ISCSI(SCSI over IP) volume to be mounted into your Pod.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">portworxVolume</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A portworxVolume is an elastic block storage layer that runs hyperconverged with Kubernetes.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">quobyte</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Allows existing <code>Quobyte</code> volume to be mounted into your Pod. You must have your own Quobyte setup running the volumes created.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">rbd</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Allows a Rados Block Device volume to be mounted into your Pod.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">scaleIO</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ScaleIO is a software-based storage platform that can use existing hardware to create clusters of scalable shared block networked storage. The scaleIO volume plugin allows deployed Pods to access existing ScaleIO volumes.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">storageOS</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A storageos volume allows an existing StorageOS volume to be mounted into your Pod. You must run the StorageOS container on each node that wants to access StorageOS volumes</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">vsphereVolume</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Used to mount a vSphere VMDK volume into your Pod.</p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">downwardAPI</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">A downwardAPI volume is used to make downward API data available to applications. It mounts a directory and writes the requested data in plain text files.</p></td>\n</tr>\n</tbody>\n</table>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"integrations\">13. Integrations</h2>\n<div class=\"sectionbody\">\n<div class=\"sect2\">\n<h3 id=\"integrations.dekorate\">13.1. Dekorate</h3>\n<div class=\"paragraph\">\n<p><strong>openshift-maven-plugin</strong> provides a Zero Configuration approach to delegate deployment manifests\ngeneration to <a href=\"https://github.com/dekorateio/dekorate\">Dekorate</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>Just by adding a dependency to Dekorate library in the <code>pom.xml</code> file, all manifest\ngeneration will be delegated to Dekorate.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"> <dependencies>\n <!-- ... -->\n <dependency>\n <groupId>io.dekorate</groupId>\n <artifactId>option-annotations</artifactId>\n <version>${dekorate.version}</version>\n </dependency>\n <dependency>\n <groupId>io.dekorate</groupId>\n <artifactId>openshift-annotations</artifactId>\n <version>${dekorate.version}</version>\n </dependency>\n <dependency>\n <groupId>io.dekorate</groupId>\n <artifactId>kubernetes-annotations</artifactId>\n <version>${dekorate.version}</version>\n </dependency>\n <dependency>\n <groupId>io.dekorate</groupId>\n <artifactId>dekorate-spring-boot</artifactId>\n <version>${dekorate.version}</version>\n </dependency>\n </dependencies></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>A full example of the integration can be found in the directory\n<a href=\"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-dekorate\">quickstarts/maven/spring-boot-dekorate</a>.</p>\n</div>\n<div class=\"paragraph\">\n<p>An <strong>experimental</strong> feature is also provided to merge resources generated both by <strong>openshift-maven-plugin</strong>\nand Dekorate. You can activate this feature by using the following flag <code>-Djkube.mergeWithDekorate</code>\nin the command-line, or setting it up as a property (<code><jkube.mergeWithDekorate>true</jkube.mergeWithDekorate></code>).</p>\n</div>\n</div>\n<div class=\"sect2\">\n<h3 id=\"_jib_java_image_builder\">13.2. JIB (Java Image Builder)</h3>\n<div class=\"paragraph\">\n<p><strong>openshift-maven-plugin</strong> also provides user an option to build container images without having access to any docker daemon.\nYou just need to set <code>jkube.build.strategy</code> property to <code>jib</code>. It will delegate the build process to\n<a href=\"https://github.com/GoogleContainerTools/jib\">JIB</a>. It creates a tarball inside your target directory which can be loaded\ninto any docker daemon afterwards. You may also push the image to your specified registry using push goal with feature flag enabled.</p>\n</div>\n<div class=\"paragraph\">\n<p>You can find more details at <a href=\"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-with-jib\">Spring Boot JIB Quickstart</a>.</p>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"faq\">14. FAQ</h2>\n<div class=\"sectionbody\">\n<div class=\"sect2\">\n<h3 id=\"_general_questions\">14.1. General questions</h3>\n<div class=\"sect3\">\n<h4 id=\"_how_do_i_define_an_environment_variable\">14.1.1. How do I define an environment variable?</h4>\n<div class=\"paragraph\">\n<p>The easiest way is to add a <code>src/main/jkube/deployment.yml</code> file to your project containing something like:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">spec:\n template:\n spec:\n containers:\n -env:\n - name: FOO\n value: bar</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The above will generate an environment variable <code>$FOO</code> of value <code>bar</code></p>\n</div>\n<div class=\"paragraph\">\n<p>For a full list of the environments used in java base images, <a href=\"https://hub.docker.com/r/jkube.java-jboss-openjdk8-jdk\">see this list</a></p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_how_do_i_define_a_system_property\">14.1.2. How do I define a system property?</h4>\n<div class=\"paragraph\">\n<p>The simplest way is to add system properties to the <code>JAVA_OPTIONS</code> environment variable.</p>\n</div>\n<div class=\"paragraph\">\n<p>For a full list of the environments used in java base images, <a href=\"https://hub.docker.com/r/jkube.java-jboss-openjdk8-jdk\">see this list</a></p>\n</div>\n<div class=\"paragraph\">\n<p>e.g. add a <code>src/main/jkube/deployment.yml</code> file to your project containing something like:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">spec:\n template:\n spec:\n containers:\n - env:\n - name: JAVA_OPTIONS\n value: \"-Dfoo=bar -Dxyz=abc\"</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>The above will define the system properties <code>foo=bar</code> and <code>xyz=abc</code></p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_how_do_i_mount_a_config_file_from_a_configmap\">14.1.3. How do I mount a config file from a ConfigMap?</h4>\n<div class=\"paragraph\">\n<p>First you need to create your <code>ConfigMap</code> resource via a file <code>src/main/jkube/configmap.yml</code></p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">data:\n application.properties: |\n # spring application properties file\n welcome = Hello from Kubernetes ConfigMap!!!\n dummy = some value</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Then mount the entry in the <code>ConfigMap</code> into your <code>Deployment</code> via a file <code>src/main/jkube/deployment.yml</code></p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">metadata:\n annotations:\n configmap.jkube.io/update-on-change: ${project.artifactId}\nspec:\n replicas: 1\n template:\n spec:\n volumes:\n - name: config\n configMap:\n name: ${project.artifactId}\n items:\n - key: application.properties\n path: application.properties\n containers:\n - volumeMounts:\n - name: config\n mountPath: /deployments/config</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Here is <a href=\"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/external-resources\">an example quickstart doing this</a></p>\n</div>\n<div class=\"paragraph\">\n<p>Note that the annotation <code>configmap.jkube.io/update-on-change</code> is optional; its used if your application is not capable\nof watching for changes in the <code>/deployments/config/application.properties</code> file. In this case if you are also running\nthe <a href=\"https://github.com/fabric8io/configmapcontroller\">configmapcontroller</a> then this will cause a rolling upgrade of your\napplication to use the new <code>ConfigMap</code> contents as you change it.</p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_how_do_i_use_a_persistent_volume\">14.1.4. How do I use a Persistent Volume?</h4>\n<div class=\"paragraph\">\n<p>First you need to create your <code>PersistentVolumeClaim</code> resource via a file <code>src/main/jkube/foo-pvc.yml</code> where <code>foo</code> is the name of the <code>PersistentVolumeClaim</code>. It might be your app requires multiple vpersistent volumes so you will need multiple <code>PersistentVolumeClaim</code> resources.</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">spec:\n accessModes:\n - ReadWriteOnce\n resources:\n requests:\n storage: 100Mi</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Then to mount the <code>PersistentVolumeClaim</code> into your <code>Deployment</code> create a file <code>src/main/jkube/deployment.yml</code></p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-yaml\" data-lang=\"yaml\">spec:\n template:\n spec:\n volumes:\n - name: foo\n persistentVolumeClaim:\n claimName: foo\n containers:\n - volumeMounts:\n - mountPath: /whatnot\n name: foo</code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>Where the above defines the <code>PersistentVolumeClaim</code> called <code>foo</code> which is then mounted into the container at <code>/whatnot</code></p>\n</div>\n</div>\n<div class=\"sect3\">\n<h4 id=\"_how_do_i_generate_ingress_for_my_generated_service\">14.1.5. How do I generate Ingress for my generated Service?</h4>\n<div class=\"paragraph\">\n<p><code>Ingress</code> generation is supported by Eclipse JKube for <code>Service</code> objects of type <code>LoadBalancer</code>. In order to generate <code>Ingress</code> you need to enable <code>jkube.createExternalUrls</code> property to <code>true</code> and <code>jkube.domain</code> property to desired host suffix, it would be appended to your service name for host value. You can also also provide a host for it in XML config like this:</p>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n <version>1.0.2</version>\n\n <configuration>\n <resources>\n <routeDomain>org.eclipse.jkube</routeDomain>\n </resources>\n\n <enricher>\n <config>\n <jkube-service>\n <type>LoadBalancer</type>\n </jkube-service>\n </config>\n </enricher>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n<div class=\"paragraph\">\n<p>You can find an example in our <a href=\"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot\">spring-boot</a> quickstart in <code>kubernetes-with-ingress</code> profile.</p>\n</div>\n</div>\n</div>\n</div>\n</div>\n<div class=\"sect1\">\n<h2 id=\"appendix\">15. Appendix</h2>\n<div class=\"sectionbody\">\n<div class=\"sect2\">\n<h3 id=\"_kindfilename_type_mapping\">15.1. Kind/Filename Type Mapping</h3>\n<table id=\"appendix-kind-mapping\" class=\"tableblock frame-all grid-all stretch\">\n<colgroup>\n<col style=\"width: 50%;\">\n<col style=\"width: 50%;\">\n</colgroup>\n<thead>\n<tr>\n<th class=\"tableblock halign-left valign-top\">Kind</th>\n<th class=\"tableblock halign-left valign-top\">Filename Type</th>\n</tr>\n</thead>\n<tbody>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">BuildConfig</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>bc</code>, <code>buildconfig</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ClusterRole</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>cr</code>, <code>crole</code>, <code>clusterrole</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ConfigMap</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>cm</code>, <code>configmap</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ClusterRoleBinding</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>crb</code>, <code>clusterrb</code>, <code>clusterrolebinding</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">CronJob</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>cj</code>, <code>cronjob</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">CustomResourceDefinition</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>crd</code>, <code>customerresourcedefinition</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">DaemonSet</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>ds</code>, <code>daemonset</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Deployment</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>deployment</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">DeploymentConfig</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>dc</code>, <code>deploymentconfig</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ImageStream</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>is</code>, <code>imagestream</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ImageStreamTag</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>istag</code>, <code>imagestreamtag</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Ingress</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>ingress</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Job</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>job</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">LimitRange</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>lr</code>, <code>limitrange</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Namespace</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>ns</code>, <code>namespace</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">OAuthClient</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>oauthclient</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">PolicyBinding</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>pb</code>, <code>policybinding</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">PersistentVolume</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>pv</code>, <code>persistentvolume</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">PersistentVolumeClaim</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>pvc</code>, <code>persistemtvolumeclaim</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Project</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>project</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ProjectRequest</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>pr</code>, <code>projectrequest</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ReplicaSet</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>rs</code>, <code>replicaset</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ReplicationController</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>rc</code>, <code>replicationcontroller</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ResourceQuota</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>rq</code>, <code>resourcequota</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Role</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>role</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">RoleBinding</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>rb</code>, <code>rolebinding</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">RoleBindingRestriction</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>rbr</code>, <code>rolebindingrestriction</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Route</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>route</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Secret</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>secret</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Service</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>svc</code>, <code>service</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">ServiceAccount</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>sa</code>, <code>serviceaccount</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">StatefulSet</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>statefulset</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Template</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>template</code></p></td>\n</tr>\n<tr>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\">Pod</p></td>\n<td class=\"tableblock halign-left valign-top\"><p class=\"tableblock\"><code>pd</code>, <code>pod</code></p></td>\n</tr>\n</tbody>\n</table>\n</div>\n<div class=\"sect2\">\n<h3 id=\"_custom_kindfilename_mapping\">15.2. Custom Kind/Filename Mapping</h3>\n<div class=\"paragraph\">\n<p>You can add your custom <code>Kind/Filename</code> mappings.\nTo do it you have two approaches:</p>\n</div>\n<div class=\"ulist\">\n<ul>\n<li>\n<p>Setting an environment variable or system property called <code>jkube.mapping</code> pointing out to a <code>.properties</code> files with pairs <code><kind>⇒filename1>, <filename2></code>\nBy default if no environment variable nor system property is set, scan for a file located at classpath <code>/META-INF/jkube.kind-filename-type-mapping-default.properties</code>.</p>\n</li>\n<li>\n<p>By embedding in MOJO configuration the mapping:</p>\n</li>\n</ul>\n</div>\n<div class=\"listingblock\">\n<div class=\"content\">\n<pre class=\"highlight\"><code class=\"language-xml\" data-lang=\"xml\"><plugin>\n <groupId>org.eclipse.jkube</groupId>\n <artifactId>openshift-maven-plugin</artifactId>\n <configuration>\n <mappings>\n <mapping>\n <kind>Var</kind>\n <filenameTypes>foo, bar</filenameTypes>\n </mapping>\n </mappings>\n </configuration>\n</plugin></code></pre>\n</div>\n</div>\n</div>\n</div>\n</div>","document":{"title":"org.eclipse.jkube/openshift-maven-plugin","subtitle":""}}},"pageContext":{"id":"c6e0e68d-58c2-50f9-a0f5-8c4e1ba2b485","langKey":"en"}},"staticQueryHashes":[]}
\ No newline at end of file
diff --git a/page-data/quickstarts/page-data.json b/page-data/quickstarts/page-data.json
index 5d04fbd..b1520b7 100644
--- a/page-data/quickstarts/page-data.json
+++ b/page-data/quickstarts/page-data.json
@@ -1 +1 @@
-{"componentChunkName":"component---src-pages-quickstarts-index-jsx","path":"/quickstarts/","result":{"data":{"allQuickstart":{"nodes":[{"id":"f0f3fc59-ac46-5830-a5b5-b83e862d40d3","artifactId":"eclipse-jkube-sample-custom-enricher-parent","name":"Kit :: Custom Istio Enricher Parent","description":"Eclipse JKube Kit example to build and use a Custom Enricher in a SpringBoot Application. It will demonstrate how you can extend Eclipse JKube Kit's Enricher API to make your own enricher and use it to enrich or generate manifests as per your requirements.","technologies":[],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/kit/custom-istio-enricher/"},{"id":"520432b9-a1bf-58f3-8339-9823de83727a","artifactId":"docker-image","name":"Kit :: Docker Image","description":"Eclipse JKube Kit example showing how to generate a Docker image by using Eclipse JKube in standalone mode.","technologies":[],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/kit/docker-image/"},{"id":"dc64b9d1-1cee-53ff-8f64-4661d6c05ba5","artifactId":"dynamic-docker-image-file-multi-layer","name":"Kit :: Docker Image from Multilayer Dockerfile","description":"Eclipse JKube Kit example showing how to Dynamically generate a Docker image.\n The generated image contains multiple COPY statements which allows the generation of a multilayered container image.","technologies":[],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/kit/dynamic-docker-image-file-multi-layer/"},{"id":"0804f96e-3214-5c96-8dd1-8214974f71fa","artifactId":"docker-file-provided","name":"Maven :: Docker File Provided","description":"This quick start showcases how to use Eclipse JKube with external Docker files.\n There are several profiles highlighting the different configuration modes available.","technologies":["Kubernetes","Spring"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/docker-file-provided/"},{"id":"55060235-c1f0-5465-988f-0f16577b004b","artifactId":"docker-file-simple","name":"Maven :: Dockerfile :: Simple","description":"This quickstart showcases how to use Eclipse JKube with external Docker files without any additional configuration.\n Docker file mode is automatically selected when a Dockerfile is detected in the project's root directory.","technologies":["Kubernetes","Spring"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/docker-file-simple/"},{"id":"6cc272ac-8e68-5339-abd5-f85c274b6ff6","artifactId":"external-resources","name":"Maven :: External Resources","description":"Simple Spring Boot application which demonstrates how you can use Eclipse JKube's resource fragments.\n Fragments in `src/main/jkube` directory are detected and picked up by JKube.\n These fragments are then merged with the JKube generated cluster configuration manifests (YAML).","technologies":["Kubernetes","OpenShift","Spring"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/external-resources/"},{"id":"f990a28d-9017-5c42-b8c4-9ff539bc4ae8","artifactId":"helloworld","name":"Maven :: Hello World","description":"Demo project for getting started with Eclipse JKube.\n It just prints \"Hello World\" on command line and exits.","technologies":["Kubernetes"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/hello-world/"},{"id":"01d769fd-227e-570f-8207-3e7d376665e7","artifactId":"javaee8-webprofile-liberty","name":"Maven :: JavaEE 8 WebProfile","description":"Demo project for Jakarta EE 8 WebProfile, IBM WebSphere Liberty is used as a Jakarta EE implementation.\n On Windows or Mac if VirtualBox is used, run the tests using:\n $ mvn clean verify -DtestProxyHost=192.168.99.100","technologies":["Kubernetes"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/ibm-javaee8-webprofile-liberty/"},{"id":"60181794-b5b0-52b9-803b-ab12cc0ee81b","artifactId":"karaf-camel-log","name":"Maven :: Karaf Camel Log","description":"Simple Apache Camel application on top of Apache Karaf that logs a series of messages to the Server log.\n The application also generates and processes random orders using Camel routes.","technologies":["Kubernetes","OpenShift","ApacheCamel","ApacheKaraf"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/karaf-camel-log/"},{"id":"ff6f0023-3bbe-5ee0-8bba-9396f5bfc90c","artifactId":"micronaut-customized-image","name":"Maven :: Micronaut customized Image","description":"Micronaut application featuring REST endpoints (micronaut-http) with validation (micronaut-validation).\n\n Includes configuration to enable health check probes (livenessProbe & readinessProbe) using JKube's\n powerful resource fragments and micronaut-management feature.\n\n XML based image configuration compatible with OpenShift and Kubernetes.","technologies":["Kubernetes","OpenShift"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/micronaut-customized-image/"},{"id":"d2af8513-0c9b-511d-8734-cf26543e8cf4","artifactId":"openliberty","name":"Maven :: Open Liberty","description":"JAX-RS application deployed with OpenLiberty and Eclipse JKube.\n The application contains a single endpoint (/hello) that prints 'Hello, World.'.\n An Arquillian based Integration Test is also included.","technologies":["OpenShift","OpenLiberty"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/openliberty/"},{"id":"fbeb2e9f-89cc-57ff-bac8-3cec8050add4","artifactId":"openliberty-microprofile","name":"Maven :: Open Liberty & MicroProfile","description":"How to integrate Eclipse JKube into an OpenLiberty-MicroProfile project as downloaded from start.microprofile.io.\n Includes a JAX-RS endpoint, sample CDI injected configuration, and Liveness and Readiness probes.","technologies":["Kubernetes","OpenShift"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/openliberty-microprofile/"},{"id":"78a4f290-7bfb-501b-87b2-06056fe1737c","artifactId":"quarkus","name":"Maven :: Quarkus","description":"Quarkus application with a single JAX-RS endpoint.\n Demonstrates how to package the project using JVM mode or Native image mode.\n Demonstrates how to build a Quarkus project container with Eclipse JKube's S2I, Docker and JIB build strategies.","technologies":["Kubernetes","OpenShift","Quarkus"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/quarkus/"},{"id":"8c69d157-2ed8-5d45-92bd-7868217ff5f8","artifactId":"quarkus-customized-image","name":"Maven :: Quarkus customized Image","description":"Quarkus application with a single JAX-RS endpoint.\n Demonstrates how to build a Quarkus container image based on a Red Hat container image private registry.\n Uses a pull secret from Red Hat Registry Service Accounts to authenticate.","technologies":["OpenShift","Quarkus"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/quarkus-customized-image/"},{"id":"26ea4bda-5c68-51f8-8265-81b7e04e883f","artifactId":"spring-boot","name":"Maven :: Spring Boot Web","description":"Spring Boot Web application with a single @RestController.\n Shows how to deploy Spring Boot applications to Kubernetes (-Pkubermetes) and OpenShift (-Popenshift) using Eclipse JKube.","technologies":["Kubernetes","OpenShift","Spring"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot/"},{"id":"d14e03d9-b464-5a7e-98c8-4a6952addc01","artifactId":"spring-boot-camel-complete","name":"Maven :: Spring Boot - Camel","description":"Spring Boot application with Camel Spring Boot integration.\n Programmatically (RouteBuilder) declares 2 routes to log messages and process orders.\n Declares an Apache Camel servlet REST endpoint.","technologies":["Kubernetes","OpenShift","ApacheCamel","Spring"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-camel-complete/"},{"id":"413dce2e-a064-5b79-9369-5722f8a56caa","artifactId":"spring-boot-crd","name":"Maven :: Spring Boot - Custom Resources","description":"Spring Boot application using K8s Custom Resources.\n Declares a \"Framework\" Custom Resource Definition.\n Initializes cluster with sample data.\n Declares an endpoint to consume Custom Resource data stored in the cluster.","technologies":["Kubernetes","OpenShift","Spring"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-crd/"},{"id":"e9737f7f-a8d0-565b-91e0-963df0f85015","artifactId":"spring-boot-dekorate","name":"Maven :: Spring Boot - Dekorate","description":"Spring Boot application with Dekorate integration.\n Eclipse JKube uses Dekorate generated cluster configuration manifests.","technologies":["Kubernetes","OpenShift","Spring"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-dekorate/"},{"id":"b58e5dae-59e1-50fb-8bb5-ef9a0b87a977","artifactId":"spring-boot-helm","name":"Maven :: Spring Boot - Helm","description":"Spring Boot application with a single REST endpoint.\n Demonstrates how to generate Helm chart (YAML) files using Eclipse JKube's k8s:helm Maven goal.","technologies":["Kubernetes","OpenShift","Spring"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-helm/"},{"id":"dc5cf0bd-c1a7-540f-aac3-2bb5f5d80f6b","artifactId":"spring-boot-watch","name":"Maven :: Spring Boot Watch","description":"Spring Boot application with a single REST endpoint.\n Demonstrates how to watch for source changes using Eclipse JKube's k8s:watch goal.\n Application gets live reloaded in the cluster each time the project is recompiled (mvn package).","technologies":["Kubernetes","Spring"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-watch/"},{"id":"d6658bfe-e1c0-5e9d-bf68-72899c9bf00b","artifactId":"eclipse-jkube-sample-spring-boot-jib","name":"Maven :: Spring Boot JIB","description":"Spring Boot application with a single REST endpoint.\n Demonstrates how to build a project using Eclipse JKube JIB build strategy.","technologies":["Kubernetes","Spring"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-with-jib/"},{"id":"5f84f68f-8cd3-5c66-9b4f-d0b237d4b403","artifactId":"thorntail","name":"Maven :: Thorntail","description":"Java web application with a single JAX-RS endpoint packaged with Thorntail.","technologies":["Kubernetes","OpenShift","Thorntail"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/thorntail/"},{"id":"cb0b8a1e-7023-54d9-a075-b99f36362d71","artifactId":"vertx","name":"Maven :: Vertx Web","description":"Eclipse Vert.x example application declaring a Simple AbstractVerticle.","technologies":["Kubernetes","OpenShift","Vertx"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/vertx/"},{"id":"5192d8ac-da6f-5a42-aff0-ea2f7473fb56","artifactId":"webapp","name":"Maven :: Webapp","description":"Java Web Application with a static index.html resource.\n Demonstrates how to create a container image with an embedded Apache Tomcat server using Eclipse JKube.","technologies":["Kubernetes","OpenShift"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/webapp/"},{"id":"a8104be8-b753-5914-adf9-b34a70f0d39d","artifactId":"webapp-jetty","name":"Maven :: Webapp Jetty","description":"Java Web Application with a static index.html resource.\n Demonstrates how to create a container image with an embedded Eclipse Jetty server using Eclipse JKube.\n Jetty is used instead of Apache Tomcat because there is a Jetty specific configuration file (jetty-logging.properties).\n Eclipse JKube detects this file and chooses a Jetty specific base container image.","technologies":["Kubernetes","OpenShift"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/webapp-jetty/"},{"id":"08e2ebe5-1f38-5ded-abb4-95bba5f3fd3a","artifactId":"jkube-maven-sample-webapp-wildfly","name":"Maven :: Webapp :: Wildfly","description":"Java Web Application with a static index.html resource.\n Demonstrates how to create a container image with an embedded WildFly server using Eclipse JKube.\n WildFly is used instead of Apache Tomcat because there is a WildFly specific plugin configuration.\n Eclipse JKube detects this plugin and chooses a WildFly specific base container image.","technologies":["Kubernetes","OpenShift"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/webapp-wildfly/"},{"id":"260eef06-4578-55bf-bd76-c3987e8b9fb1","artifactId":"wildfly-jar","name":"Maven :: Wildfly JAR","description":"Java web application with a single JAX-RS endpoint packaged with WildFly Jar Maven Plugin.","technologies":["Kubernetes","OpenShift"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/wildfly-jar/"},{"id":"eea78d7b-2789-5078-b88d-3a90556c08e2","artifactId":"wildfly-jar-slim","name":"Maven :: Wildfly JAR","description":"Java web application with a single JAX-RS endpoint packaged with WildFly Jar Maven Plugin.","technologies":["Kubernetes","OpenShift"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/wildfly-jar-slim/"},{"id":"d8e92d51-4e49-55d6-a753-98a7f9c7b68e","artifactId":"xml-config","name":"Maven :: XML configuration","description":"Apache Camel application.\n Demonstrates how to configure Eclipse JKube build and resource properties using XML elements in the project's pom.xml plugin configuration.","technologies":["Kubernetes","ApacheCamel"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/xml-config/"},{"id":"b0f9e1cc-7c39-58c3-95ec-2e3614b17c38","artifactId":"yaml","name":"Maven :: Yaml","description":"Example showing how to use Eclipse JKube Maven Plugins to deploy cluster configuration YAML files.\n Example with Yaml only resources","technologies":["Kubernetes"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/yaml-only/"},{"id":"8083fab0-707d-55a1-8927-f78e6b4e7208","artifactId":"jkube-maven-sample-zero-config","name":"Maven :: Zero-Config","description":"Spring Boot application with a single REST endpoint.\n Demonstrates Eclipse JKube Zero Configuration capabilities.\n All configurations to create the container image and resource manifests are inferred from the project and its dependencies.","technologies":["Kubernetes","OpenShift","Spring"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/zero-config/"}]}},"pageContext":{"slug":"/quickstarts/","langKey":"en"}},"staticQueryHashes":[]}
\ No newline at end of file
+{"componentChunkName":"component---src-pages-quickstarts-index-jsx","path":"/quickstarts/","result":{"data":{"allQuickstart":{"nodes":[{"id":"f0f3fc59-ac46-5830-a5b5-b83e862d40d3","artifactId":"eclipse-jkube-sample-custom-enricher-parent","name":"Kit :: Custom Istio Enricher Parent","description":"Eclipse JKube Kit example to build and use a Custom Enricher in a SpringBoot Application. It will demonstrate how you can extend Eclipse JKube Kit's Enricher API to make your own enricher and use it to enrich or generate manifests as per your requirements.","technologies":[],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/kit/custom-istio-enricher/"},{"id":"520432b9-a1bf-58f3-8339-9823de83727a","artifactId":"docker-image","name":"Kit :: Docker Image","description":"Eclipse JKube Kit example showing how to generate a Docker image by using Eclipse JKube in standalone mode.","technologies":[],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/kit/docker-image/"},{"id":"dc64b9d1-1cee-53ff-8f64-4661d6c05ba5","artifactId":"dynamic-docker-image-file-multi-layer","name":"Kit :: Docker Image from Multilayer Dockerfile","description":"Eclipse JKube Kit example showing how to Dynamically generate a Docker image.\n The generated image contains multiple COPY statements which allows the generation of a multilayered container image.","technologies":[],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/kit/dynamic-docker-image-file-multi-layer/"},{"id":"0804f96e-3214-5c96-8dd1-8214974f71fa","artifactId":"docker-file-provided","name":"Maven :: Docker File Provided","description":"This quick start showcases how to use Eclipse JKube with external Docker files.\n There are several profiles highlighting the different configuration modes available.","technologies":["Kubernetes","Spring"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/docker-file-provided/"},{"id":"55060235-c1f0-5465-988f-0f16577b004b","artifactId":"docker-file-simple","name":"Maven :: Dockerfile :: Simple","description":"This quickstart showcases how to use Eclipse JKube with external Docker files without any additional configuration.\n Docker file mode is automatically selected when a Dockerfile is detected in the project's root directory.","technologies":["Kubernetes","Spring"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/docker-file-simple/"},{"id":"6cc272ac-8e68-5339-abd5-f85c274b6ff6","artifactId":"external-resources","name":"Maven :: External Resources","description":"Simple Spring Boot application which demonstrates how you can use Eclipse JKube's resource fragments.\n Fragments in `src/main/jkube` directory are detected and picked up by JKube.\n These fragments are then merged with the JKube generated cluster configuration manifests (YAML).","technologies":["Kubernetes","OpenShift","Spring"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/external-resources/"},{"id":"f990a28d-9017-5c42-b8c4-9ff539bc4ae8","artifactId":"helloworld","name":"Maven :: Hello World","description":"Demo project for getting started with Eclipse JKube.\n It just prints \"Hello World\" on command line and exits.","technologies":["Kubernetes"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/hello-world/"},{"id":"01d769fd-227e-570f-8207-3e7d376665e7","artifactId":"javaee8-webprofile-liberty","name":"Maven :: JavaEE 8 WebProfile","description":"Demo project for Jakarta EE 8 WebProfile, IBM WebSphere Liberty is used as a Jakarta EE implementation.\n On Windows or Mac if VirtualBox is used, run the tests using:\n $ mvn clean verify -DtestProxyHost=192.168.99.100","technologies":["Kubernetes"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/ibm-javaee8-webprofile-liberty/"},{"id":"60181794-b5b0-52b9-803b-ab12cc0ee81b","artifactId":"karaf-camel-log","name":"Maven :: Karaf Camel Log","description":"Simple Apache Camel application on top of Apache Karaf that logs a series of messages to the Server log.\n The application also generates and processes random orders using Camel routes.","technologies":["Kubernetes","OpenShift","ApacheCamel","ApacheKaraf"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/karaf-camel-log/"},{"id":"a0f117e8-cdcc-5805-838d-19af11c629fb","artifactId":"micronaut","name":"Maven :: Micronaut","description":"Micronaut application featuring REST endpoints (micronaut-http) with validation (micronaut-validation).","technologies":["Kubernetes","OpenShift"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/micronaut/"},{"id":"ff6f0023-3bbe-5ee0-8bba-9396f5bfc90c","artifactId":"micronaut-customized-image","name":"Maven :: Micronaut customized Image","description":"Micronaut application featuring REST endpoints (micronaut-http) with validation (micronaut-validation).\n\n Includes configuration to enable health check probes (livenessProbe & readinessProbe) using JKube's\n powerful resource fragments and micronaut-management feature.\n\n XML based image configuration compatible with OpenShift and Kubernetes.","technologies":["Kubernetes","OpenShift"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/micronaut-customized-image/"},{"id":"d2af8513-0c9b-511d-8734-cf26543e8cf4","artifactId":"openliberty","name":"Maven :: Open Liberty","description":"JAX-RS application deployed with OpenLiberty and Eclipse JKube.\n The application contains a single endpoint (/hello) that prints 'Hello, World.'.\n An Arquillian based Integration Test is also included.","technologies":["OpenShift","OpenLiberty"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/openliberty/"},{"id":"fbeb2e9f-89cc-57ff-bac8-3cec8050add4","artifactId":"openliberty-microprofile","name":"Maven :: Open Liberty & MicroProfile","description":"How to integrate Eclipse JKube into an OpenLiberty-MicroProfile project as downloaded from start.microprofile.io.\n Includes a JAX-RS endpoint, sample CDI injected configuration, and Liveness and Readiness probes.","technologies":["Kubernetes","OpenShift"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/openliberty-microprofile/"},{"id":"78a4f290-7bfb-501b-87b2-06056fe1737c","artifactId":"quarkus","name":"Maven :: Quarkus","description":"Quarkus application with a single JAX-RS endpoint.\n Demonstrates how to package the project using JVM mode or Native image mode.\n Demonstrates how to build a Quarkus project container with Eclipse JKube's S2I, Docker and JIB build strategies.","technologies":["Kubernetes","OpenShift","Quarkus"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/quarkus/"},{"id":"8c69d157-2ed8-5d45-92bd-7868217ff5f8","artifactId":"quarkus-customized-image","name":"Maven :: Quarkus customized Image","description":"Quarkus application with a single JAX-RS endpoint.\n Demonstrates how to build a Quarkus container image based on a Red Hat container image private registry.\n Uses a pull secret from Red Hat Registry Service Accounts to authenticate.","technologies":["OpenShift","Quarkus"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/quarkus-customized-image/"},{"id":"26ea4bda-5c68-51f8-8265-81b7e04e883f","artifactId":"spring-boot","name":"Maven :: Spring Boot Web","description":"Spring Boot Web application with a single @RestController.\n Shows how to deploy Spring Boot applications to Kubernetes (-Pkubernetes) and OpenShift (-Popenshift) using Eclipse JKube.","technologies":["Kubernetes","OpenShift","Spring"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot/"},{"id":"d14e03d9-b464-5a7e-98c8-4a6952addc01","artifactId":"spring-boot-camel-complete","name":"Maven :: Spring Boot - Camel","description":"Spring Boot application with Camel Spring Boot integration.\n Programmatically (RouteBuilder) declares 2 routes to log messages and process orders.\n Declares an Apache Camel servlet REST endpoint.","technologies":["Kubernetes","OpenShift","ApacheCamel","Spring"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-camel-complete/"},{"id":"413dce2e-a064-5b79-9369-5722f8a56caa","artifactId":"spring-boot-crd","name":"Maven :: Spring Boot - Custom Resources","description":"Spring Boot application using K8s Custom Resources.\n Declares a \"Framework\" Custom Resource Definition.\n Initializes cluster with sample data.\n Declares an endpoint to consume Custom Resource data stored in the cluster.","technologies":["Kubernetes","OpenShift","Spring"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-crd/"},{"id":"e9737f7f-a8d0-565b-91e0-963df0f85015","artifactId":"spring-boot-dekorate","name":"Maven :: Spring Boot - Dekorate","description":"Spring Boot application with Dekorate integration.\n Eclipse JKube uses Dekorate generated cluster configuration manifests.","technologies":["Kubernetes","OpenShift","Spring"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-dekorate/"},{"id":"b58e5dae-59e1-50fb-8bb5-ef9a0b87a977","artifactId":"spring-boot-helm","name":"Maven :: Spring Boot - Helm","description":"Spring Boot application with a single REST endpoint.\n Demonstrates how to generate Helm chart (YAML) files using Eclipse JKube's k8s:helm Maven goal.","technologies":["Kubernetes","OpenShift","Spring"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-helm/"},{"id":"dc5cf0bd-c1a7-540f-aac3-2bb5f5d80f6b","artifactId":"spring-boot-watch","name":"Maven :: Spring Boot Watch","description":"Spring Boot application with a single REST endpoint.\n Demonstrates how to watch for source changes using Eclipse JKube's k8s:watch goal.\n Application gets live reloaded in the cluster each time the project is recompiled (mvn package).","technologies":["Kubernetes","Spring"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-watch/"},{"id":"d6658bfe-e1c0-5e9d-bf68-72899c9bf00b","artifactId":"eclipse-jkube-sample-spring-boot-jib","name":"Maven :: Spring Boot JIB","description":"Spring Boot application with a single REST endpoint.\n Demonstrates how to build a project using Eclipse JKube JIB build strategy.","technologies":["Kubernetes","Spring"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-with-jib/"},{"id":"5f84f68f-8cd3-5c66-9b4f-d0b237d4b403","artifactId":"thorntail","name":"Maven :: Thorntail","description":"Java web application with a single JAX-RS endpoint packaged with Thorntail.","technologies":["Kubernetes","OpenShift","Thorntail"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/thorntail/"},{"id":"cb0b8a1e-7023-54d9-a075-b99f36362d71","artifactId":"vertx","name":"Maven :: Vertx Web","description":"Eclipse Vert.x example application declaring a Simple AbstractVerticle.","technologies":["Kubernetes","OpenShift","Vertx"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/vertx/"},{"id":"5192d8ac-da6f-5a42-aff0-ea2f7473fb56","artifactId":"webapp","name":"Maven :: Webapp","description":"Java Web Application with a static index.html resource.\n Demonstrates how to create a container image with an embedded Apache Tomcat server using Eclipse JKube.","technologies":["Kubernetes","OpenShift"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/webapp/"},{"id":"a8104be8-b753-5914-adf9-b34a70f0d39d","artifactId":"webapp-jetty","name":"Maven :: Webapp Jetty","description":"Java Web Application with a static index.html resource.\n Demonstrates how to create a container image with an embedded Eclipse Jetty server using Eclipse JKube.\n Jetty is used instead of Apache Tomcat because there is a Jetty specific configuration file (jetty-logging.properties).\n Eclipse JKube detects this file and chooses a Jetty specific base container image.","technologies":["Kubernetes","OpenShift"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/webapp-jetty/"},{"id":"08e2ebe5-1f38-5ded-abb4-95bba5f3fd3a","artifactId":"jkube-maven-sample-webapp-wildfly","name":"Maven :: Webapp :: Wildfly","description":"Java Web Application with a static index.html resource.\n Demonstrates how to create a container image with an embedded WildFly server using Eclipse JKube.\n WildFly is used instead of Apache Tomcat because there is a WildFly specific plugin configuration.\n Eclipse JKube detects this plugin and chooses a WildFly specific base container image.","technologies":["Kubernetes","OpenShift"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/webapp-wildfly/"},{"id":"260eef06-4578-55bf-bd76-c3987e8b9fb1","artifactId":"wildfly-jar","name":"Maven :: Wildfly JAR","description":"Java web application with a single JAX-RS endpoint packaged with WildFly Jar Maven Plugin.","technologies":["Kubernetes","OpenShift"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/wildfly-jar/"},{"id":"eea78d7b-2789-5078-b88d-3a90556c08e2","artifactId":"wildfly-jar-slim","name":"Maven :: Wildfly JAR","description":"Java web application with a single JAX-RS endpoint packaged with WildFly Jar Maven Plugin.","technologies":["Kubernetes","OpenShift"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/wildfly-jar-slim/"},{"id":"d8e92d51-4e49-55d6-a753-98a7f9c7b68e","artifactId":"xml-config","name":"Maven :: XML configuration","description":"Apache Camel application.\n Demonstrates how to configure Eclipse JKube build and resource properties using XML elements in the project's pom.xml plugin configuration.","technologies":["Kubernetes","ApacheCamel"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/xml-config/"},{"id":"b0f9e1cc-7c39-58c3-95ec-2e3614b17c38","artifactId":"yaml","name":"Maven :: Yaml","description":"Example showing how to use Eclipse JKube Maven Plugins to deploy cluster configuration YAML files.\n Example with Yaml only resources","technologies":["Kubernetes"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/yaml-only/"},{"id":"8083fab0-707d-55a1-8927-f78e6b4e7208","artifactId":"jkube-maven-sample-zero-config","name":"Maven :: Zero-Config","description":"Spring Boot application with a single REST endpoint.\n Demonstrates Eclipse JKube Zero Configuration capabilities.\n All configurations to create the container image and resource manifests are inferred from the project and its dependencies.","technologies":["Kubernetes","OpenShift","Spring"],"url":"https://github.com/eclipse/jkube/tree/master/quickstarts/maven/zero-config/"}]}},"pageContext":{"slug":"/quickstarts/","langKey":"en"}},"staticQueryHashes":[]}
\ No newline at end of file
diff --git a/polyfill-88d9aed314b16f9b2adc.js b/polyfill-88d9aed314b16f9b2adc.js
deleted file mode 100644
index 4f0d533..0000000
--- a/polyfill-88d9aed314b16f9b2adc.js
+++ /dev/null
@@ -1,2 +0,0 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[8],{VXT5:function(t,e,r){(function(t){!function(){var e="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:void 0!==t?t:"undefined"!=typeof self?self:{};function r(t,e,r){return t(r={path:e,exports:{},require:function(t,e){return function(){throw new Error("Dynamic requires are not currently supported by @rollup/plugin-commonjs")}()}},r.exports),r.exports}var n=function(t){return t&&t.Math==Math&&t},o=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof e&&e)||Function("return this")(),i=function(t){try{return!!t()}catch(t){return!0}},a=!i((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]})),u={}.propertyIsEnumerable,c=Object.getOwnPropertyDescriptor,s={f:c&&!u.call({1:2},1)?function(t){var e=c(this,t);return!!e&&e.enumerable}:u},f=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}},l={}.toString,p=function(t){return l.call(t).slice(8,-1)},h="".split,d=i((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==p(t)?h.call(t,""):Object(t)}:Object,v=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t},g=function(t){return d(v(t))},y=function(t){return"object"==typeof t?null!==t:"function"==typeof t},m=function(t,e){if(!y(t))return t;var r,n;if(e&&"function"==typeof(r=t.toString)&&!y(n=r.call(t)))return n;if("function"==typeof(r=t.valueOf)&&!y(n=r.call(t)))return n;if(!e&&"function"==typeof(r=t.toString)&&!y(n=r.call(t)))return n;throw TypeError("Can't convert object to primitive value")},b={}.hasOwnProperty,S=function(t,e){return b.call(t,e)},w=o.document,E=y(w)&&y(w.createElement),x=function(t){return E?w.createElement(t):{}},O=!a&&!i((function(){return 7!=Object.defineProperty(x("div"),"a",{get:function(){return 7}}).a})),j=Object.getOwnPropertyDescriptor,A={f:a?j:function(t,e){if(t=g(t),e=m(e,!0),O)try{return j(t,e)}catch(t){}if(S(t,e))return f(!s.f.call(t,e),t[e])}},R=function(t){if(!y(t))throw TypeError(String(t)+" is not an object");return t},P=Object.defineProperty,_={f:a?P:function(t,e,r){if(R(t),e=m(e,!0),R(r),O)try{return P(t,e,r)}catch(t){}if("get"in r||"set"in r)throw TypeError("Accessors not supported");return"value"in r&&(t[e]=r.value),t}},T=a?function(t,e,r){return _.f(t,e,f(1,r))}:function(t,e,r){return t[e]=r,t},I=function(t,e){try{T(o,t,e)}catch(n){o[t]=e}return e},M=o["__core-js_shared__"]||I("__core-js_shared__",{}),k=Function.toString;"function"!=typeof M.inspectSource&&(M.inspectSource=function(t){return k.call(t)});var N,L,U,C=M.inspectSource,F=o.WeakMap,D="function"==typeof F&&/native code/.test(C(F)),B=r((function(t){(t.exports=function(t,e){return M[t]||(M[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.6.5",mode:"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})})),W=0,z=Math.random(),K=function(t){return"Symbol("+String(void 0===t?"":t)+")_"+(++W+z).toString(36)},G=B("keys"),V=function(t){return G[t]||(G[t]=K(t))},$={};if(D){var q=new(0,o.WeakMap),H=q.get,X=q.has,Y=q.set;N=function(t,e){return Y.call(q,t,e),e},L=function(t){return H.call(q,t)||{}},U=function(t){return X.call(q,t)}}else{var J=V("state");$[J]=!0,N=function(t,e){return T(t,J,e),e},L=function(t){return S(t,J)?t[J]:{}},U=function(t){return S(t,J)}}var Q,Z={set:N,get:L,has:U,enforce:function(t){return U(t)?L(t):N(t,{})},getterFor:function(t){return function(e){var r;if(!y(e)||(r=L(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return r}}},tt=r((function(t){var e=Z.get,r=Z.enforce,n=String(String).split("String");(t.exports=function(t,e,i,a){var u=!!a&&!!a.unsafe,c=!!a&&!!a.enumerable,s=!!a&&!!a.noTargetGet;"function"==typeof i&&("string"!=typeof e||S(i,"name")||T(i,"name",e),r(i).source=n.join("string"==typeof e?e:"")),t!==o?(u?!s&&t[e]&&(c=!0):delete t[e],c?t[e]=i:T(t,e,i)):c?t[e]=i:I(e,i)})(Function.prototype,"toString",(function(){return"function"==typeof this&&e(this).source||C(this)}))})),et=o,rt=function(t){return"function"==typeof t?t:void 0},nt=function(t,e){return arguments.length<2?rt(et[t])||rt(o[t]):et[t]&&et[t][e]||o[t]&&o[t][e]},ot=Math.ceil,it=Math.floor,at=function(t){return isNaN(t=+t)?0:(t>0?it:ot)(t)},ut=Math.min,ct=function(t){return t>0?ut(at(t),9007199254740991):0},st=Math.max,ft=Math.min,lt=function(t,e){var r=at(t);return r<0?st(r+e,0):ft(r,e)},pt=function(t){return function(e,r,n){var o,i=g(e),a=ct(i.length),u=lt(n,a);if(t&&r!=r){for(;a>u;)if((o=i[u++])!=o)return!0}else for(;a>u;u++)if((t||u in i)&&i[u]===r)return t||u||0;return!t&&-1}},ht={includes:pt(!0),indexOf:pt(!1)},dt=ht.indexOf,vt=function(t,e){var r,n=g(t),o=0,i=[];for(r in n)!S($,r)&&S(n,r)&&i.push(r);for(;e.length>o;)S(n,r=e[o++])&&(~dt(i,r)||i.push(r));return i},gt=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],yt=gt.concat("length","prototype"),mt={f:Object.getOwnPropertyNames||function(t){return vt(t,yt)}},bt={f:Object.getOwnPropertySymbols},St=nt("Reflect","ownKeys")||function(t){var e=mt.f(R(t)),r=bt.f;return r?e.concat(r(t)):e},wt=function(t,e){for(var r=St(e),n=_.f,o=A.f,i=0;i<r.length;i++){var a=r[i];S(t,a)||n(t,a,o(e,a))}},Et=/#|\.prototype\./,xt=function(t,e){var r=jt[Ot(t)];return r==Rt||r!=At&&("function"==typeof e?i(e):!!e)},Ot=xt.normalize=function(t){return String(t).replace(Et,".").toLowerCase()},jt=xt.data={},At=xt.NATIVE="N",Rt=xt.POLYFILL="P",Pt=xt,_t=A.f,Tt=function(t,e){var r,n,i,a,u,c=t.target,s=t.global,f=t.stat;if(r=s?o:f?o[c]||I(c,{}):(o[c]||{}).prototype)for(n in e){if(a=e[n],i=t.noTargetGet?(u=_t(r,n))&&u.value:r[n],!Pt(s?n:c+(f?".":"#")+n,t.forced)&&void 0!==i){if(typeof a==typeof i)continue;wt(a,i)}(t.sham||i&&i.sham)&&T(a,"sham",!0),tt(r,n,a,t)}},It=function(t){return Object(v(t))},Mt=Math.min,kt=[].copyWithin||function(t,e){var r=It(this),n=ct(r.length),o=lt(t,n),i=lt(e,n),a=arguments.length>2?arguments[2]:void 0,u=Mt((void 0===a?n:lt(a,n))-i,n-o),c=1;for(i<o&&o<i+u&&(c=-1,i+=u-1,o+=u-1);u-- >0;)i in r?r[o]=r[i]:delete r[o],o+=c,i+=c;return r},Nt=!!Object.getOwnPropertySymbols&&!i((function(){return!String(Symbol())})),Lt=Nt&&!Symbol.sham&&"symbol"==typeof Symbol.iterator,Ut=B("wks"),Ct=o.Symbol,Ft=Lt?Ct:Ct&&Ct.withoutSetter||K,Dt=function(t){return S(Ut,t)||(Ut[t]=Nt&&S(Ct,t)?Ct[t]:Ft("Symbol."+t)),Ut[t]},Bt=Object.keys||function(t){return vt(t,gt)},Wt=a?Object.defineProperties:function(t,e){R(t);for(var r,n=Bt(e),o=n.length,i=0;o>i;)_.f(t,r=n[i++],e[r]);return t},zt=nt("document","documentElement"),Kt=V("IE_PROTO"),Gt=function(){},Vt=function(t){return"<script>"+t+"<\/script>"},$t=function(){try{Q=document.domain&&new ActiveXObject("htmlfile")}catch(t){}var t,e;$t=Q?function(t){t.write(Vt("")),t.close();var e=t.parentWindow.Object;return t=null,e}(Q):((e=x("iframe")).style.display="none",zt.appendChild(e),e.src=String("javascript:"),(t=e.contentWindow.document).open(),t.write(Vt("document.F=Object")),t.close(),t.F);for(var r=gt.length;r--;)delete $t.prototype[gt[r]];return $t()};$[Kt]=!0;var qt=Object.create||function(t,e){var r;return null!==t?(Gt.prototype=R(t),r=new Gt,Gt.prototype=null,r[Kt]=t):r=$t(),void 0===e?r:Wt(r,e)},Ht=Dt("unscopables"),Xt=Array.prototype;null==Xt[Ht]&&_.f(Xt,Ht,{configurable:!0,value:qt(null)});var Yt=function(t){Xt[Ht][t]=!0};Tt({target:"Array",proto:!0},{copyWithin:kt}),Yt("copyWithin");var Jt=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t},Qt=function(t,e,r){if(Jt(t),void 0===e)return t;switch(r){case 0:return function(){return t.call(e)};case 1:return function(r){return t.call(e,r)};case 2:return function(r,n){return t.call(e,r,n)};case 3:return function(r,n,o){return t.call(e,r,n,o)}}return function(){return t.apply(e,arguments)}},Zt=Function.call,te=function(t,e,r){return Qt(Zt,o[t].prototype[e],r)};te("Array","copyWithin"),Tt({target:"Array",proto:!0},{fill:function(t){for(var e=It(this),r=ct(e.length),n=arguments.length,o=lt(n>1?arguments[1]:void 0,r),i=n>2?arguments[2]:void 0,a=void 0===i?r:lt(i,r);a>o;)e[o++]=t;return e}}),Yt("fill"),te("Array","fill");var ee=Array.isArray||function(t){return"Array"==p(t)},re=Dt("species"),ne=function(t,e){var r;return ee(t)&&("function"!=typeof(r=t.constructor)||r!==Array&&!ee(r.prototype)?y(r)&&null===(r=r[re])&&(r=void 0):r=void 0),new(void 0===r?Array:r)(0===e?0:e)},oe=[].push,ie=function(t){var e=1==t,r=2==t,n=3==t,o=4==t,i=6==t,a=5==t||i;return function(u,c,s,f){for(var l,p,h=It(u),v=d(h),g=Qt(c,s,3),y=ct(v.length),m=0,b=f||ne,S=e?b(u,y):r?b(u,0):void 0;y>m;m++)if((a||m in v)&&(p=g(l=v[m],m,h),t))if(e)S[m]=p;else if(p)switch(t){case 3:return!0;case 5:return l;case 6:return m;case 2:oe.call(S,l)}else if(o)return!1;return i?-1:n||o?o:S}},ae={forEach:ie(0),map:ie(1),filter:ie(2),some:ie(3),every:ie(4),find:ie(5),findIndex:ie(6)},ue=Object.defineProperty,ce={},se=function(t){throw t},fe=function(t,e){if(S(ce,t))return ce[t];e||(e={});var r=[][t],n=!!S(e,"ACCESSORS")&&e.ACCESSORS,o=S(e,0)?e[0]:se,u=S(e,1)?e[1]:void 0;return ce[t]=!!r&&!i((function(){if(n&&!a)return!0;var t={length:-1};n?ue(t,1,{enumerable:!0,get:se}):t[1]=1,r.call(t,o,u)}))},le=ae.find,pe=!0,he=fe("find");"find"in[]&&Array(1).find((function(){pe=!1})),Tt({target:"Array",proto:!0,forced:pe||!he},{find:function(t){return le(this,t,arguments.length>1?arguments[1]:void 0)}}),Yt("find"),te("Array","find");var de=ae.findIndex,ve=!0,ge=fe("findIndex");"findIndex"in[]&&Array(1).findIndex((function(){ve=!1})),Tt({target:"Array",proto:!0,forced:ve||!ge},{findIndex:function(t){return de(this,t,arguments.length>1?arguments[1]:void 0)}}),Yt("findIndex"),te("Array","findIndex");var ye=function t(e,r,n,o,i,a,u,c){for(var s,f=i,l=0,p=!!u&&Qt(u,c,3);l<o;){if(l in n){if(s=p?p(n[l],l,r):n[l],a>0&&ee(s))f=t(e,r,s,ct(s.length),f,a-1)-1;else{if(f>=9007199254740991)throw TypeError("Exceed the acceptable array length");e[f]=s}f++}l++}return f};Tt({target:"Array",proto:!0},{flatMap:function(t){var e,r=It(this),n=ct(r.length);return Jt(t),(e=ne(r,0)).length=ye(e,r,r,n,0,1,t,arguments.length>1?arguments[1]:void 0),e}}),Yt("flatMap"),te("Array","flatMap"),Tt({target:"Array",proto:!0},{flat:function(){var t=arguments.length?arguments[0]:void 0,e=It(this),r=ct(e.length),n=ne(e,0);return n.length=ye(n,e,e,r,0,void 0===t?1:at(t)),n}}),Yt("flat"),te("Array","flat");var me,be,Se,we=function(t){return function(e,r){var n,o,i=String(v(e)),a=at(r),u=i.length;return a<0||a>=u?t?"":void 0:(n=i.charCodeAt(a))<55296||n>56319||a+1===u||(o=i.charCodeAt(a+1))<56320||o>57343?t?i.charAt(a):n:t?i.slice(a,a+2):o-56320+(n-55296<<10)+65536}},Ee={codeAt:we(!1),charAt:we(!0)},xe=!i((function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype})),Oe=V("IE_PROTO"),je=Object.prototype,Ae=xe?Object.getPrototypeOf:function(t){return t=It(t),S(t,Oe)?t[Oe]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?je:null},Re=Dt("iterator"),Pe=!1;[].keys&&("next"in(Se=[].keys())?(be=Ae(Ae(Se)))!==Object.prototype&&(me=be):Pe=!0),null==me&&(me={}),S(me,Re)||T(me,Re,(function(){return this}));var _e={IteratorPrototype:me,BUGGY_SAFARI_ITERATORS:Pe},Te=_.f,Ie=Dt("toStringTag"),Me=function(t,e,r){t&&!S(t=r?t:t.prototype,Ie)&&Te(t,Ie,{configurable:!0,value:e})},ke={},Ne=_e.IteratorPrototype,Le=function(){return this},Ue=function(t){if(!y(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t},Ce=Object.setPrototypeOf||("__proto__"in{}?function(){var t,e=!1,r={};try{(t=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set).call(r,[]),e=r instanceof Array}catch(t){}return function(r,n){return R(r),Ue(n),e?t.call(r,n):r.__proto__=n,r}}():void 0),Fe=_e.IteratorPrototype,De=_e.BUGGY_SAFARI_ITERATORS,Be=Dt("iterator"),We=function(){return this},ze=function(t,e,r,n,o,i,a){!function(t,e,r){var n=e+" Iterator";t.prototype=qt(Ne,{next:f(1,r)}),Me(t,n,!1),ke[n]=Le}(r,e,n);var u,c,s,l=function(t){if(t===o&&g)return g;if(!De&&t in d)return d[t];switch(t){case"keys":case"values":case"entries":return function(){return new r(this,t)}}return function(){return new r(this)}},p=e+" Iterator",h=!1,d=t.prototype,v=d[Be]||d["@@iterator"]||o&&d[o],g=!De&&v||l(o),y="Array"==e&&d.entries||v;if(y&&(u=Ae(y.call(new t)),Fe!==Object.prototype&&u.next&&(Ae(u)!==Fe&&(Ce?Ce(u,Fe):"function"!=typeof u[Be]&&T(u,Be,We)),Me(u,p,!0))),"values"==o&&v&&"values"!==v.name&&(h=!0,g=function(){return v.call(this)}),d[Be]!==g&&T(d,Be,g),ke[e]=g,o)if(c={values:l("values"),keys:i?g:l("keys"),entries:l("entries")},a)for(s in c)(De||h||!(s in d))&&tt(d,s,c[s]);else Tt({target:e,proto:!0,forced:De||h},c);return c},Ke=Ee.charAt,Ge=Z.set,Ve=Z.getterFor("String Iterator");ze(String,"String",(function(t){Ge(this,{type:"String Iterator",string:String(t),index:0})}),(function(){var t,e=Ve(this),r=e.string,n=e.index;return n>=r.length?{value:void 0,done:!0}:(t=Ke(r,n),e.index+=t.length,{value:t,done:!1})}));var $e=function(t,e,r,n){try{return n?e(R(r)[0],r[1]):e(r)}catch(e){var o=t.return;throw void 0!==o&&R(o.call(t)),e}},qe=Dt("iterator"),He=Array.prototype,Xe=function(t){return void 0!==t&&(ke.Array===t||He[qe]===t)},Ye=function(t,e,r){var n=m(e);n in t?_.f(t,n,f(0,r)):t[n]=r},Je={};Je[Dt("toStringTag")]="z";var Qe="[object z]"===String(Je),Ze=Dt("toStringTag"),tr="Arguments"==p(function(){return arguments}()),er=Qe?p:function(t){var e,r,n;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(r=function(t,e){try{return t[e]}catch(t){}}(e=Object(t),Ze))?r:tr?p(e):"Object"==(n=p(e))&&"function"==typeof e.callee?"Arguments":n},rr=Dt("iterator"),nr=function(t){if(null!=t)return t[rr]||t["@@iterator"]||ke[er(t)]},or=Dt("iterator"),ir=!1;try{var ar=0,ur={next:function(){return{done:!!ar++}},return:function(){ir=!0}};ur[or]=function(){return this},Array.from(ur,(function(){throw 2}))}catch(e){}var cr=function(t,e){if(!e&&!ir)return!1;var r=!1;try{var n={};n[or]=function(){return{next:function(){return{done:r=!0}}}},t(n)}catch(t){}return r},sr=!cr((function(t){Array.from(t)}));Tt({target:"Array",stat:!0,forced:sr},{from:function(t){var e,r,n,o,i,a,u=It(t),c="function"==typeof this?this:Array,s=arguments.length,f=s>1?arguments[1]:void 0,l=void 0!==f,p=nr(u),h=0;if(l&&(f=Qt(f,s>2?arguments[2]:void 0,2)),null==p||c==Array&&Xe(p))for(r=new c(e=ct(u.length));e>h;h++)a=l?f(u[h],h):u[h],Ye(r,h,a);else for(i=(o=p.call(u)).next,r=new c;!(n=i.call(o)).done;h++)a=l?$e(o,f,[n.value,h],!0):n.value,Ye(r,h,a);return r.length=h,r}});var fr=ht.includes,lr=fe("indexOf",{ACCESSORS:!0,1:0});Tt({target:"Array",proto:!0,forced:!lr},{includes:function(t){return fr(this,t,arguments.length>1?arguments[1]:void 0)}}),Yt("includes"),te("Array","includes");var pr=Z.set,hr=Z.getterFor("Array Iterator"),dr=ze(Array,"Array",(function(t,e){pr(this,{type:"Array Iterator",target:g(t),index:0,kind:e})}),(function(){var t=hr(this),e=t.target,r=t.kind,n=t.index++;return!e||n>=e.length?(t.target=void 0,{value:void 0,done:!0}):"keys"==r?{value:n,done:!1}:"values"==r?{value:e[n],done:!1}:{value:[n,e[n]],done:!1}}),"values");ke.Arguments=ke.Array,Yt("keys"),Yt("values"),Yt("entries"),te("Array","values");var vr=i((function(){function t(){}return!(Array.of.call(t)instanceof t)}));Tt({target:"Array",stat:!0,forced:vr},{of:function(){for(var t=0,e=arguments.length,r=new("function"==typeof this?this:Array)(e);e>t;)Ye(r,t,arguments[t++]);return r.length=e,r}});var gr=Dt("hasInstance"),yr=Function.prototype;gr in yr||_.f(yr,gr,{value:function(t){if("function"!=typeof this||!y(t))return!1;if(!y(this.prototype))return t instanceof this;for(;t=Ae(t);)if(this.prototype===t)return!0;return!1}}),Dt("hasInstance");var mr=Function.prototype,br=mr.toString,Sr=/^\s*function ([^ (]*)/;a&&!("name"in mr)&&(0,_.f)(mr,"name",{configurable:!0,get:function(){try{return br.call(this).match(Sr)[1]}catch(e){return""}}});var wr=!i((function(){return Object.isExtensible(Object.preventExtensions({}))})),Er=r((function(t){var e=_.f,r=K("meta"),n=0,o=Object.isExtensible||function(){return!0},i=function(t){e(t,r,{value:{objectID:"O"+ ++n,weakData:{}}})},a=t.exports={REQUIRED:!1,fastKey:function(t,e){if(!y(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!S(t,r)){if(!o(t))return"F";if(!e)return"E";i(t)}return t[r].objectID},getWeakData:function(t,e){if(!S(t,r)){if(!o(t))return!0;if(!e)return!1;i(t)}return t[r].weakData},onFreeze:function(t){return wr&&a.REQUIRED&&o(t)&&!S(t,r)&&i(t),t}};$[r]=!0})),xr=r((function(t){var e=function(t,e){this.stopped=t,this.result=e};(t.exports=function(t,r,n,o,i){var a,u,c,s,f,l,p,h=Qt(r,n,o?2:1);if(i)a=t;else{if("function"!=typeof(u=nr(t)))throw TypeError("Target is not iterable");if(Xe(u)){for(c=0,s=ct(t.length);s>c;c++)if((f=o?h(R(p=t[c])[0],p[1]):h(t[c]))&&f instanceof e)return f;return new e(!1)}a=u.call(t)}for(l=a.next;!(p=l.call(a)).done;)if("object"==typeof(f=$e(a,h,p.value,o))&&f&&f instanceof e)return f;return new e(!1)}).stop=function(t){return new e(!0,t)}})),Or=function(t,e,r){if(!(t instanceof e))throw TypeError("Incorrect "+(r?r+" ":"")+"invocation");return t},jr=function(t,e,r){var n,o;return Ce&&"function"==typeof(n=e.constructor)&&n!==r&&y(o=n.prototype)&&o!==r.prototype&&Ce(t,o),t},Ar=function(t,e,r){var n=-1!==t.indexOf("Map"),a=-1!==t.indexOf("Weak"),u=n?"set":"add",c=o[t],s=c&&c.prototype,f=c,l={},p=function(t){var e=s[t];tt(s,t,"add"==t?function(t){return e.call(this,0===t?0:t),this}:"delete"==t?function(t){return!(a&&!y(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return a&&!y(t)?void 0:e.call(this,0===t?0:t)}:"has"==t?function(t){return!(a&&!y(t))&&e.call(this,0===t?0:t)}:function(t,r){return e.call(this,0===t?0:t,r),this})};if(Pt(t,"function"!=typeof c||!(a||s.forEach&&!i((function(){(new c).entries().next()})))))f=r.getConstructor(e,t,n,u),Er.REQUIRED=!0;else if(Pt(t,!0)){var h=new f,d=h[u](a?{}:-0,1)!=h,v=i((function(){h.has(1)})),g=cr((function(t){new c(t)})),m=!a&&i((function(){for(var t=new c,e=5;e--;)t[u](e,e);return!t.has(-0)}));g||((f=e((function(e,r){Or(e,f,t);var o=jr(new c,e,f);return null!=r&&xr(r,o[u],o,n),o}))).prototype=s,s.constructor=f),(v||m)&&(p("delete"),p("has"),n&&p("get")),(m||d)&&p(u),a&&s.clear&&delete s.clear}return l[t]=f,Tt({global:!0,forced:f!=c},l),Me(f,t),a||r.setStrong(f,t,n),f},Rr=function(t,e,r){for(var n in e)tt(t,n,e[n],r);return t},Pr=Dt("species"),_r=function(t){var e=nt(t);a&&e&&!e[Pr]&&(0,_.f)(e,Pr,{configurable:!0,get:function(){return this}})},Tr=_.f,Ir=Er.fastKey,Mr=Z.set,kr=Z.getterFor,Nr={getConstructor:function(t,e,r,n){var o=t((function(t,i){Or(t,o,e),Mr(t,{type:e,index:qt(null),first:void 0,last:void 0,size:0}),a||(t.size=0),null!=i&&xr(i,t[n],t,r)})),i=kr(e),u=function(t,e,r){var n,o,u=i(t),s=c(t,e);return s?s.value=r:(u.last=s={index:o=Ir(e,!0),key:e,value:r,previous:n=u.last,next:void 0,removed:!1},u.first||(u.first=s),n&&(n.next=s),a?u.size++:t.size++,"F"!==o&&(u.index[o]=s)),t},c=function(t,e){var r,n=i(t),o=Ir(e);if("F"!==o)return n.index[o];for(r=n.first;r;r=r.next)if(r.key==e)return r};return Rr(o.prototype,{clear:function(){for(var t=i(this),e=t.index,r=t.first;r;)r.removed=!0,r.previous&&(r.previous=r.previous.next=void 0),delete e[r.index],r=r.next;t.first=t.last=void 0,a?t.size=0:this.size=0},delete:function(t){var e=i(this),r=c(this,t);if(r){var n=r.next,o=r.previous;delete e.index[r.index],r.removed=!0,o&&(o.next=n),n&&(n.previous=o),e.first==r&&(e.first=n),e.last==r&&(e.last=o),a?e.size--:this.size--}return!!r},forEach:function(t){for(var e,r=i(this),n=Qt(t,arguments.length>1?arguments[1]:void 0,3);e=e?e.next:r.first;)for(n(e.value,e.key,this);e&&e.removed;)e=e.previous},has:function(t){return!!c(this,t)}}),Rr(o.prototype,r?{get:function(t){var e=c(this,t);return e&&e.value},set:function(t,e){return u(this,0===t?0:t,e)}}:{add:function(t){return u(this,t=0===t?0:t,t)}}),a&&Tr(o.prototype,"size",{get:function(){return i(this).size}}),o},setStrong:function(t,e,r){var n=e+" Iterator",o=kr(e),i=kr(n);ze(t,e,(function(t,e){Mr(this,{type:n,target:t,state:o(t),kind:e,last:void 0})}),(function(){for(var t=i(this),e=t.kind,r=t.last;r&&r.removed;)r=r.previous;return t.target&&(t.last=r=r?r.next:t.state.first)?"keys"==e?{value:r.key,done:!1}:"values"==e?{value:r.value,done:!1}:{value:[r.key,r.value],done:!1}:(t.target=void 0,{value:void 0,done:!0})}),r?"entries":"values",!r,!0),_r(e)}},Lr=Ar("Map",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),Nr);Qe||tt(Object.prototype,"toString",Qe?{}.toString:function(){return"[object "+er(this)+"]"},{unsafe:!0});var Ur={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0},Cr=Dt("iterator"),Fr=Dt("toStringTag"),Dr=dr.values;for(var Br in Ur){var Wr=o[Br],zr=Wr&&Wr.prototype;if(zr){if(zr[Cr]!==Dr)try{T(zr,Cr,Dr)}catch(e){zr[Cr]=Dr}if(zr[Fr]||T(zr,Fr,Br),Ur[Br])for(var Kr in dr)if(zr[Kr]!==dr[Kr])try{T(zr,Kr,dr[Kr])}catch(e){zr[Kr]=dr[Kr]}}}var Gr=function(t){var e,r,n,o,i=arguments.length,a=i>1?arguments[1]:void 0;return Jt(this),(e=void 0!==a)&&Jt(a),null==t?new this:(r=[],e?(n=0,o=Qt(a,i>2?arguments[2]:void 0,2),xr(t,(function(t){r.push(o(t,n++))}))):xr(t,r.push,r),new this(r))};Tt({target:"Map",stat:!0},{from:Gr});var Vr=function(){for(var t=arguments.length,e=new Array(t);t--;)e[t]=arguments[t];return new this(e)};Tt({target:"Map",stat:!0},{of:Vr});var $r=function(){for(var t,e=R(this),r=Jt(e.delete),n=!0,o=0,i=arguments.length;o<i;o++)t=r.call(e,arguments[o]),n=n&&t;return!!n};Tt({target:"Map",proto:!0,real:!0,forced:!1},{deleteAll:function(){return $r.apply(this,arguments)}});var qr=function(t){return Map.prototype.entries.call(t)};Tt({target:"Map",proto:!0,real:!0,forced:!1},{every:function(t){var e=R(this),r=qr(e),n=Qt(t,arguments.length>1?arguments[1]:void 0,3);return!xr(r,(function(t,r){if(!n(r,t,e))return xr.stop()}),void 0,!0,!0).stopped}});var Hr=Dt("species"),Xr=function(t,e){var r,n=R(t).constructor;return void 0===n||null==(r=R(n)[Hr])?e:Jt(r)};Tt({target:"Map",proto:!0,real:!0,forced:!1},{filter:function(t){var e=R(this),r=qr(e),n=Qt(t,arguments.length>1?arguments[1]:void 0,3),o=new(Xr(e,nt("Map"))),i=Jt(o.set);return xr(r,(function(t,r){n(r,t,e)&&i.call(o,t,r)}),void 0,!0,!0),o}}),Tt({target:"Map",proto:!0,real:!0,forced:!1},{find:function(t){var e=R(this),r=qr(e),n=Qt(t,arguments.length>1?arguments[1]:void 0,3);return xr(r,(function(t,r){if(n(r,t,e))return xr.stop(r)}),void 0,!0,!0).result}}),Tt({target:"Map",proto:!0,real:!0,forced:!1},{findKey:function(t){var e=R(this),r=qr(e),n=Qt(t,arguments.length>1?arguments[1]:void 0,3);return xr(r,(function(t,r){if(n(r,t,e))return xr.stop(t)}),void 0,!0,!0).result}}),Tt({target:"Map",stat:!0},{groupBy:function(t,e){var r=new this;Jt(e);var n=Jt(r.has),o=Jt(r.get),i=Jt(r.set);return xr(t,(function(t){var a=e(t);n.call(r,a)?o.call(r,a).push(t):i.call(r,a,[t])})),r}}),Tt({target:"Map",proto:!0,real:!0,forced:!1},{includes:function(t){return xr(qr(R(this)),(function(e,r){if((n=r)===(o=t)||n!=n&&o!=o)return xr.stop();var n,o}),void 0,!0,!0).stopped}}),Tt({target:"Map",stat:!0},{keyBy:function(t,e){var r=new this;Jt(e);var n=Jt(r.set);return xr(t,(function(t){n.call(r,e(t),t)})),r}}),Tt({target:"Map",proto:!0,real:!0,forced:!1},{keyOf:function(t){return xr(qr(R(this)),(function(e,r){if(r===t)return xr.stop(e)}),void 0,!0,!0).result}}),Tt({target:"Map",proto:!0,real:!0,forced:!1},{mapKeys:function(t){var e=R(this),r=qr(e),n=Qt(t,arguments.length>1?arguments[1]:void 0,3),o=new(Xr(e,nt("Map"))),i=Jt(o.set);return xr(r,(function(t,r){i.call(o,n(r,t,e),r)}),void 0,!0,!0),o}}),Tt({target:"Map",proto:!0,real:!0,forced:!1},{mapValues:function(t){var e=R(this),r=qr(e),n=Qt(t,arguments.length>1?arguments[1]:void 0,3),o=new(Xr(e,nt("Map"))),i=Jt(o.set);return xr(r,(function(t,r){i.call(o,t,n(r,t,e))}),void 0,!0,!0),o}}),Tt({target:"Map",proto:!0,real:!0,forced:!1},{merge:function(t){for(var e=R(this),r=Jt(e.set),n=0;n<arguments.length;)xr(arguments[n++],r,e,!0);return e}}),Tt({target:"Map",proto:!0,real:!0,forced:!1},{reduce:function(t){var e=R(this),r=qr(e),n=arguments.length<2,o=n?void 0:arguments[1];if(Jt(t),xr(r,(function(r,i){n?(n=!1,o=i):o=t(o,i,r,e)}),void 0,!0,!0),n)throw TypeError("Reduce of empty map with no initial value");return o}}),Tt({target:"Map",proto:!0,real:!0,forced:!1},{some:function(t){var e=R(this),r=qr(e),n=Qt(t,arguments.length>1?arguments[1]:void 0,3);return xr(r,(function(t,r){if(n(r,t,e))return xr.stop()}),void 0,!0,!0).stopped}}),Tt({target:"Map",proto:!0,real:!0,forced:!1},{update:function(t,e){var r=R(this),n=arguments.length;Jt(e);var o=r.has(t);if(!o&&n<3)throw TypeError("Updating absent value");var i=o?r.get(t):Jt(n>2?arguments[2]:void 0)(t,r);return r.set(t,e(i,t,r)),r}});var Yr=function(t,e){var r,n=R(this),o=arguments.length>2?arguments[2]:void 0;if("function"!=typeof e&&"function"!=typeof o)throw TypeError("At least one callback required");return n.has(t)?(r=n.get(t),"function"==typeof e&&(r=e(r),n.set(t,r))):"function"==typeof o&&(r=o(),n.set(t,r)),r};Tt({target:"Map",proto:!0,real:!0,forced:!1},{upsert:Yr}),Tt({target:"Map",proto:!0,real:!0,forced:!1},{updateOrInsert:Yr});var Jr=Ar("Set",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),Nr);Tt({target:"Set",stat:!0},{from:Gr}),Tt({target:"Set",stat:!0},{of:Vr});var Qr=function(){for(var t=R(this),e=Jt(t.add),r=0,n=arguments.length;r<n;r++)e.call(t,arguments[r]);return t};Tt({target:"Set",proto:!0,real:!0,forced:!1},{addAll:function(){return Qr.apply(this,arguments)}}),Tt({target:"Set",proto:!0,real:!0,forced:!1},{deleteAll:function(){return $r.apply(this,arguments)}});var Zr=function(t){return Set.prototype.values.call(t)};Tt({target:"Set",proto:!0,real:!0,forced:!1},{every:function(t){var e=R(this),r=Zr(e),n=Qt(t,arguments.length>1?arguments[1]:void 0,3);return!xr(r,(function(t){if(!n(t,t,e))return xr.stop()}),void 0,!1,!0).stopped}}),Tt({target:"Set",proto:!0,real:!0,forced:!1},{difference:function(t){var e=R(this),r=new(Xr(e,nt("Set")))(e),n=Jt(r.delete);return xr(t,(function(t){n.call(r,t)})),r}}),Tt({target:"Set",proto:!0,real:!0,forced:!1},{filter:function(t){var e=R(this),r=Zr(e),n=Qt(t,arguments.length>1?arguments[1]:void 0,3),o=new(Xr(e,nt("Set"))),i=Jt(o.add);return xr(r,(function(t){n(t,t,e)&&i.call(o,t)}),void 0,!1,!0),o}}),Tt({target:"Set",proto:!0,real:!0,forced:!1},{find:function(t){var e=R(this),r=Zr(e),n=Qt(t,arguments.length>1?arguments[1]:void 0,3);return xr(r,(function(t){if(n(t,t,e))return xr.stop(t)}),void 0,!1,!0).result}}),Tt({target:"Set",proto:!0,real:!0,forced:!1},{intersection:function(t){var e=R(this),r=new(Xr(e,nt("Set"))),n=Jt(e.has),o=Jt(r.add);return xr(t,(function(t){n.call(e,t)&&o.call(r,t)})),r}}),Tt({target:"Set",proto:!0,real:!0,forced:!1},{isDisjointFrom:function(t){var e=R(this),r=Jt(e.has);return!xr(t,(function(t){if(!0===r.call(e,t))return xr.stop()})).stopped}}),Tt({target:"Set",proto:!0,real:!0,forced:!1},{isSubsetOf:function(t){var e=function(t){var e=nr(t);if("function"!=typeof e)throw TypeError(String(t)+" is not iterable");return R(e.call(t))}(this),r=R(t),n=r.has;return"function"!=typeof n&&(r=new(nt("Set"))(t),n=Jt(r.has)),!xr(e,(function(t){if(!1===n.call(r,t))return xr.stop()}),void 0,!1,!0).stopped}}),Tt({target:"Set",proto:!0,real:!0,forced:!1},{isSupersetOf:function(t){var e=R(this),r=Jt(e.has);return!xr(t,(function(t){if(!1===r.call(e,t))return xr.stop()})).stopped}}),Tt({target:"Set",proto:!0,real:!0,forced:!1},{join:function(t){var e=R(this),r=Zr(e),n=void 0===t?",":String(t),o=[];return xr(r,o.push,o,!1,!0),o.join(n)}}),Tt({target:"Set",proto:!0,real:!0,forced:!1},{map:function(t){var e=R(this),r=Zr(e),n=Qt(t,arguments.length>1?arguments[1]:void 0,3),o=new(Xr(e,nt("Set"))),i=Jt(o.add);return xr(r,(function(t){i.call(o,n(t,t,e))}),void 0,!1,!0),o}}),Tt({target:"Set",proto:!0,real:!0,forced:!1},{reduce:function(t){var e=R(this),r=Zr(e),n=arguments.length<2,o=n?void 0:arguments[1];if(Jt(t),xr(r,(function(r){n?(n=!1,o=r):o=t(o,r,r,e)}),void 0,!1,!0),n)throw TypeError("Reduce of empty set with no initial value");return o}}),Tt({target:"Set",proto:!0,real:!0,forced:!1},{some:function(t){var e=R(this),r=Zr(e),n=Qt(t,arguments.length>1?arguments[1]:void 0,3);return xr(r,(function(t){if(n(t,t,e))return xr.stop()}),void 0,!1,!0).stopped}}),Tt({target:"Set",proto:!0,real:!0,forced:!1},{symmetricDifference:function(t){var e=R(this),r=new(Xr(e,nt("Set")))(e),n=Jt(r.delete),o=Jt(r.add);return xr(t,(function(t){n.call(r,t)||o.call(r,t)})),r}}),Tt({target:"Set",proto:!0,real:!0,forced:!1},{union:function(t){var e=R(this),r=new(Xr(e,nt("Set")))(e);return xr(t,Jt(r.add),r),r}});var tn=Er.getWeakData,en=Z.set,rn=Z.getterFor,nn=ae.find,on=ae.findIndex,an=0,un=function(t){return t.frozen||(t.frozen=new cn)},cn=function(){this.entries=[]},sn=function(t,e){return nn(t.entries,(function(t){return t[0]===e}))};cn.prototype={get:function(t){var e=sn(this,t);if(e)return e[1]},has:function(t){return!!sn(this,t)},set:function(t,e){var r=sn(this,t);r?r[1]=e:this.entries.push([t,e])},delete:function(t){var e=on(this.entries,(function(e){return e[0]===t}));return~e&&this.entries.splice(e,1),!!~e}};var fn={getConstructor:function(t,e,r,n){var o=t((function(t,i){Or(t,o,e),en(t,{type:e,id:an++,frozen:void 0}),null!=i&&xr(i,t[n],t,r)})),i=rn(e),a=function(t,e,r){var n=i(t),o=tn(R(e),!0);return!0===o?un(n).set(e,r):o[n.id]=r,t};return Rr(o.prototype,{delete:function(t){var e=i(this);if(!y(t))return!1;var r=tn(t);return!0===r?un(e).delete(t):r&&S(r,e.id)&&delete r[e.id]},has:function(t){var e=i(this);if(!y(t))return!1;var r=tn(t);return!0===r?un(e).has(t):r&&S(r,e.id)}}),Rr(o.prototype,r?{get:function(t){var e=i(this);if(y(t)){var r=tn(t);return!0===r?un(e).get(t):r?r[e.id]:void 0}},set:function(t,e){return a(this,t,e)}}:{add:function(t){return a(this,t,!0)}}),o}},ln=r((function(t){var e,r=Z.enforce,n=!o.ActiveXObject&&"ActiveXObject"in o,i=Object.isExtensible,a=function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},u=t.exports=Ar("WeakMap",a,fn);if(D&&n){e=fn.getConstructor(a,"WeakMap",!0),Er.REQUIRED=!0;var c=u.prototype,s=c.delete,f=c.has,l=c.get,p=c.set;Rr(c,{delete:function(t){if(y(t)&&!i(t)){var n=r(this);return n.frozen||(n.frozen=new e),s.call(this,t)||n.frozen.delete(t)}return s.call(this,t)},has:function(t){if(y(t)&&!i(t)){var n=r(this);return n.frozen||(n.frozen=new e),f.call(this,t)||n.frozen.has(t)}return f.call(this,t)},get:function(t){if(y(t)&&!i(t)){var n=r(this);return n.frozen||(n.frozen=new e),f.call(this,t)?l.call(this,t):n.frozen.get(t)}return l.call(this,t)},set:function(t,n){if(y(t)&&!i(t)){var o=r(this);o.frozen||(o.frozen=new e),f.call(this,t)?p.call(this,t,n):o.frozen.set(t,n)}else p.call(this,t,n);return this}})}}));Tt({target:"WeakMap",stat:!0},{from:Gr}),Tt({target:"WeakMap",stat:!0},{of:Vr}),Tt({target:"WeakMap",proto:!0,real:!0,forced:!1},{deleteAll:function(){return $r.apply(this,arguments)}}),Tt({target:"WeakMap",proto:!0,real:!0,forced:!1},{upsert:Yr}),Ar("WeakSet",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),fn),Tt({target:"WeakSet",proto:!0,real:!0,forced:!1},{addAll:function(){return Qr.apply(this,arguments)}}),Tt({target:"WeakSet",proto:!0,real:!0,forced:!1},{deleteAll:function(){return $r.apply(this,arguments)}}),Tt({target:"WeakSet",stat:!0},{from:Gr}),Tt({target:"WeakSet",stat:!0},{of:Vr});var pn="\t\n\v\f\r \u2028\u2029\ufeff",hn="["+pn+"]",dn=RegExp("^"+hn+hn+"*"),vn=RegExp(hn+hn+"*$"),gn=function(t){return function(e){var r=String(v(e));return 1&t&&(r=r.replace(dn,"")),2&t&&(r=r.replace(vn,"")),r}},yn={start:gn(1),end:gn(2),trim:gn(3)},mn=mt.f,bn=A.f,Sn=_.f,wn=yn.trim,En=o.Number,xn=En.prototype,On="Number"==p(qt(xn)),jn=function(t){var e,r,n,o,i,a,u,c,s=m(t,!1);if("string"==typeof s&&s.length>2)if(43===(e=(s=wn(s)).charCodeAt(0))||45===e){if(88===(r=s.charCodeAt(2))||120===r)return NaN}else if(48===e){switch(s.charCodeAt(1)){case 66:case 98:n=2,o=49;break;case 79:case 111:n=8,o=55;break;default:return+s}for(a=(i=s.slice(2)).length,u=0;u<a;u++)if((c=i.charCodeAt(u))<48||c>o)return NaN;return parseInt(i,n)}return+s};if(Pt("Number",!En(" 0o1")||!En("0b1")||En("+0x1"))){for(var An,Rn=function(t){var e=arguments.length<1?0:t,r=this;return r instanceof Rn&&(On?i((function(){xn.valueOf.call(r)})):"Number"!=p(r))?jr(new En(jn(e)),r,Rn):jn(e)},Pn=a?mn(En):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger".split(","),_n=0;Pn.length>_n;_n++)S(En,An=Pn[_n])&&!S(Rn,An)&&Sn(Rn,An,bn(En,An));Rn.prototype=xn,xn.constructor=Rn,tt(o,"Number",Rn)}Tt({target:"Number",stat:!0},{EPSILON:Math.pow(2,-52)});var Tn=o.isFinite;Tt({target:"Number",stat:!0},{isFinite:Number.isFinite||function(t){return"number"==typeof t&&Tn(t)}});var In=Math.floor,Mn=function(t){return!y(t)&&isFinite(t)&&In(t)===t};Tt({target:"Number",stat:!0},{isInteger:Mn}),Tt({target:"Number",stat:!0},{isNaN:function(t){return t!=t}});var kn=Math.abs;Tt({target:"Number",stat:!0},{isSafeInteger:function(t){return Mn(t)&&kn(t)<=9007199254740991}}),Tt({target:"Number",stat:!0},{MAX_SAFE_INTEGER:9007199254740991}),Tt({target:"Number",stat:!0},{MIN_SAFE_INTEGER:-9007199254740991});var Nn=s.f,Ln=function(t){return function(e){for(var r,n=g(e),o=Bt(n),i=o.length,u=0,c=[];i>u;)r=o[u++],a&&!Nn.call(n,r)||c.push(t?[r,n[r]]:n[r]);return c}},Un={entries:Ln(!0),values:Ln(!1)},Cn=Un.entries;Tt({target:"Object",stat:!0},{entries:function(t){return Cn(t)}}),Tt({target:"Object",stat:!0,sham:!a},{getOwnPropertyDescriptors:function(t){for(var e,r,n=g(t),o=A.f,i=St(n),a={},u=0;i.length>u;)void 0!==(r=o(n,e=i[u++]))&&Ye(a,e,r);return a}});var Fn=Object.is||function(t,e){return t===e?0!==t||1/t==1/e:t!=t&&e!=e};Tt({target:"Object",stat:!0},{is:Fn});var Dn=i((function(){Bt(1)}));Tt({target:"Object",stat:!0,forced:Dn},{keys:function(t){return Bt(It(t))}});var Bn=Un.values;Tt({target:"Object",stat:!0},{values:function(t){return Bn(t)}});var Wn=Ee.codeAt;Tt({target:"String",proto:!0},{codePointAt:function(t){return Wn(this,t)}}),te("String","codePointAt");var zn,Kn=Dt("match"),Gn=function(t){var e;return y(t)&&(void 0!==(e=t[Kn])?!!e:"RegExp"==p(t))},Vn=function(t){if(Gn(t))throw TypeError("The method doesn't accept regular expressions");return t},$n=Dt("match"),qn=function(t){var e=/./;try{"/./"[t](e)}catch(n){try{return e[$n]=!1,"/./"[t](e)}catch(t){}}return!1},Hn=A.f,Xn="".endsWith,Yn=Math.min,Jn=qn("endsWith"),Qn=!(Jn||(zn=Hn(String.prototype,"endsWith"),!zn||zn.writable));Tt({target:"String",proto:!0,forced:!Qn&&!Jn},{endsWith:function(t){var e=String(v(this));Vn(t);var r=arguments.length>1?arguments[1]:void 0,n=ct(e.length),o=void 0===r?n:Yn(ct(r),n),i=String(t);return Xn?Xn.call(e,i,o):e.slice(o-i.length,o)===i}}),te("String","endsWith");var Zn=String.fromCharCode,to=String.fromCodePoint;Tt({target:"String",stat:!0,forced:!!to&&1!=to.length},{fromCodePoint:function(t){for(var e,r=[],n=arguments.length,o=0;n>o;){if(e=+arguments[o++],lt(e,1114111)!==e)throw RangeError(e+" is not a valid code point");r.push(e<65536?Zn(e):Zn(55296+((e-=65536)>>10),e%1024+56320))}return r.join("")}}),Tt({target:"String",proto:!0,forced:!qn("includes")},{includes:function(t){return!!~String(v(this)).indexOf(Vn(t),arguments.length>1?arguments[1]:void 0)}}),te("String","includes");var eo="".repeat||function(t){var e=String(v(this)),r="",n=at(t);if(n<0||1/0==n)throw RangeError("Wrong number of repetitions");for(;n>0;(n>>>=1)&&(e+=e))1&n&&(r+=e);return r},ro=Math.ceil,no=function(t){return function(e,r,n){var o,i,a=String(v(e)),u=a.length,c=void 0===n?" ":String(n),s=ct(r);return s<=u||""==c?a:((i=eo.call(c,ro((o=s-u)/c.length))).length>o&&(i=i.slice(0,o)),t?a+i:i+a)}},oo={start:no(!1),end:no(!0)},io=nt("navigator","userAgent")||"",ao=/Version\/10\.\d+(\.\d+)?( Mobile\/\w+)? Safari\//.test(io),uo=oo.start;Tt({target:"String",proto:!0,forced:ao},{padStart:function(t){return uo(this,t,arguments.length>1?arguments[1]:void 0)}}),te("String","padStart");var co=oo.end;Tt({target:"String",proto:!0,forced:ao},{padEnd:function(t){return co(this,t,arguments.length>1?arguments[1]:void 0)}}),te("String","padEnd"),Tt({target:"String",stat:!0},{raw:function(t){for(var e=g(t.raw),r=ct(e.length),n=arguments.length,o=[],i=0;r>i;)o.push(String(e[i++])),i<n&&o.push(String(arguments[i]));return o.join("")}}),Tt({target:"String",proto:!0},{repeat:eo}),te("String","repeat");var so=A.f,fo="".startsWith,lo=Math.min,po=qn("startsWith"),ho=!po&&!!function(){var t=so(String.prototype,"startsWith");return t&&!t.writable}();Tt({target:"String",proto:!0,forced:!ho&&!po},{startsWith:function(t){var e=String(v(this));Vn(t);var r=ct(lo(arguments.length>1?arguments[1]:void 0,e.length)),n=String(t);return fo?fo.call(e,n,r):e.slice(r,r+n.length)===n}}),te("String","startsWith");var vo=function(t){return i((function(){return!!pn[t]()||"
"!="
"[t]()||pn[t].name!==t}))},go=yn.start,yo=vo("trimStart"),mo=yo?function(){return go(this)}:"".trimStart;Tt({target:"String",proto:!0,forced:yo},{trimStart:mo,trimLeft:mo}),te("String","trimLeft");var bo=yn.end,So=vo("trimEnd"),wo=So?function(){return bo(this)}:"".trimEnd;Tt({target:"String",proto:!0,forced:So},{trimEnd:wo,trimRight:wo}),te("String","trimRight");var Eo=nt("Reflect","apply"),xo=Function.apply,Oo=!i((function(){Eo((function(){}))}));Tt({target:"Reflect",stat:!0,forced:Oo},{apply:function(t,e,r){return Jt(t),R(r),Eo?Eo(t,e,r):xo.call(t,e,r)}});var jo=[].slice,Ao={},Ro=function(t,e,r){if(!(e in Ao)){for(var n=[],o=0;o<e;o++)n[o]="a["+o+"]";Ao[e]=Function("C,a","return new C("+n.join(",")+")")}return Ao[e](t,r)},Po=Function.bind||function(t){var e=Jt(this),r=jo.call(arguments,1),n=function(){var o=r.concat(jo.call(arguments));return this instanceof n?Ro(e,o.length,o):e.apply(t,o)};return y(e.prototype)&&(n.prototype=e.prototype),n},_o=nt("Reflect","construct"),To=i((function(){function t(){}return!(_o((function(){}),[],t)instanceof t)})),Io=!i((function(){_o((function(){}))})),Mo=To||Io;Tt({target:"Reflect",stat:!0,forced:Mo,sham:Mo},{construct:function(t,e){Jt(t),R(e);var r=arguments.length<3?t:Jt(arguments[2]);if(Io&&!To)return _o(t,e,r);if(t==r){switch(e.length){case 0:return new t;case 1:return new t(e[0]);case 2:return new t(e[0],e[1]);case 3:return new t(e[0],e[1],e[2]);case 4:return new t(e[0],e[1],e[2],e[3])}var n=[null];return n.push.apply(n,e),new(Po.apply(t,n))}var o=r.prototype,i=qt(y(o)?o:Object.prototype),a=Function.apply.call(t,i,e);return y(a)?a:i}});var ko=i((function(){Reflect.defineProperty(_.f({},1,{value:1}),1,{value:2})}));Tt({target:"Reflect",stat:!0,forced:ko,sham:!a},{defineProperty:function(t,e,r){R(t);var n=m(e,!0);R(r);try{return _.f(t,n,r),!0}catch(t){return!1}}});var No=A.f;Tt({target:"Reflect",stat:!0},{deleteProperty:function(t,e){var r=No(R(t),e);return!(r&&!r.configurable)&&delete t[e]}}),Tt({target:"Reflect",stat:!0},{get:function t(e,r){var n,o,i=arguments.length<3?e:arguments[2];return R(e)===i?e[r]:(n=A.f(e,r))?S(n,"value")?n.value:void 0===n.get?void 0:n.get.call(i):y(o=Ae(e))?t(o,r,i):void 0}}),Tt({target:"Reflect",stat:!0,sham:!a},{getOwnPropertyDescriptor:function(t,e){return A.f(R(t),e)}}),Tt({target:"Reflect",stat:!0,sham:!xe},{getPrototypeOf:function(t){return Ae(R(t))}}),Tt({target:"Reflect",stat:!0},{has:function(t,e){return e in t}});var Lo=Object.isExtensible;Tt({target:"Reflect",stat:!0},{isExtensible:function(t){return R(t),!Lo||Lo(t)}}),Tt({target:"Reflect",stat:!0},{ownKeys:St}),Tt({target:"Reflect",stat:!0,sham:!wr},{preventExtensions:function(t){R(t);try{var e=nt("Object","preventExtensions");return e&&e(t),!0}catch(t){return!1}}});var Uo=i((function(){var t=_.f({},"a",{configurable:!0});return!1!==Reflect.set(Ae(t),"a",1,t)}));Tt({target:"Reflect",stat:!0,forced:Uo},{set:function t(e,r,n){var o,i,a=arguments.length<4?e:arguments[3],u=A.f(R(e),r);if(!u){if(y(i=Ae(e)))return t(i,r,n,a);u=f(0)}if(S(u,"value")){if(!1===u.writable||!y(a))return!1;if(o=A.f(a,r)){if(o.get||o.set||!1===o.writable)return!1;o.value=n,_.f(a,r,o)}else _.f(a,r,f(0,n));return!0}return void 0!==u.set&&(u.set.call(a,n),!0)}}),Ce&&Tt({target:"Reflect",stat:!0},{setPrototypeOf:function(t,e){R(t),Ue(e);try{return Ce(t,e),!0}catch(t){return!1}}});var Co=B("metadata"),Fo=Co.store||(Co.store=new ln),Do=function(t,e,r){var n=Fo.get(t);if(!n){if(!r)return;Fo.set(t,n=new Lr)}var o=n.get(e);if(!o){if(!r)return;n.set(e,o=new Lr)}return o},Bo={store:Fo,getMap:Do,has:function(t,e,r){var n=Do(e,r,!1);return void 0!==n&&n.has(t)},get:function(t,e,r){var n=Do(e,r,!1);return void 0===n?void 0:n.get(t)},set:function(t,e,r,n){Do(r,n,!0).set(t,e)},keys:function(t,e){var r=Do(t,e,!1),n=[];return r&&r.forEach((function(t,e){n.push(e)})),n},toKey:function(t){return void 0===t||"symbol"==typeof t?t:String(t)}},Wo=Bo.toKey,zo=Bo.set;Tt({target:"Reflect",stat:!0},{defineMetadata:function(t,e,r){var n=arguments.length<4?void 0:Wo(arguments[3]);zo(t,e,R(r),n)}});var Ko=Bo.toKey,Go=Bo.getMap,Vo=Bo.store;Tt({target:"Reflect",stat:!0},{deleteMetadata:function(t,e){var r=arguments.length<3?void 0:Ko(arguments[2]),n=Go(R(e),r,!1);if(void 0===n||!n.delete(t))return!1;if(n.size)return!0;var o=Vo.get(e);return o.delete(r),!!o.size||Vo.delete(e)}});var $o=Bo.has,qo=Bo.get,Ho=Bo.toKey,Xo=function t(e,r,n){if($o(e,r,n))return qo(e,r,n);var o=Ae(r);return null!==o?t(e,o,n):void 0};Tt({target:"Reflect",stat:!0},{getMetadata:function(t,e){var r=arguments.length<3?void 0:Ho(arguments[2]);return Xo(t,R(e),r)}});var Yo=Bo.keys,Jo=Bo.toKey,Qo=function t(e,r){var n=Yo(e,r),o=Ae(e);if(null===o)return n;var i,a,u=t(o,r);return u.length?n.length?(i=new Jr(n.concat(u)),xr(i,(a=[]).push,a),a):u:n};Tt({target:"Reflect",stat:!0},{getMetadataKeys:function(t){var e=arguments.length<2?void 0:Jo(arguments[1]);return Qo(R(t),e)}});var Zo=Bo.get,ti=Bo.toKey;Tt({target:"Reflect",stat:!0},{getOwnMetadata:function(t,e){var r=arguments.length<3?void 0:ti(arguments[2]);return Zo(t,R(e),r)}});var ei=Bo.keys,ri=Bo.toKey;Tt({target:"Reflect",stat:!0},{getOwnMetadataKeys:function(t){var e=arguments.length<2?void 0:ri(arguments[1]);return ei(R(t),e)}});var ni=Bo.has,oi=Bo.toKey,ii=function t(e,r,n){if(ni(e,r,n))return!0;var o=Ae(r);return null!==o&&t(e,o,n)};Tt({target:"Reflect",stat:!0},{hasMetadata:function(t,e){var r=arguments.length<3?void 0:oi(arguments[2]);return ii(t,R(e),r)}});var ai=Bo.has,ui=Bo.toKey;Tt({target:"Reflect",stat:!0},{hasOwnMetadata:function(t,e){var r=arguments.length<3?void 0:ui(arguments[2]);return ai(t,R(e),r)}});var ci=Bo.toKey,si=Bo.set;Tt({target:"Reflect",stat:!0},{metadata:function(t,e){return function(r,n){si(t,e,R(r),ci(n))}}});var fi=function(){var t=R(this),e="";return t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.dotAll&&(e+="s"),t.unicode&&(e+="u"),t.sticky&&(e+="y"),e};function li(t,e){return RegExp(t,e)}var pi={UNSUPPORTED_Y:i((function(){var t=li("a","y");return t.lastIndex=2,null!=t.exec("abcd")})),BROKEN_CARET:i((function(){var t=li("^r","gy");return t.lastIndex=2,null!=t.exec("str")}))},hi=_.f,di=mt.f,vi=Z.set,gi=Dt("match"),yi=o.RegExp,mi=yi.prototype,bi=/a/g,Si=/a/g,wi=new yi(bi)!==bi,Ei=pi.UNSUPPORTED_Y;if(a&&Pt("RegExp",!wi||Ei||i((function(){return Si[gi]=!1,yi(bi)!=bi||yi(Si)==Si||"/a/i"!=yi(bi,"i")})))){for(var xi=function(t,e){var r,n=this instanceof xi,o=Gn(t),i=void 0===e;if(!n&&o&&t.constructor===xi&&i)return t;wi?o&&!i&&(t=t.source):t instanceof xi&&(i&&(e=fi.call(t)),t=t.source),Ei&&(r=!!e&&e.indexOf("y")>-1)&&(e=e.replace(/y/g,""));var a=jr(wi?new yi(t,e):yi(t,e),n?this:mi,xi);return Ei&&r&&vi(a,{sticky:r}),a},Oi=function(t){t in xi||hi(xi,t,{configurable:!0,get:function(){return yi[t]},set:function(e){yi[t]=e}})},ji=di(yi),Ai=0;ji.length>Ai;)Oi(ji[Ai++]);mi.constructor=xi,xi.prototype=mi,tt(o,"RegExp",xi)}_r("RegExp");var Ri=RegExp.prototype,Pi=Ri.toString;(i((function(){return"/a/b"!=Pi.call({source:"a",flags:"b"})}))||"toString"!=Pi.name)&&tt(RegExp.prototype,"toString",(function(){var t=R(this),e=String(t.source),r=t.flags;return"/"+e+"/"+String(void 0===r&&t instanceof RegExp&&!("flags"in Ri)?fi.call(t):r)}),{unsafe:!0});var _i=RegExp.prototype.exec,Ti=String.prototype.replace,Ii=_i,Mi=function(){var t=/a/,e=/b*/g;return _i.call(t,"a"),_i.call(e,"a"),0!==t.lastIndex||0!==e.lastIndex}(),ki=pi.UNSUPPORTED_Y||pi.BROKEN_CARET,Ni=void 0!==/()??/.exec("")[1];(Mi||Ni||ki)&&(Ii=function(t){var e,r,n,o,i=this,a=ki&&i.sticky,u=fi.call(i),c=i.source,s=0,f=t;return a&&(-1===(u=u.replace("y","")).indexOf("g")&&(u+="g"),f=String(t).slice(i.lastIndex),i.lastIndex>0&&(!i.multiline||i.multiline&&"\n"!==t[i.lastIndex-1])&&(c="(?: "+c+")",f=" "+f,s++),r=new RegExp("^(?:"+c+")",u)),Ni&&(r=new RegExp("^"+c+"$(?!\\s)",u)),Mi&&(e=i.lastIndex),n=_i.call(a?r:i,f),a?n?(n.input=n.input.slice(s),n[0]=n[0].slice(s),n.index=i.lastIndex,i.lastIndex+=n[0].length):i.lastIndex=0:Mi&&n&&(i.lastIndex=i.global?n.index+n[0].length:e),Ni&&n&&n.length>1&&Ti.call(n[0],r,(function(){for(o=1;o<arguments.length-2;o++)void 0===arguments[o]&&(n[o]=void 0)})),n});var Li=Ii;Tt({target:"RegExp",proto:!0,forced:/./.exec!==Li},{exec:Li}),a&&("g"!=/./g.flags||pi.UNSUPPORTED_Y)&&_.f(RegExp.prototype,"flags",{configurable:!0,get:fi});var Ui=Z.get,Ci=RegExp.prototype;a&&pi.UNSUPPORTED_Y&&(0,_.f)(RegExp.prototype,"sticky",{configurable:!0,get:function(){if(this!==Ci){if(this instanceof RegExp)return!!Ui(this).sticky;throw TypeError("Incompatible receiver, RegExp required")}}});var Fi,Di,Bi=(Fi=!1,(Di=/[ac]/).exec=function(){return Fi=!0,/./.exec.apply(this,arguments)},!0===Di.test("abc")&&Fi),Wi=/./.test;Tt({target:"RegExp",proto:!0,forced:!Bi},{test:function(t){if("function"!=typeof this.exec)return Wi.call(this,t);var e=this.exec(t);if(null!==e&&!y(e))throw new Error("RegExp exec method returned something other than an Object or null");return!!e}});var zi=Dt("species"),Ki=!i((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$<a>")})),Gi="$0"==="a".replace(/./,"$0"),Vi=Dt("replace"),$i=!!/./[Vi]&&""===/./[Vi]("a","$0"),qi=!i((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var r="ab".split(t);return 2!==r.length||"a"!==r[0]||"b"!==r[1]})),Hi=function(t,e,r,n){var o=Dt(t),a=!i((function(){var e={};return e[o]=function(){return 7},7!=""[t](e)})),u=a&&!i((function(){var e=!1,r=/a/;return"split"===t&&((r={}).constructor={},r.constructor[zi]=function(){return r},r.flags="",r[o]=/./[o]),r.exec=function(){return e=!0,null},r[o](""),!e}));if(!a||!u||"replace"===t&&(!Ki||!Gi||$i)||"split"===t&&!qi){var c=/./[o],s=r(o,""[t],(function(t,e,r,n,o){return e.exec===Li?a&&!o?{done:!0,value:c.call(e,r,n)}:{done:!0,value:t.call(r,e,n)}:{done:!1}}),{REPLACE_KEEPS_$0:Gi,REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE:$i}),f=s[1];tt(String.prototype,t,s[0]),tt(RegExp.prototype,o,2==e?function(t,e){return f.call(t,this,e)}:function(t){return f.call(t,this)})}n&&T(RegExp.prototype[o],"sham",!0)},Xi=Ee.charAt,Yi=function(t,e,r){return e+(r?Xi(t,e).length:1)},Ji=function(t,e){var r=t.exec;if("function"==typeof r){var n=r.call(t,e);if("object"!=typeof n)throw TypeError("RegExp exec method returned something other than an Object or null");return n}if("RegExp"!==p(t))throw TypeError("RegExp#exec called on incompatible receiver");return Li.call(t,e)};Hi("match",1,(function(t,e,r){return[function(e){var r=v(this),n=null==e?void 0:e[t];return void 0!==n?n.call(e,r):new RegExp(e)[t](String(r))},function(t){var n=r(e,t,this);if(n.done)return n.value;var o=R(t),i=String(this);if(!o.global)return Ji(o,i);var a=o.unicode;o.lastIndex=0;for(var u,c=[],s=0;null!==(u=Ji(o,i));){var f=String(u[0]);c[s]=f,""===f&&(o.lastIndex=Yi(i,ct(o.lastIndex),a)),s++}return 0===s?null:c}]}));var Qi=Math.max,Zi=Math.min,ta=Math.floor,ea=/\$([$&'`]|\d\d?|<[^>]*>)/g,ra=/\$([$&'`]|\d\d?)/g;Hi("replace",2,(function(t,e,r,n){var o=n.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE,i=n.REPLACE_KEEPS_$0,a=o?"$":"$0";return[function(r,n){var o=v(this),i=null==r?void 0:r[t];return void 0!==i?i.call(r,o,n):e.call(String(o),r,n)},function(t,n){if(!o&&i||"string"==typeof n&&-1===n.indexOf(a)){var c=r(e,t,this,n);if(c.done)return c.value}var s=R(t),f=String(this),l="function"==typeof n;l||(n=String(n));var p=s.global;if(p){var h=s.unicode;s.lastIndex=0}for(var d=[];;){var v=Ji(s,f);if(null===v)break;if(d.push(v),!p)break;""===String(v[0])&&(s.lastIndex=Yi(f,ct(s.lastIndex),h))}for(var g,y="",m=0,b=0;b<d.length;b++){v=d[b];for(var S=String(v[0]),w=Qi(Zi(at(v.index),f.length),0),E=[],x=1;x<v.length;x++)E.push(void 0===(g=v[x])?g:String(g));var O=v.groups;if(l){var j=[S].concat(E,w,f);void 0!==O&&j.push(O);var A=String(n.apply(void 0,j))}else A=u(S,f,w,E,O,n);w>=m&&(y+=f.slice(m,w)+A,m=w+S.length)}return y+f.slice(m)}];function u(t,r,n,o,i,a){var u=n+t.length,c=o.length,s=ra;return void 0!==i&&(i=It(i),s=ea),e.call(a,s,(function(e,a){var s;switch(a.charAt(0)){case"$":return"$";case"&":return t;case"`":return r.slice(0,n);case"'":return r.slice(u);case"<":s=i[a.slice(1,-1)];break;default:var f=+a;if(0===f)return e;if(f>c){var l=ta(f/10);return 0===l?e:l<=c?void 0===o[l-1]?a.charAt(1):o[l-1]+a.charAt(1):e}s=o[f-1]}return void 0===s?"":s}))}})),Hi("search",1,(function(t,e,r){return[function(e){var r=v(this),n=null==e?void 0:e[t];return void 0!==n?n.call(e,r):new RegExp(e)[t](String(r))},function(t){var n=r(e,t,this);if(n.done)return n.value;var o=R(t),i=String(this),a=o.lastIndex;Fn(a,0)||(o.lastIndex=0);var u=Ji(o,i);return Fn(o.lastIndex,a)||(o.lastIndex=a),null===u?-1:u.index}]}));var na=[].push,oa=Math.min,ia=!i((function(){return!RegExp(4294967295,"y")}));Hi("split",2,(function(t,e,r){var n;return n="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,r){var n=String(v(this)),o=void 0===r?4294967295:r>>>0;if(0===o)return[];if(void 0===t)return[n];if(!Gn(t))return e.call(n,t,o);for(var i,a,u,c=[],s=0,f=new RegExp(t.source,(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":"")+"g");(i=Li.call(f,n))&&!((a=f.lastIndex)>s&&(c.push(n.slice(s,i.index)),i.length>1&&i.index<n.length&&na.apply(c,i.slice(1)),u=i[0].length,s=a,c.length>=o));)f.lastIndex===i.index&&f.lastIndex++;return s===n.length?!u&&f.test("")||c.push(""):c.push(n.slice(s)),c.length>o?c.slice(0,o):c}:"0".split(void 0,0).length?function(t,r){return void 0===t&&0===r?[]:e.call(this,t,r)}:e,[function(e,r){var o=v(this),i=null==e?void 0:e[t];return void 0!==i?i.call(e,o,r):n.call(String(o),e,r)},function(t,o){var i=r(n,t,this,o,n!==e);if(i.done)return i.value;var a=R(t),u=String(this),c=Xr(a,RegExp),s=a.unicode,f=new c(ia?a:"^(?:"+a.source+")",(a.ignoreCase?"i":"")+(a.multiline?"m":"")+(a.unicode?"u":"")+(ia?"y":"g")),l=void 0===o?4294967295:o>>>0;if(0===l)return[];if(0===u.length)return null===Ji(f,u)?[u]:[];for(var p=0,h=0,d=[];h<u.length;){f.lastIndex=ia?h:0;var v,g=Ji(f,ia?u:u.slice(h));if(null===g||(v=oa(ct(f.lastIndex+(ia?0:h)),u.length))===p)h=Yi(u,h,s);else{if(d.push(u.slice(p,h)),d.length===l)return d;for(var y=1;y<=g.length-1;y++)if(d.push(g[y]),d.length===l)return d;h=p=v}}return d.push(u.slice(p)),d}]}),!ia);var aa,ua,ca=o.process,sa=ca&&ca.versions,fa=sa&&sa.v8;fa?ua=(aa=fa.split("."))[0]+aa[1]:io&&(!(aa=io.match(/Edge\/(\d+)/))||aa[1]>=74)&&(aa=io.match(/Chrome\/(\d+)/))&&(ua=aa[1]);var la=ua&&+ua,pa=Dt("species"),ha=Dt("isConcatSpreadable"),da=la>=51||!i((function(){var t=[];return t[ha]=!1,t.concat()[0]!==t})),va=la>=51||!i((function(){var t=[];return(t.constructor={})[pa]=function(){return{foo:1}},1!==t.concat(Boolean).foo})),ga=function(t){if(!y(t))return!1;var e=t[ha];return void 0!==e?!!e:ee(t)};Tt({target:"Array",proto:!0,forced:!da||!va},{concat:function(t){var e,r,n,o,i,a=It(this),u=ne(a,0),c=0;for(e=-1,n=arguments.length;e<n;e++)if(ga(i=-1===e?a:arguments[e])){if(c+(o=ct(i.length))>9007199254740991)throw TypeError("Maximum allowed index exceeded");for(r=0;r<o;r++,c++)r in i&&Ye(u,c,i[r])}else{if(c>=9007199254740991)throw TypeError("Maximum allowed index exceeded");Ye(u,c++,i)}return u.length=c,u}});var ya=mt.f,ma={}.toString,ba="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],Sa={f:function(t){return ba&&"[object Window]"==ma.call(t)?function(t){try{return ya(t)}catch(t){return ba.slice()}}(t):ya(g(t))}},wa={f:Dt},Ea=_.f,xa=function(t){var e=et.Symbol||(et.Symbol={});S(e,t)||Ea(e,t,{value:wa.f(t)})},Oa=ae.forEach,ja=V("hidden"),Aa=Dt("toPrimitive"),Ra=Z.set,Pa=Z.getterFor("Symbol"),_a=Object.prototype,Ta=o.Symbol,Ia=nt("JSON","stringify"),Ma=A.f,ka=_.f,Na=Sa.f,La=s.f,Ua=B("symbols"),Ca=B("op-symbols"),Fa=B("string-to-symbol-registry"),Da=B("symbol-to-string-registry"),Ba=B("wks"),Wa=o.QObject,za=!Wa||!Wa.prototype||!Wa.prototype.findChild,Ka=a&&i((function(){return 7!=qt(ka({},"a",{get:function(){return ka(this,"a",{value:7}).a}})).a}))?function(t,e,r){var n=Ma(_a,e);n&&delete _a[e],ka(t,e,r),n&&t!==_a&&ka(_a,e,n)}:ka,Ga=function(t,e){var r=Ua[t]=qt(Ta.prototype);return Ra(r,{type:"Symbol",tag:t,description:e}),a||(r.description=e),r},Va=Lt?function(t){return"symbol"==typeof t}:function(t){return Object(t)instanceof Ta},$a=function(t,e,r){t===_a&&$a(Ca,e,r),R(t);var n=m(e,!0);return R(r),S(Ua,n)?(r.enumerable?(S(t,ja)&&t[ja][n]&&(t[ja][n]=!1),r=qt(r,{enumerable:f(0,!1)})):(S(t,ja)||ka(t,ja,f(1,{})),t[ja][n]=!0),Ka(t,n,r)):ka(t,n,r)},qa=function(t,e){R(t);var r=g(e),n=Bt(r).concat(Ja(r));return Oa(n,(function(e){a&&!Ha.call(r,e)||$a(t,e,r[e])})),t},Ha=function(t){var e=m(t,!0),r=La.call(this,e);return!(this===_a&&S(Ua,e)&&!S(Ca,e))&&(!(r||!S(this,e)||!S(Ua,e)||S(this,ja)&&this[ja][e])||r)},Xa=function(t,e){var r=g(t),n=m(e,!0);if(r!==_a||!S(Ua,n)||S(Ca,n)){var o=Ma(r,n);return!o||!S(Ua,n)||S(r,ja)&&r[ja][n]||(o.enumerable=!0),o}},Ya=function(t){var e=Na(g(t)),r=[];return Oa(e,(function(t){S(Ua,t)||S($,t)||r.push(t)})),r},Ja=function(t){var e=t===_a,r=Na(e?Ca:g(t)),n=[];return Oa(r,(function(t){!S(Ua,t)||e&&!S(_a,t)||n.push(Ua[t])})),n};if(Nt||(tt((Ta=function(){if(this instanceof Ta)throw TypeError("Symbol is not a constructor");var t=arguments.length&&void 0!==arguments[0]?String(arguments[0]):void 0,e=K(t),r=function t(r){this===_a&&t.call(Ca,r),S(this,ja)&&S(this[ja],e)&&(this[ja][e]=!1),Ka(this,e,f(1,r))};return a&&za&&Ka(_a,e,{configurable:!0,set:r}),Ga(e,t)}).prototype,"toString",(function(){return Pa(this).tag})),tt(Ta,"withoutSetter",(function(t){return Ga(K(t),t)})),s.f=Ha,_.f=$a,A.f=Xa,mt.f=Sa.f=Ya,bt.f=Ja,wa.f=function(t){return Ga(Dt(t),t)},a&&(ka(Ta.prototype,"description",{configurable:!0,get:function(){return Pa(this).description}}),tt(_a,"propertyIsEnumerable",Ha,{unsafe:!0}))),Tt({global:!0,wrap:!0,forced:!Nt,sham:!Nt},{Symbol:Ta}),Oa(Bt(Ba),(function(t){xa(t)})),Tt({target:"Symbol",stat:!0,forced:!Nt},{for:function(t){var e=String(t);if(S(Fa,e))return Fa[e];var r=Ta(e);return Fa[e]=r,Da[r]=e,r},keyFor:function(t){if(!Va(t))throw TypeError(t+" is not a symbol");if(S(Da,t))return Da[t]},useSetter:function(){za=!0},useSimple:function(){za=!1}}),Tt({target:"Object",stat:!0,forced:!Nt,sham:!a},{create:function(t,e){return void 0===e?qt(t):qa(qt(t),e)},defineProperty:$a,defineProperties:qa,getOwnPropertyDescriptor:Xa}),Tt({target:"Object",stat:!0,forced:!Nt},{getOwnPropertyNames:Ya,getOwnPropertySymbols:Ja}),Tt({target:"Object",stat:!0,forced:i((function(){bt.f(1)}))},{getOwnPropertySymbols:function(t){return bt.f(It(t))}}),Ia){var Qa=!Nt||i((function(){var t=Ta();return"[null]"!=Ia([t])||"{}"!=Ia({a:t})||"{}"!=Ia(Object(t))}));Tt({target:"JSON",stat:!0,forced:Qa},{stringify:function(t,e,r){for(var n,o=[t],i=1;arguments.length>i;)o.push(arguments[i++]);if(n=e,(y(e)||void 0!==t)&&!Va(t))return ee(e)||(e=function(t,e){if("function"==typeof n&&(e=n.call(this,t,e)),!Va(e))return e}),o[1]=e,Ia.apply(null,o)}})}Ta.prototype[Aa]||T(Ta.prototype,Aa,Ta.prototype.valueOf),Me(Ta,"Symbol"),$[ja]=!0,xa("asyncIterator");var Za=_.f,tu=o.Symbol;if(a&&"function"==typeof tu&&(!("description"in tu.prototype)||void 0!==tu().description)){var eu={},ru=function(){var t=arguments.length<1||void 0===arguments[0]?void 0:String(arguments[0]),e=this instanceof ru?new tu(t):void 0===t?tu():tu(t);return""===t&&(eu[e]=!0),e};wt(ru,tu);var nu=ru.prototype=tu.prototype;nu.constructor=ru;var ou=nu.toString,iu="Symbol(test)"==String(tu("test")),au=/^Symbol\((.*)\)[^)]+$/;Za(nu,"description",{configurable:!0,get:function(){var t=y(this)?this.valueOf():this,e=ou.call(t);if(S(eu,t))return"";var r=iu?e.slice(7,-1):e.replace(au,"$1");return""===r?void 0:r}}),Tt({global:!0,forced:!0},{Symbol:ru})}xa("hasInstance"),xa("isConcatSpreadable"),xa("iterator"),xa("match"),xa("matchAll"),xa("replace"),xa("search"),xa("species"),xa("split"),xa("toPrimitive"),xa("toStringTag"),xa("unscopables"),Me(Math,"Math",!0),Me(o.JSON,"JSON",!0),xa("asyncDispose"),xa("dispose"),xa("observable"),xa("patternMatch"),xa("replaceAll");var uu,cu,su,fu=o.Promise,lu=/(iphone|ipod|ipad).*applewebkit/i.test(io),pu=o.location,hu=o.setImmediate,du=o.clearImmediate,vu=o.process,gu=o.MessageChannel,yu=o.Dispatch,mu=0,bu={},Su=function(t){if(bu.hasOwnProperty(t)){var e=bu[t];delete bu[t],e()}},wu=function(t){return function(){Su(t)}},Eu=function(t){Su(t.data)},xu=function(t){o.postMessage(t+"",pu.protocol+"//"+pu.host)};hu&&du||(hu=function(t){for(var e=[],r=1;arguments.length>r;)e.push(arguments[r++]);return bu[++mu]=function(){("function"==typeof t?t:Function(t)).apply(void 0,e)},uu(mu),mu},du=function(t){delete bu[t]},"process"==p(vu)?uu=function(t){vu.nextTick(wu(t))}:yu&&yu.now?uu=function(t){yu.now(wu(t))}:gu&&!lu?(su=(cu=new gu).port2,cu.port1.onmessage=Eu,uu=Qt(su.postMessage,su,1)):!o.addEventListener||"function"!=typeof postMessage||o.importScripts||i(xu)||"file:"===pu.protocol?uu="onreadystatechange"in x("script")?function(t){zt.appendChild(x("script")).onreadystatechange=function(){zt.removeChild(this),Su(t)}}:function(t){setTimeout(wu(t),0)}:(uu=xu,o.addEventListener("message",Eu,!1)));var Ou,ju,Au,Ru,Pu,_u,Tu,Iu,Mu={set:hu,clear:du},ku=A.f,Nu=Mu.set,Lu=o.MutationObserver||o.WebKitMutationObserver,Uu=o.process,Cu=o.Promise,Fu="process"==p(Uu),Du=ku(o,"queueMicrotask"),Bu=Du&&Du.value;Bu||(Ou=function(){var t,e;for(Fu&&(t=Uu.domain)&&t.exit();ju;){e=ju.fn,ju=ju.next;try{e()}catch(t){throw ju?Ru():Au=void 0,t}}Au=void 0,t&&t.enter()},Fu?Ru=function(){Uu.nextTick(Ou)}:Lu&&!lu?(Pu=!0,_u=document.createTextNode(""),new Lu(Ou).observe(_u,{characterData:!0}),Ru=function(){_u.data=Pu=!Pu}):Cu&&Cu.resolve?(Tu=Cu.resolve(void 0),Iu=Tu.then,Ru=function(){Iu.call(Tu,Ou)}):Ru=function(){Nu.call(o,Ou)});var Wu,zu,Ku,Gu,Vu=Bu||function(t){var e={fn:t,next:void 0};Au&&(Au.next=e),ju||(ju=e,Ru()),Au=e},$u=function(t){var e,r;this.promise=new t((function(t,n){if(void 0!==e||void 0!==r)throw TypeError("Bad Promise constructor");e=t,r=n})),this.resolve=Jt(e),this.reject=Jt(r)},qu={f:function(t){return new $u(t)}},Hu=function(t,e){if(R(t),y(e)&&e.constructor===t)return e;var r=qu.f(t);return(0,r.resolve)(e),r.promise},Xu=function(t){try{return{error:!1,value:t()}}catch(t){return{error:!0,value:t}}},Yu=Mu.set,Ju=Dt("species"),Qu="Promise",Zu=Z.get,tc=Z.set,ec=Z.getterFor(Qu),rc=fu,nc=o.TypeError,oc=o.document,ic=o.process,ac=nt("fetch"),uc=qu.f,cc=uc,sc="process"==p(ic),fc=!!(oc&&oc.createEvent&&o.dispatchEvent),lc=Pt(Qu,(function(){if(C(rc)===String(rc)){if(66===la)return!0;if(!sc&&"function"!=typeof PromiseRejectionEvent)return!0}if(la>=51&&/native code/.test(rc))return!1;var t=rc.resolve(1),e=function(t){t((function(){}),(function(){}))};return(t.constructor={})[Ju]=e,!(t.then((function(){}))instanceof e)})),pc=lc||!cr((function(t){rc.all(t).catch((function(){}))})),hc=function(t){var e;return!(!y(t)||"function"!=typeof(e=t.then))&&e},dc=function(t,e,r){if(!e.notified){e.notified=!0;var n=e.reactions;Vu((function(){for(var o=e.value,i=1==e.state,a=0;n.length>a;){var u,c,s,f=n[a++],l=i?f.ok:f.fail,p=f.resolve,h=f.reject,d=f.domain;try{l?(i||(2===e.rejection&&mc(t,e),e.rejection=1),!0===l?u=o:(d&&d.enter(),u=l(o),d&&(d.exit(),s=!0)),u===f.promise?h(nc("Promise-chain cycle")):(c=hc(u))?c.call(u,p,h):p(u)):h(o)}catch(t){d&&!s&&d.exit(),h(t)}}e.reactions=[],e.notified=!1,r&&!e.rejection&&gc(t,e)}))}},vc=function(t,e,r){var n,i;fc?((n=oc.createEvent("Event")).promise=e,n.reason=r,n.initEvent(t,!1,!0),o.dispatchEvent(n)):n={promise:e,reason:r},(i=o["on"+t])?i(n):"unhandledrejection"===t&&function(t,e){var r=o.console;r&&r.error&&(1===arguments.length?r.error(t):r.error(t,e))}("Unhandled promise rejection",r)},gc=function(t,e){Yu.call(o,(function(){var r,n=e.value;if(yc(e)&&(r=Xu((function(){sc?ic.emit("unhandledRejection",n,t):vc("unhandledrejection",t,n)})),e.rejection=sc||yc(e)?2:1,r.error))throw r.value}))},yc=function(t){return 1!==t.rejection&&!t.parent},mc=function(t,e){Yu.call(o,(function(){sc?ic.emit("rejectionHandled",t):vc("rejectionhandled",t,e.value)}))},bc=function(t,e,r,n){return function(o){t(e,r,o,n)}},Sc=function(t,e,r,n){e.done||(e.done=!0,n&&(e=n),e.value=r,e.state=2,dc(t,e,!0))},wc=function t(e,r,n,o){if(!r.done){r.done=!0,o&&(r=o);try{if(e===n)throw nc("Promise can't be resolved itself");var i=hc(n);i?Vu((function(){var o={done:!1};try{i.call(n,bc(t,e,o,r),bc(Sc,e,o,r))}catch(t){Sc(e,o,t,r)}})):(r.value=n,r.state=1,dc(e,r,!1))}catch(t){Sc(e,{done:!1},t,r)}}};lc&&(rc=function(t){Or(this,rc,Qu),Jt(t),Wu.call(this);var e=Zu(this);try{t(bc(wc,this,e),bc(Sc,this,e))}catch(t){Sc(this,e,t)}},(Wu=function(t){tc(this,{type:Qu,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:0,value:void 0})}).prototype=Rr(rc.prototype,{then:function(t,e){var r=ec(this),n=uc(Xr(this,rc));return n.ok="function"!=typeof t||t,n.fail="function"==typeof e&&e,n.domain=sc?ic.domain:void 0,r.parent=!0,r.reactions.push(n),0!=r.state&&dc(this,r,!1),n.promise},catch:function(t){return this.then(void 0,t)}}),zu=function(){var t=new Wu,e=Zu(t);this.promise=t,this.resolve=bc(wc,t,e),this.reject=bc(Sc,t,e)},qu.f=uc=function(t){return t===rc||t===Ku?new zu(t):cc(t)},"function"==typeof fu&&(Gu=fu.prototype.then,tt(fu.prototype,"then",(function(t,e){var r=this;return new rc((function(t,e){Gu.call(r,t,e)})).then(t,e)}),{unsafe:!0}),"function"==typeof ac&&Tt({global:!0,enumerable:!0,forced:!0},{fetch:function(t){return Hu(rc,ac.apply(o,arguments))}}))),Tt({global:!0,wrap:!0,forced:lc},{Promise:rc}),Me(rc,Qu,!1),_r(Qu),Ku=nt(Qu),Tt({target:Qu,stat:!0,forced:lc},{reject:function(t){var e=uc(this);return e.reject.call(void 0,t),e.promise}}),Tt({target:Qu,stat:!0,forced:lc},{resolve:function(t){return Hu(this,t)}}),Tt({target:Qu,stat:!0,forced:pc},{all:function(t){var e=this,r=uc(e),n=r.resolve,o=r.reject,i=Xu((function(){var r=Jt(e.resolve),i=[],a=0,u=1;xr(t,(function(t){var c=a++,s=!1;i.push(void 0),u++,r.call(e,t).then((function(t){s||(s=!0,i[c]=t,--u||n(i))}),o)})),--u||n(i)}));return i.error&&o(i.value),r.promise},race:function(t){var e=this,r=uc(e),n=r.reject,o=Xu((function(){var o=Jt(e.resolve);xr(t,(function(t){o.call(e,t).then(r.resolve,n)}))}));return o.error&&n(o.value),r.promise}}),Tt({target:"Promise",stat:!0},{allSettled:function(t){var e=this,r=qu.f(e),n=r.resolve,o=r.reject,i=Xu((function(){var r=Jt(e.resolve),o=[],i=0,a=1;xr(t,(function(t){var u=i++,c=!1;o.push(void 0),a++,r.call(e,t).then((function(t){c||(c=!0,o[u]={status:"fulfilled",value:t},--a||n(o))}),(function(t){c||(c=!0,o[u]={status:"rejected",reason:t},--a||n(o))}))})),--a||n(o)}));return i.error&&o(i.value),r.promise}});var Ec=!!fu&&i((function(){fu.prototype.finally.call({then:function(){}},(function(){}))}));Tt({target:"Promise",proto:!0,real:!0,forced:Ec},{finally:function(t){var e=Xr(this,nt("Promise")),r="function"==typeof t;return this.then(r?function(r){return Hu(e,t()).then((function(){return r}))}:t,r?function(r){return Hu(e,t()).then((function(){throw r}))}:t)}}),"function"!=typeof fu||fu.prototype.finally||tt(fu.prototype,"finally",nt("Promise").prototype.finally);var xc=Z.set,Oc=Z.getterFor("AggregateError"),jc=function(t,e){var r=this;if(!(r instanceof jc))return new jc(t,e);Ce&&(r=Ce(new Error(e),Ae(r)));var n=[];return xr(t,n.push,n),a?xc(r,{errors:n,type:"AggregateError"}):r.errors=n,void 0!==e&&T(r,"message",String(e)),r};jc.prototype=qt(Error.prototype,{constructor:f(5,jc),message:f(5,""),name:f(5,"AggregateError")}),a&&_.f(jc.prototype,"errors",{get:function(){return Oc(this).errors},configurable:!0}),Tt({global:!0},{AggregateError:jc}),Tt({target:"Promise",stat:!0},{try:function(t){var e=qu.f(this),r=Xu(t);return(r.error?e.reject:e.resolve)(r.value),e.promise}}),Tt({target:"Promise",stat:!0},{any:function(t){var e=this,r=qu.f(e),n=r.resolve,o=r.reject,i=Xu((function(){var r=Jt(e.resolve),i=[],a=0,u=1,c=!1;xr(t,(function(t){var s=a++,f=!1;i.push(void 0),u++,r.call(e,t).then((function(t){f||c||(c=!0,n(t))}),(function(t){f||c||(f=!0,i[s]=t,--u||o(new(nt("AggregateError"))(i,"No one promise resolved")))}))})),--u||o(new(nt("AggregateError"))(i,"No one promise resolved"))}));return i.error&&o(i.value),r.promise}});var Ac="URLSearchParams"in self,Rc="Symbol"in self&&"iterator"in Symbol,Pc="FileReader"in self&&"Blob"in self&&function(){try{return new Blob,!0}catch(e){return!1}}(),_c="FormData"in self,Tc="ArrayBuffer"in self;if(Tc)var Ic=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],Mc=ArrayBuffer.isView||function(t){return t&&Ic.indexOf(Object.prototype.toString.call(t))>-1};function kc(t){if("string"!=typeof t&&(t=String(t)),/[^a-z0-9\-#$%&'*+.^_`|~]/i.test(t))throw new TypeError("Invalid character in header field name");return t.toLowerCase()}function Nc(t){return"string"!=typeof t&&(t=String(t)),t}function Lc(t){var e={next:function(){var e=t.shift();return{done:void 0===e,value:e}}};return Rc&&(e[Symbol.iterator]=function(){return e}),e}function Uc(t){this.map={},t instanceof Uc?t.forEach((function(t,e){this.append(e,t)}),this):Array.isArray(t)?t.forEach((function(t){this.append(t[0],t[1])}),this):t&&Object.getOwnPropertyNames(t).forEach((function(e){this.append(e,t[e])}),this)}function Cc(t){if(t.bodyUsed)return Promise.reject(new TypeError("Already read"));t.bodyUsed=!0}function Fc(t){return new Promise((function(e,r){t.onload=function(){e(t.result)},t.onerror=function(){r(t.error)}}))}function Dc(t){var e=new FileReader,r=Fc(e);return e.readAsArrayBuffer(t),r}function Bc(t){if(t.slice)return t.slice(0);var e=new Uint8Array(t.byteLength);return e.set(new Uint8Array(t)),e.buffer}function Wc(){return this.bodyUsed=!1,this._initBody=function(t){var e;this._bodyInit=t,t?"string"==typeof t?this._bodyText=t:Pc&&Blob.prototype.isPrototypeOf(t)?this._bodyBlob=t:_c&&FormData.prototype.isPrototypeOf(t)?this._bodyFormData=t:Ac&&URLSearchParams.prototype.isPrototypeOf(t)?this._bodyText=t.toString():Tc&&Pc&&(e=t)&&DataView.prototype.isPrototypeOf(e)?(this._bodyArrayBuffer=Bc(t.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):Tc&&(ArrayBuffer.prototype.isPrototypeOf(t)||Mc(t))?this._bodyArrayBuffer=Bc(t):this._bodyText=t=Object.prototype.toString.call(t):this._bodyText="",this.headers.get("content-type")||("string"==typeof t?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):Ac&&URLSearchParams.prototype.isPrototypeOf(t)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},Pc&&(this.blob=function(){var t=Cc(this);if(t)return t;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?Cc(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(Dc)}),this.text=function(){var t=Cc(this);if(t)return t;if(this._bodyBlob)return function(t){var e=new FileReader,r=Fc(e);return e.readAsText(t),r}(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(function(t){for(var e=new Uint8Array(t),r=new Array(e.length),n=0;n<e.length;n++)r[n]=String.fromCharCode(e[n]);return r.join("")}(this._bodyArrayBuffer));if(this._bodyFormData)throw new Error("could not read FormData body as text");return Promise.resolve(this._bodyText)},_c&&(this.formData=function(){return this.text().then(Gc)}),this.json=function(){return this.text().then(JSON.parse)},this}Uc.prototype.append=function(t,e){t=kc(t),e=Nc(e);var r=this.map[t];this.map[t]=r?r+", "+e:e},Uc.prototype.delete=function(t){delete this.map[kc(t)]},Uc.prototype.get=function(t){return t=kc(t),this.has(t)?this.map[t]:null},Uc.prototype.has=function(t){return this.map.hasOwnProperty(kc(t))},Uc.prototype.set=function(t,e){this.map[kc(t)]=Nc(e)},Uc.prototype.forEach=function(t,e){for(var r in this.map)this.map.hasOwnProperty(r)&&t.call(e,this.map[r],r,this)},Uc.prototype.keys=function(){var t=[];return this.forEach((function(e,r){t.push(r)})),Lc(t)},Uc.prototype.values=function(){var t=[];return this.forEach((function(e){t.push(e)})),Lc(t)},Uc.prototype.entries=function(){var t=[];return this.forEach((function(e,r){t.push([r,e])})),Lc(t)},Rc&&(Uc.prototype[Symbol.iterator]=Uc.prototype.entries);var zc=["DELETE","GET","HEAD","OPTIONS","POST","PUT"];function Kc(t,e){var r,n,o=(e=e||{}).body;if(t instanceof Kc){if(t.bodyUsed)throw new TypeError("Already read");this.url=t.url,this.credentials=t.credentials,e.headers||(this.headers=new Uc(t.headers)),this.method=t.method,this.mode=t.mode,this.signal=t.signal,o||null==t._bodyInit||(o=t._bodyInit,t.bodyUsed=!0)}else this.url=String(t);if(this.credentials=e.credentials||this.credentials||"same-origin",!e.headers&&this.headers||(this.headers=new Uc(e.headers)),this.method=(n=(r=e.method||this.method||"GET").toUpperCase(),zc.indexOf(n)>-1?n:r),this.mode=e.mode||this.mode||null,this.signal=e.signal||this.signal,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&o)throw new TypeError("Body not allowed for GET or HEAD requests");this._initBody(o)}function Gc(t){var e=new FormData;return t.trim().split("&").forEach((function(t){if(t){var r=t.split("="),n=r.shift().replace(/\+/g," "),o=r.join("=").replace(/\+/g," ");e.append(decodeURIComponent(n),decodeURIComponent(o))}})),e}function Vc(t,e){e||(e={}),this.type="default",this.status=void 0===e.status?200:e.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in e?e.statusText:"OK",this.headers=new Uc(e.headers),this.url=e.url||"",this._initBody(t)}Kc.prototype.clone=function(){return new Kc(this,{body:this._bodyInit})},Wc.call(Kc.prototype),Wc.call(Vc.prototype),Vc.prototype.clone=function(){return new Vc(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new Uc(this.headers),url:this.url})},Vc.error=function(){var t=new Vc(null,{status:0,statusText:""});return t.type="error",t};var $c=[301,302,303,307,308];Vc.redirect=function(t,e){if(-1===$c.indexOf(e))throw new RangeError("Invalid status code");return new Vc(null,{status:e,headers:{location:t}})};var qc=self.DOMException;try{new qc}catch(e){(qc=function(t,e){this.message=t,this.name=e;var r=Error(t);this.stack=r.stack}).prototype=Object.create(Error.prototype),qc.prototype.constructor=qc}function Hc(t,e){return new Promise((function(r,n){var o=new Kc(t,e);if(o.signal&&o.signal.aborted)return n(new qc("Aborted","AbortError"));var i=new XMLHttpRequest;function a(){i.abort()}i.onload=function(){var t,e,n={status:i.status,statusText:i.statusText,headers:(t=i.getAllResponseHeaders()||"",e=new Uc,t.replace(/\r?\n[\t ]+/g," ").split(/\r?\n/).forEach((function(t){var r=t.split(":"),n=r.shift().trim();if(n){var o=r.join(":").trim();e.append(n,o)}})),e)};n.url="responseURL"in i?i.responseURL:n.headers.get("X-Request-URL"),r(new Vc("response"in i?i.response:i.responseText,n))},i.onerror=function(){n(new TypeError("Network request failed"))},i.ontimeout=function(){n(new TypeError("Network request failed"))},i.onabort=function(){n(new qc("Aborted","AbortError"))},i.open(o.method,o.url,!0),"include"===o.credentials?i.withCredentials=!0:"omit"===o.credentials&&(i.withCredentials=!1),"responseType"in i&&Pc&&(i.responseType="blob"),o.headers.forEach((function(t,e){i.setRequestHeader(e,t)})),o.signal&&(o.signal.addEventListener("abort",a),i.onreadystatechange=function(){4===i.readyState&&o.signal.removeEventListener("abort",a)}),i.send(void 0===o._bodyInit?null:o._bodyInit)}))}Hc.polyfill=!0,self.fetch||(self.fetch=Hc,self.Headers=Uc,self.Request=Kc,self.Response=Vc),function(t){var e=function(){try{return!!Symbol.iterator}catch(t){return!1}}(),r=function(t){var r={next:function(){var e=t.shift();return{done:void 0===e,value:e}}};return e&&(r[Symbol.iterator]=function(){return r}),r},n=function(t){return encodeURIComponent(t).replace(/%20/g,"+")},o=function(t){return decodeURIComponent(String(t).replace(/\+/g," "))};(function(){try{var e=t.URLSearchParams;return"a=1"===new e("?a=1").toString()&&"function"==typeof e.prototype.set}catch(t){return!1}})()||function(){var o=function t(e){Object.defineProperty(this,"_entries",{writable:!0,value:{}});var r=typeof e;if("undefined"===r);else if("string"===r)""!==e&&this._fromString(e);else if(e instanceof t){var n=this;e.forEach((function(t,e){n.append(e,t)}))}else{if(null===e||"object"!==r)throw new TypeError("Unsupported input's type for URLSearchParams");if("[object Array]"===Object.prototype.toString.call(e))for(var o=0;o<e.length;o++){var i=e[o];if("[object Array]"!==Object.prototype.toString.call(i)&&2===i.length)throw new TypeError("Expected [string, any] as entry at index "+o+" of URLSearchParams's input");this.append(i[0],i[1])}else for(var a in e)e.hasOwnProperty(a)&&this.append(a,e[a])}},i=o.prototype;i.append=function(t,e){t in this._entries?this._entries[t].push(String(e)):this._entries[t]=[String(e)]},i.delete=function(t){delete this._entries[t]},i.get=function(t){return t in this._entries?this._entries[t][0]:null},i.getAll=function(t){return t in this._entries?this._entries[t].slice(0):[]},i.has=function(t){return t in this._entries},i.set=function(t,e){this._entries[t]=[String(e)]},i.forEach=function(t,e){var r;for(var n in this._entries)if(this._entries.hasOwnProperty(n)){r=this._entries[n];for(var o=0;o<r.length;o++)t.call(e,r[o],n,this)}},i.keys=function(){var t=[];return this.forEach((function(e,r){t.push(r)})),r(t)},i.values=function(){var t=[];return this.forEach((function(e){t.push(e)})),r(t)},i.entries=function(){var t=[];return this.forEach((function(e,r){t.push([r,e])})),r(t)},e&&(i[Symbol.iterator]=i.entries),i.toString=function(){var t=[];return this.forEach((function(e,r){t.push(n(r)+"="+n(e))})),t.join("&")},t.URLSearchParams=o}();var i=t.URLSearchParams.prototype;"function"!=typeof i.sort&&(i.sort=function(){var t=this,e=[];this.forEach((function(r,n){e.push([n,r]),t._entries||t.delete(n)})),e.sort((function(t,e){return t[0]<e[0]?-1:t[0]>e[0]?1:0})),t._entries&&(t._entries={});for(var r=0;r<e.length;r++)this.append(e[r][0],e[r][1])}),"function"!=typeof i._fromString&&Object.defineProperty(i,"_fromString",{enumerable:!1,configurable:!1,writable:!1,value:function(t){if(this._entries)this._entries={};else{var e=[];this.forEach((function(t,r){e.push(r)}));for(var r=0;r<e.length;r++)this.delete(e[r])}var n,i=(t=t.replace(/^\?/,"")).split("&");for(r=0;r<i.length;r++)n=i[r].split("="),this.append(o(n[0]),n.length>1?o(n[1]):"")}})}(void 0!==e?e:"undefined"!=typeof window?window:"undefined"!=typeof self?self:e),function(t){var e,r,n;if(function(){try{var e=new t.URL("b","http://a");return e.pathname="c d","http://a/c%20d"===e.href&&e.searchParams}catch(t){return!1}}()||(e=t.URL,n=(r=function(e,r){"string"!=typeof e&&(e=String(e));var n,o=document;if(r&&(void 0===t.location||r!==t.location.href)){(n=(o=document.implementation.createHTMLDocument("")).createElement("base")).href=r,o.head.appendChild(n);try{if(0!==n.href.indexOf(r))throw new Error(n.href)}catch(t){throw new Error("URL unable to set base "+r+" due to "+t)}}var i=o.createElement("a");i.href=e,n&&(o.body.appendChild(i),i.href=i.href);var a=o.createElement("input");if(a.type="url",a.value=e,":"===i.protocol||!/:/.test(i.href)||!a.checkValidity()&&!r)throw new TypeError("Invalid URL");Object.defineProperty(this,"_anchorElement",{value:i});var u=new t.URLSearchParams(this.search),c=!0,s=!0,f=this;["append","delete","set"].forEach((function(t){var e=u[t];u[t]=function(){e.apply(u,arguments),c&&(s=!1,f.search=u.toString(),s=!0)}})),Object.defineProperty(this,"searchParams",{value:u,enumerable:!0});var l=void 0;Object.defineProperty(this,"_updateSearchParams",{enumerable:!1,configurable:!1,writable:!1,value:function(){this.search!==l&&(l=this.search,s&&(c=!1,this.searchParams._fromString(this.search),c=!0))}})}).prototype,["hash","host","hostname","port","protocol"].forEach((function(t){!function(t){Object.defineProperty(n,t,{get:function(){return this._anchorElement[t]},set:function(e){this._anchorElement[t]=e},enumerable:!0})}(t)})),Object.defineProperty(n,"search",{get:function(){return this._anchorElement.search},set:function(t){this._anchorElement.search=t,this._updateSearchParams()},enumerable:!0}),Object.defineProperties(n,{toString:{get:function(){var t=this;return function(){return t.href}}},href:{get:function(){return this._anchorElement.href.replace(/\?$/,"")},set:function(t){this._anchorElement.href=t,this._updateSearchParams()},enumerable:!0},pathname:{get:function(){return this._anchorElement.pathname.replace(/(^\/?)/,"/")},set:function(t){this._anchorElement.pathname=t},enumerable:!0},origin:{get:function(){return this._anchorElement.protocol+"//"+this._anchorElement.hostname+(this._anchorElement.port!={"http:":80,"https:":443,"ftp:":21}[this._anchorElement.protocol]&&""!==this._anchorElement.port?":"+this._anchorElement.port:"")},enumerable:!0},password:{get:function(){return""},set:function(t){},enumerable:!0},username:{get:function(){return""},set:function(t){},enumerable:!0}}),r.createObjectURL=function(t){return e.createObjectURL.apply(e,arguments)},r.revokeObjectURL=function(t){return e.revokeObjectURL.apply(e,arguments)},t.URL=r),void 0!==t.location&&!("origin"in t.location)){var o=function(){return t.location.protocol+"//"+t.location.hostname+(t.location.port?":"+t.location.port:"")};try{Object.defineProperty(t.location,"origin",{get:o,enumerable:!0})}catch(e){setInterval((function(){t.location.origin=o()}),100)}}}(void 0!==e?e:"undefined"!=typeof window?window:"undefined"!=typeof self?self:e);var Xc=Object.getOwnPropertySymbols,Yc=Object.prototype.hasOwnProperty,Jc=Object.prototype.propertyIsEnumerable;function Qc(t){if(null==t)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(t)}var Zc=function(){try{if(!Object.assign)return!1;var t=new String("abc");if(t[5]="de","5"===Object.getOwnPropertyNames(t)[0])return!1;for(var e={},r=0;r<10;r++)e["_"+String.fromCharCode(r)]=r;if("0123456789"!==Object.getOwnPropertyNames(e).map((function(t){return e[t]})).join(""))return!1;var n={};return"abcdefghijklmnopqrst".split("").forEach((function(t){n[t]=t})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},n)).join("")}catch(t){return!1}}()?Object.assign:function(t,e){for(var r,n,o=Qc(t),i=1;i<arguments.length;i++){for(var a in r=Object(arguments[i]))Yc.call(r,a)&&(o[a]=r[a]);if(Xc){n=Xc(r);for(var u=0;u<n.length;u++)Jc.call(r,n[u])&&(o[n[u]]=r[n[u]])}}return o};Object.assign=Zc}()}).call(this,r("yLpj"))},WVtH:function(t,e,r){"use strict";r.r(e);r("VXT5")}},[["WVtH",2,0]]]);
-//# sourceMappingURL=polyfill-88d9aed314b16f9b2adc.js.map
\ No newline at end of file
diff --git a/polyfill-88d9aed314b16f9b2adc.js.map b/polyfill-88d9aed314b16f9b2adc.js.map
deleted file mode 100644
index fa1e932..0000000
--- a/polyfill-88d9aed314b16f9b2adc.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":["webpack:///./node_modules/gatsby-legacy-polyfills/dist/polyfills.js","webpack:///./.cache/polyfill-entry.js"],"names":["t","globalThis","window","global","self","e","r","path","exports","require","Error","Math","n","Function","o","i","Object","defineProperty","get","a","propertyIsEnumerable","u","getOwnPropertyDescriptor","c","f","call","1","this","enumerable","s","configurable","writable","value","toString","l","slice","p","split","h","d","TypeError","v","g","y","valueOf","m","hasOwnProperty","b","S","document","w","createElement","E","x","O","j","A","String","R","P","_","I","T","M","inspectSource","k","N","L","U","C","WeakMap","F","test","D","push","version","mode","copyright","B","W","random","z","K","G","$","V","q","H","has","X","set","Y","J","Q","enforce","getterFor","type","Z","unsafe","noTargetGet","source","join","prototype","tt","et","rt","arguments","length","nt","ceil","ot","floor","it","isNaN","at","min","ut","ct","max","st","ft","lt","pt","includes","indexOf","ht","dt","vt","gt","concat","yt","getOwnPropertyNames","mt","getOwnPropertySymbols","bt","St","wt","Et","Ot","xt","At","jt","normalize","replace","toLowerCase","data","NATIVE","POLYFILL","Rt","Pt","_t","target","stat","forced","sham","It","Tt","Mt","copyWithin","kt","Symbol","Nt","iterator","Lt","Ut","Ct","withoutSetter","Ft","Dt","keys","Bt","defineProperties","Wt","zt","Kt","Gt","$t","domain","ActiveXObject","write","close","parentWindow","style","display","appendChild","src","contentWindow","open","Vt","create","qt","Ht","Array","Xt","proto","Yt","Jt","apply","Qt","Zt","fill","te","isArray","ee","re","constructor","ne","oe","ie","forEach","map","filter","some","every","find","findIndex","ae","ue","ce","se","ACCESSORS","fe","le","pe","he","de","ve","ge","flatMap","flat","ye","me","be","Se","charCodeAt","charAt","we","codeAt","Ee","getPrototypeOf","xe","Oe","je","Ae","Re","Pe","IteratorPrototype","BUGGY_SAFARI_ITERATORS","_e","Ie","Te","Me","ke","Ne","Le","Ue","setPrototypeOf","__proto__","Ce","Fe","De","Be","We","next","entries","name","values","ze","Ke","Ge","string","index","done","$e","return","Ve","qe","He","Xe","Ye","Je","Qe","Ze","tr","callee","er","rr","nr","or","ir","ar","from","ur","cr","sr","fr","lr","pr","hr","kind","Arguments","dr","of","vr","gr","yr","mr","br","match","Sr","isExtensible","preventExtensions","wr","objectID","weakData","REQUIRED","fastKey","getWeakData","onFreeze","Er","stopped","result","stop","xr","Or","jr","getConstructor","clear","setStrong","Ar","Rr","Pr","_r","Ir","Tr","Mr","kr","first","last","size","key","previous","removed","delete","add","state","Nr","Lr","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","FileList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList","Ur","Cr","Fr","Dr","Br","Wr","zr","Kr","Gr","$r","real","deleteAll","Vr","Map","qr","Hr","findKey","groupBy","keyBy","keyOf","mapKeys","mapValues","merge","reduce","update","Xr","upsert","updateOrInsert","Yr","Jr","addAll","Qr","Set","difference","intersection","isDisjointFrom","isSubsetOf","isSupersetOf","symmetricDifference","union","Zr","tn","en","rn","nn","on","an","frozen","un","cn","splice","sn","id","fn","ln","pn","hn","RegExp","dn","vn","gn","start","end","trim","yn","mn","bn","Sn","wn","Number","En","xn","On","NaN","parseInt","jn","An","Rn","Pn","EPSILON","pow","_n","isFinite","In","Tn","isInteger","Mn","abs","isSafeInteger","MAX_SAFE_INTEGER","MIN_SAFE_INTEGER","kn","Nn","Ln","Un","getOwnPropertyDescriptors","Cn","is","Fn","Dn","Bn","codePointAt","Wn","zn","Kn","Gn","$n","Vn","qn","Hn","endsWith","Xn","Yn","Jn","Qn","fromCharCode","Zn","fromCodePoint","RangeError","to","repeat","Infinity","eo","ro","no","oo","io","ao","padStart","uo","padEnd","raw","co","so","startsWith","fo","lo","po","ho","vo","go","yo","trimStart","trimLeft","mo","bo","So","trimEnd","trimRight","wo","Eo","xo","Oo","jo","Ao","Ro","bind","Po","_o","Io","To","construct","Mo","Reflect","ko","deleteProperty","No","ownKeys","Lo","Uo","Co","store","Fo","Do","getMap","toKey","Bo","Wo","defineMetadata","zo","Ko","Go","deleteMetadata","$o","Vo","qo","Ho","getMetadata","Xo","Yo","Jo","getMetadataKeys","Qo","Zo","getOwnMetadata","ti","ei","getOwnMetadataKeys","ri","ni","oi","hasMetadata","ii","ai","hasOwnMetadata","ui","ci","metadata","si","ignoreCase","multiline","dotAll","unicode","sticky","fi","li","UNSUPPORTED_Y","lastIndex","exec","BROKEN_CARET","pi","hi","di","vi","gi","yi","mi","bi","Si","wi","Ei","xi","Oi","ji","Ai","Ri","flags","Pi","_i","Ii","Ti","Mi","ki","input","Ni","Li","Ui","Ci","Fi","Di","Bi","Wi","zi","groups","Ki","Gi","$i","Vi","qi","REPLACE_KEEPS_$0","REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE","Hi","Xi","Yi","Ji","Qi","Zi","ta","ea","ra","na","oa","ia","aa","ua","process","ca","versions","sa","v8","fa","la","pa","ha","da","foo","Boolean","va","ga","ya","ma","ba","Sa","wa","Ea","xa","Oa","ja","Aa","Ra","Pa","_a","Ia","Ta","Ma","ka","Na","La","Ua","Ca","Fa","Da","Ba","QObject","Wa","findChild","za","Ka","tag","description","Ga","$a","Va","Ya","qa","Ha","Xa","wrap","for","keyFor","useSetter","useSimple","Ja","stringify","Qa","Za","tu","eu","ru","nu","ou","iu","JSON","au","uu","cu","su","Promise","fu","lu","location","pu","setImmediate","hu","clearImmediate","du","vu","MessageChannel","gu","Dispatch","yu","mu","bu","Su","wu","Eu","postMessage","protocol","host","nextTick","now","port2","port1","onmessage","addEventListener","importScripts","onreadystatechange","removeChild","setTimeout","xu","Ou","ju","Au","Ru","Pu","_u","Iu","Tu","Mu","ku","Nu","MutationObserver","WebKitMutationObserver","Lu","Uu","Cu","Fu","Du","exit","enter","createTextNode","observe","characterData","resolve","then","Bu","Wu","zu","Ku","Gu","$u","promise","reject","Vu","qu","Hu","error","Xu","Yu","Ju","Qu","Zu","tc","ec","rc","nc","oc","ic","ac","uc","cc","sc","createEvent","dispatchEvent","fc","PromiseRejectionEvent","lc","all","catch","pc","hc","notified","reactions","ok","fail","rejection","yc","vc","dc","reason","initEvent","console","gc","emit","parent","mc","bc","Sc","fetch","race","allSettled","status","wc","finally","Ec","xc","Oc","errors","message","AggregateError","try","any","jc","Ac","Rc","Blob","Pc","_c","Ic","Tc","ArrayBuffer","isView","Mc","kc","Nc","shift","Lc","append","Uc","bodyUsed","Cc","onload","onerror","Fc","FileReader","readAsArrayBuffer","Dc","Uint8Array","byteLength","buffer","Bc","_initBody","_bodyInit","_bodyText","isPrototypeOf","_bodyBlob","FormData","_bodyFormData","URLSearchParams","DataView","_bodyArrayBuffer","headers","blob","arrayBuffer","text","readAsText","formData","Kc","json","parse","Wc","zc","body","url","credentials","method","signal","toUpperCase","referrer","decodeURIComponent","Gc","statusText","clone","$c","redirect","Vc","DOMException","stack","qc","aborted","XMLHttpRequest","abort","getAllResponseHeaders","responseURL","response","responseText","ontimeout","onabort","withCredentials","responseType","setRequestHeader","readyState","removeEventListener","send","polyfill","Headers","Request","Response","encodeURIComponent","_fromString","_entries","getAll","sort","URL","pathname","href","searchParams","implementation","createHTMLDocument","head","checkValidity","search","_anchorElement","_updateSearchParams","origin","hostname","port","password","username","createObjectURL","revokeObjectURL","setInterval","Hc","Xc","Yc","Jc","Qc","assign"],"mappings":"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","file":"polyfill-88d9aed314b16f9b2adc.js","sourcesContent":["!function(){var t=\"undefined\"!=typeof globalThis?globalThis:\"undefined\"!=typeof window?window:\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:{};function e(t,e,r){return t(r={path:e,exports:{},require:function(t,e){return function(){throw new Error(\"Dynamic requires are not currently supported by @rollup/plugin-commonjs\")}()}},r.exports),r.exports}var r=function(t){return t&&t.Math==Math&&t},n=r(\"object\"==typeof globalThis&&globalThis)||r(\"object\"==typeof window&&window)||r(\"object\"==typeof self&&self)||r(\"object\"==typeof t&&t)||Function(\"return this\")(),o=function(t){try{return!!t()}catch(t){return!0}},i=!o(function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}),a={}.propertyIsEnumerable,u=Object.getOwnPropertyDescriptor,c={f:u&&!a.call({1:2},1)?function(t){var e=u(this,t);return!!e&&e.enumerable}:a},s=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}},f={}.toString,l=function(t){return f.call(t).slice(8,-1)},p=\"\".split,h=o(function(){return!Object(\"z\").propertyIsEnumerable(0)})?function(t){return\"String\"==l(t)?p.call(t,\"\"):Object(t)}:Object,d=function(t){if(null==t)throw TypeError(\"Can't call method on \"+t);return t},v=function(t){return h(d(t))},g=function(t){return\"object\"==typeof t?null!==t:\"function\"==typeof t},y=function(t,e){if(!g(t))return t;var r,n;if(e&&\"function\"==typeof(r=t.toString)&&!g(n=r.call(t)))return n;if(\"function\"==typeof(r=t.valueOf)&&!g(n=r.call(t)))return n;if(!e&&\"function\"==typeof(r=t.toString)&&!g(n=r.call(t)))return n;throw TypeError(\"Can't convert object to primitive value\")},m={}.hasOwnProperty,b=function(t,e){return m.call(t,e)},S=n.document,w=g(S)&&g(S.createElement),E=function(t){return w?S.createElement(t):{}},x=!i&&!o(function(){return 7!=Object.defineProperty(E(\"div\"),\"a\",{get:function(){return 7}}).a}),O=Object.getOwnPropertyDescriptor,j={f:i?O:function(t,e){if(t=v(t),e=y(e,!0),x)try{return O(t,e)}catch(t){}if(b(t,e))return s(!c.f.call(t,e),t[e])}},A=function(t){if(!g(t))throw TypeError(String(t)+\" is not an object\");return t},R=Object.defineProperty,P={f:i?R:function(t,e,r){if(A(t),e=y(e,!0),A(r),x)try{return R(t,e,r)}catch(t){}if(\"get\"in r||\"set\"in r)throw TypeError(\"Accessors not supported\");return\"value\"in r&&(t[e]=r.value),t}},_=i?function(t,e,r){return P.f(t,e,s(1,r))}:function(t,e,r){return t[e]=r,t},I=function(t,e){try{_(n,t,e)}catch(r){n[t]=e}return e},T=n[\"__core-js_shared__\"]||I(\"__core-js_shared__\",{}),M=Function.toString;\"function\"!=typeof T.inspectSource&&(T.inspectSource=function(t){return M.call(t)});var k,N,L,U=T.inspectSource,C=n.WeakMap,F=\"function\"==typeof C&&/native code/.test(U(C)),D=e(function(t){(t.exports=function(t,e){return T[t]||(T[t]=void 0!==e?e:{})})(\"versions\",[]).push({version:\"3.6.5\",mode:\"global\",copyright:\"© 2020 Denis Pushkarev (zloirock.ru)\"})}),B=0,W=Math.random(),z=function(t){return\"Symbol(\"+String(void 0===t?\"\":t)+\")_\"+(++B+W).toString(36)},K=D(\"keys\"),G=function(t){return K[t]||(K[t]=z(t))},$={};if(F){var V=new(0,n.WeakMap),q=V.get,H=V.has,X=V.set;k=function(t,e){return X.call(V,t,e),e},N=function(t){return q.call(V,t)||{}},L=function(t){return H.call(V,t)}}else{var Y=G(\"state\");$[Y]=!0,k=function(t,e){return _(t,Y,e),e},N=function(t){return b(t,Y)?t[Y]:{}},L=function(t){return b(t,Y)}}var J,Q={set:k,get:N,has:L,enforce:function(t){return L(t)?N(t):k(t,{})},getterFor:function(t){return function(e){var r;if(!g(e)||(r=N(e)).type!==t)throw TypeError(\"Incompatible receiver, \"+t+\" required\");return r}}},Z=e(function(t){var e=Q.get,r=Q.enforce,o=String(String).split(\"String\");(t.exports=function(t,e,i,a){var u=!!a&&!!a.unsafe,c=!!a&&!!a.enumerable,s=!!a&&!!a.noTargetGet;\"function\"==typeof i&&(\"string\"!=typeof e||b(i,\"name\")||_(i,\"name\",e),r(i).source=o.join(\"string\"==typeof e?e:\"\")),t!==n?(u?!s&&t[e]&&(c=!0):delete t[e],c?t[e]=i:_(t,e,i)):c?t[e]=i:I(e,i)})(Function.prototype,\"toString\",function(){return\"function\"==typeof this&&e(this).source||U(this)})}),tt=n,et=function(t){return\"function\"==typeof t?t:void 0},rt=function(t,e){return arguments.length<2?et(tt[t])||et(n[t]):tt[t]&&tt[t][e]||n[t]&&n[t][e]},nt=Math.ceil,ot=Math.floor,it=function(t){return isNaN(t=+t)?0:(t>0?ot:nt)(t)},at=Math.min,ut=function(t){return t>0?at(it(t),9007199254740991):0},ct=Math.max,st=Math.min,ft=function(t,e){var r=it(t);return r<0?ct(r+e,0):st(r,e)},lt=function(t){return function(e,r,n){var o,i=v(e),a=ut(i.length),u=ft(n,a);if(t&&r!=r){for(;a>u;)if((o=i[u++])!=o)return!0}else for(;a>u;u++)if((t||u in i)&&i[u]===r)return t||u||0;return!t&&-1}},pt={includes:lt(!0),indexOf:lt(!1)},ht=pt.indexOf,dt=function(t,e){var r,n=v(t),o=0,i=[];for(r in n)!b($,r)&&b(n,r)&&i.push(r);for(;e.length>o;)b(n,r=e[o++])&&(~ht(i,r)||i.push(r));return i},vt=[\"constructor\",\"hasOwnProperty\",\"isPrototypeOf\",\"propertyIsEnumerable\",\"toLocaleString\",\"toString\",\"valueOf\"],gt=vt.concat(\"length\",\"prototype\"),yt={f:Object.getOwnPropertyNames||function(t){return dt(t,gt)}},mt={f:Object.getOwnPropertySymbols},bt=rt(\"Reflect\",\"ownKeys\")||function(t){var e=yt.f(A(t)),r=mt.f;return r?e.concat(r(t)):e},St=function(t,e){for(var r=bt(e),n=P.f,o=j.f,i=0;i<r.length;i++){var a=r[i];b(t,a)||n(t,a,o(e,a))}},wt=/#|\\.prototype\\./,Et=function(t,e){var r=Ot[xt(t)];return r==At||r!=jt&&(\"function\"==typeof e?o(e):!!e)},xt=Et.normalize=function(t){return String(t).replace(wt,\".\").toLowerCase()},Ot=Et.data={},jt=Et.NATIVE=\"N\",At=Et.POLYFILL=\"P\",Rt=Et,Pt=j.f,_t=function(t,e){var r,o,i,a,u,c=t.target,s=t.global,f=t.stat;if(r=s?n:f?n[c]||I(c,{}):(n[c]||{}).prototype)for(o in e){if(a=e[o],i=t.noTargetGet?(u=Pt(r,o))&&u.value:r[o],!Rt(s?o:c+(f?\".\":\"#\")+o,t.forced)&&void 0!==i){if(typeof a==typeof i)continue;St(a,i)}(t.sham||i&&i.sham)&&_(a,\"sham\",!0),Z(r,o,a,t)}},It=function(t){return Object(d(t))},Tt=Math.min,Mt=[].copyWithin||function(t,e){var r=It(this),n=ut(r.length),o=ft(t,n),i=ft(e,n),a=arguments.length>2?arguments[2]:void 0,u=Tt((void 0===a?n:ft(a,n))-i,n-o),c=1;for(i<o&&o<i+u&&(c=-1,i+=u-1,o+=u-1);u-- >0;)i in r?r[o]=r[i]:delete r[o],o+=c,i+=c;return r},kt=!!Object.getOwnPropertySymbols&&!o(function(){return!String(Symbol())}),Nt=kt&&!Symbol.sham&&\"symbol\"==typeof Symbol.iterator,Lt=D(\"wks\"),Ut=n.Symbol,Ct=Nt?Ut:Ut&&Ut.withoutSetter||z,Ft=function(t){return b(Lt,t)||(Lt[t]=kt&&b(Ut,t)?Ut[t]:Ct(\"Symbol.\"+t)),Lt[t]},Dt=Object.keys||function(t){return dt(t,vt)},Bt=i?Object.defineProperties:function(t,e){A(t);for(var r,n=Dt(e),o=n.length,i=0;o>i;)P.f(t,r=n[i++],e[r]);return t},Wt=rt(\"document\",\"documentElement\"),zt=G(\"IE_PROTO\"),Kt=function(){},Gt=function(t){return\"<script>\"+t+\"<\\/script>\"},$t=function(){try{J=document.domain&&new ActiveXObject(\"htmlfile\")}catch(t){}var t,e;$t=J?function(t){t.write(Gt(\"\")),t.close();var e=t.parentWindow.Object;return t=null,e}(J):((e=E(\"iframe\")).style.display=\"none\",Wt.appendChild(e),e.src=String(\"javascript:\"),(t=e.contentWindow.document).open(),t.write(Gt(\"document.F=Object\")),t.close(),t.F);for(var r=vt.length;r--;)delete $t.prototype[vt[r]];return $t()};$[zt]=!0;var Vt=Object.create||function(t,e){var r;return null!==t?(Kt.prototype=A(t),r=new Kt,Kt.prototype=null,r[zt]=t):r=$t(),void 0===e?r:Bt(r,e)},qt=Ft(\"unscopables\"),Ht=Array.prototype;null==Ht[qt]&&P.f(Ht,qt,{configurable:!0,value:Vt(null)});var Xt=function(t){Ht[qt][t]=!0};_t({target:\"Array\",proto:!0},{copyWithin:Mt}),Xt(\"copyWithin\");var Yt=function(t){if(\"function\"!=typeof t)throw TypeError(String(t)+\" is not a function\");return t},Jt=function(t,e,r){if(Yt(t),void 0===e)return t;switch(r){case 0:return function(){return t.call(e)};case 1:return function(r){return t.call(e,r)};case 2:return function(r,n){return t.call(e,r,n)};case 3:return function(r,n,o){return t.call(e,r,n,o)}}return function(){return t.apply(e,arguments)}},Qt=Function.call,Zt=function(t,e,r){return Jt(Qt,n[t].prototype[e],r)};Zt(\"Array\",\"copyWithin\"),_t({target:\"Array\",proto:!0},{fill:function(t){for(var e=It(this),r=ut(e.length),n=arguments.length,o=ft(n>1?arguments[1]:void 0,r),i=n>2?arguments[2]:void 0,a=void 0===i?r:ft(i,r);a>o;)e[o++]=t;return e}}),Xt(\"fill\"),Zt(\"Array\",\"fill\");var te=Array.isArray||function(t){return\"Array\"==l(t)},ee=Ft(\"species\"),re=function(t,e){var r;return te(t)&&(\"function\"!=typeof(r=t.constructor)||r!==Array&&!te(r.prototype)?g(r)&&null===(r=r[ee])&&(r=void 0):r=void 0),new(void 0===r?Array:r)(0===e?0:e)},ne=[].push,oe=function(t){var e=1==t,r=2==t,n=3==t,o=4==t,i=6==t,a=5==t||i;return function(u,c,s,f){for(var l,p,d=It(u),v=h(d),g=Jt(c,s,3),y=ut(v.length),m=0,b=f||re,S=e?b(u,y):r?b(u,0):void 0;y>m;m++)if((a||m in v)&&(p=g(l=v[m],m,d),t))if(e)S[m]=p;else if(p)switch(t){case 3:return!0;case 5:return l;case 6:return m;case 2:ne.call(S,l)}else if(o)return!1;return i?-1:n||o?o:S}},ie={forEach:oe(0),map:oe(1),filter:oe(2),some:oe(3),every:oe(4),find:oe(5),findIndex:oe(6)},ae=Object.defineProperty,ue={},ce=function(t){throw t},se=function(t,e){if(b(ue,t))return ue[t];e||(e={});var r=[][t],n=!!b(e,\"ACCESSORS\")&&e.ACCESSORS,a=b(e,0)?e[0]:ce,u=b(e,1)?e[1]:void 0;return ue[t]=!!r&&!o(function(){if(n&&!i)return!0;var t={length:-1};n?ae(t,1,{enumerable:!0,get:ce}):t[1]=1,r.call(t,a,u)})},fe=ie.find,le=!0,pe=se(\"find\");\"find\"in[]&&Array(1).find(function(){le=!1}),_t({target:\"Array\",proto:!0,forced:le||!pe},{find:function(t){return fe(this,t,arguments.length>1?arguments[1]:void 0)}}),Xt(\"find\"),Zt(\"Array\",\"find\");var he=ie.findIndex,de=!0,ve=se(\"findIndex\");\"findIndex\"in[]&&Array(1).findIndex(function(){de=!1}),_t({target:\"Array\",proto:!0,forced:de||!ve},{findIndex:function(t){return he(this,t,arguments.length>1?arguments[1]:void 0)}}),Xt(\"findIndex\"),Zt(\"Array\",\"findIndex\");var ge=function t(e,r,n,o,i,a,u,c){for(var s,f=i,l=0,p=!!u&&Jt(u,c,3);l<o;){if(l in n){if(s=p?p(n[l],l,r):n[l],a>0&&te(s))f=t(e,r,s,ut(s.length),f,a-1)-1;else{if(f>=9007199254740991)throw TypeError(\"Exceed the acceptable array length\");e[f]=s}f++}l++}return f};_t({target:\"Array\",proto:!0},{flatMap:function(t){var e,r=It(this),n=ut(r.length);return Yt(t),(e=re(r,0)).length=ge(e,r,r,n,0,1,t,arguments.length>1?arguments[1]:void 0),e}}),Xt(\"flatMap\"),Zt(\"Array\",\"flatMap\"),_t({target:\"Array\",proto:!0},{flat:function(){var t=arguments.length?arguments[0]:void 0,e=It(this),r=ut(e.length),n=re(e,0);return n.length=ge(n,e,e,r,0,void 0===t?1:it(t)),n}}),Xt(\"flat\"),Zt(\"Array\",\"flat\");var ye,me,be,Se=function(t){return function(e,r){var n,o,i=String(d(e)),a=it(r),u=i.length;return a<0||a>=u?t?\"\":void 0:(n=i.charCodeAt(a))<55296||n>56319||a+1===u||(o=i.charCodeAt(a+1))<56320||o>57343?t?i.charAt(a):n:t?i.slice(a,a+2):o-56320+(n-55296<<10)+65536}},we={codeAt:Se(!1),charAt:Se(!0)},Ee=!o(function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}),xe=G(\"IE_PROTO\"),Oe=Object.prototype,je=Ee?Object.getPrototypeOf:function(t){return t=It(t),b(t,xe)?t[xe]:\"function\"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?Oe:null},Ae=Ft(\"iterator\"),Re=!1;[].keys&&(\"next\"in(be=[].keys())?(me=je(je(be)))!==Object.prototype&&(ye=me):Re=!0),null==ye&&(ye={}),b(ye,Ae)||_(ye,Ae,function(){return this});var Pe={IteratorPrototype:ye,BUGGY_SAFARI_ITERATORS:Re},_e=P.f,Ie=Ft(\"toStringTag\"),Te=function(t,e,r){t&&!b(t=r?t:t.prototype,Ie)&&_e(t,Ie,{configurable:!0,value:e})},Me={},ke=Pe.IteratorPrototype,Ne=function(){return this},Le=function(t){if(!g(t)&&null!==t)throw TypeError(\"Can't set \"+String(t)+\" as a prototype\");return t},Ue=Object.setPrototypeOf||(\"__proto__\"in{}?function(){var t,e=!1,r={};try{(t=Object.getOwnPropertyDescriptor(Object.prototype,\"__proto__\").set).call(r,[]),e=r instanceof Array}catch(t){}return function(r,n){return A(r),Le(n),e?t.call(r,n):r.__proto__=n,r}}():void 0),Ce=Pe.IteratorPrototype,Fe=Pe.BUGGY_SAFARI_ITERATORS,De=Ft(\"iterator\"),Be=function(){return this},We=function(t,e,r,n,o,i,a){!function(t,e,r){var n=e+\" Iterator\";t.prototype=Vt(ke,{next:s(1,r)}),Te(t,n,!1),Me[n]=Ne}(r,e,n);var u,c,f,l=function(t){if(t===o&&g)return g;if(!Fe&&t in d)return d[t];switch(t){case\"keys\":case\"values\":case\"entries\":return function(){return new r(this,t)}}return function(){return new r(this)}},p=e+\" Iterator\",h=!1,d=t.prototype,v=d[De]||d[\"@@iterator\"]||o&&d[o],g=!Fe&&v||l(o),y=\"Array\"==e&&d.entries||v;if(y&&(u=je(y.call(new t)),Ce!==Object.prototype&&u.next&&(je(u)!==Ce&&(Ue?Ue(u,Ce):\"function\"!=typeof u[De]&&_(u,De,Be)),Te(u,p,!0))),\"values\"==o&&v&&\"values\"!==v.name&&(h=!0,g=function(){return v.call(this)}),d[De]!==g&&_(d,De,g),Me[e]=g,o)if(c={values:l(\"values\"),keys:i?g:l(\"keys\"),entries:l(\"entries\")},a)for(f in c)(Fe||h||!(f in d))&&Z(d,f,c[f]);else _t({target:e,proto:!0,forced:Fe||h},c);return c},ze=we.charAt,Ke=Q.set,Ge=Q.getterFor(\"String Iterator\");We(String,\"String\",function(t){Ke(this,{type:\"String Iterator\",string:String(t),index:0})},function(){var t,e=Ge(this),r=e.string,n=e.index;return n>=r.length?{value:void 0,done:!0}:(t=ze(r,n),e.index+=t.length,{value:t,done:!1})});var $e=function(t,e,r,n){try{return n?e(A(r)[0],r[1]):e(r)}catch(e){var o=t.return;throw void 0!==o&&A(o.call(t)),e}},Ve=Ft(\"iterator\"),qe=Array.prototype,He=function(t){return void 0!==t&&(Me.Array===t||qe[Ve]===t)},Xe=function(t,e,r){var n=y(e);n in t?P.f(t,n,s(0,r)):t[n]=r},Ye={};Ye[Ft(\"toStringTag\")]=\"z\";var Je=\"[object z]\"===String(Ye),Qe=Ft(\"toStringTag\"),Ze=\"Arguments\"==l(function(){return arguments}()),tr=Je?l:function(t){var e,r,n;return void 0===t?\"Undefined\":null===t?\"Null\":\"string\"==typeof(r=function(t,e){try{return t[e]}catch(t){}}(e=Object(t),Qe))?r:Ze?l(e):\"Object\"==(n=l(e))&&\"function\"==typeof e.callee?\"Arguments\":n},er=Ft(\"iterator\"),rr=function(t){if(null!=t)return t[er]||t[\"@@iterator\"]||Me[tr(t)]},nr=Ft(\"iterator\"),or=!1;try{var ir=0,ar={next:function(){return{done:!!ir++}},return:function(){or=!0}};ar[nr]=function(){return this},Array.from(ar,function(){throw 2})}catch(t){}var ur=function(t,e){if(!e&&!or)return!1;var r=!1;try{var n={};n[nr]=function(){return{next:function(){return{done:r=!0}}}},t(n)}catch(t){}return r},cr=!ur(function(t){Array.from(t)});_t({target:\"Array\",stat:!0,forced:cr},{from:function(t){var e,r,n,o,i,a,u=It(t),c=\"function\"==typeof this?this:Array,s=arguments.length,f=s>1?arguments[1]:void 0,l=void 0!==f,p=rr(u),h=0;if(l&&(f=Jt(f,s>2?arguments[2]:void 0,2)),null==p||c==Array&&He(p))for(r=new c(e=ut(u.length));e>h;h++)a=l?f(u[h],h):u[h],Xe(r,h,a);else for(i=(o=p.call(u)).next,r=new c;!(n=i.call(o)).done;h++)a=l?$e(o,f,[n.value,h],!0):n.value,Xe(r,h,a);return r.length=h,r}});var sr=pt.includes,fr=se(\"indexOf\",{ACCESSORS:!0,1:0});_t({target:\"Array\",proto:!0,forced:!fr},{includes:function(t){return sr(this,t,arguments.length>1?arguments[1]:void 0)}}),Xt(\"includes\"),Zt(\"Array\",\"includes\");var lr=Q.set,pr=Q.getterFor(\"Array Iterator\"),hr=We(Array,\"Array\",function(t,e){lr(this,{type:\"Array Iterator\",target:v(t),index:0,kind:e})},function(){var t=pr(this),e=t.target,r=t.kind,n=t.index++;return!e||n>=e.length?(t.target=void 0,{value:void 0,done:!0}):\"keys\"==r?{value:n,done:!1}:\"values\"==r?{value:e[n],done:!1}:{value:[n,e[n]],done:!1}},\"values\");Me.Arguments=Me.Array,Xt(\"keys\"),Xt(\"values\"),Xt(\"entries\"),Zt(\"Array\",\"values\");var dr=o(function(){function t(){}return!(Array.of.call(t)instanceof t)});_t({target:\"Array\",stat:!0,forced:dr},{of:function(){for(var t=0,e=arguments.length,r=new(\"function\"==typeof this?this:Array)(e);e>t;)Xe(r,t,arguments[t++]);return r.length=e,r}});var vr=Ft(\"hasInstance\"),gr=Function.prototype;vr in gr||P.f(gr,vr,{value:function(t){if(\"function\"!=typeof this||!g(t))return!1;if(!g(this.prototype))return t instanceof this;for(;t=je(t);)if(this.prototype===t)return!0;return!1}}),Ft(\"hasInstance\");var yr=Function.prototype,mr=yr.toString,br=/^\\s*function ([^ (]*)/;i&&!(\"name\"in yr)&&(0,P.f)(yr,\"name\",{configurable:!0,get:function(){try{return mr.call(this).match(br)[1]}catch(t){return\"\"}}});var Sr=!o(function(){return Object.isExtensible(Object.preventExtensions({}))}),wr=e(function(t){var e=P.f,r=z(\"meta\"),n=0,o=Object.isExtensible||function(){return!0},i=function(t){e(t,r,{value:{objectID:\"O\"+ ++n,weakData:{}}})},a=t.exports={REQUIRED:!1,fastKey:function(t,e){if(!g(t))return\"symbol\"==typeof t?t:(\"string\"==typeof t?\"S\":\"P\")+t;if(!b(t,r)){if(!o(t))return\"F\";if(!e)return\"E\";i(t)}return t[r].objectID},getWeakData:function(t,e){if(!b(t,r)){if(!o(t))return!0;if(!e)return!1;i(t)}return t[r].weakData},onFreeze:function(t){return Sr&&a.REQUIRED&&o(t)&&!b(t,r)&&i(t),t}};$[r]=!0}),Er=e(function(t){var e=function(t,e){this.stopped=t,this.result=e};(t.exports=function(t,r,n,o,i){var a,u,c,s,f,l,p,h=Jt(r,n,o?2:1);if(i)a=t;else{if(\"function\"!=typeof(u=rr(t)))throw TypeError(\"Target is not iterable\");if(He(u)){for(c=0,s=ut(t.length);s>c;c++)if((f=o?h(A(p=t[c])[0],p[1]):h(t[c]))&&f instanceof e)return f;return new e(!1)}a=u.call(t)}for(l=a.next;!(p=l.call(a)).done;)if(\"object\"==typeof(f=$e(a,h,p.value,o))&&f&&f instanceof e)return f;return new e(!1)}).stop=function(t){return new e(!0,t)}}),xr=function(t,e,r){if(!(t instanceof e))throw TypeError(\"Incorrect \"+(r?r+\" \":\"\")+\"invocation\");return t},Or=function(t,e,r){var n,o;return Ue&&\"function\"==typeof(n=e.constructor)&&n!==r&&g(o=n.prototype)&&o!==r.prototype&&Ue(t,o),t},jr=function(t,e,r){var i=-1!==t.indexOf(\"Map\"),a=-1!==t.indexOf(\"Weak\"),u=i?\"set\":\"add\",c=n[t],s=c&&c.prototype,f=c,l={},p=function(t){var e=s[t];Z(s,t,\"add\"==t?function(t){return e.call(this,0===t?0:t),this}:\"delete\"==t?function(t){return!(a&&!g(t))&&e.call(this,0===t?0:t)}:\"get\"==t?function(t){return a&&!g(t)?void 0:e.call(this,0===t?0:t)}:\"has\"==t?function(t){return!(a&&!g(t))&&e.call(this,0===t?0:t)}:function(t,r){return e.call(this,0===t?0:t,r),this})};if(Rt(t,\"function\"!=typeof c||!(a||s.forEach&&!o(function(){(new c).entries().next()}))))f=r.getConstructor(e,t,i,u),wr.REQUIRED=!0;else if(Rt(t,!0)){var h=new f,d=h[u](a?{}:-0,1)!=h,v=o(function(){h.has(1)}),y=ur(function(t){new c(t)}),m=!a&&o(function(){for(var t=new c,e=5;e--;)t[u](e,e);return!t.has(-0)});y||((f=e(function(e,r){xr(e,f,t);var n=Or(new c,e,f);return null!=r&&Er(r,n[u],n,i),n})).prototype=s,s.constructor=f),(v||m)&&(p(\"delete\"),p(\"has\"),i&&p(\"get\")),(m||d)&&p(u),a&&s.clear&&delete s.clear}return l[t]=f,_t({global:!0,forced:f!=c},l),Te(f,t),a||r.setStrong(f,t,i),f},Ar=function(t,e,r){for(var n in e)Z(t,n,e[n],r);return t},Rr=Ft(\"species\"),Pr=function(t){var e=rt(t);i&&e&&!e[Rr]&&(0,P.f)(e,Rr,{configurable:!0,get:function(){return this}})},_r=P.f,Ir=wr.fastKey,Tr=Q.set,Mr=Q.getterFor,kr={getConstructor:function(t,e,r,n){var o=t(function(t,a){xr(t,o,e),Tr(t,{type:e,index:Vt(null),first:void 0,last:void 0,size:0}),i||(t.size=0),null!=a&&Er(a,t[n],t,r)}),a=Mr(e),u=function(t,e,r){var n,o,u=a(t),s=c(t,e);return s?s.value=r:(u.last=s={index:o=Ir(e,!0),key:e,value:r,previous:n=u.last,next:void 0,removed:!1},u.first||(u.first=s),n&&(n.next=s),i?u.size++:t.size++,\"F\"!==o&&(u.index[o]=s)),t},c=function(t,e){var r,n=a(t),o=Ir(e);if(\"F\"!==o)return n.index[o];for(r=n.first;r;r=r.next)if(r.key==e)return r};return Ar(o.prototype,{clear:function(){for(var t=a(this),e=t.index,r=t.first;r;)r.removed=!0,r.previous&&(r.previous=r.previous.next=void 0),delete e[r.index],r=r.next;t.first=t.last=void 0,i?t.size=0:this.size=0},delete:function(t){var e=a(this),r=c(this,t);if(r){var n=r.next,o=r.previous;delete e.index[r.index],r.removed=!0,o&&(o.next=n),n&&(n.previous=o),e.first==r&&(e.first=n),e.last==r&&(e.last=o),i?e.size--:this.size--}return!!r},forEach:function(t){for(var e,r=a(this),n=Jt(t,arguments.length>1?arguments[1]:void 0,3);e=e?e.next:r.first;)for(n(e.value,e.key,this);e&&e.removed;)e=e.previous},has:function(t){return!!c(this,t)}}),Ar(o.prototype,r?{get:function(t){var e=c(this,t);return e&&e.value},set:function(t,e){return u(this,0===t?0:t,e)}}:{add:function(t){return u(this,t=0===t?0:t,t)}}),i&&_r(o.prototype,\"size\",{get:function(){return a(this).size}}),o},setStrong:function(t,e,r){var n=e+\" Iterator\",o=Mr(e),i=Mr(n);We(t,e,function(t,e){Tr(this,{type:n,target:t,state:o(t),kind:e,last:void 0})},function(){for(var t=i(this),e=t.kind,r=t.last;r&&r.removed;)r=r.previous;return t.target&&(t.last=r=r?r.next:t.state.first)?\"keys\"==e?{value:r.key,done:!1}:\"values\"==e?{value:r.value,done:!1}:{value:[r.key,r.value],done:!1}:(t.target=void 0,{value:void 0,done:!0})},r?\"entries\":\"values\",!r,!0),Pr(e)}},Nr=jr(\"Map\",function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},kr);Je||Z(Object.prototype,\"toString\",Je?{}.toString:function(){return\"[object \"+tr(this)+\"]\"},{unsafe:!0});var Lr={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0},Ur=Ft(\"iterator\"),Cr=Ft(\"toStringTag\"),Fr=hr.values;for(var Dr in Lr){var Br=n[Dr],Wr=Br&&Br.prototype;if(Wr){if(Wr[Ur]!==Fr)try{_(Wr,Ur,Fr)}catch(t){Wr[Ur]=Fr}if(Wr[Cr]||_(Wr,Cr,Dr),Lr[Dr])for(var zr in hr)if(Wr[zr]!==hr[zr])try{_(Wr,zr,hr[zr])}catch(t){Wr[zr]=hr[zr]}}}var Kr=function(t){var e,r,n,o,i=arguments.length,a=i>1?arguments[1]:void 0;return Yt(this),(e=void 0!==a)&&Yt(a),null==t?new this:(r=[],e?(n=0,o=Jt(a,i>2?arguments[2]:void 0,2),Er(t,function(t){r.push(o(t,n++))})):Er(t,r.push,r),new this(r))};_t({target:\"Map\",stat:!0},{from:Kr});var Gr=function(){for(var t=arguments.length,e=new Array(t);t--;)e[t]=arguments[t];return new this(e)};_t({target:\"Map\",stat:!0},{of:Gr});var $r=function(){for(var t,e=A(this),r=Yt(e.delete),n=!0,o=0,i=arguments.length;o<i;o++)t=r.call(e,arguments[o]),n=n&&t;return!!n};_t({target:\"Map\",proto:!0,real:!0,forced:!1},{deleteAll:function(){return $r.apply(this,arguments)}});var Vr=function(t){return Map.prototype.entries.call(t)};_t({target:\"Map\",proto:!0,real:!0,forced:!1},{every:function(t){var e=A(this),r=Vr(e),n=Jt(t,arguments.length>1?arguments[1]:void 0,3);return!Er(r,function(t,r){if(!n(r,t,e))return Er.stop()},void 0,!0,!0).stopped}});var qr=Ft(\"species\"),Hr=function(t,e){var r,n=A(t).constructor;return void 0===n||null==(r=A(n)[qr])?e:Yt(r)};_t({target:\"Map\",proto:!0,real:!0,forced:!1},{filter:function(t){var e=A(this),r=Vr(e),n=Jt(t,arguments.length>1?arguments[1]:void 0,3),o=new(Hr(e,rt(\"Map\"))),i=Yt(o.set);return Er(r,function(t,r){n(r,t,e)&&i.call(o,t,r)},void 0,!0,!0),o}}),_t({target:\"Map\",proto:!0,real:!0,forced:!1},{find:function(t){var e=A(this),r=Vr(e),n=Jt(t,arguments.length>1?arguments[1]:void 0,3);return Er(r,function(t,r){if(n(r,t,e))return Er.stop(r)},void 0,!0,!0).result}}),_t({target:\"Map\",proto:!0,real:!0,forced:!1},{findKey:function(t){var e=A(this),r=Vr(e),n=Jt(t,arguments.length>1?arguments[1]:void 0,3);return Er(r,function(t,r){if(n(r,t,e))return Er.stop(t)},void 0,!0,!0).result}}),_t({target:\"Map\",stat:!0},{groupBy:function(t,e){var r=new this;Yt(e);var n=Yt(r.has),o=Yt(r.get),i=Yt(r.set);return Er(t,function(t){var a=e(t);n.call(r,a)?o.call(r,a).push(t):i.call(r,a,[t])}),r}}),_t({target:\"Map\",proto:!0,real:!0,forced:!1},{includes:function(t){return Er(Vr(A(this)),function(e,r){if((n=r)===(o=t)||n!=n&&o!=o)return Er.stop();var n,o},void 0,!0,!0).stopped}}),_t({target:\"Map\",stat:!0},{keyBy:function(t,e){var r=new this;Yt(e);var n=Yt(r.set);return Er(t,function(t){n.call(r,e(t),t)}),r}}),_t({target:\"Map\",proto:!0,real:!0,forced:!1},{keyOf:function(t){return Er(Vr(A(this)),function(e,r){if(r===t)return Er.stop(e)},void 0,!0,!0).result}}),_t({target:\"Map\",proto:!0,real:!0,forced:!1},{mapKeys:function(t){var e=A(this),r=Vr(e),n=Jt(t,arguments.length>1?arguments[1]:void 0,3),o=new(Hr(e,rt(\"Map\"))),i=Yt(o.set);return Er(r,function(t,r){i.call(o,n(r,t,e),r)},void 0,!0,!0),o}}),_t({target:\"Map\",proto:!0,real:!0,forced:!1},{mapValues:function(t){var e=A(this),r=Vr(e),n=Jt(t,arguments.length>1?arguments[1]:void 0,3),o=new(Hr(e,rt(\"Map\"))),i=Yt(o.set);return Er(r,function(t,r){i.call(o,t,n(r,t,e))},void 0,!0,!0),o}}),_t({target:\"Map\",proto:!0,real:!0,forced:!1},{merge:function(t){for(var e=A(this),r=Yt(e.set),n=0;n<arguments.length;)Er(arguments[n++],r,e,!0);return e}}),_t({target:\"Map\",proto:!0,real:!0,forced:!1},{reduce:function(t){var e=A(this),r=Vr(e),n=arguments.length<2,o=n?void 0:arguments[1];if(Yt(t),Er(r,function(r,i){n?(n=!1,o=i):o=t(o,i,r,e)},void 0,!0,!0),n)throw TypeError(\"Reduce of empty map with no initial value\");return o}}),_t({target:\"Map\",proto:!0,real:!0,forced:!1},{some:function(t){var e=A(this),r=Vr(e),n=Jt(t,arguments.length>1?arguments[1]:void 0,3);return Er(r,function(t,r){if(n(r,t,e))return Er.stop()},void 0,!0,!0).stopped}}),_t({target:\"Map\",proto:!0,real:!0,forced:!1},{update:function(t,e){var r=A(this),n=arguments.length;Yt(e);var o=r.has(t);if(!o&&n<3)throw TypeError(\"Updating absent value\");var i=o?r.get(t):Yt(n>2?arguments[2]:void 0)(t,r);return r.set(t,e(i,t,r)),r}});var Xr=function(t,e){var r,n=A(this),o=arguments.length>2?arguments[2]:void 0;if(\"function\"!=typeof e&&\"function\"!=typeof o)throw TypeError(\"At least one callback required\");return n.has(t)?(r=n.get(t),\"function\"==typeof e&&(r=e(r),n.set(t,r))):\"function\"==typeof o&&(r=o(),n.set(t,r)),r};_t({target:\"Map\",proto:!0,real:!0,forced:!1},{upsert:Xr}),_t({target:\"Map\",proto:!0,real:!0,forced:!1},{updateOrInsert:Xr});var Yr=jr(\"Set\",function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},kr);_t({target:\"Set\",stat:!0},{from:Kr}),_t({target:\"Set\",stat:!0},{of:Gr});var Jr=function(){for(var t=A(this),e=Yt(t.add),r=0,n=arguments.length;r<n;r++)e.call(t,arguments[r]);return t};_t({target:\"Set\",proto:!0,real:!0,forced:!1},{addAll:function(){return Jr.apply(this,arguments)}}),_t({target:\"Set\",proto:!0,real:!0,forced:!1},{deleteAll:function(){return $r.apply(this,arguments)}});var Qr=function(t){return Set.prototype.values.call(t)};_t({target:\"Set\",proto:!0,real:!0,forced:!1},{every:function(t){var e=A(this),r=Qr(e),n=Jt(t,arguments.length>1?arguments[1]:void 0,3);return!Er(r,function(t){if(!n(t,t,e))return Er.stop()},void 0,!1,!0).stopped}}),_t({target:\"Set\",proto:!0,real:!0,forced:!1},{difference:function(t){var e=A(this),r=new(Hr(e,rt(\"Set\")))(e),n=Yt(r.delete);return Er(t,function(t){n.call(r,t)}),r}}),_t({target:\"Set\",proto:!0,real:!0,forced:!1},{filter:function(t){var e=A(this),r=Qr(e),n=Jt(t,arguments.length>1?arguments[1]:void 0,3),o=new(Hr(e,rt(\"Set\"))),i=Yt(o.add);return Er(r,function(t){n(t,t,e)&&i.call(o,t)},void 0,!1,!0),o}}),_t({target:\"Set\",proto:!0,real:!0,forced:!1},{find:function(t){var e=A(this),r=Qr(e),n=Jt(t,arguments.length>1?arguments[1]:void 0,3);return Er(r,function(t){if(n(t,t,e))return Er.stop(t)},void 0,!1,!0).result}}),_t({target:\"Set\",proto:!0,real:!0,forced:!1},{intersection:function(t){var e=A(this),r=new(Hr(e,rt(\"Set\"))),n=Yt(e.has),o=Yt(r.add);return Er(t,function(t){n.call(e,t)&&o.call(r,t)}),r}}),_t({target:\"Set\",proto:!0,real:!0,forced:!1},{isDisjointFrom:function(t){var e=A(this),r=Yt(e.has);return!Er(t,function(t){if(!0===r.call(e,t))return Er.stop()}).stopped}}),_t({target:\"Set\",proto:!0,real:!0,forced:!1},{isSubsetOf:function(t){var e=function(t){var e=rr(t);if(\"function\"!=typeof e)throw TypeError(String(t)+\" is not iterable\");return A(e.call(t))}(this),r=A(t),n=r.has;return\"function\"!=typeof n&&(r=new(rt(\"Set\"))(t),n=Yt(r.has)),!Er(e,function(t){if(!1===n.call(r,t))return Er.stop()},void 0,!1,!0).stopped}}),_t({target:\"Set\",proto:!0,real:!0,forced:!1},{isSupersetOf:function(t){var e=A(this),r=Yt(e.has);return!Er(t,function(t){if(!1===r.call(e,t))return Er.stop()}).stopped}}),_t({target:\"Set\",proto:!0,real:!0,forced:!1},{join:function(t){var e=A(this),r=Qr(e),n=void 0===t?\",\":String(t),o=[];return Er(r,o.push,o,!1,!0),o.join(n)}}),_t({target:\"Set\",proto:!0,real:!0,forced:!1},{map:function(t){var e=A(this),r=Qr(e),n=Jt(t,arguments.length>1?arguments[1]:void 0,3),o=new(Hr(e,rt(\"Set\"))),i=Yt(o.add);return Er(r,function(t){i.call(o,n(t,t,e))},void 0,!1,!0),o}}),_t({target:\"Set\",proto:!0,real:!0,forced:!1},{reduce:function(t){var e=A(this),r=Qr(e),n=arguments.length<2,o=n?void 0:arguments[1];if(Yt(t),Er(r,function(r){n?(n=!1,o=r):o=t(o,r,r,e)},void 0,!1,!0),n)throw TypeError(\"Reduce of empty set with no initial value\");return o}}),_t({target:\"Set\",proto:!0,real:!0,forced:!1},{some:function(t){var e=A(this),r=Qr(e),n=Jt(t,arguments.length>1?arguments[1]:void 0,3);return Er(r,function(t){if(n(t,t,e))return Er.stop()},void 0,!1,!0).stopped}}),_t({target:\"Set\",proto:!0,real:!0,forced:!1},{symmetricDifference:function(t){var e=A(this),r=new(Hr(e,rt(\"Set\")))(e),n=Yt(r.delete),o=Yt(r.add);return Er(t,function(t){n.call(r,t)||o.call(r,t)}),r}}),_t({target:\"Set\",proto:!0,real:!0,forced:!1},{union:function(t){var e=A(this),r=new(Hr(e,rt(\"Set\")))(e);return Er(t,Yt(r.add),r),r}});var Zr=wr.getWeakData,tn=Q.set,en=Q.getterFor,rn=ie.find,nn=ie.findIndex,on=0,an=function(t){return t.frozen||(t.frozen=new un)},un=function(){this.entries=[]},cn=function(t,e){return rn(t.entries,function(t){return t[0]===e})};un.prototype={get:function(t){var e=cn(this,t);if(e)return e[1]},has:function(t){return!!cn(this,t)},set:function(t,e){var r=cn(this,t);r?r[1]=e:this.entries.push([t,e])},delete:function(t){var e=nn(this.entries,function(e){return e[0]===t});return~e&&this.entries.splice(e,1),!!~e}};var sn={getConstructor:function(t,e,r,n){var o=t(function(t,i){xr(t,o,e),tn(t,{type:e,id:on++,frozen:void 0}),null!=i&&Er(i,t[n],t,r)}),i=en(e),a=function(t,e,r){var n=i(t),o=Zr(A(e),!0);return!0===o?an(n).set(e,r):o[n.id]=r,t};return Ar(o.prototype,{delete:function(t){var e=i(this);if(!g(t))return!1;var r=Zr(t);return!0===r?an(e).delete(t):r&&b(r,e.id)&&delete r[e.id]},has:function(t){var e=i(this);if(!g(t))return!1;var r=Zr(t);return!0===r?an(e).has(t):r&&b(r,e.id)}}),Ar(o.prototype,r?{get:function(t){var e=i(this);if(g(t)){var r=Zr(t);return!0===r?an(e).get(t):r?r[e.id]:void 0}},set:function(t,e){return a(this,t,e)}}:{add:function(t){return a(this,t,!0)}}),o}},fn=e(function(t){var e,r=Q.enforce,o=!n.ActiveXObject&&\"ActiveXObject\"in n,i=Object.isExtensible,a=function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},u=t.exports=jr(\"WeakMap\",a,sn);if(F&&o){e=sn.getConstructor(a,\"WeakMap\",!0),wr.REQUIRED=!0;var c=u.prototype,s=c.delete,f=c.has,l=c.get,p=c.set;Ar(c,{delete:function(t){if(g(t)&&!i(t)){var n=r(this);return n.frozen||(n.frozen=new e),s.call(this,t)||n.frozen.delete(t)}return s.call(this,t)},has:function(t){if(g(t)&&!i(t)){var n=r(this);return n.frozen||(n.frozen=new e),f.call(this,t)||n.frozen.has(t)}return f.call(this,t)},get:function(t){if(g(t)&&!i(t)){var n=r(this);return n.frozen||(n.frozen=new e),f.call(this,t)?l.call(this,t):n.frozen.get(t)}return l.call(this,t)},set:function(t,n){if(g(t)&&!i(t)){var o=r(this);o.frozen||(o.frozen=new e),f.call(this,t)?p.call(this,t,n):o.frozen.set(t,n)}else p.call(this,t,n);return this}})}});_t({target:\"WeakMap\",stat:!0},{from:Kr}),_t({target:\"WeakMap\",stat:!0},{of:Gr}),_t({target:\"WeakMap\",proto:!0,real:!0,forced:!1},{deleteAll:function(){return $r.apply(this,arguments)}}),_t({target:\"WeakMap\",proto:!0,real:!0,forced:!1},{upsert:Xr}),jr(\"WeakSet\",function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},sn),_t({target:\"WeakSet\",proto:!0,real:!0,forced:!1},{addAll:function(){return Jr.apply(this,arguments)}}),_t({target:\"WeakSet\",proto:!0,real:!0,forced:!1},{deleteAll:function(){return $r.apply(this,arguments)}}),_t({target:\"WeakSet\",stat:!0},{from:Kr}),_t({target:\"WeakSet\",stat:!0},{of:Gr});var ln=\"\\t\\n\\v\\f\\r \\u2028\\u2029\\ufeff\",pn=\"[\"+ln+\"]\",hn=RegExp(\"^\"+pn+pn+\"*\"),dn=RegExp(pn+pn+\"*$\"),vn=function(t){return function(e){var r=String(d(e));return 1&t&&(r=r.replace(hn,\"\")),2&t&&(r=r.replace(dn,\"\")),r}},gn={start:vn(1),end:vn(2),trim:vn(3)},yn=yt.f,mn=j.f,bn=P.f,Sn=gn.trim,wn=n.Number,En=wn.prototype,xn=\"Number\"==l(Vt(En)),On=function(t){var e,r,n,o,i,a,u,c,s=y(t,!1);if(\"string\"==typeof s&&s.length>2)if(43===(e=(s=Sn(s)).charCodeAt(0))||45===e){if(88===(r=s.charCodeAt(2))||120===r)return NaN}else if(48===e){switch(s.charCodeAt(1)){case 66:case 98:n=2,o=49;break;case 79:case 111:n=8,o=55;break;default:return+s}for(a=(i=s.slice(2)).length,u=0;u<a;u++)if((c=i.charCodeAt(u))<48||c>o)return NaN;return parseInt(i,n)}return+s};if(Rt(\"Number\",!wn(\" 0o1\")||!wn(\"0b1\")||wn(\"+0x1\"))){for(var jn,An=function(t){var e=arguments.length<1?0:t,r=this;return r instanceof An&&(xn?o(function(){En.valueOf.call(r)}):\"Number\"!=l(r))?Or(new wn(On(e)),r,An):On(e)},Rn=i?yn(wn):\"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger\".split(\",\"),Pn=0;Rn.length>Pn;Pn++)b(wn,jn=Rn[Pn])&&!b(An,jn)&&bn(An,jn,mn(wn,jn));An.prototype=En,En.constructor=An,Z(n,\"Number\",An)}_t({target:\"Number\",stat:!0},{EPSILON:Math.pow(2,-52)});var _n=n.isFinite;_t({target:\"Number\",stat:!0},{isFinite:Number.isFinite||function(t){return\"number\"==typeof t&&_n(t)}});var In=Math.floor,Tn=function(t){return!g(t)&&isFinite(t)&&In(t)===t};_t({target:\"Number\",stat:!0},{isInteger:Tn}),_t({target:\"Number\",stat:!0},{isNaN:function(t){return t!=t}});var Mn=Math.abs;_t({target:\"Number\",stat:!0},{isSafeInteger:function(t){return Tn(t)&&Mn(t)<=9007199254740991}}),_t({target:\"Number\",stat:!0},{MAX_SAFE_INTEGER:9007199254740991}),_t({target:\"Number\",stat:!0},{MIN_SAFE_INTEGER:-9007199254740991});var kn=c.f,Nn=function(t){return function(e){for(var r,n=v(e),o=Dt(n),a=o.length,u=0,c=[];a>u;)r=o[u++],i&&!kn.call(n,r)||c.push(t?[r,n[r]]:n[r]);return c}},Ln={entries:Nn(!0),values:Nn(!1)},Un=Ln.entries;_t({target:\"Object\",stat:!0},{entries:function(t){return Un(t)}}),_t({target:\"Object\",stat:!0,sham:!i},{getOwnPropertyDescriptors:function(t){for(var e,r,n=v(t),o=j.f,i=bt(n),a={},u=0;i.length>u;)void 0!==(r=o(n,e=i[u++]))&&Xe(a,e,r);return a}});var Cn=Object.is||function(t,e){return t===e?0!==t||1/t==1/e:t!=t&&e!=e};_t({target:\"Object\",stat:!0},{is:Cn});var Fn=o(function(){Dt(1)});_t({target:\"Object\",stat:!0,forced:Fn},{keys:function(t){return Dt(It(t))}});var Dn=Ln.values;_t({target:\"Object\",stat:!0},{values:function(t){return Dn(t)}});var Bn=we.codeAt;_t({target:\"String\",proto:!0},{codePointAt:function(t){return Bn(this,t)}}),Zt(\"String\",\"codePointAt\");var Wn,zn=Ft(\"match\"),Kn=function(t){var e;return g(t)&&(void 0!==(e=t[zn])?!!e:\"RegExp\"==l(t))},Gn=function(t){if(Kn(t))throw TypeError(\"The method doesn't accept regular expressions\");return t},$n=Ft(\"match\"),Vn=function(t){var e=/./;try{\"/./\"[t](e)}catch(r){try{return e[$n]=!1,\"/./\"[t](e)}catch(t){}}return!1},qn=j.f,Hn=\"\".endsWith,Xn=Math.min,Yn=Vn(\"endsWith\"),Jn=!(Yn||(Wn=qn(String.prototype,\"endsWith\"),!Wn||Wn.writable));_t({target:\"String\",proto:!0,forced:!Jn&&!Yn},{endsWith:function(t){var e=String(d(this));Gn(t);var r=arguments.length>1?arguments[1]:void 0,n=ut(e.length),o=void 0===r?n:Xn(ut(r),n),i=String(t);return Hn?Hn.call(e,i,o):e.slice(o-i.length,o)===i}}),Zt(\"String\",\"endsWith\");var Qn=String.fromCharCode,Zn=String.fromCodePoint;_t({target:\"String\",stat:!0,forced:!!Zn&&1!=Zn.length},{fromCodePoint:function(t){for(var e,r=[],n=arguments.length,o=0;n>o;){if(e=+arguments[o++],ft(e,1114111)!==e)throw RangeError(e+\" is not a valid code point\");r.push(e<65536?Qn(e):Qn(55296+((e-=65536)>>10),e%1024+56320))}return r.join(\"\")}}),_t({target:\"String\",proto:!0,forced:!Vn(\"includes\")},{includes:function(t){return!!~String(d(this)).indexOf(Gn(t),arguments.length>1?arguments[1]:void 0)}}),Zt(\"String\",\"includes\");var to=\"\".repeat||function(t){var e=String(d(this)),r=\"\",n=it(t);if(n<0||Infinity==n)throw RangeError(\"Wrong number of repetitions\");for(;n>0;(n>>>=1)&&(e+=e))1&n&&(r+=e);return r},eo=Math.ceil,ro=function(t){return function(e,r,n){var o,i,a=String(d(e)),u=a.length,c=void 0===n?\" \":String(n),s=ut(r);return s<=u||\"\"==c?a:((i=to.call(c,eo((o=s-u)/c.length))).length>o&&(i=i.slice(0,o)),t?a+i:i+a)}},no={start:ro(!1),end:ro(!0)},oo=rt(\"navigator\",\"userAgent\")||\"\",io=/Version\\/10\\.\\d+(\\.\\d+)?( Mobile\\/\\w+)? Safari\\//.test(oo),ao=no.start;_t({target:\"String\",proto:!0,forced:io},{padStart:function(t){return ao(this,t,arguments.length>1?arguments[1]:void 0)}}),Zt(\"String\",\"padStart\");var uo=no.end;_t({target:\"String\",proto:!0,forced:io},{padEnd:function(t){return uo(this,t,arguments.length>1?arguments[1]:void 0)}}),Zt(\"String\",\"padEnd\"),_t({target:\"String\",stat:!0},{raw:function(t){for(var e=v(t.raw),r=ut(e.length),n=arguments.length,o=[],i=0;r>i;)o.push(String(e[i++])),i<n&&o.push(String(arguments[i]));return o.join(\"\")}}),_t({target:\"String\",proto:!0},{repeat:to}),Zt(\"String\",\"repeat\");var co=j.f,so=\"\".startsWith,fo=Math.min,lo=Vn(\"startsWith\"),po=!lo&&!!function(){var t=co(String.prototype,\"startsWith\");return t&&!t.writable}();_t({target:\"String\",proto:!0,forced:!po&&!lo},{startsWith:function(t){var e=String(d(this));Gn(t);var r=ut(fo(arguments.length>1?arguments[1]:void 0,e.length)),n=String(t);return so?so.call(e,n,r):e.slice(r,r+n.length)===n}}),Zt(\"String\",\"startsWith\");var ho=function(t){return o(function(){return!!ln[t]()||\"
\"!=\"
\"[t]()||ln[t].name!==t})},vo=gn.start,go=ho(\"trimStart\"),yo=go?function(){return vo(this)}:\"\".trimStart;_t({target:\"String\",proto:!0,forced:go},{trimStart:yo,trimLeft:yo}),Zt(\"String\",\"trimLeft\");var mo=gn.end,bo=ho(\"trimEnd\"),So=bo?function(){return mo(this)}:\"\".trimEnd;_t({target:\"String\",proto:!0,forced:bo},{trimEnd:So,trimRight:So}),Zt(\"String\",\"trimRight\");var wo=rt(\"Reflect\",\"apply\"),Eo=Function.apply,xo=!o(function(){wo(function(){})});_t({target:\"Reflect\",stat:!0,forced:xo},{apply:function(t,e,r){return Yt(t),A(r),wo?wo(t,e,r):Eo.call(t,e,r)}});var Oo=[].slice,jo={},Ao=function(t,e,r){if(!(e in jo)){for(var n=[],o=0;o<e;o++)n[o]=\"a[\"+o+\"]\";jo[e]=Function(\"C,a\",\"return new C(\"+n.join(\",\")+\")\")}return jo[e](t,r)},Ro=Function.bind||function(t){var e=Yt(this),r=Oo.call(arguments,1),n=function(){var o=r.concat(Oo.call(arguments));return this instanceof n?Ao(e,o.length,o):e.apply(t,o)};return g(e.prototype)&&(n.prototype=e.prototype),n},Po=rt(\"Reflect\",\"construct\"),_o=o(function(){function t(){}return!(Po(function(){},[],t)instanceof t)}),Io=!o(function(){Po(function(){})}),To=_o||Io;_t({target:\"Reflect\",stat:!0,forced:To,sham:To},{construct:function(t,e){Yt(t),A(e);var r=arguments.length<3?t:Yt(arguments[2]);if(Io&&!_o)return Po(t,e,r);if(t==r){switch(e.length){case 0:return new t;case 1:return new t(e[0]);case 2:return new t(e[0],e[1]);case 3:return new t(e[0],e[1],e[2]);case 4:return new t(e[0],e[1],e[2],e[3])}var n=[null];return n.push.apply(n,e),new(Ro.apply(t,n))}var o=r.prototype,i=Vt(g(o)?o:Object.prototype),a=Function.apply.call(t,i,e);return g(a)?a:i}});var Mo=o(function(){Reflect.defineProperty(P.f({},1,{value:1}),1,{value:2})});_t({target:\"Reflect\",stat:!0,forced:Mo,sham:!i},{defineProperty:function(t,e,r){A(t);var n=y(e,!0);A(r);try{return P.f(t,n,r),!0}catch(t){return!1}}});var ko=j.f;_t({target:\"Reflect\",stat:!0},{deleteProperty:function(t,e){var r=ko(A(t),e);return!(r&&!r.configurable)&&delete t[e]}}),_t({target:\"Reflect\",stat:!0},{get:function t(e,r){var n,o,i=arguments.length<3?e:arguments[2];return A(e)===i?e[r]:(n=j.f(e,r))?b(n,\"value\")?n.value:void 0===n.get?void 0:n.get.call(i):g(o=je(e))?t(o,r,i):void 0}}),_t({target:\"Reflect\",stat:!0,sham:!i},{getOwnPropertyDescriptor:function(t,e){return j.f(A(t),e)}}),_t({target:\"Reflect\",stat:!0,sham:!Ee},{getPrototypeOf:function(t){return je(A(t))}}),_t({target:\"Reflect\",stat:!0},{has:function(t,e){return e in t}});var No=Object.isExtensible;_t({target:\"Reflect\",stat:!0},{isExtensible:function(t){return A(t),!No||No(t)}}),_t({target:\"Reflect\",stat:!0},{ownKeys:bt}),_t({target:\"Reflect\",stat:!0,sham:!Sr},{preventExtensions:function(t){A(t);try{var e=rt(\"Object\",\"preventExtensions\");return e&&e(t),!0}catch(t){return!1}}});var Lo=o(function(){var t=P.f({},\"a\",{configurable:!0});return!1!==Reflect.set(je(t),\"a\",1,t)});_t({target:\"Reflect\",stat:!0,forced:Lo},{set:function t(e,r,n){var o,i,a=arguments.length<4?e:arguments[3],u=j.f(A(e),r);if(!u){if(g(i=je(e)))return t(i,r,n,a);u=s(0)}if(b(u,\"value\")){if(!1===u.writable||!g(a))return!1;if(o=j.f(a,r)){if(o.get||o.set||!1===o.writable)return!1;o.value=n,P.f(a,r,o)}else P.f(a,r,s(0,n));return!0}return void 0!==u.set&&(u.set.call(a,n),!0)}}),Ue&&_t({target:\"Reflect\",stat:!0},{setPrototypeOf:function(t,e){A(t),Le(e);try{return Ue(t,e),!0}catch(t){return!1}}});var Uo=D(\"metadata\"),Co=Uo.store||(Uo.store=new fn),Fo=function(t,e,r){var n=Co.get(t);if(!n){if(!r)return;Co.set(t,n=new Nr)}var o=n.get(e);if(!o){if(!r)return;n.set(e,o=new Nr)}return o},Do={store:Co,getMap:Fo,has:function(t,e,r){var n=Fo(e,r,!1);return void 0!==n&&n.has(t)},get:function(t,e,r){var n=Fo(e,r,!1);return void 0===n?void 0:n.get(t)},set:function(t,e,r,n){Fo(r,n,!0).set(t,e)},keys:function(t,e){var r=Fo(t,e,!1),n=[];return r&&r.forEach(function(t,e){n.push(e)}),n},toKey:function(t){return void 0===t||\"symbol\"==typeof t?t:String(t)}},Bo=Do.toKey,Wo=Do.set;_t({target:\"Reflect\",stat:!0},{defineMetadata:function(t,e,r){var n=arguments.length<4?void 0:Bo(arguments[3]);Wo(t,e,A(r),n)}});var zo=Do.toKey,Ko=Do.getMap,Go=Do.store;_t({target:\"Reflect\",stat:!0},{deleteMetadata:function(t,e){var r=arguments.length<3?void 0:zo(arguments[2]),n=Ko(A(e),r,!1);if(void 0===n||!n.delete(t))return!1;if(n.size)return!0;var o=Go.get(e);return o.delete(r),!!o.size||Go.delete(e)}});var $o=Do.has,Vo=Do.get,qo=Do.toKey,Ho=function t(e,r,n){if($o(e,r,n))return Vo(e,r,n);var o=je(r);return null!==o?t(e,o,n):void 0};_t({target:\"Reflect\",stat:!0},{getMetadata:function(t,e){var r=arguments.length<3?void 0:qo(arguments[2]);return Ho(t,A(e),r)}});var Xo=Do.keys,Yo=Do.toKey,Jo=function t(e,r){var n=Xo(e,r),o=je(e);if(null===o)return n;var i,a,u=t(o,r);return u.length?n.length?(i=new Yr(n.concat(u)),Er(i,(a=[]).push,a),a):u:n};_t({target:\"Reflect\",stat:!0},{getMetadataKeys:function(t){var e=arguments.length<2?void 0:Yo(arguments[1]);return Jo(A(t),e)}});var Qo=Do.get,Zo=Do.toKey;_t({target:\"Reflect\",stat:!0},{getOwnMetadata:function(t,e){var r=arguments.length<3?void 0:Zo(arguments[2]);return Qo(t,A(e),r)}});var ti=Do.keys,ei=Do.toKey;_t({target:\"Reflect\",stat:!0},{getOwnMetadataKeys:function(t){var e=arguments.length<2?void 0:ei(arguments[1]);return ti(A(t),e)}});var ri=Do.has,ni=Do.toKey,oi=function t(e,r,n){if(ri(e,r,n))return!0;var o=je(r);return null!==o&&t(e,o,n)};_t({target:\"Reflect\",stat:!0},{hasMetadata:function(t,e){var r=arguments.length<3?void 0:ni(arguments[2]);return oi(t,A(e),r)}});var ii=Do.has,ai=Do.toKey;_t({target:\"Reflect\",stat:!0},{hasOwnMetadata:function(t,e){var r=arguments.length<3?void 0:ai(arguments[2]);return ii(t,A(e),r)}});var ui=Do.toKey,ci=Do.set;_t({target:\"Reflect\",stat:!0},{metadata:function(t,e){return function(r,n){ci(t,e,A(r),ui(n))}}});var si=function(){var t=A(this),e=\"\";return t.global&&(e+=\"g\"),t.ignoreCase&&(e+=\"i\"),t.multiline&&(e+=\"m\"),t.dotAll&&(e+=\"s\"),t.unicode&&(e+=\"u\"),t.sticky&&(e+=\"y\"),e};function fi(t,e){return RegExp(t,e)}var li={UNSUPPORTED_Y:o(function(){var t=fi(\"a\",\"y\");return t.lastIndex=2,null!=t.exec(\"abcd\")}),BROKEN_CARET:o(function(){var t=fi(\"^r\",\"gy\");return t.lastIndex=2,null!=t.exec(\"str\")})},pi=P.f,hi=yt.f,di=Q.set,vi=Ft(\"match\"),gi=n.RegExp,yi=gi.prototype,mi=/a/g,bi=/a/g,Si=new gi(mi)!==mi,wi=li.UNSUPPORTED_Y;if(i&&Rt(\"RegExp\",!Si||wi||o(function(){return bi[vi]=!1,gi(mi)!=mi||gi(bi)==bi||\"/a/i\"!=gi(mi,\"i\")}))){for(var Ei=function(t,e){var r,n=this instanceof Ei,o=Kn(t),i=void 0===e;if(!n&&o&&t.constructor===Ei&&i)return t;Si?o&&!i&&(t=t.source):t instanceof Ei&&(i&&(e=si.call(t)),t=t.source),wi&&(r=!!e&&e.indexOf(\"y\")>-1)&&(e=e.replace(/y/g,\"\"));var a=Or(Si?new gi(t,e):gi(t,e),n?this:yi,Ei);return wi&&r&&di(a,{sticky:r}),a},xi=function(t){t in Ei||pi(Ei,t,{configurable:!0,get:function(){return gi[t]},set:function(e){gi[t]=e}})},Oi=hi(gi),ji=0;Oi.length>ji;)xi(Oi[ji++]);yi.constructor=Ei,Ei.prototype=yi,Z(n,\"RegExp\",Ei)}Pr(\"RegExp\");var Ai=RegExp.prototype,Ri=Ai.toString;(o(function(){return\"/a/b\"!=Ri.call({source:\"a\",flags:\"b\"})})||\"toString\"!=Ri.name)&&Z(RegExp.prototype,\"toString\",function(){var t=A(this),e=String(t.source),r=t.flags;return\"/\"+e+\"/\"+String(void 0===r&&t instanceof RegExp&&!(\"flags\"in Ai)?si.call(t):r)},{unsafe:!0});var Pi=RegExp.prototype.exec,_i=String.prototype.replace,Ii=Pi,Ti=function(){var t=/a/,e=/b*/g;return Pi.call(t,\"a\"),Pi.call(e,\"a\"),0!==t.lastIndex||0!==e.lastIndex}(),Mi=li.UNSUPPORTED_Y||li.BROKEN_CARET,ki=void 0!==/()??/.exec(\"\")[1];(Ti||ki||Mi)&&(Ii=function(t){var e,r,n,o,i=this,a=Mi&&i.sticky,u=si.call(i),c=i.source,s=0,f=t;return a&&(-1===(u=u.replace(\"y\",\"\")).indexOf(\"g\")&&(u+=\"g\"),f=String(t).slice(i.lastIndex),i.lastIndex>0&&(!i.multiline||i.multiline&&\"\\n\"!==t[i.lastIndex-1])&&(c=\"(?: \"+c+\")\",f=\" \"+f,s++),r=new RegExp(\"^(?:\"+c+\")\",u)),ki&&(r=new RegExp(\"^\"+c+\"$(?!\\\\s)\",u)),Ti&&(e=i.lastIndex),n=Pi.call(a?r:i,f),a?n?(n.input=n.input.slice(s),n[0]=n[0].slice(s),n.index=i.lastIndex,i.lastIndex+=n[0].length):i.lastIndex=0:Ti&&n&&(i.lastIndex=i.global?n.index+n[0].length:e),ki&&n&&n.length>1&&_i.call(n[0],r,function(){for(o=1;o<arguments.length-2;o++)void 0===arguments[o]&&(n[o]=void 0)}),n});var Ni=Ii;_t({target:\"RegExp\",proto:!0,forced:/./.exec!==Ni},{exec:Ni}),i&&(\"g\"!=/./g.flags||li.UNSUPPORTED_Y)&&P.f(RegExp.prototype,\"flags\",{configurable:!0,get:si});var Li=Q.get,Ui=RegExp.prototype;i&&li.UNSUPPORTED_Y&&(0,P.f)(RegExp.prototype,\"sticky\",{configurable:!0,get:function(){if(this!==Ui){if(this instanceof RegExp)return!!Li(this).sticky;throw TypeError(\"Incompatible receiver, RegExp required\")}}});var Ci,Fi,Di=(Ci=!1,(Fi=/[ac]/).exec=function(){return Ci=!0,/./.exec.apply(this,arguments)},!0===Fi.test(\"abc\")&&Ci),Bi=/./.test;_t({target:\"RegExp\",proto:!0,forced:!Di},{test:function(t){if(\"function\"!=typeof this.exec)return Bi.call(this,t);var e=this.exec(t);if(null!==e&&!g(e))throw new Error(\"RegExp exec method returned something other than an Object or null\");return!!e}});var Wi=Ft(\"species\"),zi=!o(function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:\"7\"},t},\"7\"!==\"\".replace(t,\"$<a>\")}),Ki=\"$0\"===\"a\".replace(/./,\"$0\"),Gi=Ft(\"replace\"),$i=!!/./[Gi]&&\"\"===/./[Gi](\"a\",\"$0\"),Vi=!o(function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var r=\"ab\".split(t);return 2!==r.length||\"a\"!==r[0]||\"b\"!==r[1]}),qi=function(t,e,r,n){var i=Ft(t),a=!o(function(){var e={};return e[i]=function(){return 7},7!=\"\"[t](e)}),u=a&&!o(function(){var e=!1,r=/a/;return\"split\"===t&&((r={}).constructor={},r.constructor[Wi]=function(){return r},r.flags=\"\",r[i]=/./[i]),r.exec=function(){return e=!0,null},r[i](\"\"),!e});if(!a||!u||\"replace\"===t&&(!zi||!Ki||$i)||\"split\"===t&&!Vi){var c=/./[i],s=r(i,\"\"[t],function(t,e,r,n,o){return e.exec===Ni?a&&!o?{done:!0,value:c.call(e,r,n)}:{done:!0,value:t.call(r,e,n)}:{done:!1}},{REPLACE_KEEPS_$0:Ki,REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE:$i}),f=s[1];Z(String.prototype,t,s[0]),Z(RegExp.prototype,i,2==e?function(t,e){return f.call(t,this,e)}:function(t){return f.call(t,this)})}n&&_(RegExp.prototype[i],\"sham\",!0)},Hi=we.charAt,Xi=function(t,e,r){return e+(r?Hi(t,e).length:1)},Yi=function(t,e){var r=t.exec;if(\"function\"==typeof r){var n=r.call(t,e);if(\"object\"!=typeof n)throw TypeError(\"RegExp exec method returned something other than an Object or null\");return n}if(\"RegExp\"!==l(t))throw TypeError(\"RegExp#exec called on incompatible receiver\");return Ni.call(t,e)};qi(\"match\",1,function(t,e,r){return[function(e){var r=d(this),n=null==e?void 0:e[t];return void 0!==n?n.call(e,r):new RegExp(e)[t](String(r))},function(t){var n=r(e,t,this);if(n.done)return n.value;var o=A(t),i=String(this);if(!o.global)return Yi(o,i);var a=o.unicode;o.lastIndex=0;for(var u,c=[],s=0;null!==(u=Yi(o,i));){var f=String(u[0]);c[s]=f,\"\"===f&&(o.lastIndex=Xi(i,ut(o.lastIndex),a)),s++}return 0===s?null:c}]});var Ji=Math.max,Qi=Math.min,Zi=Math.floor,ta=/\\$([$&'`]|\\d\\d?|<[^>]*>)/g,ea=/\\$([$&'`]|\\d\\d?)/g;qi(\"replace\",2,function(t,e,r,n){var o=n.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE,i=n.REPLACE_KEEPS_$0,a=o?\"$\":\"$0\";return[function(r,n){var o=d(this),i=null==r?void 0:r[t];return void 0!==i?i.call(r,o,n):e.call(String(o),r,n)},function(t,n){if(!o&&i||\"string\"==typeof n&&-1===n.indexOf(a)){var c=r(e,t,this,n);if(c.done)return c.value}var s=A(t),f=String(this),l=\"function\"==typeof n;l||(n=String(n));var p=s.global;if(p){var h=s.unicode;s.lastIndex=0}for(var d=[];;){var v=Yi(s,f);if(null===v)break;if(d.push(v),!p)break;\"\"===String(v[0])&&(s.lastIndex=Xi(f,ut(s.lastIndex),h))}for(var g,y=\"\",m=0,b=0;b<d.length;b++){v=d[b];for(var S=String(v[0]),w=Ji(Qi(it(v.index),f.length),0),E=[],x=1;x<v.length;x++)E.push(void 0===(g=v[x])?g:String(g));var O=v.groups;if(l){var j=[S].concat(E,w,f);void 0!==O&&j.push(O);var R=String(n.apply(void 0,j))}else R=u(S,f,w,E,O,n);w>=m&&(y+=f.slice(m,w)+R,m=w+S.length)}return y+f.slice(m)}];function u(t,r,n,o,i,a){var u=n+t.length,c=o.length,s=ea;return void 0!==i&&(i=It(i),s=ta),e.call(a,s,function(e,a){var s;switch(a.charAt(0)){case\"$\":return\"$\";case\"&\":return t;case\"`\":return r.slice(0,n);case\"'\":return r.slice(u);case\"<\":s=i[a.slice(1,-1)];break;default:var f=+a;if(0===f)return e;if(f>c){var l=Zi(f/10);return 0===l?e:l<=c?void 0===o[l-1]?a.charAt(1):o[l-1]+a.charAt(1):e}s=o[f-1]}return void 0===s?\"\":s})}}),qi(\"search\",1,function(t,e,r){return[function(e){var r=d(this),n=null==e?void 0:e[t];return void 0!==n?n.call(e,r):new RegExp(e)[t](String(r))},function(t){var n=r(e,t,this);if(n.done)return n.value;var o=A(t),i=String(this),a=o.lastIndex;Cn(a,0)||(o.lastIndex=0);var u=Yi(o,i);return Cn(o.lastIndex,a)||(o.lastIndex=a),null===u?-1:u.index}]});var ra=[].push,na=Math.min,oa=!o(function(){return!RegExp(4294967295,\"y\")});qi(\"split\",2,function(t,e,r){var n;return n=\"c\"==\"abbc\".split(/(b)*/)[1]||4!=\"test\".split(/(?:)/,-1).length||2!=\"ab\".split(/(?:ab)*/).length||4!=\".\".split(/(.?)(.?)/).length||\".\".split(/()()/).length>1||\"\".split(/.?/).length?function(t,r){var n=String(d(this)),o=void 0===r?4294967295:r>>>0;if(0===o)return[];if(void 0===t)return[n];if(!Kn(t))return e.call(n,t,o);for(var i,a,u,c=[],s=0,f=new RegExp(t.source,(t.ignoreCase?\"i\":\"\")+(t.multiline?\"m\":\"\")+(t.unicode?\"u\":\"\")+(t.sticky?\"y\":\"\")+\"g\");(i=Ni.call(f,n))&&!((a=f.lastIndex)>s&&(c.push(n.slice(s,i.index)),i.length>1&&i.index<n.length&&ra.apply(c,i.slice(1)),u=i[0].length,s=a,c.length>=o));)f.lastIndex===i.index&&f.lastIndex++;return s===n.length?!u&&f.test(\"\")||c.push(\"\"):c.push(n.slice(s)),c.length>o?c.slice(0,o):c}:\"0\".split(void 0,0).length?function(t,r){return void 0===t&&0===r?[]:e.call(this,t,r)}:e,[function(e,r){var o=d(this),i=null==e?void 0:e[t];return void 0!==i?i.call(e,o,r):n.call(String(o),e,r)},function(t,o){var i=r(n,t,this,o,n!==e);if(i.done)return i.value;var a=A(t),u=String(this),c=Hr(a,RegExp),s=a.unicode,f=new c(oa?a:\"^(?:\"+a.source+\")\",(a.ignoreCase?\"i\":\"\")+(a.multiline?\"m\":\"\")+(a.unicode?\"u\":\"\")+(oa?\"y\":\"g\")),l=void 0===o?4294967295:o>>>0;if(0===l)return[];if(0===u.length)return null===Yi(f,u)?[u]:[];for(var p=0,h=0,d=[];h<u.length;){f.lastIndex=oa?h:0;var v,g=Yi(f,oa?u:u.slice(h));if(null===g||(v=na(ut(f.lastIndex+(oa?0:h)),u.length))===p)h=Xi(u,h,s);else{if(d.push(u.slice(p,h)),d.length===l)return d;for(var y=1;y<=g.length-1;y++)if(d.push(g[y]),d.length===l)return d;h=p=v}}return d.push(u.slice(p)),d}]},!oa);var ia,aa,ua=n.process,ca=ua&&ua.versions,sa=ca&&ca.v8;sa?aa=(ia=sa.split(\".\"))[0]+ia[1]:oo&&(!(ia=oo.match(/Edge\\/(\\d+)/))||ia[1]>=74)&&(ia=oo.match(/Chrome\\/(\\d+)/))&&(aa=ia[1]);var fa=aa&&+aa,la=Ft(\"species\"),pa=Ft(\"isConcatSpreadable\"),ha=fa>=51||!o(function(){var t=[];return t[pa]=!1,t.concat()[0]!==t}),da=fa>=51||!o(function(){var t=[];return(t.constructor={})[la]=function(){return{foo:1}},1!==t.concat(Boolean).foo}),va=function(t){if(!g(t))return!1;var e=t[pa];return void 0!==e?!!e:te(t)};_t({target:\"Array\",proto:!0,forced:!ha||!da},{concat:function(t){var e,r,n,o,i,a=It(this),u=re(a,0),c=0;for(e=-1,n=arguments.length;e<n;e++)if(va(i=-1===e?a:arguments[e])){if(c+(o=ut(i.length))>9007199254740991)throw TypeError(\"Maximum allowed index exceeded\");for(r=0;r<o;r++,c++)r in i&&Xe(u,c,i[r])}else{if(c>=9007199254740991)throw TypeError(\"Maximum allowed index exceeded\");Xe(u,c++,i)}return u.length=c,u}});var ga=yt.f,ya={}.toString,ma=\"object\"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],ba={f:function(t){return ma&&\"[object Window]\"==ya.call(t)?function(t){try{return ga(t)}catch(t){return ma.slice()}}(t):ga(v(t))}},Sa={f:Ft},wa=P.f,Ea=function(t){var e=tt.Symbol||(tt.Symbol={});b(e,t)||wa(e,t,{value:Sa.f(t)})},xa=ie.forEach,Oa=G(\"hidden\"),ja=Ft(\"toPrimitive\"),Aa=Q.set,Ra=Q.getterFor(\"Symbol\"),Pa=Object.prototype,_a=n.Symbol,Ia=rt(\"JSON\",\"stringify\"),Ta=j.f,Ma=P.f,ka=ba.f,Na=c.f,La=D(\"symbols\"),Ua=D(\"op-symbols\"),Ca=D(\"string-to-symbol-registry\"),Fa=D(\"symbol-to-string-registry\"),Da=D(\"wks\"),Ba=n.QObject,Wa=!Ba||!Ba.prototype||!Ba.prototype.findChild,za=i&&o(function(){return 7!=Vt(Ma({},\"a\",{get:function(){return Ma(this,\"a\",{value:7}).a}})).a})?function(t,e,r){var n=Ta(Pa,e);n&&delete Pa[e],Ma(t,e,r),n&&t!==Pa&&Ma(Pa,e,n)}:Ma,Ka=function(t,e){var r=La[t]=Vt(_a.prototype);return Aa(r,{type:\"Symbol\",tag:t,description:e}),i||(r.description=e),r},Ga=Nt?function(t){return\"symbol\"==typeof t}:function(t){return Object(t)instanceof _a},$a=function(t,e,r){t===Pa&&$a(Ua,e,r),A(t);var n=y(e,!0);return A(r),b(La,n)?(r.enumerable?(b(t,Oa)&&t[Oa][n]&&(t[Oa][n]=!1),r=Vt(r,{enumerable:s(0,!1)})):(b(t,Oa)||Ma(t,Oa,s(1,{})),t[Oa][n]=!0),za(t,n,r)):Ma(t,n,r)},Va=function(t,e){A(t);var r=v(e),n=Dt(r).concat(Ya(r));return xa(n,function(e){i&&!qa.call(r,e)||$a(t,e,r[e])}),t},qa=function(t){var e=y(t,!0),r=Na.call(this,e);return!(this===Pa&&b(La,e)&&!b(Ua,e))&&(!(r||!b(this,e)||!b(La,e)||b(this,Oa)&&this[Oa][e])||r)},Ha=function(t,e){var r=v(t),n=y(e,!0);if(r!==Pa||!b(La,n)||b(Ua,n)){var o=Ta(r,n);return!o||!b(La,n)||b(r,Oa)&&r[Oa][n]||(o.enumerable=!0),o}},Xa=function(t){var e=ka(v(t)),r=[];return xa(e,function(t){b(La,t)||b($,t)||r.push(t)}),r},Ya=function(t){var e=t===Pa,r=ka(e?Ua:v(t)),n=[];return xa(r,function(t){!b(La,t)||e&&!b(Pa,t)||n.push(La[t])}),n};if(kt||(Z((_a=function(){if(this instanceof _a)throw TypeError(\"Symbol is not a constructor\");var t=arguments.length&&void 0!==arguments[0]?String(arguments[0]):void 0,e=z(t),r=function t(r){this===Pa&&t.call(Ua,r),b(this,Oa)&&b(this[Oa],e)&&(this[Oa][e]=!1),za(this,e,s(1,r))};return i&&Wa&&za(Pa,e,{configurable:!0,set:r}),Ka(e,t)}).prototype,\"toString\",function(){return Ra(this).tag}),Z(_a,\"withoutSetter\",function(t){return Ka(z(t),t)}),c.f=qa,P.f=$a,j.f=Ha,yt.f=ba.f=Xa,mt.f=Ya,Sa.f=function(t){return Ka(Ft(t),t)},i&&(Ma(_a.prototype,\"description\",{configurable:!0,get:function(){return Ra(this).description}}),Z(Pa,\"propertyIsEnumerable\",qa,{unsafe:!0}))),_t({global:!0,wrap:!0,forced:!kt,sham:!kt},{Symbol:_a}),xa(Dt(Da),function(t){Ea(t)}),_t({target:\"Symbol\",stat:!0,forced:!kt},{for:function(t){var e=String(t);if(b(Ca,e))return Ca[e];var r=_a(e);return Ca[e]=r,Fa[r]=e,r},keyFor:function(t){if(!Ga(t))throw TypeError(t+\" is not a symbol\");if(b(Fa,t))return Fa[t]},useSetter:function(){Wa=!0},useSimple:function(){Wa=!1}}),_t({target:\"Object\",stat:!0,forced:!kt,sham:!i},{create:function(t,e){return void 0===e?Vt(t):Va(Vt(t),e)},defineProperty:$a,defineProperties:Va,getOwnPropertyDescriptor:Ha}),_t({target:\"Object\",stat:!0,forced:!kt},{getOwnPropertyNames:Xa,getOwnPropertySymbols:Ya}),_t({target:\"Object\",stat:!0,forced:o(function(){mt.f(1)})},{getOwnPropertySymbols:function(t){return mt.f(It(t))}}),Ia){var Ja=!kt||o(function(){var t=_a();return\"[null]\"!=Ia([t])||\"{}\"!=Ia({a:t})||\"{}\"!=Ia(Object(t))});_t({target:\"JSON\",stat:!0,forced:Ja},{stringify:function(t,e,r){for(var n,o=[t],i=1;arguments.length>i;)o.push(arguments[i++]);if(n=e,(g(e)||void 0!==t)&&!Ga(t))return te(e)||(e=function(t,e){if(\"function\"==typeof n&&(e=n.call(this,t,e)),!Ga(e))return e}),o[1]=e,Ia.apply(null,o)}})}_a.prototype[ja]||_(_a.prototype,ja,_a.prototype.valueOf),Te(_a,\"Symbol\"),$[Oa]=!0,Ea(\"asyncIterator\");var Qa=P.f,Za=n.Symbol;if(i&&\"function\"==typeof Za&&(!(\"description\"in Za.prototype)||void 0!==Za().description)){var tu={},eu=function(){var t=arguments.length<1||void 0===arguments[0]?void 0:String(arguments[0]),e=this instanceof eu?new Za(t):void 0===t?Za():Za(t);return\"\"===t&&(tu[e]=!0),e};St(eu,Za);var ru=eu.prototype=Za.prototype;ru.constructor=eu;var nu=ru.toString,ou=\"Symbol(test)\"==String(Za(\"test\")),iu=/^Symbol\\((.*)\\)[^)]+$/;Qa(ru,\"description\",{configurable:!0,get:function(){var t=g(this)?this.valueOf():this,e=nu.call(t);if(b(tu,t))return\"\";var r=ou?e.slice(7,-1):e.replace(iu,\"$1\");return\"\"===r?void 0:r}}),_t({global:!0,forced:!0},{Symbol:eu})}Ea(\"hasInstance\"),Ea(\"isConcatSpreadable\"),Ea(\"iterator\"),Ea(\"match\"),Ea(\"matchAll\"),Ea(\"replace\"),Ea(\"search\"),Ea(\"species\"),Ea(\"split\"),Ea(\"toPrimitive\"),Ea(\"toStringTag\"),Ea(\"unscopables\"),Te(Math,\"Math\",!0),Te(n.JSON,\"JSON\",!0),Ea(\"asyncDispose\"),Ea(\"dispose\"),Ea(\"observable\"),Ea(\"patternMatch\"),Ea(\"replaceAll\");var au,uu,cu,su=n.Promise,fu=/(iphone|ipod|ipad).*applewebkit/i.test(oo),lu=n.location,pu=n.setImmediate,hu=n.clearImmediate,du=n.process,vu=n.MessageChannel,gu=n.Dispatch,yu=0,mu={},bu=function(t){if(mu.hasOwnProperty(t)){var e=mu[t];delete mu[t],e()}},Su=function(t){return function(){bu(t)}},wu=function(t){bu(t.data)},Eu=function(t){n.postMessage(t+\"\",lu.protocol+\"//\"+lu.host)};pu&&hu||(pu=function(t){for(var e=[],r=1;arguments.length>r;)e.push(arguments[r++]);return mu[++yu]=function(){(\"function\"==typeof t?t:Function(t)).apply(void 0,e)},au(yu),yu},hu=function(t){delete mu[t]},\"process\"==l(du)?au=function(t){du.nextTick(Su(t))}:gu&&gu.now?au=function(t){gu.now(Su(t))}:vu&&!fu?(cu=(uu=new vu).port2,uu.port1.onmessage=wu,au=Jt(cu.postMessage,cu,1)):!n.addEventListener||\"function\"!=typeof postMessage||n.importScripts||o(Eu)||\"file:\"===lu.protocol?au=\"onreadystatechange\"in E(\"script\")?function(t){Wt.appendChild(E(\"script\")).onreadystatechange=function(){Wt.removeChild(this),bu(t)}}:function(t){setTimeout(Su(t),0)}:(au=Eu,n.addEventListener(\"message\",wu,!1)));var xu,Ou,ju,Au,Ru,Pu,_u,Iu,Tu={set:pu,clear:hu},Mu=j.f,ku=Tu.set,Nu=n.MutationObserver||n.WebKitMutationObserver,Lu=n.process,Uu=n.Promise,Cu=\"process\"==l(Lu),Fu=Mu(n,\"queueMicrotask\"),Du=Fu&&Fu.value;Du||(xu=function(){var t,e;for(Cu&&(t=Lu.domain)&&t.exit();Ou;){e=Ou.fn,Ou=Ou.next;try{e()}catch(t){throw Ou?Au():ju=void 0,t}}ju=void 0,t&&t.enter()},Cu?Au=function(){Lu.nextTick(xu)}:Nu&&!fu?(Ru=!0,Pu=document.createTextNode(\"\"),new Nu(xu).observe(Pu,{characterData:!0}),Au=function(){Pu.data=Ru=!Ru}):Uu&&Uu.resolve?(_u=Uu.resolve(void 0),Iu=_u.then,Au=function(){Iu.call(_u,xu)}):Au=function(){ku.call(n,xu)});var Bu,Wu,zu,Ku,Gu=Du||function(t){var e={fn:t,next:void 0};ju&&(ju.next=e),Ou||(Ou=e,Au()),ju=e},$u=function(t){var e,r;this.promise=new t(function(t,n){if(void 0!==e||void 0!==r)throw TypeError(\"Bad Promise constructor\");e=t,r=n}),this.resolve=Yt(e),this.reject=Yt(r)},Vu={f:function(t){return new $u(t)}},qu=function(t,e){if(A(t),g(e)&&e.constructor===t)return e;var r=Vu.f(t);return(0,r.resolve)(e),r.promise},Hu=function(t){try{return{error:!1,value:t()}}catch(t){return{error:!0,value:t}}},Xu=Tu.set,Yu=Ft(\"species\"),Ju=\"Promise\",Qu=Q.get,Zu=Q.set,tc=Q.getterFor(Ju),ec=su,rc=n.TypeError,nc=n.document,oc=n.process,ic=rt(\"fetch\"),ac=Vu.f,uc=ac,cc=\"process\"==l(oc),sc=!!(nc&&nc.createEvent&&n.dispatchEvent),fc=Rt(Ju,function(){if(U(ec)===String(ec)){if(66===fa)return!0;if(!cc&&\"function\"!=typeof PromiseRejectionEvent)return!0}if(fa>=51&&/native code/.test(ec))return!1;var t=ec.resolve(1),e=function(t){t(function(){},function(){})};return(t.constructor={})[Yu]=e,!(t.then(function(){})instanceof e)}),lc=fc||!ur(function(t){ec.all(t).catch(function(){})}),pc=function(t){var e;return!(!g(t)||\"function\"!=typeof(e=t.then))&&e},hc=function(t,e,r){if(!e.notified){e.notified=!0;var n=e.reactions;Gu(function(){for(var o=e.value,i=1==e.state,a=0;n.length>a;){var u,c,s,f=n[a++],l=i?f.ok:f.fail,p=f.resolve,h=f.reject,d=f.domain;try{l?(i||(2===e.rejection&&yc(t,e),e.rejection=1),!0===l?u=o:(d&&d.enter(),u=l(o),d&&(d.exit(),s=!0)),u===f.promise?h(rc(\"Promise-chain cycle\")):(c=pc(u))?c.call(u,p,h):p(u)):h(o)}catch(t){d&&!s&&d.exit(),h(t)}}e.reactions=[],e.notified=!1,r&&!e.rejection&&vc(t,e)})}},dc=function(t,e,r){var o,i;sc?((o=nc.createEvent(\"Event\")).promise=e,o.reason=r,o.initEvent(t,!1,!0),n.dispatchEvent(o)):o={promise:e,reason:r},(i=n[\"on\"+t])?i(o):\"unhandledrejection\"===t&&function(t,e){var r=n.console;r&&r.error&&(1===arguments.length?r.error(t):r.error(t,e))}(\"Unhandled promise rejection\",r)},vc=function(t,e){Xu.call(n,function(){var r,n=e.value;if(gc(e)&&(r=Hu(function(){cc?oc.emit(\"unhandledRejection\",n,t):dc(\"unhandledrejection\",t,n)}),e.rejection=cc||gc(e)?2:1,r.error))throw r.value})},gc=function(t){return 1!==t.rejection&&!t.parent},yc=function(t,e){Xu.call(n,function(){cc?oc.emit(\"rejectionHandled\",t):dc(\"rejectionhandled\",t,e.value)})},mc=function(t,e,r,n){return function(o){t(e,r,o,n)}},bc=function(t,e,r,n){e.done||(e.done=!0,n&&(e=n),e.value=r,e.state=2,hc(t,e,!0))},Sc=function t(e,r,n,o){if(!r.done){r.done=!0,o&&(r=o);try{if(e===n)throw rc(\"Promise can't be resolved itself\");var i=pc(n);i?Gu(function(){var o={done:!1};try{i.call(n,mc(t,e,o,r),mc(bc,e,o,r))}catch(t){bc(e,o,t,r)}}):(r.value=n,r.state=1,hc(e,r,!1))}catch(t){bc(e,{done:!1},t,r)}}};fc&&(ec=function(t){xr(this,ec,Ju),Yt(t),Bu.call(this);var e=Qu(this);try{t(mc(Sc,this,e),mc(bc,this,e))}catch(t){bc(this,e,t)}},(Bu=function(t){Zu(this,{type:Ju,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:0,value:void 0})}).prototype=Ar(ec.prototype,{then:function(t,e){var r=tc(this),n=ac(Hr(this,ec));return n.ok=\"function\"!=typeof t||t,n.fail=\"function\"==typeof e&&e,n.domain=cc?oc.domain:void 0,r.parent=!0,r.reactions.push(n),0!=r.state&&hc(this,r,!1),n.promise},catch:function(t){return this.then(void 0,t)}}),Wu=function(){var t=new Bu,e=Qu(t);this.promise=t,this.resolve=mc(Sc,t,e),this.reject=mc(bc,t,e)},Vu.f=ac=function(t){return t===ec||t===zu?new Wu(t):uc(t)},\"function\"==typeof su&&(Ku=su.prototype.then,Z(su.prototype,\"then\",function(t,e){var r=this;return new ec(function(t,e){Ku.call(r,t,e)}).then(t,e)},{unsafe:!0}),\"function\"==typeof ic&&_t({global:!0,enumerable:!0,forced:!0},{fetch:function(t){return qu(ec,ic.apply(n,arguments))}}))),_t({global:!0,wrap:!0,forced:fc},{Promise:ec}),Te(ec,Ju,!1),Pr(Ju),zu=rt(Ju),_t({target:Ju,stat:!0,forced:fc},{reject:function(t){var e=ac(this);return e.reject.call(void 0,t),e.promise}}),_t({target:Ju,stat:!0,forced:fc},{resolve:function(t){return qu(this,t)}}),_t({target:Ju,stat:!0,forced:lc},{all:function(t){var e=this,r=ac(e),n=r.resolve,o=r.reject,i=Hu(function(){var r=Yt(e.resolve),i=[],a=0,u=1;Er(t,function(t){var c=a++,s=!1;i.push(void 0),u++,r.call(e,t).then(function(t){s||(s=!0,i[c]=t,--u||n(i))},o)}),--u||n(i)});return i.error&&o(i.value),r.promise},race:function(t){var e=this,r=ac(e),n=r.reject,o=Hu(function(){var o=Yt(e.resolve);Er(t,function(t){o.call(e,t).then(r.resolve,n)})});return o.error&&n(o.value),r.promise}}),_t({target:\"Promise\",stat:!0},{allSettled:function(t){var e=this,r=Vu.f(e),n=r.resolve,o=r.reject,i=Hu(function(){var r=Yt(e.resolve),o=[],i=0,a=1;Er(t,function(t){var u=i++,c=!1;o.push(void 0),a++,r.call(e,t).then(function(t){c||(c=!0,o[u]={status:\"fulfilled\",value:t},--a||n(o))},function(t){c||(c=!0,o[u]={status:\"rejected\",reason:t},--a||n(o))})}),--a||n(o)});return i.error&&o(i.value),r.promise}});var wc=!!su&&o(function(){su.prototype.finally.call({then:function(){}},function(){})});_t({target:\"Promise\",proto:!0,real:!0,forced:wc},{finally:function(t){var e=Hr(this,rt(\"Promise\")),r=\"function\"==typeof t;return this.then(r?function(r){return qu(e,t()).then(function(){return r})}:t,r?function(r){return qu(e,t()).then(function(){throw r})}:t)}}),\"function\"!=typeof su||su.prototype.finally||Z(su.prototype,\"finally\",rt(\"Promise\").prototype.finally);var Ec=Q.set,xc=Q.getterFor(\"AggregateError\"),Oc=function(t,e){var r=this;if(!(r instanceof Oc))return new Oc(t,e);Ue&&(r=Ue(new Error(e),je(r)));var n=[];return Er(t,n.push,n),i?Ec(r,{errors:n,type:\"AggregateError\"}):r.errors=n,void 0!==e&&_(r,\"message\",String(e)),r};Oc.prototype=Vt(Error.prototype,{constructor:s(5,Oc),message:s(5,\"\"),name:s(5,\"AggregateError\")}),i&&P.f(Oc.prototype,\"errors\",{get:function(){return xc(this).errors},configurable:!0}),_t({global:!0},{AggregateError:Oc}),_t({target:\"Promise\",stat:!0},{try:function(t){var e=Vu.f(this),r=Hu(t);return(r.error?e.reject:e.resolve)(r.value),e.promise}}),_t({target:\"Promise\",stat:!0},{any:function(t){var e=this,r=Vu.f(e),n=r.resolve,o=r.reject,i=Hu(function(){var r=Yt(e.resolve),i=[],a=0,u=1,c=!1;Er(t,function(t){var s=a++,f=!1;i.push(void 0),u++,r.call(e,t).then(function(t){f||c||(c=!0,n(t))},function(t){f||c||(f=!0,i[s]=t,--u||o(new(rt(\"AggregateError\"))(i,\"No one promise resolved\")))})}),--u||o(new(rt(\"AggregateError\"))(i,\"No one promise resolved\"))});return i.error&&o(i.value),r.promise}});var jc=\"URLSearchParams\"in self,Ac=\"Symbol\"in self&&\"iterator\"in Symbol,Rc=\"FileReader\"in self&&\"Blob\"in self&&function(){try{return new Blob,!0}catch(t){return!1}}(),Pc=\"FormData\"in self,_c=\"ArrayBuffer\"in self;if(_c)var Ic=[\"[object Int8Array]\",\"[object Uint8Array]\",\"[object Uint8ClampedArray]\",\"[object Int16Array]\",\"[object Uint16Array]\",\"[object Int32Array]\",\"[object Uint32Array]\",\"[object Float32Array]\",\"[object Float64Array]\"],Tc=ArrayBuffer.isView||function(t){return t&&Ic.indexOf(Object.prototype.toString.call(t))>-1};function Mc(t){if(\"string\"!=typeof t&&(t=String(t)),/[^a-z0-9\\-#$%&'*+.^_`|~]/i.test(t))throw new TypeError(\"Invalid character in header field name\");return t.toLowerCase()}function kc(t){return\"string\"!=typeof t&&(t=String(t)),t}function Nc(t){var e={next:function(){var e=t.shift();return{done:void 0===e,value:e}}};return Ac&&(e[Symbol.iterator]=function(){return e}),e}function Lc(t){this.map={},t instanceof Lc?t.forEach(function(t,e){this.append(e,t)},this):Array.isArray(t)?t.forEach(function(t){this.append(t[0],t[1])},this):t&&Object.getOwnPropertyNames(t).forEach(function(e){this.append(e,t[e])},this)}function Uc(t){if(t.bodyUsed)return Promise.reject(new TypeError(\"Already read\"));t.bodyUsed=!0}function Cc(t){return new Promise(function(e,r){t.onload=function(){e(t.result)},t.onerror=function(){r(t.error)}})}function Fc(t){var e=new FileReader,r=Cc(e);return e.readAsArrayBuffer(t),r}function Dc(t){if(t.slice)return t.slice(0);var e=new Uint8Array(t.byteLength);return e.set(new Uint8Array(t)),e.buffer}function Bc(){return this.bodyUsed=!1,this._initBody=function(t){var e;this._bodyInit=t,t?\"string\"==typeof t?this._bodyText=t:Rc&&Blob.prototype.isPrototypeOf(t)?this._bodyBlob=t:Pc&&FormData.prototype.isPrototypeOf(t)?this._bodyFormData=t:jc&&URLSearchParams.prototype.isPrototypeOf(t)?this._bodyText=t.toString():_c&&Rc&&(e=t)&&DataView.prototype.isPrototypeOf(e)?(this._bodyArrayBuffer=Dc(t.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):_c&&(ArrayBuffer.prototype.isPrototypeOf(t)||Tc(t))?this._bodyArrayBuffer=Dc(t):this._bodyText=t=Object.prototype.toString.call(t):this._bodyText=\"\",this.headers.get(\"content-type\")||(\"string\"==typeof t?this.headers.set(\"content-type\",\"text/plain;charset=UTF-8\"):this._bodyBlob&&this._bodyBlob.type?this.headers.set(\"content-type\",this._bodyBlob.type):jc&&URLSearchParams.prototype.isPrototypeOf(t)&&this.headers.set(\"content-type\",\"application/x-www-form-urlencoded;charset=UTF-8\"))},Rc&&(this.blob=function(){var t=Uc(this);if(t)return t;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error(\"could not read FormData body as blob\");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?Uc(this)||Promise.resolve(this._bodyArrayBuffer):this.blob().then(Fc)}),this.text=function(){var t=Uc(this);if(t)return t;if(this._bodyBlob)return function(t){var e=new FileReader,r=Cc(e);return e.readAsText(t),r}(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(function(t){for(var e=new Uint8Array(t),r=new Array(e.length),n=0;n<e.length;n++)r[n]=String.fromCharCode(e[n]);return r.join(\"\")}(this._bodyArrayBuffer));if(this._bodyFormData)throw new Error(\"could not read FormData body as text\");return Promise.resolve(this._bodyText)},Pc&&(this.formData=function(){return this.text().then(Kc)}),this.json=function(){return this.text().then(JSON.parse)},this}Lc.prototype.append=function(t,e){t=Mc(t),e=kc(e);var r=this.map[t];this.map[t]=r?r+\", \"+e:e},Lc.prototype.delete=function(t){delete this.map[Mc(t)]},Lc.prototype.get=function(t){return t=Mc(t),this.has(t)?this.map[t]:null},Lc.prototype.has=function(t){return this.map.hasOwnProperty(Mc(t))},Lc.prototype.set=function(t,e){this.map[Mc(t)]=kc(e)},Lc.prototype.forEach=function(t,e){for(var r in this.map)this.map.hasOwnProperty(r)&&t.call(e,this.map[r],r,this)},Lc.prototype.keys=function(){var t=[];return this.forEach(function(e,r){t.push(r)}),Nc(t)},Lc.prototype.values=function(){var t=[];return this.forEach(function(e){t.push(e)}),Nc(t)},Lc.prototype.entries=function(){var t=[];return this.forEach(function(e,r){t.push([r,e])}),Nc(t)},Ac&&(Lc.prototype[Symbol.iterator]=Lc.prototype.entries);var Wc=[\"DELETE\",\"GET\",\"HEAD\",\"OPTIONS\",\"POST\",\"PUT\"];function zc(t,e){var r,n,o=(e=e||{}).body;if(t instanceof zc){if(t.bodyUsed)throw new TypeError(\"Already read\");this.url=t.url,this.credentials=t.credentials,e.headers||(this.headers=new Lc(t.headers)),this.method=t.method,this.mode=t.mode,this.signal=t.signal,o||null==t._bodyInit||(o=t._bodyInit,t.bodyUsed=!0)}else this.url=String(t);if(this.credentials=e.credentials||this.credentials||\"same-origin\",!e.headers&&this.headers||(this.headers=new Lc(e.headers)),this.method=(n=(r=e.method||this.method||\"GET\").toUpperCase(),Wc.indexOf(n)>-1?n:r),this.mode=e.mode||this.mode||null,this.signal=e.signal||this.signal,this.referrer=null,(\"GET\"===this.method||\"HEAD\"===this.method)&&o)throw new TypeError(\"Body not allowed for GET or HEAD requests\");this._initBody(o)}function Kc(t){var e=new FormData;return t.trim().split(\"&\").forEach(function(t){if(t){var r=t.split(\"=\"),n=r.shift().replace(/\\+/g,\" \"),o=r.join(\"=\").replace(/\\+/g,\" \");e.append(decodeURIComponent(n),decodeURIComponent(o))}}),e}function Gc(t,e){e||(e={}),this.type=\"default\",this.status=void 0===e.status?200:e.status,this.ok=this.status>=200&&this.status<300,this.statusText=\"statusText\"in e?e.statusText:\"OK\",this.headers=new Lc(e.headers),this.url=e.url||\"\",this._initBody(t)}zc.prototype.clone=function(){return new zc(this,{body:this._bodyInit})},Bc.call(zc.prototype),Bc.call(Gc.prototype),Gc.prototype.clone=function(){return new Gc(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new Lc(this.headers),url:this.url})},Gc.error=function(){var t=new Gc(null,{status:0,statusText:\"\"});return t.type=\"error\",t};var $c=[301,302,303,307,308];Gc.redirect=function(t,e){if(-1===$c.indexOf(e))throw new RangeError(\"Invalid status code\");return new Gc(null,{status:e,headers:{location:t}})};var Vc=self.DOMException;try{new Vc}catch(t){(Vc=function(t,e){this.message=t,this.name=e;var r=Error(t);this.stack=r.stack}).prototype=Object.create(Error.prototype),Vc.prototype.constructor=Vc}function qc(t,e){return new Promise(function(r,n){var o=new zc(t,e);if(o.signal&&o.signal.aborted)return n(new Vc(\"Aborted\",\"AbortError\"));var i=new XMLHttpRequest;function a(){i.abort()}i.onload=function(){var t,e,n={status:i.status,statusText:i.statusText,headers:(t=i.getAllResponseHeaders()||\"\",e=new Lc,t.replace(/\\r?\\n[\\t ]+/g,\" \").split(/\\r?\\n/).forEach(function(t){var r=t.split(\":\"),n=r.shift().trim();if(n){var o=r.join(\":\").trim();e.append(n,o)}}),e)};n.url=\"responseURL\"in i?i.responseURL:n.headers.get(\"X-Request-URL\"),r(new Gc(\"response\"in i?i.response:i.responseText,n))},i.onerror=function(){n(new TypeError(\"Network request failed\"))},i.ontimeout=function(){n(new TypeError(\"Network request failed\"))},i.onabort=function(){n(new Vc(\"Aborted\",\"AbortError\"))},i.open(o.method,o.url,!0),\"include\"===o.credentials?i.withCredentials=!0:\"omit\"===o.credentials&&(i.withCredentials=!1),\"responseType\"in i&&Rc&&(i.responseType=\"blob\"),o.headers.forEach(function(t,e){i.setRequestHeader(e,t)}),o.signal&&(o.signal.addEventListener(\"abort\",a),i.onreadystatechange=function(){4===i.readyState&&o.signal.removeEventListener(\"abort\",a)}),i.send(void 0===o._bodyInit?null:o._bodyInit)})}qc.polyfill=!0,self.fetch||(self.fetch=qc,self.Headers=Lc,self.Request=zc,self.Response=Gc),function(t){var e=function(){try{return!!Symbol.iterator}catch(t){return!1}}(),r=function(t){var r={next:function(){var e=t.shift();return{done:void 0===e,value:e}}};return e&&(r[Symbol.iterator]=function(){return r}),r},n=function(t){return encodeURIComponent(t).replace(/%20/g,\"+\")},o=function(t){return decodeURIComponent(String(t).replace(/\\+/g,\" \"))};(function(){try{var e=t.URLSearchParams;return\"a=1\"===new e(\"?a=1\").toString()&&\"function\"==typeof e.prototype.set}catch(t){return!1}})()||function(){var o=function t(e){Object.defineProperty(this,\"_entries\",{writable:!0,value:{}});var r=typeof e;if(\"undefined\"===r);else if(\"string\"===r)\"\"!==e&&this._fromString(e);else if(e instanceof t){var n=this;e.forEach(function(t,e){n.append(e,t)})}else{if(null===e||\"object\"!==r)throw new TypeError(\"Unsupported input's type for URLSearchParams\");if(\"[object Array]\"===Object.prototype.toString.call(e))for(var o=0;o<e.length;o++){var i=e[o];if(\"[object Array]\"!==Object.prototype.toString.call(i)&&2===i.length)throw new TypeError(\"Expected [string, any] as entry at index \"+o+\" of URLSearchParams's input\");this.append(i[0],i[1])}else for(var a in e)e.hasOwnProperty(a)&&this.append(a,e[a])}},i=o.prototype;i.append=function(t,e){t in this._entries?this._entries[t].push(String(e)):this._entries[t]=[String(e)]},i.delete=function(t){delete this._entries[t]},i.get=function(t){return t in this._entries?this._entries[t][0]:null},i.getAll=function(t){return t in this._entries?this._entries[t].slice(0):[]},i.has=function(t){return t in this._entries},i.set=function(t,e){this._entries[t]=[String(e)]},i.forEach=function(t,e){var r;for(var n in this._entries)if(this._entries.hasOwnProperty(n)){r=this._entries[n];for(var o=0;o<r.length;o++)t.call(e,r[o],n,this)}},i.keys=function(){var t=[];return this.forEach(function(e,r){t.push(r)}),r(t)},i.values=function(){var t=[];return this.forEach(function(e){t.push(e)}),r(t)},i.entries=function(){var t=[];return this.forEach(function(e,r){t.push([r,e])}),r(t)},e&&(i[Symbol.iterator]=i.entries),i.toString=function(){var t=[];return this.forEach(function(e,r){t.push(n(r)+\"=\"+n(e))}),t.join(\"&\")},t.URLSearchParams=o}();var i=t.URLSearchParams.prototype;\"function\"!=typeof i.sort&&(i.sort=function(){var t=this,e=[];this.forEach(function(r,n){e.push([n,r]),t._entries||t.delete(n)}),e.sort(function(t,e){return t[0]<e[0]?-1:t[0]>e[0]?1:0}),t._entries&&(t._entries={});for(var r=0;r<e.length;r++)this.append(e[r][0],e[r][1])}),\"function\"!=typeof i._fromString&&Object.defineProperty(i,\"_fromString\",{enumerable:!1,configurable:!1,writable:!1,value:function(t){if(this._entries)this._entries={};else{var e=[];this.forEach(function(t,r){e.push(r)});for(var r=0;r<e.length;r++)this.delete(e[r])}var n,i=(t=t.replace(/^\\?/,\"\")).split(\"&\");for(r=0;r<i.length;r++)n=i[r].split(\"=\"),this.append(o(n[0]),n.length>1?o(n[1]):\"\")}})}(void 0!==t?t:\"undefined\"!=typeof window?window:\"undefined\"!=typeof self?self:t),function(t){var e,r,n;if(function(){try{var e=new t.URL(\"b\",\"http://a\");return e.pathname=\"c d\",\"http://a/c%20d\"===e.href&&e.searchParams}catch(t){return!1}}()||(e=t.URL,n=(r=function(e,r){\"string\"!=typeof e&&(e=String(e));var n,o=document;if(r&&(void 0===t.location||r!==t.location.href)){(n=(o=document.implementation.createHTMLDocument(\"\")).createElement(\"base\")).href=r,o.head.appendChild(n);try{if(0!==n.href.indexOf(r))throw new Error(n.href)}catch(t){throw new Error(\"URL unable to set base \"+r+\" due to \"+t)}}var i=o.createElement(\"a\");i.href=e,n&&(o.body.appendChild(i),i.href=i.href);var a=o.createElement(\"input\");if(a.type=\"url\",a.value=e,\":\"===i.protocol||!/:/.test(i.href)||!a.checkValidity()&&!r)throw new TypeError(\"Invalid URL\");Object.defineProperty(this,\"_anchorElement\",{value:i});var u=new t.URLSearchParams(this.search),c=!0,s=!0,f=this;[\"append\",\"delete\",\"set\"].forEach(function(t){var e=u[t];u[t]=function(){e.apply(u,arguments),c&&(s=!1,f.search=u.toString(),s=!0)}}),Object.defineProperty(this,\"searchParams\",{value:u,enumerable:!0});var l=void 0;Object.defineProperty(this,\"_updateSearchParams\",{enumerable:!1,configurable:!1,writable:!1,value:function(){this.search!==l&&(l=this.search,s&&(c=!1,this.searchParams._fromString(this.search),c=!0))}})}).prototype,[\"hash\",\"host\",\"hostname\",\"port\",\"protocol\"].forEach(function(t){!function(t){Object.defineProperty(n,t,{get:function(){return this._anchorElement[t]},set:function(e){this._anchorElement[t]=e},enumerable:!0})}(t)}),Object.defineProperty(n,\"search\",{get:function(){return this._anchorElement.search},set:function(t){this._anchorElement.search=t,this._updateSearchParams()},enumerable:!0}),Object.defineProperties(n,{toString:{get:function(){var t=this;return function(){return t.href}}},href:{get:function(){return this._anchorElement.href.replace(/\\?$/,\"\")},set:function(t){this._anchorElement.href=t,this._updateSearchParams()},enumerable:!0},pathname:{get:function(){return this._anchorElement.pathname.replace(/(^\\/?)/,\"/\")},set:function(t){this._anchorElement.pathname=t},enumerable:!0},origin:{get:function(){return this._anchorElement.protocol+\"//\"+this._anchorElement.hostname+(this._anchorElement.port!={\"http:\":80,\"https:\":443,\"ftp:\":21}[this._anchorElement.protocol]&&\"\"!==this._anchorElement.port?\":\"+this._anchorElement.port:\"\")},enumerable:!0},password:{get:function(){return\"\"},set:function(t){},enumerable:!0},username:{get:function(){return\"\"},set:function(t){},enumerable:!0}}),r.createObjectURL=function(t){return e.createObjectURL.apply(e,arguments)},r.revokeObjectURL=function(t){return e.revokeObjectURL.apply(e,arguments)},t.URL=r),void 0!==t.location&&!(\"origin\"in t.location)){var o=function(){return t.location.protocol+\"//\"+t.location.hostname+(t.location.port?\":\"+t.location.port:\"\")};try{Object.defineProperty(t.location,\"origin\",{get:o,enumerable:!0})}catch(e){setInterval(function(){t.location.origin=o()},100)}}}(void 0!==t?t:\"undefined\"!=typeof window?window:\"undefined\"!=typeof self?self:t);var Hc=Object.getOwnPropertySymbols,Xc=Object.prototype.hasOwnProperty,Yc=Object.prototype.propertyIsEnumerable;function Jc(t){if(null==t)throw new TypeError(\"Object.assign cannot be called with null or undefined\");return Object(t)}var Qc=function(){try{if(!Object.assign)return!1;var t=new String(\"abc\");if(t[5]=\"de\",\"5\"===Object.getOwnPropertyNames(t)[0])return!1;for(var e={},r=0;r<10;r++)e[\"_\"+String.fromCharCode(r)]=r;if(\"0123456789\"!==Object.getOwnPropertyNames(e).map(function(t){return e[t]}).join(\"\"))return!1;var n={};return\"abcdefghijklmnopqrst\".split(\"\").forEach(function(t){n[t]=t}),\"abcdefghijklmnopqrst\"===Object.keys(Object.assign({},n)).join(\"\")}catch(t){return!1}}()?Object.assign:function(t,e){for(var r,n,o=Jc(t),i=1;i<arguments.length;i++){for(var a in r=Object(arguments[i]))Xc.call(r,a)&&(o[a]=r[a]);if(Hc){n=Hc(r);for(var u=0;u<n.length;u++)Yc.call(r,n[u])&&(o[n[u]]=r[n[u]])}}return o};Object.assign=Qc}();\n","import \"gatsby-legacy-polyfills\"\n\nif (process.env.NODE_ENV === `development`) {\n require(`event-source-polyfill`)\n}\n"],"sourceRoot":""}
\ No newline at end of file
diff --git a/polyfill-e4957c11759bdfc149d9.js b/polyfill-e4957c11759bdfc149d9.js
new file mode 100644
index 0000000..07394a6
--- /dev/null
+++ b/polyfill-e4957c11759bdfc149d9.js
@@ -0,0 +1,2 @@
+(window.webpackJsonp=window.webpackJsonp||[]).push([[8],{VXT5:function(t,e,r){(function(t){!function(){var e="undefined"!=typeof globalThis?globalThis:"undefined"!=typeof window?window:void 0!==t?t:"undefined"!=typeof self?self:{};function r(t,e,r){return t(r={path:e,exports:{},require:function(t,e){return function(){throw new Error("Dynamic requires are not currently supported by @rollup/plugin-commonjs")}()}},r.exports),r.exports}var n=function(t){return t&&t.Math==Math&&t},o=n("object"==typeof globalThis&&globalThis)||n("object"==typeof window&&window)||n("object"==typeof self&&self)||n("object"==typeof e&&e)||function(){return this}()||Function("return this")(),i=function(t){try{return!!t()}catch(t){return!0}},a=!i((function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]})),u={}.propertyIsEnumerable,c=Object.getOwnPropertyDescriptor,s={f:c&&!u.call({1:2},1)?function(t){var e=c(this,t);return!!e&&e.enumerable}:u},f=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}},l={}.toString,h=function(t){return l.call(t).slice(8,-1)},p="".split,d=i((function(){return!Object("z").propertyIsEnumerable(0)}))?function(t){return"String"==h(t)?p.call(t,""):Object(t)}:Object,v=function(t){if(null==t)throw TypeError("Can't call method on "+t);return t},g=function(t){return d(v(t))},y=function(t){return"object"==typeof t?null!==t:"function"==typeof t},m=function(t,e){if(!y(t))return t;var r,n;if(e&&"function"==typeof(r=t.toString)&&!y(n=r.call(t)))return n;if("function"==typeof(r=t.valueOf)&&!y(n=r.call(t)))return n;if(!e&&"function"==typeof(r=t.toString)&&!y(n=r.call(t)))return n;throw TypeError("Can't convert object to primitive value")},b={}.hasOwnProperty,S=function(t,e){return b.call(t,e)},E=o.document,w=y(E)&&y(E.createElement),R=function(t){return w?E.createElement(t):{}},T=!a&&!i((function(){return 7!=Object.defineProperty(R("div"),"a",{get:function(){return 7}}).a})),O=Object.getOwnPropertyDescriptor,x={f:a?O:function(t,e){if(t=g(t),e=m(e,!0),T)try{return O(t,e)}catch(t){}if(S(t,e))return f(!s.f.call(t,e),t[e])}},A=function(t){if(!y(t))throw TypeError(String(t)+" is not an object");return t},I=Object.defineProperty,_={f:a?I:function(t,e,r){if(A(t),e=m(e,!0),A(r),T)try{return I(t,e,r)}catch(t){}if("get"in r||"set"in r)throw TypeError("Accessors not supported");return"value"in r&&(t[e]=r.value),t}},j=a?function(t,e,r){return _.f(t,e,f(1,r))}:function(t,e,r){return t[e]=r,t},P=function(t,e){try{j(o,t,e)}catch(n){o[t]=e}return e},N=o["__core-js_shared__"]||P("__core-js_shared__",{}),M=Function.toString;"function"!=typeof N.inspectSource&&(N.inspectSource=function(t){return M.call(t)});var U,k,L,D=N.inspectSource,C=o.WeakMap,F="function"==typeof C&&/native code/.test(D(C)),B=r((function(t){(t.exports=function(t,e){return N[t]||(N[t]=void 0!==e?e:{})})("versions",[]).push({version:"3.8.1",mode:"global",copyright:"© 2020 Denis Pushkarev (zloirock.ru)"})})),W=0,z=Math.random(),G=function(t){return"Symbol("+String(void 0===t?"":t)+")_"+(++W+z).toString(36)},K=B("keys"),V=function(t){return K[t]||(K[t]=G(t))},$={};if(F){var q=N.state||(N.state=new(0,o.WeakMap)),H=q.get,X=q.has,Y=q.set;U=function(t,e){return e.facade=t,Y.call(q,t,e),e},k=function(t){return H.call(q,t)||{}},L=function(t){return X.call(q,t)}}else{var J=V("state");$[J]=!0,U=function(t,e){return e.facade=t,j(t,J,e),e},k=function(t){return S(t,J)?t[J]:{}},L=function(t){return S(t,J)}}var Q,Z={set:U,get:k,has:L,enforce:function(t){return L(t)?k(t):U(t,{})},getterFor:function(t){return function(e){var r;if(!y(e)||(r=k(e)).type!==t)throw TypeError("Incompatible receiver, "+t+" required");return r}}},tt=r((function(t){var e=Z.get,r=Z.enforce,n=String(String).split("String");(t.exports=function(t,e,i,a){var u,c=!!a&&!!a.unsafe,s=!!a&&!!a.enumerable,f=!!a&&!!a.noTargetGet;"function"==typeof i&&("string"!=typeof e||S(i,"name")||j(i,"name",e),(u=r(i)).source||(u.source=n.join("string"==typeof e?e:""))),t!==o?(c?!f&&t[e]&&(s=!0):delete t[e],s?t[e]=i:j(t,e,i)):s?t[e]=i:P(e,i)})(Function.prototype,"toString",(function(){return"function"==typeof this&&e(this).source||D(this)}))})),et=o,rt=function(t){return"function"==typeof t?t:void 0},nt=function(t,e){return arguments.length<2?rt(et[t])||rt(o[t]):et[t]&&et[t][e]||o[t]&&o[t][e]},ot=Math.ceil,it=Math.floor,at=function(t){return isNaN(t=+t)?0:(t>0?it:ot)(t)},ut=Math.min,ct=function(t){return t>0?ut(at(t),9007199254740991):0},st=Math.max,ft=Math.min,lt=function(t,e){var r=at(t);return r<0?st(r+e,0):ft(r,e)},ht=function(t){return function(e,r,n){var o,i=g(e),a=ct(i.length),u=lt(n,a);if(t&&r!=r){for(;a>u;)if((o=i[u++])!=o)return!0}else for(;a>u;u++)if((t||u in i)&&i[u]===r)return t||u||0;return!t&&-1}},pt={includes:ht(!0),indexOf:ht(!1)},dt=pt.indexOf,vt=function(t,e){var r,n=g(t),o=0,i=[];for(r in n)!S($,r)&&S(n,r)&&i.push(r);for(;e.length>o;)S(n,r=e[o++])&&(~dt(i,r)||i.push(r));return i},gt=["constructor","hasOwnProperty","isPrototypeOf","propertyIsEnumerable","toLocaleString","toString","valueOf"],yt=gt.concat("length","prototype"),mt={f:Object.getOwnPropertyNames||function(t){return vt(t,yt)}},bt={f:Object.getOwnPropertySymbols},St=nt("Reflect","ownKeys")||function(t){var e=mt.f(A(t)),r=bt.f;return r?e.concat(r(t)):e},Et=function(t,e){for(var r=St(e),n=_.f,o=x.f,i=0;i<r.length;i++){var a=r[i];S(t,a)||n(t,a,o(e,a))}},wt=/#|\.prototype\./,Rt=function(t,e){var r=Ot[Tt(t)];return r==At||r!=xt&&("function"==typeof e?i(e):!!e)},Tt=Rt.normalize=function(t){return String(t).replace(wt,".").toLowerCase()},Ot=Rt.data={},xt=Rt.NATIVE="N",At=Rt.POLYFILL="P",It=Rt,_t=x.f,jt=function(t,e){var r,n,i,a,u,c=t.target,s=t.global,f=t.stat;if(r=s?o:f?o[c]||P(c,{}):(o[c]||{}).prototype)for(n in e){if(a=e[n],i=t.noTargetGet?(u=_t(r,n))&&u.value:r[n],!It(s?n:c+(f?".":"#")+n,t.forced)&&void 0!==i){if(typeof a==typeof i)continue;Et(a,i)}(t.sham||i&&i.sham)&&j(a,"sham",!0),tt(r,n,a,t)}},Pt=function(t){return Object(v(t))},Nt=Math.min,Mt=[].copyWithin||function(t,e){var r=Pt(this),n=ct(r.length),o=lt(t,n),i=lt(e,n),a=arguments.length>2?arguments[2]:void 0,u=Nt((void 0===a?n:lt(a,n))-i,n-o),c=1;for(i<o&&o<i+u&&(c=-1,i+=u-1,o+=u-1);u-- >0;)i in r?r[o]=r[i]:delete r[o],o+=c,i+=c;return r},Ut=!!Object.getOwnPropertySymbols&&!i((function(){return!String(Symbol())})),kt=Ut&&!Symbol.sham&&"symbol"==typeof Symbol.iterator,Lt=B("wks"),Dt=o.Symbol,Ct=kt?Dt:Dt&&Dt.withoutSetter||G,Ft=function(t){return S(Lt,t)||(Lt[t]=Ut&&S(Dt,t)?Dt[t]:Ct("Symbol."+t)),Lt[t]},Bt=Object.keys||function(t){return vt(t,gt)},Wt=a?Object.defineProperties:function(t,e){A(t);for(var r,n=Bt(e),o=n.length,i=0;o>i;)_.f(t,r=n[i++],e[r]);return t},zt=nt("document","documentElement"),Gt=V("IE_PROTO"),Kt=function(){},Vt=function(t){return"<script>"+t+"<\/script>"},$t=function(){try{Q=document.domain&&new ActiveXObject("htmlfile")}catch(t){}var t,e;$t=Q?function(t){t.write(Vt("")),t.close();var e=t.parentWindow.Object;return t=null,e}(Q):((e=R("iframe")).style.display="none",zt.appendChild(e),e.src=String("javascript:"),(t=e.contentWindow.document).open(),t.write(Vt("document.F=Object")),t.close(),t.F);for(var r=gt.length;r--;)delete $t.prototype[gt[r]];return $t()};$[Gt]=!0;var qt=Object.create||function(t,e){var r;return null!==t?(Kt.prototype=A(t),r=new Kt,Kt.prototype=null,r[Gt]=t):r=$t(),void 0===e?r:Wt(r,e)},Ht=Ft("unscopables"),Xt=Array.prototype;null==Xt[Ht]&&_.f(Xt,Ht,{configurable:!0,value:qt(null)});var Yt=function(t){Xt[Ht][t]=!0};jt({target:"Array",proto:!0},{copyWithin:Mt}),Yt("copyWithin");var Jt=function(t){if("function"!=typeof t)throw TypeError(String(t)+" is not a function");return t},Qt=function(t,e,r){if(Jt(t),void 0===e)return t;switch(r){case 0:return function(){return t.call(e)};case 1:return function(r){return t.call(e,r)};case 2:return function(r,n){return t.call(e,r,n)};case 3:return function(r,n,o){return t.call(e,r,n,o)}}return function(){return t.apply(e,arguments)}},Zt=Function.call,te=function(t,e,r){return Qt(Zt,o[t].prototype[e],r)};te("Array","copyWithin"),jt({target:"Array",proto:!0},{fill:function(t){for(var e=Pt(this),r=ct(e.length),n=arguments.length,o=lt(n>1?arguments[1]:void 0,r),i=n>2?arguments[2]:void 0,a=void 0===i?r:lt(i,r);a>o;)e[o++]=t;return e}}),Yt("fill"),te("Array","fill");var ee=Array.isArray||function(t){return"Array"==h(t)},re=Ft("species"),ne=function(t,e){var r;return ee(t)&&("function"!=typeof(r=t.constructor)||r!==Array&&!ee(r.prototype)?y(r)&&null===(r=r[re])&&(r=void 0):r=void 0),new(void 0===r?Array:r)(0===e?0:e)},oe=[].push,ie=function(t){var e=1==t,r=2==t,n=3==t,o=4==t,i=6==t,a=7==t,u=5==t||i;return function(c,s,f,l){for(var h,p,v=Pt(c),g=d(v),y=Qt(s,f,3),m=ct(g.length),b=0,S=l||ne,E=e?S(c,m):r||a?S(c,0):void 0;m>b;b++)if((u||b in g)&&(p=y(h=g[b],b,v),t))if(e)E[b]=p;else if(p)switch(t){case 3:return!0;case 5:return h;case 6:return b;case 2:oe.call(E,h)}else switch(t){case 4:return!1;case 7:oe.call(E,h)}return i?-1:n||o?o:E}},ae={forEach:ie(0),map:ie(1),filter:ie(2),some:ie(3),every:ie(4),find:ie(5),findIndex:ie(6),filterOut:ie(7)},ue=Object.defineProperty,ce={},se=function(t){throw t},fe=function(t,e){if(S(ce,t))return ce[t];e||(e={});var r=[][t],n=!!S(e,"ACCESSORS")&&e.ACCESSORS,o=S(e,0)?e[0]:se,u=S(e,1)?e[1]:void 0;return ce[t]=!!r&&!i((function(){if(n&&!a)return!0;var t={length:-1};n?ue(t,1,{enumerable:!0,get:se}):t[1]=1,r.call(t,o,u)}))},le=ae.find,he=!0,pe=fe("find");"find"in[]&&Array(1).find((function(){he=!1})),jt({target:"Array",proto:!0,forced:he||!pe},{find:function(t){return le(this,t,arguments.length>1?arguments[1]:void 0)}}),Yt("find"),te("Array","find");var de=ae.findIndex,ve=!0,ge=fe("findIndex");"findIndex"in[]&&Array(1).findIndex((function(){ve=!1})),jt({target:"Array",proto:!0,forced:ve||!ge},{findIndex:function(t){return de(this,t,arguments.length>1?arguments[1]:void 0)}}),Yt("findIndex"),te("Array","findIndex");var ye=function t(e,r,n,o,i,a,u,c){for(var s,f=i,l=0,h=!!u&&Qt(u,c,3);l<o;){if(l in n){if(s=h?h(n[l],l,r):n[l],a>0&&ee(s))f=t(e,r,s,ct(s.length),f,a-1)-1;else{if(f>=9007199254740991)throw TypeError("Exceed the acceptable array length");e[f]=s}f++}l++}return f};jt({target:"Array",proto:!0},{flatMap:function(t){var e,r=Pt(this),n=ct(r.length);return Jt(t),(e=ne(r,0)).length=ye(e,r,r,n,0,1,t,arguments.length>1?arguments[1]:void 0),e}}),Yt("flatMap"),te("Array","flatMap"),jt({target:"Array",proto:!0},{flat:function(){var t=arguments.length?arguments[0]:void 0,e=Pt(this),r=ct(e.length),n=ne(e,0);return n.length=ye(n,e,e,r,0,void 0===t?1:at(t)),n}}),Yt("flat"),te("Array","flat");var me,be,Se,Ee=function(t){return function(e,r){var n,o,i=String(v(e)),a=at(r),u=i.length;return a<0||a>=u?t?"":void 0:(n=i.charCodeAt(a))<55296||n>56319||a+1===u||(o=i.charCodeAt(a+1))<56320||o>57343?t?i.charAt(a):n:t?i.slice(a,a+2):o-56320+(n-55296<<10)+65536}},we={codeAt:Ee(!1),charAt:Ee(!0)},Re=!i((function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype})),Te=V("IE_PROTO"),Oe=Object.prototype,xe=Re?Object.getPrototypeOf:function(t){return t=Pt(t),S(t,Te)?t[Te]:"function"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?Oe:null},Ae=Ft("iterator"),Ie=!1;[].keys&&("next"in(Se=[].keys())?(be=xe(xe(Se)))!==Object.prototype&&(me=be):Ie=!0),null==me&&(me={}),S(me,Ae)||j(me,Ae,(function(){return this}));var _e={IteratorPrototype:me,BUGGY_SAFARI_ITERATORS:Ie},je=_.f,Pe=Ft("toStringTag"),Ne=function(t,e,r){t&&!S(t=r?t:t.prototype,Pe)&&je(t,Pe,{configurable:!0,value:e})},Me={},Ue=_e.IteratorPrototype,ke=function(){return this},Le=function(t){if(!y(t)&&null!==t)throw TypeError("Can't set "+String(t)+" as a prototype");return t},De=Object.setPrototypeOf||("__proto__"in{}?function(){var t,e=!1,r={};try{(t=Object.getOwnPropertyDescriptor(Object.prototype,"__proto__").set).call(r,[]),e=r instanceof Array}catch(t){}return function(r,n){return A(r),Le(n),e?t.call(r,n):r.__proto__=n,r}}():void 0),Ce=_e.IteratorPrototype,Fe=_e.BUGGY_SAFARI_ITERATORS,Be=Ft("iterator"),We=function(){return this},ze=function(t,e,r,n,o,i,a){!function(t,e,r){var n=e+" Iterator";t.prototype=qt(Ue,{next:f(1,r)}),Ne(t,n,!1),Me[n]=ke}(r,e,n);var u,c,s,l=function(t){if(t===o&&g)return g;if(!Fe&&t in d)return d[t];switch(t){case"keys":case"values":case"entries":return function(){return new r(this,t)}}return function(){return new r(this)}},h=e+" Iterator",p=!1,d=t.prototype,v=d[Be]||d["@@iterator"]||o&&d[o],g=!Fe&&v||l(o),y="Array"==e&&d.entries||v;if(y&&(u=xe(y.call(new t)),Ce!==Object.prototype&&u.next&&(xe(u)!==Ce&&(De?De(u,Ce):"function"!=typeof u[Be]&&j(u,Be,We)),Ne(u,h,!0))),"values"==o&&v&&"values"!==v.name&&(p=!0,g=function(){return v.call(this)}),d[Be]!==g&&j(d,Be,g),Me[e]=g,o)if(c={values:l("values"),keys:i?g:l("keys"),entries:l("entries")},a)for(s in c)(Fe||p||!(s in d))&&tt(d,s,c[s]);else jt({target:e,proto:!0,forced:Fe||p},c);return c},Ge=we.charAt,Ke=Z.set,Ve=Z.getterFor("String Iterator");ze(String,"String",(function(t){Ke(this,{type:"String Iterator",string:String(t),index:0})}),(function(){var t,e=Ve(this),r=e.string,n=e.index;return n>=r.length?{value:void 0,done:!0}:(t=Ge(r,n),e.index+=t.length,{value:t,done:!1})}));var $e=function(t){var e=t.return;if(void 0!==e)return A(e.call(t)).value},qe=function(t,e,r,n){try{return n?e(A(r)[0],r[1]):e(r)}catch(e){throw $e(t),e}},He=Ft("iterator"),Xe=Array.prototype,Ye=function(t){return void 0!==t&&(Me.Array===t||Xe[He]===t)},Je=function(t,e,r){var n=m(e);n in t?_.f(t,n,f(0,r)):t[n]=r},Qe={};Qe[Ft("toStringTag")]="z";var Ze="[object z]"===String(Qe),tr=Ft("toStringTag"),er="Arguments"==h(function(){return arguments}()),rr=Ze?h:function(t){var e,r,n;return void 0===t?"Undefined":null===t?"Null":"string"==typeof(r=function(t,e){try{return t[e]}catch(t){}}(e=Object(t),tr))?r:er?h(e):"Object"==(n=h(e))&&"function"==typeof e.callee?"Arguments":n},nr=Ft("iterator"),or=function(t){if(null!=t)return t[nr]||t["@@iterator"]||Me[rr(t)]},ir=Ft("iterator"),ar=!1;try{var ur=0,cr={next:function(){return{done:!!ur++}},return:function(){ar=!0}};cr[ir]=function(){return this},Array.from(cr,(function(){throw 2}))}catch(e){}var sr=function(t,e){if(!e&&!ar)return!1;var r=!1;try{var n={};n[ir]=function(){return{next:function(){return{done:r=!0}}}},t(n)}catch(t){}return r},fr=!sr((function(t){Array.from(t)}));jt({target:"Array",stat:!0,forced:fr},{from:function(t){var e,r,n,o,i,a,u=Pt(t),c="function"==typeof this?this:Array,s=arguments.length,f=s>1?arguments[1]:void 0,l=void 0!==f,h=or(u),p=0;if(l&&(f=Qt(f,s>2?arguments[2]:void 0,2)),null==h||c==Array&&Ye(h))for(r=new c(e=ct(u.length));e>p;p++)a=l?f(u[p],p):u[p],Je(r,p,a);else for(i=(o=h.call(u)).next,r=new c;!(n=i.call(o)).done;p++)a=l?qe(o,f,[n.value,p],!0):n.value,Je(r,p,a);return r.length=p,r}});var lr=pt.includes,hr=fe("indexOf",{ACCESSORS:!0,1:0});jt({target:"Array",proto:!0,forced:!hr},{includes:function(t){return lr(this,t,arguments.length>1?arguments[1]:void 0)}}),Yt("includes"),te("Array","includes");var pr=Z.set,dr=Z.getterFor("Array Iterator"),vr=ze(Array,"Array",(function(t,e){pr(this,{type:"Array Iterator",target:g(t),index:0,kind:e})}),(function(){var t=dr(this),e=t.target,r=t.kind,n=t.index++;return!e||n>=e.length?(t.target=void 0,{value:void 0,done:!0}):"keys"==r?{value:n,done:!1}:"values"==r?{value:e[n],done:!1}:{value:[n,e[n]],done:!1}}),"values");Me.Arguments=Me.Array,Yt("keys"),Yt("values"),Yt("entries"),te("Array","values");var gr=i((function(){function t(){}return!(Array.of.call(t)instanceof t)}));jt({target:"Array",stat:!0,forced:gr},{of:function(){for(var t=0,e=arguments.length,r=new("function"==typeof this?this:Array)(e);e>t;)Je(r,t,arguments[t++]);return r.length=e,r}});var yr=Ft("hasInstance"),mr=Function.prototype;yr in mr||_.f(mr,yr,{value:function(t){if("function"!=typeof this||!y(t))return!1;if(!y(this.prototype))return t instanceof this;for(;t=xe(t);)if(this.prototype===t)return!0;return!1}}),Ft("hasInstance");var br=Function.prototype,Sr=br.toString,Er=/^\s*function ([^ (]*)/;a&&!("name"in br)&&(0,_.f)(br,"name",{configurable:!0,get:function(){try{return Sr.call(this).match(Er)[1]}catch(e){return""}}});var wr=!i((function(){return Object.isExtensible(Object.preventExtensions({}))})),Rr=r((function(t){var e=_.f,r=G("meta"),n=0,o=Object.isExtensible||function(){return!0},i=function(t){e(t,r,{value:{objectID:"O"+ ++n,weakData:{}}})},a=t.exports={REQUIRED:!1,fastKey:function(t,e){if(!y(t))return"symbol"==typeof t?t:("string"==typeof t?"S":"P")+t;if(!S(t,r)){if(!o(t))return"F";if(!e)return"E";i(t)}return t[r].objectID},getWeakData:function(t,e){if(!S(t,r)){if(!o(t))return!0;if(!e)return!1;i(t)}return t[r].weakData},onFreeze:function(t){return wr&&a.REQUIRED&&o(t)&&!S(t,r)&&i(t),t}};$[r]=!0})),Tr=function(t,e){this.stopped=t,this.result=e},Or=function(t,e,r){var n,o,i,a,u,c,s,f=!(!r||!r.AS_ENTRIES),l=!(!r||!r.IS_ITERATOR),h=!(!r||!r.INTERRUPTED),p=Qt(e,r&&r.that,1+f+h),d=function(t){return n&&$e(n),new Tr(!0,t)},v=function(t){return f?(A(t),h?p(t[0],t[1],d):p(t[0],t[1])):h?p(t,d):p(t)};if(l)n=t;else{if("function"!=typeof(o=or(t)))throw TypeError("Target is not iterable");if(Ye(o)){for(i=0,a=ct(t.length);a>i;i++)if((u=v(t[i]))&&u instanceof Tr)return u;return new Tr(!1)}n=o.call(t)}for(c=n.next;!(s=c.call(n)).done;){try{u=v(s.value)}catch(t){throw $e(n),t}if("object"==typeof u&&u&&u instanceof Tr)return u}return new Tr(!1)},xr=function(t,e,r){if(!(t instanceof e))throw TypeError("Incorrect "+(r?r+" ":"")+"invocation");return t},Ar=function(t,e,r){var n,o;return De&&"function"==typeof(n=e.constructor)&&n!==r&&y(o=n.prototype)&&o!==r.prototype&&De(t,o),t},Ir=function(t,e,r){var n=-1!==t.indexOf("Map"),a=-1!==t.indexOf("Weak"),u=n?"set":"add",c=o[t],s=c&&c.prototype,f=c,l={},h=function(t){var e=s[t];tt(s,t,"add"==t?function(t){return e.call(this,0===t?0:t),this}:"delete"==t?function(t){return!(a&&!y(t))&&e.call(this,0===t?0:t)}:"get"==t?function(t){return a&&!y(t)?void 0:e.call(this,0===t?0:t)}:"has"==t?function(t){return!(a&&!y(t))&&e.call(this,0===t?0:t)}:function(t,r){return e.call(this,0===t?0:t,r),this})};if(It(t,"function"!=typeof c||!(a||s.forEach&&!i((function(){(new c).entries().next()})))))f=r.getConstructor(e,t,n,u),Rr.REQUIRED=!0;else if(It(t,!0)){var p=new f,d=p[u](a?{}:-0,1)!=p,v=i((function(){p.has(1)})),g=sr((function(t){new c(t)})),m=!a&&i((function(){for(var t=new c,e=5;e--;)t[u](e,e);return!t.has(-0)}));g||((f=e((function(e,r){xr(e,f,t);var o=Ar(new c,e,f);return null!=r&&Or(r,o[u],{that:o,AS_ENTRIES:n}),o}))).prototype=s,s.constructor=f),(v||m)&&(h("delete"),h("has"),n&&h("get")),(m||d)&&h(u),a&&s.clear&&delete s.clear}return l[t]=f,jt({global:!0,forced:f!=c},l),Ne(f,t),a||r.setStrong(f,t,n),f},_r=function(t,e,r){for(var n in e)tt(t,n,e[n],r);return t},jr=Ft("species"),Pr=function(t){var e=nt(t);a&&e&&!e[jr]&&(0,_.f)(e,jr,{configurable:!0,get:function(){return this}})},Nr=_.f,Mr=Rr.fastKey,Ur=Z.set,kr=Z.getterFor,Lr={getConstructor:function(t,e,r,n){var o=t((function(t,i){xr(t,o,e),Ur(t,{type:e,index:qt(null),first:void 0,last:void 0,size:0}),a||(t.size=0),null!=i&&Or(i,t[n],{that:t,AS_ENTRIES:r})})),i=kr(e),u=function(t,e,r){var n,o,u=i(t),s=c(t,e);return s?s.value=r:(u.last=s={index:o=Mr(e,!0),key:e,value:r,previous:n=u.last,next:void 0,removed:!1},u.first||(u.first=s),n&&(n.next=s),a?u.size++:t.size++,"F"!==o&&(u.index[o]=s)),t},c=function(t,e){var r,n=i(t),o=Mr(e);if("F"!==o)return n.index[o];for(r=n.first;r;r=r.next)if(r.key==e)return r};return _r(o.prototype,{clear:function(){for(var t=i(this),e=t.index,r=t.first;r;)r.removed=!0,r.previous&&(r.previous=r.previous.next=void 0),delete e[r.index],r=r.next;t.first=t.last=void 0,a?t.size=0:this.size=0},delete:function(t){var e=i(this),r=c(this,t);if(r){var n=r.next,o=r.previous;delete e.index[r.index],r.removed=!0,o&&(o.next=n),n&&(n.previous=o),e.first==r&&(e.first=n),e.last==r&&(e.last=o),a?e.size--:this.size--}return!!r},forEach:function(t){for(var e,r=i(this),n=Qt(t,arguments.length>1?arguments[1]:void 0,3);e=e?e.next:r.first;)for(n(e.value,e.key,this);e&&e.removed;)e=e.previous},has:function(t){return!!c(this,t)}}),_r(o.prototype,r?{get:function(t){var e=c(this,t);return e&&e.value},set:function(t,e){return u(this,0===t?0:t,e)}}:{add:function(t){return u(this,t=0===t?0:t,t)}}),a&&Nr(o.prototype,"size",{get:function(){return i(this).size}}),o},setStrong:function(t,e,r){var n=e+" Iterator",o=kr(e),i=kr(n);ze(t,e,(function(t,e){Ur(this,{type:n,target:t,state:o(t),kind:e,last:void 0})}),(function(){for(var t=i(this),e=t.kind,r=t.last;r&&r.removed;)r=r.previous;return t.target&&(t.last=r=r?r.next:t.state.first)?"keys"==e?{value:r.key,done:!1}:"values"==e?{value:r.value,done:!1}:{value:[r.key,r.value],done:!1}:(t.target=void 0,{value:void 0,done:!0})}),r?"entries":"values",!r,!0),Pr(e)}},Dr=Ir("Map",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),Lr);Ze||tt(Object.prototype,"toString",Ze?{}.toString:function(){return"[object "+rr(this)+"]"},{unsafe:!0});var Cr={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0},Fr=Ft("iterator"),Br=Ft("toStringTag"),Wr=vr.values;for(var zr in Cr){var Gr=o[zr],Kr=Gr&&Gr.prototype;if(Kr){if(Kr[Fr]!==Wr)try{j(Kr,Fr,Wr)}catch(e){Kr[Fr]=Wr}if(Kr[Br]||j(Kr,Br,zr),Cr[zr])for(var Vr in vr)if(Kr[Vr]!==vr[Vr])try{j(Kr,Vr,vr[Vr])}catch(e){Kr[Vr]=vr[Vr]}}}var $r=function(t){var e,r,n,o,i=arguments.length,a=i>1?arguments[1]:void 0;return Jt(this),(e=void 0!==a)&&Jt(a),null==t?new this:(r=[],e?(n=0,o=Qt(a,i>2?arguments[2]:void 0,2),Or(t,(function(t){r.push(o(t,n++))}))):Or(t,r.push,{that:r}),new this(r))};jt({target:"Map",stat:!0},{from:$r});var qr=function(){for(var t=arguments.length,e=new Array(t);t--;)e[t]=arguments[t];return new this(e)};jt({target:"Map",stat:!0},{of:qr});var Hr=function(){for(var t,e=A(this),r=Jt(e.delete),n=!0,o=0,i=arguments.length;o<i;o++)t=r.call(e,arguments[o]),n=n&&t;return!!n};jt({target:"Map",proto:!0,real:!0,forced:!1},{deleteAll:function(){return Hr.apply(this,arguments)}});var Xr=function(t,e){var r=A(this),n=r.has(t)&&"update"in e?e.update(r.get(t),t,r):e.insert(t,r);return r.set(t,n),n};jt({target:"Map",proto:!0,real:!0,forced:!1},{emplace:Xr});var Yr=function(t){return Map.prototype.entries.call(t)};jt({target:"Map",proto:!0,real:!0,forced:!1},{every:function(t){var e=A(this),r=Yr(e),n=Qt(t,arguments.length>1?arguments[1]:void 0,3);return!Or(r,(function(t,r,o){if(!n(r,t,e))return o()}),{AS_ENTRIES:!0,IS_ITERATOR:!0,INTERRUPTED:!0}).stopped}});var Jr=Ft("species"),Qr=function(t,e){var r,n=A(t).constructor;return void 0===n||null==(r=A(n)[Jr])?e:Jt(r)};jt({target:"Map",proto:!0,real:!0,forced:!1},{filter:function(t){var e=A(this),r=Yr(e),n=Qt(t,arguments.length>1?arguments[1]:void 0,3),o=new(Qr(e,nt("Map"))),i=Jt(o.set);return Or(r,(function(t,r){n(r,t,e)&&i.call(o,t,r)}),{AS_ENTRIES:!0,IS_ITERATOR:!0}),o}}),jt({target:"Map",proto:!0,real:!0,forced:!1},{find:function(t){var e=A(this),r=Yr(e),n=Qt(t,arguments.length>1?arguments[1]:void 0,3);return Or(r,(function(t,r,o){if(n(r,t,e))return o(r)}),{AS_ENTRIES:!0,IS_ITERATOR:!0,INTERRUPTED:!0}).result}}),jt({target:"Map",proto:!0,real:!0,forced:!1},{findKey:function(t){var e=A(this),r=Yr(e),n=Qt(t,arguments.length>1?arguments[1]:void 0,3);return Or(r,(function(t,r,o){if(n(r,t,e))return o(t)}),{AS_ENTRIES:!0,IS_ITERATOR:!0,INTERRUPTED:!0}).result}}),jt({target:"Map",stat:!0},{groupBy:function(t,e){var r=new this;Jt(e);var n=Jt(r.has),o=Jt(r.get),i=Jt(r.set);return Or(t,(function(t){var a=e(t);n.call(r,a)?o.call(r,a).push(t):i.call(r,a,[t])})),r}}),jt({target:"Map",proto:!0,real:!0,forced:!1},{includes:function(t){return Or(Yr(A(this)),(function(e,r,n){if((o=r)===(i=t)||o!=o&&i!=i)return n();var o,i}),{AS_ENTRIES:!0,IS_ITERATOR:!0,INTERRUPTED:!0}).stopped}}),jt({target:"Map",stat:!0},{keyBy:function(t,e){var r=new this;Jt(e);var n=Jt(r.set);return Or(t,(function(t){n.call(r,e(t),t)})),r}}),jt({target:"Map",proto:!0,real:!0,forced:!1},{keyOf:function(t){return Or(Yr(A(this)),(function(e,r,n){if(r===t)return n(e)}),{AS_ENTRIES:!0,IS_ITERATOR:!0,INTERRUPTED:!0}).result}}),jt({target:"Map",proto:!0,real:!0,forced:!1},{mapKeys:function(t){var e=A(this),r=Yr(e),n=Qt(t,arguments.length>1?arguments[1]:void 0,3),o=new(Qr(e,nt("Map"))),i=Jt(o.set);return Or(r,(function(t,r){i.call(o,n(r,t,e),r)}),{AS_ENTRIES:!0,IS_ITERATOR:!0}),o}}),jt({target:"Map",proto:!0,real:!0,forced:!1},{mapValues:function(t){var e=A(this),r=Yr(e),n=Qt(t,arguments.length>1?arguments[1]:void 0,3),o=new(Qr(e,nt("Map"))),i=Jt(o.set);return Or(r,(function(t,r){i.call(o,t,n(r,t,e))}),{AS_ENTRIES:!0,IS_ITERATOR:!0}),o}}),jt({target:"Map",proto:!0,real:!0,forced:!1},{merge:function(t){for(var e=A(this),r=Jt(e.set),n=0;n<arguments.length;)Or(arguments[n++],r,{that:e,AS_ENTRIES:!0});return e}}),jt({target:"Map",proto:!0,real:!0,forced:!1},{reduce:function(t){var e=A(this),r=Yr(e),n=arguments.length<2,o=n?void 0:arguments[1];if(Jt(t),Or(r,(function(r,i){n?(n=!1,o=i):o=t(o,i,r,e)}),{AS_ENTRIES:!0,IS_ITERATOR:!0}),n)throw TypeError("Reduce of empty map with no initial value");return o}}),jt({target:"Map",proto:!0,real:!0,forced:!1},{some:function(t){var e=A(this),r=Yr(e),n=Qt(t,arguments.length>1?arguments[1]:void 0,3);return Or(r,(function(t,r,o){if(n(r,t,e))return o()}),{AS_ENTRIES:!0,IS_ITERATOR:!0,INTERRUPTED:!0}).stopped}}),jt({target:"Map",proto:!0,real:!0,forced:!1},{update:function(t,e){var r=A(this),n=arguments.length;Jt(e);var o=r.has(t);if(!o&&n<3)throw TypeError("Updating absent value");var i=o?r.get(t):Jt(n>2?arguments[2]:void 0)(t,r);return r.set(t,e(i,t,r)),r}});var Zr=function(t,e){var r,n=A(this),o=arguments.length>2?arguments[2]:void 0;if("function"!=typeof e&&"function"!=typeof o)throw TypeError("At least one callback required");return n.has(t)?(r=n.get(t),"function"==typeof e&&(r=e(r),n.set(t,r))):"function"==typeof o&&(r=o(),n.set(t,r)),r};jt({target:"Map",proto:!0,real:!0,forced:!1},{upsert:Zr}),jt({target:"Map",proto:!0,real:!0,forced:!1},{updateOrInsert:Zr});var tn=Ir("Set",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),Lr);jt({target:"Set",stat:!0},{from:$r}),jt({target:"Set",stat:!0},{of:qr});var en=function(){for(var t=A(this),e=Jt(t.add),r=0,n=arguments.length;r<n;r++)e.call(t,arguments[r]);return t};jt({target:"Set",proto:!0,real:!0,forced:!1},{addAll:function(){return en.apply(this,arguments)}}),jt({target:"Set",proto:!0,real:!0,forced:!1},{deleteAll:function(){return Hr.apply(this,arguments)}});var rn=function(t){return Set.prototype.values.call(t)};jt({target:"Set",proto:!0,real:!0,forced:!1},{every:function(t){var e=A(this),r=rn(e),n=Qt(t,arguments.length>1?arguments[1]:void 0,3);return!Or(r,(function(t,r){if(!n(t,t,e))return r()}),{IS_ITERATOR:!0,INTERRUPTED:!0}).stopped}}),jt({target:"Set",proto:!0,real:!0,forced:!1},{difference:function(t){var e=A(this),r=new(Qr(e,nt("Set")))(e),n=Jt(r.delete);return Or(t,(function(t){n.call(r,t)})),r}}),jt({target:"Set",proto:!0,real:!0,forced:!1},{filter:function(t){var e=A(this),r=rn(e),n=Qt(t,arguments.length>1?arguments[1]:void 0,3),o=new(Qr(e,nt("Set"))),i=Jt(o.add);return Or(r,(function(t){n(t,t,e)&&i.call(o,t)}),{IS_ITERATOR:!0}),o}}),jt({target:"Set",proto:!0,real:!0,forced:!1},{find:function(t){var e=A(this),r=rn(e),n=Qt(t,arguments.length>1?arguments[1]:void 0,3);return Or(r,(function(t,r){if(n(t,t,e))return r(t)}),{IS_ITERATOR:!0,INTERRUPTED:!0}).result}}),jt({target:"Set",proto:!0,real:!0,forced:!1},{intersection:function(t){var e=A(this),r=new(Qr(e,nt("Set"))),n=Jt(e.has),o=Jt(r.add);return Or(t,(function(t){n.call(e,t)&&o.call(r,t)})),r}}),jt({target:"Set",proto:!0,real:!0,forced:!1},{isDisjointFrom:function(t){var e=A(this),r=Jt(e.has);return!Or(t,(function(t,n){if(!0===r.call(e,t))return n()}),{INTERRUPTED:!0}).stopped}}),jt({target:"Set",proto:!0,real:!0,forced:!1},{isSubsetOf:function(t){var e=function(t){var e=or(t);if("function"!=typeof e)throw TypeError(String(t)+" is not iterable");return A(e.call(t))}(this),r=A(t),n=r.has;return"function"!=typeof n&&(r=new(nt("Set"))(t),n=Jt(r.has)),!Or(e,(function(t,e){if(!1===n.call(r,t))return e()}),{IS_ITERATOR:!0,INTERRUPTED:!0}).stopped}}),jt({target:"Set",proto:!0,real:!0,forced:!1},{isSupersetOf:function(t){var e=A(this),r=Jt(e.has);return!Or(t,(function(t,n){if(!1===r.call(e,t))return n()}),{INTERRUPTED:!0}).stopped}}),jt({target:"Set",proto:!0,real:!0,forced:!1},{join:function(t){var e=A(this),r=rn(e),n=void 0===t?",":String(t),o=[];return Or(r,o.push,{that:o,IS_ITERATOR:!0}),o.join(n)}}),jt({target:"Set",proto:!0,real:!0,forced:!1},{map:function(t){var e=A(this),r=rn(e),n=Qt(t,arguments.length>1?arguments[1]:void 0,3),o=new(Qr(e,nt("Set"))),i=Jt(o.add);return Or(r,(function(t){i.call(o,n(t,t,e))}),{IS_ITERATOR:!0}),o}}),jt({target:"Set",proto:!0,real:!0,forced:!1},{reduce:function(t){var e=A(this),r=rn(e),n=arguments.length<2,o=n?void 0:arguments[1];if(Jt(t),Or(r,(function(r){n?(n=!1,o=r):o=t(o,r,r,e)}),{IS_ITERATOR:!0}),n)throw TypeError("Reduce of empty set with no initial value");return o}}),jt({target:"Set",proto:!0,real:!0,forced:!1},{some:function(t){var e=A(this),r=rn(e),n=Qt(t,arguments.length>1?arguments[1]:void 0,3);return Or(r,(function(t,r){if(n(t,t,e))return r()}),{IS_ITERATOR:!0,INTERRUPTED:!0}).stopped}}),jt({target:"Set",proto:!0,real:!0,forced:!1},{symmetricDifference:function(t){var e=A(this),r=new(Qr(e,nt("Set")))(e),n=Jt(r.delete),o=Jt(r.add);return Or(t,(function(t){n.call(r,t)||o.call(r,t)})),r}}),jt({target:"Set",proto:!0,real:!0,forced:!1},{union:function(t){var e=A(this),r=new(Qr(e,nt("Set")))(e);return Or(t,Jt(r.add),{that:r}),r}});var nn=Rr.getWeakData,on=Z.set,an=Z.getterFor,un=ae.find,cn=ae.findIndex,sn=0,fn=function(t){return t.frozen||(t.frozen=new ln)},ln=function(){this.entries=[]},hn=function(t,e){return un(t.entries,(function(t){return t[0]===e}))};ln.prototype={get:function(t){var e=hn(this,t);if(e)return e[1]},has:function(t){return!!hn(this,t)},set:function(t,e){var r=hn(this,t);r?r[1]=e:this.entries.push([t,e])},delete:function(t){var e=cn(this.entries,(function(e){return e[0]===t}));return~e&&this.entries.splice(e,1),!!~e}};var pn={getConstructor:function(t,e,r,n){var o=t((function(t,i){xr(t,o,e),on(t,{type:e,id:sn++,frozen:void 0}),null!=i&&Or(i,t[n],{that:t,AS_ENTRIES:r})})),i=an(e),a=function(t,e,r){var n=i(t),o=nn(A(e),!0);return!0===o?fn(n).set(e,r):o[n.id]=r,t};return _r(o.prototype,{delete:function(t){var e=i(this);if(!y(t))return!1;var r=nn(t);return!0===r?fn(e).delete(t):r&&S(r,e.id)&&delete r[e.id]},has:function(t){var e=i(this);if(!y(t))return!1;var r=nn(t);return!0===r?fn(e).has(t):r&&S(r,e.id)}}),_r(o.prototype,r?{get:function(t){var e=i(this);if(y(t)){var r=nn(t);return!0===r?fn(e).get(t):r?r[e.id]:void 0}},set:function(t,e){return a(this,t,e)}}:{add:function(t){return a(this,t,!0)}}),o}},dn=r((function(t){var e,r=Z.enforce,n=!o.ActiveXObject&&"ActiveXObject"in o,i=Object.isExtensible,a=function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},u=t.exports=Ir("WeakMap",a,pn);if(F&&n){e=pn.getConstructor(a,"WeakMap",!0),Rr.REQUIRED=!0;var c=u.prototype,s=c.delete,f=c.has,l=c.get,h=c.set;_r(c,{delete:function(t){if(y(t)&&!i(t)){var n=r(this);return n.frozen||(n.frozen=new e),s.call(this,t)||n.frozen.delete(t)}return s.call(this,t)},has:function(t){if(y(t)&&!i(t)){var n=r(this);return n.frozen||(n.frozen=new e),f.call(this,t)||n.frozen.has(t)}return f.call(this,t)},get:function(t){if(y(t)&&!i(t)){var n=r(this);return n.frozen||(n.frozen=new e),f.call(this,t)?l.call(this,t):n.frozen.get(t)}return l.call(this,t)},set:function(t,n){if(y(t)&&!i(t)){var o=r(this);o.frozen||(o.frozen=new e),f.call(this,t)?h.call(this,t,n):o.frozen.set(t,n)}else h.call(this,t,n);return this}})}}));jt({target:"WeakMap",proto:!0,real:!0,forced:!1},{emplace:Xr}),jt({target:"WeakMap",stat:!0},{from:$r}),jt({target:"WeakMap",stat:!0},{of:qr}),jt({target:"WeakMap",proto:!0,real:!0,forced:!1},{deleteAll:function(){return Hr.apply(this,arguments)}}),jt({target:"WeakMap",proto:!0,real:!0,forced:!1},{upsert:Zr}),Ir("WeakSet",(function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}}),pn),jt({target:"WeakSet",proto:!0,real:!0,forced:!1},{addAll:function(){return en.apply(this,arguments)}}),jt({target:"WeakSet",proto:!0,real:!0,forced:!1},{deleteAll:function(){return Hr.apply(this,arguments)}}),jt({target:"WeakSet",stat:!0},{from:$r}),jt({target:"WeakSet",stat:!0},{of:qr});var vn="\t\n\v\f\r \u2028\u2029\ufeff",gn="["+vn+"]",yn=RegExp("^"+gn+gn+"*"),mn=RegExp(gn+gn+"*$"),bn=function(t){return function(e){var r=String(v(e));return 1&t&&(r=r.replace(yn,"")),2&t&&(r=r.replace(mn,"")),r}},Sn={start:bn(1),end:bn(2),trim:bn(3)},En=mt.f,wn=x.f,Rn=_.f,Tn=Sn.trim,On=o.Number,xn=On.prototype,An="Number"==h(qt(xn)),In=function(t){var e,r,n,o,i,a,u,c,s=m(t,!1);if("string"==typeof s&&s.length>2)if(43===(e=(s=Tn(s)).charCodeAt(0))||45===e){if(88===(r=s.charCodeAt(2))||120===r)return NaN}else if(48===e){switch(s.charCodeAt(1)){case 66:case 98:n=2,o=49;break;case 79:case 111:n=8,o=55;break;default:return+s}for(a=(i=s.slice(2)).length,u=0;u<a;u++)if((c=i.charCodeAt(u))<48||c>o)return NaN;return parseInt(i,n)}return+s};if(It("Number",!On(" 0o1")||!On("0b1")||On("+0x1"))){for(var _n,jn=function(t){var e=arguments.length<1?0:t,r=this;return r instanceof jn&&(An?i((function(){xn.valueOf.call(r)})):"Number"!=h(r))?Ar(new On(In(e)),r,jn):In(e)},Pn=a?En(On):"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger,fromString,range".split(","),Nn=0;Pn.length>Nn;Nn++)S(On,_n=Pn[Nn])&&!S(jn,_n)&&Rn(jn,_n,wn(On,_n));jn.prototype=xn,xn.constructor=jn,tt(o,"Number",jn)}jt({target:"Number",stat:!0},{EPSILON:Math.pow(2,-52)});var Mn=o.isFinite;jt({target:"Number",stat:!0},{isFinite:Number.isFinite||function(t){return"number"==typeof t&&Mn(t)}});var Un=Math.floor,kn=function(t){return!y(t)&&isFinite(t)&&Un(t)===t};jt({target:"Number",stat:!0},{isInteger:kn}),jt({target:"Number",stat:!0},{isNaN:function(t){return t!=t}});var Ln=Math.abs;jt({target:"Number",stat:!0},{isSafeInteger:function(t){return kn(t)&&Ln(t)<=9007199254740991}}),jt({target:"Number",stat:!0},{MAX_SAFE_INTEGER:9007199254740991}),jt({target:"Number",stat:!0},{MIN_SAFE_INTEGER:-9007199254740991});var Dn=s.f,Cn=function(t){return function(e){for(var r,n=g(e),o=Bt(n),i=o.length,u=0,c=[];i>u;)r=o[u++],a&&!Dn.call(n,r)||c.push(t?[r,n[r]]:n[r]);return c}},Fn={entries:Cn(!0),values:Cn(!1)},Bn=Fn.entries;jt({target:"Object",stat:!0},{entries:function(t){return Bn(t)}}),jt({target:"Object",stat:!0,sham:!a},{getOwnPropertyDescriptors:function(t){for(var e,r,n=g(t),o=x.f,i=St(n),a={},u=0;i.length>u;)void 0!==(r=o(n,e=i[u++]))&&Je(a,e,r);return a}});var Wn=Object.is||function(t,e){return t===e?0!==t||1/t==1/e:t!=t&&e!=e};jt({target:"Object",stat:!0},{is:Wn});var zn=i((function(){Bt(1)}));jt({target:"Object",stat:!0,forced:zn},{keys:function(t){return Bt(Pt(t))}});var Gn=Fn.values;jt({target:"Object",stat:!0},{values:function(t){return Gn(t)}});var Kn=we.codeAt;jt({target:"String",proto:!0},{codePointAt:function(t){return Kn(this,t)}}),te("String","codePointAt");var Vn,$n=Ft("match"),qn=function(t){var e;return y(t)&&(void 0!==(e=t[$n])?!!e:"RegExp"==h(t))},Hn=function(t){if(qn(t))throw TypeError("The method doesn't accept regular expressions");return t},Xn=Ft("match"),Yn=function(t){var e=/./;try{"/./"[t](e)}catch(n){try{return e[Xn]=!1,"/./"[t](e)}catch(t){}}return!1},Jn=x.f,Qn="".endsWith,Zn=Math.min,to=Yn("endsWith"),eo=!(to||(Vn=Jn(String.prototype,"endsWith"),!Vn||Vn.writable));jt({target:"String",proto:!0,forced:!eo&&!to},{endsWith:function(t){var e=String(v(this));Hn(t);var r=arguments.length>1?arguments[1]:void 0,n=ct(e.length),o=void 0===r?n:Zn(ct(r),n),i=String(t);return Qn?Qn.call(e,i,o):e.slice(o-i.length,o)===i}}),te("String","endsWith");var ro=String.fromCharCode,no=String.fromCodePoint;jt({target:"String",stat:!0,forced:!!no&&1!=no.length},{fromCodePoint:function(t){for(var e,r=[],n=arguments.length,o=0;n>o;){if(e=+arguments[o++],lt(e,1114111)!==e)throw RangeError(e+" is not a valid code point");r.push(e<65536?ro(e):ro(55296+((e-=65536)>>10),e%1024+56320))}return r.join("")}}),jt({target:"String",proto:!0,forced:!Yn("includes")},{includes:function(t){return!!~String(v(this)).indexOf(Hn(t),arguments.length>1?arguments[1]:void 0)}}),te("String","includes");var oo="".repeat||function(t){var e=String(v(this)),r="",n=at(t);if(n<0||1/0==n)throw RangeError("Wrong number of repetitions");for(;n>0;(n>>>=1)&&(e+=e))1&n&&(r+=e);return r},io=Math.ceil,ao=function(t){return function(e,r,n){var o,i,a=String(v(e)),u=a.length,c=void 0===n?" ":String(n),s=ct(r);return s<=u||""==c?a:((i=oo.call(c,io((o=s-u)/c.length))).length>o&&(i=i.slice(0,o)),t?a+i:i+a)}},uo={start:ao(!1),end:ao(!0)},co=nt("navigator","userAgent")||"",so=/Version\/10\.\d+(\.\d+)?( Mobile\/\w+)? Safari\//.test(co),fo=uo.start;jt({target:"String",proto:!0,forced:so},{padStart:function(t){return fo(this,t,arguments.length>1?arguments[1]:void 0)}}),te("String","padStart");var lo=uo.end;jt({target:"String",proto:!0,forced:so},{padEnd:function(t){return lo(this,t,arguments.length>1?arguments[1]:void 0)}}),te("String","padEnd"),jt({target:"String",stat:!0},{raw:function(t){for(var e=g(t.raw),r=ct(e.length),n=arguments.length,o=[],i=0;r>i;)o.push(String(e[i++])),i<n&&o.push(String(arguments[i]));return o.join("")}}),jt({target:"String",proto:!0},{repeat:oo}),te("String","repeat");var ho=x.f,po="".startsWith,vo=Math.min,go=Yn("startsWith"),yo=!go&&!!function(){var t=ho(String.prototype,"startsWith");return t&&!t.writable}();jt({target:"String",proto:!0,forced:!yo&&!go},{startsWith:function(t){var e=String(v(this));Hn(t);var r=ct(vo(arguments.length>1?arguments[1]:void 0,e.length)),n=String(t);return po?po.call(e,n,r):e.slice(r,r+n.length)===n}}),te("String","startsWith");var mo=function(t){return i((function(){return!!vn[t]()||"
"!="
"[t]()||vn[t].name!==t}))},bo=Sn.start,So=mo("trimStart"),Eo=So?function(){return bo(this)}:"".trimStart;jt({target:"String",proto:!0,forced:So},{trimStart:Eo,trimLeft:Eo}),te("String","trimLeft");var wo=Sn.end,Ro=mo("trimEnd"),To=Ro?function(){return wo(this)}:"".trimEnd;jt({target:"String",proto:!0,forced:Ro},{trimEnd:To,trimRight:To}),te("String","trimRight");var Oo=nt("Reflect","apply"),xo=Function.apply,Ao=!i((function(){Oo((function(){}))}));jt({target:"Reflect",stat:!0,forced:Ao},{apply:function(t,e,r){return Jt(t),A(r),Oo?Oo(t,e,r):xo.call(t,e,r)}});var Io=[].slice,_o={},jo=function(t,e,r){if(!(e in _o)){for(var n=[],o=0;o<e;o++)n[o]="a["+o+"]";_o[e]=Function("C,a","return new C("+n.join(",")+")")}return _o[e](t,r)},Po=Function.bind||function(t){var e=Jt(this),r=Io.call(arguments,1),n=function(){var o=r.concat(Io.call(arguments));return this instanceof n?jo(e,o.length,o):e.apply(t,o)};return y(e.prototype)&&(n.prototype=e.prototype),n},No=nt("Reflect","construct"),Mo=i((function(){function t(){}return!(No((function(){}),[],t)instanceof t)})),Uo=!i((function(){No((function(){}))})),ko=Mo||Uo;jt({target:"Reflect",stat:!0,forced:ko,sham:ko},{construct:function(t,e){Jt(t),A(e);var r=arguments.length<3?t:Jt(arguments[2]);if(Uo&&!Mo)return No(t,e,r);if(t==r){switch(e.length){case 0:return new t;case 1:return new t(e[0]);case 2:return new t(e[0],e[1]);case 3:return new t(e[0],e[1],e[2]);case 4:return new t(e[0],e[1],e[2],e[3])}var n=[null];return n.push.apply(n,e),new(Po.apply(t,n))}var o=r.prototype,i=qt(y(o)?o:Object.prototype),a=Function.apply.call(t,i,e);return y(a)?a:i}});var Lo=i((function(){Reflect.defineProperty(_.f({},1,{value:1}),1,{value:2})}));jt({target:"Reflect",stat:!0,forced:Lo,sham:!a},{defineProperty:function(t,e,r){A(t);var n=m(e,!0);A(r);try{return _.f(t,n,r),!0}catch(t){return!1}}});var Do=x.f;jt({target:"Reflect",stat:!0},{deleteProperty:function(t,e){var r=Do(A(t),e);return!(r&&!r.configurable)&&delete t[e]}}),jt({target:"Reflect",stat:!0},{get:function t(e,r){var n,o,i=arguments.length<3?e:arguments[2];return A(e)===i?e[r]:(n=x.f(e,r))?S(n,"value")?n.value:void 0===n.get?void 0:n.get.call(i):y(o=xe(e))?t(o,r,i):void 0}}),jt({target:"Reflect",stat:!0,sham:!a},{getOwnPropertyDescriptor:function(t,e){return x.f(A(t),e)}}),jt({target:"Reflect",stat:!0,sham:!Re},{getPrototypeOf:function(t){return xe(A(t))}}),jt({target:"Reflect",stat:!0},{has:function(t,e){return e in t}});var Co=Object.isExtensible;jt({target:"Reflect",stat:!0},{isExtensible:function(t){return A(t),!Co||Co(t)}}),jt({target:"Reflect",stat:!0},{ownKeys:St}),jt({target:"Reflect",stat:!0,sham:!wr},{preventExtensions:function(t){A(t);try{var e=nt("Object","preventExtensions");return e&&e(t),!0}catch(t){return!1}}});var Fo=i((function(){var t=function(){},e=_.f(new t,"a",{configurable:!0});return!1!==Reflect.set(t.prototype,"a",1,e)}));jt({target:"Reflect",stat:!0,forced:Fo},{set:function t(e,r,n){var o,i,a=arguments.length<4?e:arguments[3],u=x.f(A(e),r);if(!u){if(y(i=xe(e)))return t(i,r,n,a);u=f(0)}if(S(u,"value")){if(!1===u.writable||!y(a))return!1;if(o=x.f(a,r)){if(o.get||o.set||!1===o.writable)return!1;o.value=n,_.f(a,r,o)}else _.f(a,r,f(0,n));return!0}return void 0!==u.set&&(u.set.call(a,n),!0)}}),De&&jt({target:"Reflect",stat:!0},{setPrototypeOf:function(t,e){A(t),Le(e);try{return De(t,e),!0}catch(t){return!1}}}),jt({global:!0},{Reflect:{}}),Ne(o.Reflect,"Reflect",!0);var Bo=B("metadata"),Wo=Bo.store||(Bo.store=new dn),zo=function(t,e,r){var n=Wo.get(t);if(!n){if(!r)return;Wo.set(t,n=new Dr)}var o=n.get(e);if(!o){if(!r)return;n.set(e,o=new Dr)}return o},Go={store:Wo,getMap:zo,has:function(t,e,r){var n=zo(e,r,!1);return void 0!==n&&n.has(t)},get:function(t,e,r){var n=zo(e,r,!1);return void 0===n?void 0:n.get(t)},set:function(t,e,r,n){zo(r,n,!0).set(t,e)},keys:function(t,e){var r=zo(t,e,!1),n=[];return r&&r.forEach((function(t,e){n.push(e)})),n},toKey:function(t){return void 0===t||"symbol"==typeof t?t:String(t)}},Ko=Go.toKey,Vo=Go.set;jt({target:"Reflect",stat:!0},{defineMetadata:function(t,e,r){var n=arguments.length<4?void 0:Ko(arguments[3]);Vo(t,e,A(r),n)}});var $o=Go.toKey,qo=Go.getMap,Ho=Go.store;jt({target:"Reflect",stat:!0},{deleteMetadata:function(t,e){var r=arguments.length<3?void 0:$o(arguments[2]),n=qo(A(e),r,!1);if(void 0===n||!n.delete(t))return!1;if(n.size)return!0;var o=Ho.get(e);return o.delete(r),!!o.size||Ho.delete(e)}});var Xo=Go.has,Yo=Go.get,Jo=Go.toKey,Qo=function t(e,r,n){if(Xo(e,r,n))return Yo(e,r,n);var o=xe(r);return null!==o?t(e,o,n):void 0};jt({target:"Reflect",stat:!0},{getMetadata:function(t,e){var r=arguments.length<3?void 0:Jo(arguments[2]);return Qo(t,A(e),r)}});var Zo=Go.keys,ti=Go.toKey,ei=function t(e,r){var n=Zo(e,r),o=xe(e);if(null===o)return n;var i,a,u=t(o,r);return u.length?n.length?(i=new tn(n.concat(u)),Or(i,(a=[]).push,{that:a}),a):u:n};jt({target:"Reflect",stat:!0},{getMetadataKeys:function(t){var e=arguments.length<2?void 0:ti(arguments[1]);return ei(A(t),e)}});var ri=Go.get,ni=Go.toKey;jt({target:"Reflect",stat:!0},{getOwnMetadata:function(t,e){var r=arguments.length<3?void 0:ni(arguments[2]);return ri(t,A(e),r)}});var oi=Go.keys,ii=Go.toKey;jt({target:"Reflect",stat:!0},{getOwnMetadataKeys:function(t){var e=arguments.length<2?void 0:ii(arguments[1]);return oi(A(t),e)}});var ai=Go.has,ui=Go.toKey,ci=function t(e,r,n){if(ai(e,r,n))return!0;var o=xe(r);return null!==o&&t(e,o,n)};jt({target:"Reflect",stat:!0},{hasMetadata:function(t,e){var r=arguments.length<3?void 0:ui(arguments[2]);return ci(t,A(e),r)}});var si=Go.has,fi=Go.toKey;jt({target:"Reflect",stat:!0},{hasOwnMetadata:function(t,e){var r=arguments.length<3?void 0:fi(arguments[2]);return si(t,A(e),r)}});var li=Go.toKey,hi=Go.set;jt({target:"Reflect",stat:!0},{metadata:function(t,e){return function(r,n){hi(t,e,A(r),li(n))}}});var pi=function(){var t=A(this),e="";return t.global&&(e+="g"),t.ignoreCase&&(e+="i"),t.multiline&&(e+="m"),t.dotAll&&(e+="s"),t.unicode&&(e+="u"),t.sticky&&(e+="y"),e};function di(t,e){return RegExp(t,e)}var vi={UNSUPPORTED_Y:i((function(){var t=di("a","y");return t.lastIndex=2,null!=t.exec("abcd")})),BROKEN_CARET:i((function(){var t=di("^r","gy");return t.lastIndex=2,null!=t.exec("str")}))},gi=_.f,yi=mt.f,mi=Z.set,bi=Ft("match"),Si=o.RegExp,Ei=Si.prototype,wi=/a/g,Ri=/a/g,Ti=new Si(wi)!==wi,Oi=vi.UNSUPPORTED_Y;if(a&&It("RegExp",!Ti||Oi||i((function(){return Ri[bi]=!1,Si(wi)!=wi||Si(Ri)==Ri||"/a/i"!=Si(wi,"i")})))){for(var xi=function(t,e){var r,n=this instanceof xi,o=qn(t),i=void 0===e;if(!n&&o&&t.constructor===xi&&i)return t;Ti?o&&!i&&(t=t.source):t instanceof xi&&(i&&(e=pi.call(t)),t=t.source),Oi&&(r=!!e&&e.indexOf("y")>-1)&&(e=e.replace(/y/g,""));var a=Ar(Ti?new Si(t,e):Si(t,e),n?this:Ei,xi);return Oi&&r&&mi(a,{sticky:r}),a},Ai=function(t){t in xi||gi(xi,t,{configurable:!0,get:function(){return Si[t]},set:function(e){Si[t]=e}})},Ii=yi(Si),_i=0;Ii.length>_i;)Ai(Ii[_i++]);Ei.constructor=xi,xi.prototype=Ei,tt(o,"RegExp",xi)}Pr("RegExp");var ji=RegExp.prototype,Pi=ji.toString;(i((function(){return"/a/b"!=Pi.call({source:"a",flags:"b"})}))||"toString"!=Pi.name)&&tt(RegExp.prototype,"toString",(function(){var t=A(this),e=String(t.source),r=t.flags;return"/"+e+"/"+String(void 0===r&&t instanceof RegExp&&!("flags"in ji)?pi.call(t):r)}),{unsafe:!0});var Ni=RegExp.prototype.exec,Mi=String.prototype.replace,Ui=Ni,ki=function(){var t=/a/,e=/b*/g;return Ni.call(t,"a"),Ni.call(e,"a"),0!==t.lastIndex||0!==e.lastIndex}(),Li=vi.UNSUPPORTED_Y||vi.BROKEN_CARET,Di=void 0!==/()??/.exec("")[1];(ki||Di||Li)&&(Ui=function(t){var e,r,n,o,i=this,a=Li&&i.sticky,u=pi.call(i),c=i.source,s=0,f=t;return a&&(-1===(u=u.replace("y","")).indexOf("g")&&(u+="g"),f=String(t).slice(i.lastIndex),i.lastIndex>0&&(!i.multiline||i.multiline&&"\n"!==t[i.lastIndex-1])&&(c="(?: "+c+")",f=" "+f,s++),r=new RegExp("^(?:"+c+")",u)),Di&&(r=new RegExp("^"+c+"$(?!\\s)",u)),ki&&(e=i.lastIndex),n=Ni.call(a?r:i,f),a?n?(n.input=n.input.slice(s),n[0]=n[0].slice(s),n.index=i.lastIndex,i.lastIndex+=n[0].length):i.lastIndex=0:ki&&n&&(i.lastIndex=i.global?n.index+n[0].length:e),Di&&n&&n.length>1&&Mi.call(n[0],r,(function(){for(o=1;o<arguments.length-2;o++)void 0===arguments[o]&&(n[o]=void 0)})),n});var Ci=Ui;jt({target:"RegExp",proto:!0,forced:/./.exec!==Ci},{exec:Ci}),a&&("g"!=/./g.flags||vi.UNSUPPORTED_Y)&&_.f(RegExp.prototype,"flags",{configurable:!0,get:pi});var Fi=Z.get,Bi=RegExp.prototype;a&&vi.UNSUPPORTED_Y&&(0,_.f)(RegExp.prototype,"sticky",{configurable:!0,get:function(){if(this!==Bi){if(this instanceof RegExp)return!!Fi(this).sticky;throw TypeError("Incompatible receiver, RegExp required")}}});var Wi,zi,Gi=(Wi=!1,(zi=/[ac]/).exec=function(){return Wi=!0,/./.exec.apply(this,arguments)},!0===zi.test("abc")&&Wi),Ki=/./.test;jt({target:"RegExp",proto:!0,forced:!Gi},{test:function(t){if("function"!=typeof this.exec)return Ki.call(this,t);var e=this.exec(t);if(null!==e&&!y(e))throw new Error("RegExp exec method returned something other than an Object or null");return!!e}});var Vi=Ft("species"),$i=!i((function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:"7"},t},"7"!=="".replace(t,"$<a>")})),qi="$0"==="a".replace(/./,"$0"),Hi=Ft("replace"),Xi=!!/./[Hi]&&""===/./[Hi]("a","$0"),Yi=!i((function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var r="ab".split(t);return 2!==r.length||"a"!==r[0]||"b"!==r[1]})),Ji=function(t,e,r,n){var o=Ft(t),a=!i((function(){var e={};return e[o]=function(){return 7},7!=""[t](e)})),u=a&&!i((function(){var e=!1,r=/a/;return"split"===t&&((r={}).constructor={},r.constructor[Vi]=function(){return r},r.flags="",r[o]=/./[o]),r.exec=function(){return e=!0,null},r[o](""),!e}));if(!a||!u||"replace"===t&&(!$i||!qi||Xi)||"split"===t&&!Yi){var c=/./[o],s=r(o,""[t],(function(t,e,r,n,o){return e.exec===Ci?a&&!o?{done:!0,value:c.call(e,r,n)}:{done:!0,value:t.call(r,e,n)}:{done:!1}}),{REPLACE_KEEPS_$0:qi,REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE:Xi}),f=s[1];tt(String.prototype,t,s[0]),tt(RegExp.prototype,o,2==e?function(t,e){return f.call(t,this,e)}:function(t){return f.call(t,this)})}n&&j(RegExp.prototype[o],"sham",!0)},Qi=we.charAt,Zi=function(t,e,r){return e+(r?Qi(t,e).length:1)},ta=function(t,e){var r=t.exec;if("function"==typeof r){var n=r.call(t,e);if("object"!=typeof n)throw TypeError("RegExp exec method returned something other than an Object or null");return n}if("RegExp"!==h(t))throw TypeError("RegExp#exec called on incompatible receiver");return Ci.call(t,e)};Ji("match",1,(function(t,e,r){return[function(e){var r=v(this),n=null==e?void 0:e[t];return void 0!==n?n.call(e,r):new RegExp(e)[t](String(r))},function(t){var n=r(e,t,this);if(n.done)return n.value;var o=A(t),i=String(this);if(!o.global)return ta(o,i);var a=o.unicode;o.lastIndex=0;for(var u,c=[],s=0;null!==(u=ta(o,i));){var f=String(u[0]);c[s]=f,""===f&&(o.lastIndex=Zi(i,ct(o.lastIndex),a)),s++}return 0===s?null:c}]}));var ea=Math.max,ra=Math.min,na=Math.floor,oa=/\$([$&'`]|\d\d?|<[^>]*>)/g,ia=/\$([$&'`]|\d\d?)/g;Ji("replace",2,(function(t,e,r,n){var o=n.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE,i=n.REPLACE_KEEPS_$0,a=o?"$":"$0";return[function(r,n){var o=v(this),i=null==r?void 0:r[t];return void 0!==i?i.call(r,o,n):e.call(String(o),r,n)},function(t,n){if(!o&&i||"string"==typeof n&&-1===n.indexOf(a)){var c=r(e,t,this,n);if(c.done)return c.value}var s=A(t),f=String(this),l="function"==typeof n;l||(n=String(n));var h=s.global;if(h){var p=s.unicode;s.lastIndex=0}for(var d=[];;){var v=ta(s,f);if(null===v)break;if(d.push(v),!h)break;""===String(v[0])&&(s.lastIndex=Zi(f,ct(s.lastIndex),p))}for(var g,y="",m=0,b=0;b<d.length;b++){v=d[b];for(var S=String(v[0]),E=ea(ra(at(v.index),f.length),0),w=[],R=1;R<v.length;R++)w.push(void 0===(g=v[R])?g:String(g));var T=v.groups;if(l){var O=[S].concat(w,E,f);void 0!==T&&O.push(T);var x=String(n.apply(void 0,O))}else x=u(S,f,E,w,T,n);E>=m&&(y+=f.slice(m,E)+x,m=E+S.length)}return y+f.slice(m)}];function u(t,r,n,o,i,a){var u=n+t.length,c=o.length,s=ia;return void 0!==i&&(i=Pt(i),s=oa),e.call(a,s,(function(e,a){var s;switch(a.charAt(0)){case"$":return"$";case"&":return t;case"`":return r.slice(0,n);case"'":return r.slice(u);case"<":s=i[a.slice(1,-1)];break;default:var f=+a;if(0===f)return e;if(f>c){var l=na(f/10);return 0===l?e:l<=c?void 0===o[l-1]?a.charAt(1):o[l-1]+a.charAt(1):e}s=o[f-1]}return void 0===s?"":s}))}})),Ji("search",1,(function(t,e,r){return[function(e){var r=v(this),n=null==e?void 0:e[t];return void 0!==n?n.call(e,r):new RegExp(e)[t](String(r))},function(t){var n=r(e,t,this);if(n.done)return n.value;var o=A(t),i=String(this),a=o.lastIndex;Wn(a,0)||(o.lastIndex=0);var u=ta(o,i);return Wn(o.lastIndex,a)||(o.lastIndex=a),null===u?-1:u.index}]}));var aa=[].push,ua=Math.min,ca=!i((function(){return!RegExp(4294967295,"y")}));Ji("split",2,(function(t,e,r){var n;return n="c"=="abbc".split(/(b)*/)[1]||4!="test".split(/(?:)/,-1).length||2!="ab".split(/(?:ab)*/).length||4!=".".split(/(.?)(.?)/).length||".".split(/()()/).length>1||"".split(/.?/).length?function(t,r){var n=String(v(this)),o=void 0===r?4294967295:r>>>0;if(0===o)return[];if(void 0===t)return[n];if(!qn(t))return e.call(n,t,o);for(var i,a,u,c=[],s=0,f=new RegExp(t.source,(t.ignoreCase?"i":"")+(t.multiline?"m":"")+(t.unicode?"u":"")+(t.sticky?"y":"")+"g");(i=Ci.call(f,n))&&!((a=f.lastIndex)>s&&(c.push(n.slice(s,i.index)),i.length>1&&i.index<n.length&&aa.apply(c,i.slice(1)),u=i[0].length,s=a,c.length>=o));)f.lastIndex===i.index&&f.lastIndex++;return s===n.length?!u&&f.test("")||c.push(""):c.push(n.slice(s)),c.length>o?c.slice(0,o):c}:"0".split(void 0,0).length?function(t,r){return void 0===t&&0===r?[]:e.call(this,t,r)}:e,[function(e,r){var o=v(this),i=null==e?void 0:e[t];return void 0!==i?i.call(e,o,r):n.call(String(o),e,r)},function(t,o){var i=r(n,t,this,o,n!==e);if(i.done)return i.value;var a=A(t),u=String(this),c=Qr(a,RegExp),s=a.unicode,f=new c(ca?a:"^(?:"+a.source+")",(a.ignoreCase?"i":"")+(a.multiline?"m":"")+(a.unicode?"u":"")+(ca?"y":"g")),l=void 0===o?4294967295:o>>>0;if(0===l)return[];if(0===u.length)return null===ta(f,u)?[u]:[];for(var h=0,p=0,d=[];p<u.length;){f.lastIndex=ca?p:0;var v,g=ta(f,ca?u:u.slice(p));if(null===g||(v=ua(ct(f.lastIndex+(ca?0:p)),u.length))===h)p=Zi(u,p,s);else{if(d.push(u.slice(h,p)),d.length===l)return d;for(var y=1;y<=g.length-1;y++)if(d.push(g[y]),d.length===l)return d;p=h=v}}return d.push(u.slice(h)),d}]}),!ca);var sa,fa,la=o.process,ha=la&&la.versions,pa=ha&&ha.v8;pa?fa=(sa=pa.split("."))[0]+sa[1]:co&&(!(sa=co.match(/Edge\/(\d+)/))||sa[1]>=74)&&(sa=co.match(/Chrome\/(\d+)/))&&(fa=sa[1]);var da=fa&&+fa,va=Ft("species"),ga=Ft("isConcatSpreadable"),ya=da>=51||!i((function(){var t=[];return t[ga]=!1,t.concat()[0]!==t})),ma=da>=51||!i((function(){var t=[];return(t.constructor={})[va]=function(){return{foo:1}},1!==t.concat(Boolean).foo})),ba=function(t){if(!y(t))return!1;var e=t[ga];return void 0!==e?!!e:ee(t)};jt({target:"Array",proto:!0,forced:!ya||!ma},{concat:function(t){var e,r,n,o,i,a=Pt(this),u=ne(a,0),c=0;for(e=-1,n=arguments.length;e<n;e++)if(ba(i=-1===e?a:arguments[e])){if(c+(o=ct(i.length))>9007199254740991)throw TypeError("Maximum allowed index exceeded");for(r=0;r<o;r++,c++)r in i&&Je(u,c,i[r])}else{if(c>=9007199254740991)throw TypeError("Maximum allowed index exceeded");Je(u,c++,i)}return u.length=c,u}});var Sa=mt.f,Ea={}.toString,wa="object"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],Ra={f:function(t){return wa&&"[object Window]"==Ea.call(t)?function(t){try{return Sa(t)}catch(t){return wa.slice()}}(t):Sa(g(t))}},Ta={f:Ft},Oa=_.f,xa=function(t){var e=et.Symbol||(et.Symbol={});S(e,t)||Oa(e,t,{value:Ta.f(t)})},Aa=ae.forEach,Ia=V("hidden"),_a=Ft("toPrimitive"),ja=Z.set,Pa=Z.getterFor("Symbol"),Na=Object.prototype,Ma=o.Symbol,Ua=nt("JSON","stringify"),ka=x.f,La=_.f,Da=Ra.f,Ca=s.f,Fa=B("symbols"),Ba=B("op-symbols"),Wa=B("string-to-symbol-registry"),za=B("symbol-to-string-registry"),Ga=B("wks"),Ka=o.QObject,Va=!Ka||!Ka.prototype||!Ka.prototype.findChild,$a=a&&i((function(){return 7!=qt(La({},"a",{get:function(){return La(this,"a",{value:7}).a}})).a}))?function(t,e,r){var n=ka(Na,e);n&&delete Na[e],La(t,e,r),n&&t!==Na&&La(Na,e,n)}:La,qa=function(t,e){var r=Fa[t]=qt(Ma.prototype);return ja(r,{type:"Symbol",tag:t,description:e}),a||(r.description=e),r},Ha=kt?function(t){return"symbol"==typeof t}:function(t){return Object(t)instanceof Ma},Xa=function(t,e,r){t===Na&&Xa(Ba,e,r),A(t);var n=m(e,!0);return A(r),S(Fa,n)?(r.enumerable?(S(t,Ia)&&t[Ia][n]&&(t[Ia][n]=!1),r=qt(r,{enumerable:f(0,!1)})):(S(t,Ia)||La(t,Ia,f(1,{})),t[Ia][n]=!0),$a(t,n,r)):La(t,n,r)},Ya=function(t,e){A(t);var r=g(e),n=Bt(r).concat(tu(r));return Aa(n,(function(e){a&&!Ja.call(r,e)||Xa(t,e,r[e])})),t},Ja=function(t){var e=m(t,!0),r=Ca.call(this,e);return!(this===Na&&S(Fa,e)&&!S(Ba,e))&&(!(r||!S(this,e)||!S(Fa,e)||S(this,Ia)&&this[Ia][e])||r)},Qa=function(t,e){var r=g(t),n=m(e,!0);if(r!==Na||!S(Fa,n)||S(Ba,n)){var o=ka(r,n);return!o||!S(Fa,n)||S(r,Ia)&&r[Ia][n]||(o.enumerable=!0),o}},Za=function(t){var e=Da(g(t)),r=[];return Aa(e,(function(t){S(Fa,t)||S($,t)||r.push(t)})),r},tu=function(t){var e=t===Na,r=Da(e?Ba:g(t)),n=[];return Aa(r,(function(t){!S(Fa,t)||e&&!S(Na,t)||n.push(Fa[t])})),n};if(Ut||(tt((Ma=function(){if(this instanceof Ma)throw TypeError("Symbol is not a constructor");var t=arguments.length&&void 0!==arguments[0]?String(arguments[0]):void 0,e=G(t),r=function t(r){this===Na&&t.call(Ba,r),S(this,Ia)&&S(this[Ia],e)&&(this[Ia][e]=!1),$a(this,e,f(1,r))};return a&&Va&&$a(Na,e,{configurable:!0,set:r}),qa(e,t)}).prototype,"toString",(function(){return Pa(this).tag})),tt(Ma,"withoutSetter",(function(t){return qa(G(t),t)})),s.f=Ja,_.f=Xa,x.f=Qa,mt.f=Ra.f=Za,bt.f=tu,Ta.f=function(t){return qa(Ft(t),t)},a&&(La(Ma.prototype,"description",{configurable:!0,get:function(){return Pa(this).description}}),tt(Na,"propertyIsEnumerable",Ja,{unsafe:!0}))),jt({global:!0,wrap:!0,forced:!Ut,sham:!Ut},{Symbol:Ma}),Aa(Bt(Ga),(function(t){xa(t)})),jt({target:"Symbol",stat:!0,forced:!Ut},{for:function(t){var e=String(t);if(S(Wa,e))return Wa[e];var r=Ma(e);return Wa[e]=r,za[r]=e,r},keyFor:function(t){if(!Ha(t))throw TypeError(t+" is not a symbol");if(S(za,t))return za[t]},useSetter:function(){Va=!0},useSimple:function(){Va=!1}}),jt({target:"Object",stat:!0,forced:!Ut,sham:!a},{create:function(t,e){return void 0===e?qt(t):Ya(qt(t),e)},defineProperty:Xa,defineProperties:Ya,getOwnPropertyDescriptor:Qa}),jt({target:"Object",stat:!0,forced:!Ut},{getOwnPropertyNames:Za,getOwnPropertySymbols:tu}),jt({target:"Object",stat:!0,forced:i((function(){bt.f(1)}))},{getOwnPropertySymbols:function(t){return bt.f(Pt(t))}}),Ua){var eu=!Ut||i((function(){var t=Ma();return"[null]"!=Ua([t])||"{}"!=Ua({a:t})||"{}"!=Ua(Object(t))}));jt({target:"JSON",stat:!0,forced:eu},{stringify:function(t,e,r){for(var n,o=[t],i=1;arguments.length>i;)o.push(arguments[i++]);if(n=e,(y(e)||void 0!==t)&&!Ha(t))return ee(e)||(e=function(t,e){if("function"==typeof n&&(e=n.call(this,t,e)),!Ha(e))return e}),o[1]=e,Ua.apply(null,o)}})}Ma.prototype[_a]||j(Ma.prototype,_a,Ma.prototype.valueOf),Ne(Ma,"Symbol"),$[Ia]=!0,xa("asyncIterator");var ru=_.f,nu=o.Symbol;if(a&&"function"==typeof nu&&(!("description"in nu.prototype)||void 0!==nu().description)){var ou={},iu=function(){var t=arguments.length<1||void 0===arguments[0]?void 0:String(arguments[0]),e=this instanceof iu?new nu(t):void 0===t?nu():nu(t);return""===t&&(ou[e]=!0),e};Et(iu,nu);var au=iu.prototype=nu.prototype;au.constructor=iu;var uu=au.toString,cu="Symbol(test)"==String(nu("test")),su=/^Symbol\((.*)\)[^)]+$/;ru(au,"description",{configurable:!0,get:function(){var t=y(this)?this.valueOf():this,e=uu.call(t);if(S(ou,t))return"";var r=cu?e.slice(7,-1):e.replace(su,"$1");return""===r?void 0:r}}),jt({global:!0,forced:!0},{Symbol:iu})}xa("hasInstance"),xa("isConcatSpreadable"),xa("iterator"),xa("match"),xa("matchAll"),xa("replace"),xa("search"),xa("species"),xa("split"),xa("toPrimitive"),xa("toStringTag"),xa("unscopables"),Ne(o.JSON,"JSON",!0),Ne(Math,"Math",!0),xa("asyncDispose"),xa("dispose"),xa("observable"),xa("patternMatch"),xa("replaceAll");var fu=function(t,e){var r=this;if(!(r instanceof fu))return new fu(t,e);De&&(r=De(new Error(void 0),xe(r))),void 0!==e&&j(r,"message",String(e));var n=[];return Or(t,n.push,{that:n}),j(r,"errors",n),r};fu.prototype=qt(Error.prototype,{constructor:f(5,fu),message:f(5,""),name:f(5,"AggregateError")}),jt({global:!0},{AggregateError:fu});var lu,hu,pu,du=o.Promise,vu=/(iphone|ipod|ipad).*applewebkit/i.test(co),gu="process"==h(o.process),yu=o.location,mu=o.setImmediate,bu=o.clearImmediate,Su=o.process,Eu=o.MessageChannel,wu=o.Dispatch,Ru=0,Tu={},Ou=function(t){if(Tu.hasOwnProperty(t)){var e=Tu[t];delete Tu[t],e()}},xu=function(t){return function(){Ou(t)}},Au=function(t){Ou(t.data)},Iu=function(t){o.postMessage(t+"",yu.protocol+"//"+yu.host)};mu&&bu||(mu=function(t){for(var e=[],r=1;arguments.length>r;)e.push(arguments[r++]);return Tu[++Ru]=function(){("function"==typeof t?t:Function(t)).apply(void 0,e)},lu(Ru),Ru},bu=function(t){delete Tu[t]},gu?lu=function(t){Su.nextTick(xu(t))}:wu&&wu.now?lu=function(t){wu.now(xu(t))}:Eu&&!vu?(pu=(hu=new Eu).port2,hu.port1.onmessage=Au,lu=Qt(pu.postMessage,pu,1)):o.addEventListener&&"function"==typeof postMessage&&!o.importScripts&&yu&&"file:"!==yu.protocol&&!i(Iu)?(lu=Iu,o.addEventListener("message",Au,!1)):lu="onreadystatechange"in R("script")?function(t){zt.appendChild(R("script")).onreadystatechange=function(){zt.removeChild(this),Ou(t)}}:function(t){setTimeout(xu(t),0)});var _u,ju,Pu,Nu,Mu,Uu,ku,Lu,Du={set:mu,clear:bu},Cu=Du.set,Fu=o.MutationObserver||o.WebKitMutationObserver,Bu=o.document,Wu=o.process,zu=o.Promise,Gu=(0,x.f)(o,"queueMicrotask"),Ku=Gu&&Gu.value;Ku||(_u=function(){var t,e;for(gu&&(t=Wu.domain)&&t.exit();ju;){e=ju.fn,ju=ju.next;try{e()}catch(t){throw ju?Nu():Pu=void 0,t}}Pu=void 0,t&&t.enter()},!vu&&!gu&&Fu&&Bu?(Mu=!0,Uu=Bu.createTextNode(""),new Fu(_u).observe(Uu,{characterData:!0}),Nu=function(){Uu.data=Mu=!Mu}):zu&&zu.resolve?(ku=zu.resolve(void 0),Lu=ku.then,Nu=function(){Lu.call(ku,_u)}):Nu=gu?function(){Wu.nextTick(_u)}:function(){Cu.call(o,_u)});var Vu,$u,qu,Hu,Xu=Ku||function(t){var e={fn:t,next:void 0};Pu&&(Pu.next=e),ju||(ju=e,Nu()),Pu=e},Yu=function(t){var e,r;this.promise=new t((function(t,n){if(void 0!==e||void 0!==r)throw TypeError("Bad Promise constructor");e=t,r=n})),this.resolve=Jt(e),this.reject=Jt(r)},Ju={f:function(t){return new Yu(t)}},Qu=function(t,e){if(A(t),y(e)&&e.constructor===t)return e;var r=Ju.f(t);return(0,r.resolve)(e),r.promise},Zu=function(t){try{return{error:!1,value:t()}}catch(t){return{error:!0,value:t}}},tc=Du.set,ec=Ft("species"),rc="Promise",nc=Z.get,oc=Z.set,ic=Z.getterFor(rc),ac=du,uc=o.TypeError,cc=o.document,sc=o.process,fc=nt("fetch"),lc=Ju.f,hc=lc,pc=!!(cc&&cc.createEvent&&o.dispatchEvent),dc="function"==typeof PromiseRejectionEvent,vc=It(rc,(function(){if(D(ac)===String(ac)){if(66===da)return!0;if(!gu&&!dc)return!0}if(da>=51&&/native code/.test(ac))return!1;var t=ac.resolve(1),e=function(t){t((function(){}),(function(){}))};return(t.constructor={})[ec]=e,!(t.then((function(){}))instanceof e)})),gc=vc||!sr((function(t){ac.all(t).catch((function(){}))})),yc=function(t){var e;return!(!y(t)||"function"!=typeof(e=t.then))&&e},mc=function(t,e){if(!t.notified){t.notified=!0;var r=t.reactions;Xu((function(){for(var n=t.value,o=1==t.state,i=0;r.length>i;){var a,u,c,s=r[i++],f=o?s.ok:s.fail,l=s.resolve,h=s.reject,p=s.domain;try{f?(o||(2===t.rejection&&wc(t),t.rejection=1),!0===f?a=n:(p&&p.enter(),a=f(n),p&&(p.exit(),c=!0)),a===s.promise?h(uc("Promise-chain cycle")):(u=yc(a))?u.call(a,l,h):l(a)):h(n)}catch(t){p&&!c&&p.exit(),h(t)}}t.reactions=[],t.notified=!1,e&&!t.rejection&&Sc(t)}))}},bc=function(t,e,r){var n,i;pc?((n=cc.createEvent("Event")).promise=e,n.reason=r,n.initEvent(t,!1,!0),o.dispatchEvent(n)):n={promise:e,reason:r},!dc&&(i=o["on"+t])?i(n):"unhandledrejection"===t&&function(t,e){var r=o.console;r&&r.error&&(1===arguments.length?r.error(t):r.error(t,e))}("Unhandled promise rejection",r)},Sc=function(t){tc.call(o,(function(){var e,r=t.facade,n=t.value;if(Ec(t)&&(e=Zu((function(){gu?sc.emit("unhandledRejection",n,r):bc("unhandledrejection",r,n)})),t.rejection=gu||Ec(t)?2:1,e.error))throw e.value}))},Ec=function(t){return 1!==t.rejection&&!t.parent},wc=function(t){tc.call(o,(function(){var e=t.facade;gu?sc.emit("rejectionHandled",e):bc("rejectionhandled",e,t.value)}))},Rc=function(t,e,r){return function(n){t(e,n,r)}},Tc=function(t,e,r){t.done||(t.done=!0,r&&(t=r),t.value=e,t.state=2,mc(t,!0))},Oc=function t(e,r,n){if(!e.done){e.done=!0,n&&(e=n);try{if(e.facade===r)throw uc("Promise can't be resolved itself");var o=yc(r);o?Xu((function(){var n={done:!1};try{o.call(r,Rc(t,n,e),Rc(Tc,n,e))}catch(t){Tc(n,t,e)}})):(e.value=r,e.state=1,mc(e,!1))}catch(t){Tc({done:!1},t,e)}}};vc&&(ac=function(t){xr(this,ac,rc),Jt(t),Vu.call(this);var e=nc(this);try{t(Rc(Oc,e),Rc(Tc,e))}catch(t){Tc(e,t)}},(Vu=function(t){oc(this,{type:rc,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:0,value:void 0})}).prototype=_r(ac.prototype,{then:function(t,e){var r=ic(this),n=lc(Qr(this,ac));return n.ok="function"!=typeof t||t,n.fail="function"==typeof e&&e,n.domain=gu?sc.domain:void 0,r.parent=!0,r.reactions.push(n),0!=r.state&&mc(r,!1),n.promise},catch:function(t){return this.then(void 0,t)}}),$u=function(){var t=new Vu,e=nc(t);this.promise=t,this.resolve=Rc(Oc,e),this.reject=Rc(Tc,e)},Ju.f=lc=function(t){return t===ac||t===qu?new $u(t):hc(t)},"function"==typeof du&&(Hu=du.prototype.then,tt(du.prototype,"then",(function(t,e){var r=this;return new ac((function(t,e){Hu.call(r,t,e)})).then(t,e)}),{unsafe:!0}),"function"==typeof fc&&jt({global:!0,enumerable:!0,forced:!0},{fetch:function(t){return Qu(ac,fc.apply(o,arguments))}}))),jt({global:!0,wrap:!0,forced:vc},{Promise:ac}),Ne(ac,rc,!1),Pr(rc),qu=nt(rc),jt({target:rc,stat:!0,forced:vc},{reject:function(t){var e=lc(this);return e.reject.call(void 0,t),e.promise}}),jt({target:rc,stat:!0,forced:vc},{resolve:function(t){return Qu(this,t)}}),jt({target:rc,stat:!0,forced:gc},{all:function(t){var e=this,r=lc(e),n=r.resolve,o=r.reject,i=Zu((function(){var r=Jt(e.resolve),i=[],a=0,u=1;Or(t,(function(t){var c=a++,s=!1;i.push(void 0),u++,r.call(e,t).then((function(t){s||(s=!0,i[c]=t,--u||n(i))}),o)})),--u||n(i)}));return i.error&&o(i.value),r.promise},race:function(t){var e=this,r=lc(e),n=r.reject,o=Zu((function(){var o=Jt(e.resolve);Or(t,(function(t){o.call(e,t).then(r.resolve,n)}))}));return o.error&&n(o.value),r.promise}}),jt({target:"Promise",stat:!0},{allSettled:function(t){var e=this,r=Ju.f(e),n=r.resolve,o=r.reject,i=Zu((function(){var r=Jt(e.resolve),o=[],i=0,a=1;Or(t,(function(t){var u=i++,c=!1;o.push(void 0),a++,r.call(e,t).then((function(t){c||(c=!0,o[u]={status:"fulfilled",value:t},--a||n(o))}),(function(t){c||(c=!0,o[u]={status:"rejected",reason:t},--a||n(o))}))})),--a||n(o)}));return i.error&&o(i.value),r.promise}}),jt({target:"Promise",stat:!0},{any:function(t){var e=this,r=Ju.f(e),n=r.resolve,o=r.reject,i=Zu((function(){var r=Jt(e.resolve),i=[],a=0,u=1,c=!1;Or(t,(function(t){var s=a++,f=!1;i.push(void 0),u++,r.call(e,t).then((function(t){f||c||(c=!0,n(t))}),(function(t){f||c||(f=!0,i[s]=t,--u||o(new(nt("AggregateError"))(i,"No one promise resolved")))}))})),--u||o(new(nt("AggregateError"))(i,"No one promise resolved"))}));return i.error&&o(i.value),r.promise}});var xc=!!du&&i((function(){du.prototype.finally.call({then:function(){}},(function(){}))}));jt({target:"Promise",proto:!0,real:!0,forced:xc},{finally:function(t){var e=Qr(this,nt("Promise")),r="function"==typeof t;return this.then(r?function(r){return Qu(e,t()).then((function(){return r}))}:t,r?function(r){return Qu(e,t()).then((function(){throw r}))}:t)}}),"function"!=typeof du||du.prototype.finally||tt(du.prototype,"finally",nt("Promise").prototype.finally),jt({target:"Promise",stat:!0},{try:function(t){var e=Ju.f(this),r=Zu(t);return(r.error?e.reject:e.resolve)(r.value),e.promise}});var Ac="undefined"!=typeof globalThis&&globalThis||"undefined"!=typeof self&&self||void 0!==Ac&&Ac,Ic="URLSearchParams"in Ac,_c="Symbol"in Ac&&"iterator"in Symbol,jc="FileReader"in Ac&&"Blob"in Ac&&function(){try{return new Blob,!0}catch(e){return!1}}(),Pc="FormData"in Ac,Nc="ArrayBuffer"in Ac;if(Nc)var Mc=["[object Int8Array]","[object Uint8Array]","[object Uint8ClampedArray]","[object Int16Array]","[object Uint16Array]","[object Int32Array]","[object Uint32Array]","[object Float32Array]","[object Float64Array]"],Uc=ArrayBuffer.isView||function(t){return t&&Mc.indexOf(Object.prototype.toString.call(t))>-1};function kc(t){if("string"!=typeof t&&(t=String(t)),/[^a-z0-9\-#$%&'*+.^_`|~!]/i.test(t)||""===t)throw new TypeError("Invalid character in header field name");return t.toLowerCase()}function Lc(t){return"string"!=typeof t&&(t=String(t)),t}function Dc(t){var e={next:function(){var e=t.shift();return{done:void 0===e,value:e}}};return _c&&(e[Symbol.iterator]=function(){return e}),e}function Cc(t){this.map={},t instanceof Cc?t.forEach((function(t,e){this.append(e,t)}),this):Array.isArray(t)?t.forEach((function(t){this.append(t[0],t[1])}),this):t&&Object.getOwnPropertyNames(t).forEach((function(e){this.append(e,t[e])}),this)}function Fc(t){if(t.bodyUsed)return Promise.reject(new TypeError("Already read"));t.bodyUsed=!0}function Bc(t){return new Promise((function(e,r){t.onload=function(){e(t.result)},t.onerror=function(){r(t.error)}}))}function Wc(t){var e=new FileReader,r=Bc(e);return e.readAsArrayBuffer(t),r}function zc(t){if(t.slice)return t.slice(0);var e=new Uint8Array(t.byteLength);return e.set(new Uint8Array(t)),e.buffer}function Gc(){return this.bodyUsed=!1,this._initBody=function(t){var e;this.bodyUsed=this.bodyUsed,this._bodyInit=t,t?"string"==typeof t?this._bodyText=t:jc&&Blob.prototype.isPrototypeOf(t)?this._bodyBlob=t:Pc&&FormData.prototype.isPrototypeOf(t)?this._bodyFormData=t:Ic&&URLSearchParams.prototype.isPrototypeOf(t)?this._bodyText=t.toString():Nc&&jc&&(e=t)&&DataView.prototype.isPrototypeOf(e)?(this._bodyArrayBuffer=zc(t.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):Nc&&(ArrayBuffer.prototype.isPrototypeOf(t)||Uc(t))?this._bodyArrayBuffer=zc(t):this._bodyText=t=Object.prototype.toString.call(t):this._bodyText="",this.headers.get("content-type")||("string"==typeof t?this.headers.set("content-type","text/plain;charset=UTF-8"):this._bodyBlob&&this._bodyBlob.type?this.headers.set("content-type",this._bodyBlob.type):Ic&&URLSearchParams.prototype.isPrototypeOf(t)&&this.headers.set("content-type","application/x-www-form-urlencoded;charset=UTF-8"))},jc&&(this.blob=function(){var t=Fc(this);if(t)return t;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error("could not read FormData body as blob");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?Fc(this)||(ArrayBuffer.isView(this._bodyArrayBuffer)?Promise.resolve(this._bodyArrayBuffer.buffer.slice(this._bodyArrayBuffer.byteOffset,this._bodyArrayBuffer.byteOffset+this._bodyArrayBuffer.byteLength)):Promise.resolve(this._bodyArrayBuffer)):this.blob().then(Wc)}),this.text=function(){var t=Fc(this);if(t)return t;if(this._bodyBlob)return function(t){var e=new FileReader,r=Bc(e);return e.readAsText(t),r}(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(function(t){for(var e=new Uint8Array(t),r=new Array(e.length),n=0;n<e.length;n++)r[n]=String.fromCharCode(e[n]);return r.join("")}(this._bodyArrayBuffer));if(this._bodyFormData)throw new Error("could not read FormData body as text");return Promise.resolve(this._bodyText)},Pc&&(this.formData=function(){return this.text().then($c)}),this.json=function(){return this.text().then(JSON.parse)},this}Cc.prototype.append=function(t,e){t=kc(t),e=Lc(e);var r=this.map[t];this.map[t]=r?r+", "+e:e},Cc.prototype.delete=function(t){delete this.map[kc(t)]},Cc.prototype.get=function(t){return t=kc(t),this.has(t)?this.map[t]:null},Cc.prototype.has=function(t){return this.map.hasOwnProperty(kc(t))},Cc.prototype.set=function(t,e){this.map[kc(t)]=Lc(e)},Cc.prototype.forEach=function(t,e){for(var r in this.map)this.map.hasOwnProperty(r)&&t.call(e,this.map[r],r,this)},Cc.prototype.keys=function(){var t=[];return this.forEach((function(e,r){t.push(r)})),Dc(t)},Cc.prototype.values=function(){var t=[];return this.forEach((function(e){t.push(e)})),Dc(t)},Cc.prototype.entries=function(){var t=[];return this.forEach((function(e,r){t.push([r,e])})),Dc(t)},_c&&(Cc.prototype[Symbol.iterator]=Cc.prototype.entries);var Kc=["DELETE","GET","HEAD","OPTIONS","POST","PUT"];function Vc(t,e){if(!(this instanceof Vc))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');var r,n,o=(e=e||{}).body;if(t instanceof Vc){if(t.bodyUsed)throw new TypeError("Already read");this.url=t.url,this.credentials=t.credentials,e.headers||(this.headers=new Cc(t.headers)),this.method=t.method,this.mode=t.mode,this.signal=t.signal,o||null==t._bodyInit||(o=t._bodyInit,t.bodyUsed=!0)}else this.url=String(t);if(this.credentials=e.credentials||this.credentials||"same-origin",!e.headers&&this.headers||(this.headers=new Cc(e.headers)),this.method=(n=(r=e.method||this.method||"GET").toUpperCase(),Kc.indexOf(n)>-1?n:r),this.mode=e.mode||this.mode||null,this.signal=e.signal||this.signal,this.referrer=null,("GET"===this.method||"HEAD"===this.method)&&o)throw new TypeError("Body not allowed for GET or HEAD requests");if(this._initBody(o),!("GET"!==this.method&&"HEAD"!==this.method||"no-store"!==e.cache&&"no-cache"!==e.cache)){var i=/([?&])_=[^&]*/;i.test(this.url)?this.url=this.url.replace(i,"$1_="+(new Date).getTime()):this.url+=(/\?/.test(this.url)?"&":"?")+"_="+(new Date).getTime()}}function $c(t){var e=new FormData;return t.trim().split("&").forEach((function(t){if(t){var r=t.split("="),n=r.shift().replace(/\+/g," "),o=r.join("=").replace(/\+/g," ");e.append(decodeURIComponent(n),decodeURIComponent(o))}})),e}function qc(t,e){if(!(this instanceof qc))throw new TypeError('Please use the "new" operator, this DOM object constructor cannot be called as a function.');e||(e={}),this.type="default",this.status=void 0===e.status?200:e.status,this.ok=this.status>=200&&this.status<300,this.statusText="statusText"in e?e.statusText:"",this.headers=new Cc(e.headers),this.url=e.url||"",this._initBody(t)}Vc.prototype.clone=function(){return new Vc(this,{body:this._bodyInit})},Gc.call(Vc.prototype),Gc.call(qc.prototype),qc.prototype.clone=function(){return new qc(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new Cc(this.headers),url:this.url})},qc.error=function(){var t=new qc(null,{status:0,statusText:""});return t.type="error",t};var Hc=[301,302,303,307,308];qc.redirect=function(t,e){if(-1===Hc.indexOf(e))throw new RangeError("Invalid status code");return new qc(null,{status:e,headers:{location:t}})};var Xc=Ac.DOMException;try{new Xc}catch(e){(Xc=function(t,e){this.message=t,this.name=e;var r=Error(t);this.stack=r.stack}).prototype=Object.create(Error.prototype),Xc.prototype.constructor=Xc}function Yc(t,e){return new Promise((function(r,n){var o=new Vc(t,e);if(o.signal&&o.signal.aborted)return n(new Xc("Aborted","AbortError"));var i=new XMLHttpRequest;function a(){i.abort()}i.onload=function(){var t,e,n={status:i.status,statusText:i.statusText,headers:(t=i.getAllResponseHeaders()||"",e=new Cc,t.replace(/\r?\n[\t ]+/g," ").split("\r").map((function(t){return 0===t.indexOf("\n")?t.substr(1,t.length):t})).forEach((function(t){var r=t.split(":"),n=r.shift().trim();if(n){var o=r.join(":").trim();e.append(n,o)}})),e)};n.url="responseURL"in i?i.responseURL:n.headers.get("X-Request-URL");var o="response"in i?i.response:i.responseText;setTimeout((function(){r(new qc(o,n))}),0)},i.onerror=function(){setTimeout((function(){n(new TypeError("Network request failed"))}),0)},i.ontimeout=function(){setTimeout((function(){n(new TypeError("Network request failed"))}),0)},i.onabort=function(){setTimeout((function(){n(new Xc("Aborted","AbortError"))}),0)},i.open(o.method,function(t){try{return""===t&&Ac.location.href?Ac.location.href:t}catch(e){return t}}(o.url),!0),"include"===o.credentials?i.withCredentials=!0:"omit"===o.credentials&&(i.withCredentials=!1),"responseType"in i&&(jc?i.responseType="blob":Nc&&o.headers.get("Content-Type")&&-1!==o.headers.get("Content-Type").indexOf("application/octet-stream")&&(i.responseType="arraybuffer")),!e||"object"!=typeof e.headers||e.headers instanceof Cc?o.headers.forEach((function(t,e){i.setRequestHeader(e,t)})):Object.getOwnPropertyNames(e.headers).forEach((function(t){i.setRequestHeader(t,Lc(e.headers[t]))})),o.signal&&(o.signal.addEventListener("abort",a),i.onreadystatechange=function(){4===i.readyState&&o.signal.removeEventListener("abort",a)}),i.send(void 0===o._bodyInit?null:o._bodyInit)}))}Yc.polyfill=!0,Ac.fetch||(Ac.fetch=Yc,Ac.Headers=Cc,Ac.Request=Vc,Ac.Response=qc),function(t){var e=function(){try{return!!Symbol.iterator}catch(t){return!1}}(),r=function(t){var r={next:function(){var e=t.shift();return{done:void 0===e,value:e}}};return e&&(r[Symbol.iterator]=function(){return r}),r},n=function(t){return encodeURIComponent(t).replace(/%20/g,"+")},o=function(t){return decodeURIComponent(String(t).replace(/\+/g," "))};(function(){try{var e=t.URLSearchParams;return"a=1"===new e("?a=1").toString()&&"function"==typeof e.prototype.set&&"function"==typeof e.prototype.entries}catch(t){return!1}})()||function(){var o=function t(e){Object.defineProperty(this,"_entries",{writable:!0,value:{}});var r=typeof e;if("undefined"===r);else if("string"===r)""!==e&&this._fromString(e);else if(e instanceof t){var n=this;e.forEach((function(t,e){n.append(e,t)}))}else{if(null===e||"object"!==r)throw new TypeError("Unsupported input's type for URLSearchParams");if("[object Array]"===Object.prototype.toString.call(e))for(var o=0;o<e.length;o++){var i=e[o];if("[object Array]"!==Object.prototype.toString.call(i)&&2===i.length)throw new TypeError("Expected [string, any] as entry at index "+o+" of URLSearchParams's input");this.append(i[0],i[1])}else for(var a in e)e.hasOwnProperty(a)&&this.append(a,e[a])}},i=o.prototype;i.append=function(t,e){t in this._entries?this._entries[t].push(String(e)):this._entries[t]=[String(e)]},i.delete=function(t){delete this._entries[t]},i.get=function(t){return t in this._entries?this._entries[t][0]:null},i.getAll=function(t){return t in this._entries?this._entries[t].slice(0):[]},i.has=function(t){return t in this._entries},i.set=function(t,e){this._entries[t]=[String(e)]},i.forEach=function(t,e){var r;for(var n in this._entries)if(this._entries.hasOwnProperty(n)){r=this._entries[n];for(var o=0;o<r.length;o++)t.call(e,r[o],n,this)}},i.keys=function(){var t=[];return this.forEach((function(e,r){t.push(r)})),r(t)},i.values=function(){var t=[];return this.forEach((function(e){t.push(e)})),r(t)},i.entries=function(){var t=[];return this.forEach((function(e,r){t.push([r,e])})),r(t)},e&&(i[Symbol.iterator]=i.entries),i.toString=function(){var t=[];return this.forEach((function(e,r){t.push(n(r)+"="+n(e))})),t.join("&")},t.URLSearchParams=o}();var i=t.URLSearchParams.prototype;"function"!=typeof i.sort&&(i.sort=function(){var t=this,e=[];this.forEach((function(r,n){e.push([n,r]),t._entries||t.delete(n)})),e.sort((function(t,e){return t[0]<e[0]?-1:t[0]>e[0]?1:0})),t._entries&&(t._entries={});for(var r=0;r<e.length;r++)this.append(e[r][0],e[r][1])}),"function"!=typeof i._fromString&&Object.defineProperty(i,"_fromString",{enumerable:!1,configurable:!1,writable:!1,value:function(t){if(this._entries)this._entries={};else{var e=[];this.forEach((function(t,r){e.push(r)}));for(var r=0;r<e.length;r++)this.delete(e[r])}var n,i=(t=t.replace(/^\?/,"")).split("&");for(r=0;r<i.length;r++)n=i[r].split("="),this.append(o(n[0]),n.length>1?o(n[1]):"")}})}(void 0!==e?e:"undefined"!=typeof window?window:"undefined"!=typeof self?self:e),function(t){var e,r,n;if(function(){try{var e=new t.URL("b","http://a");return e.pathname="c d","http://a/c%20d"===e.href&&e.searchParams}catch(t){return!1}}()||(e=t.URL,n=(r=function(e,r){"string"!=typeof e&&(e=String(e)),r&&"string"!=typeof r&&(r=String(r));var n,o=document;if(r&&(void 0===t.location||r!==t.location.href)){r=r.toLowerCase(),(n=(o=document.implementation.createHTMLDocument("")).createElement("base")).href=r,o.head.appendChild(n);try{if(0!==n.href.indexOf(r))throw new Error(n.href)}catch(t){throw new Error("URL unable to set base "+r+" due to "+t)}}var i=o.createElement("a");i.href=e,n&&(o.body.appendChild(i),i.href=i.href);var a=o.createElement("input");if(a.type="url",a.value=e,":"===i.protocol||!/:/.test(i.href)||!a.checkValidity()&&!r)throw new TypeError("Invalid URL");Object.defineProperty(this,"_anchorElement",{value:i});var u=new t.URLSearchParams(this.search),c=!0,s=!0,f=this;["append","delete","set"].forEach((function(t){var e=u[t];u[t]=function(){e.apply(u,arguments),c&&(s=!1,f.search=u.toString(),s=!0)}})),Object.defineProperty(this,"searchParams",{value:u,enumerable:!0});var l=void 0;Object.defineProperty(this,"_updateSearchParams",{enumerable:!1,configurable:!1,writable:!1,value:function(){this.search!==l&&(l=this.search,s&&(c=!1,this.searchParams._fromString(this.search),c=!0))}})}).prototype,["hash","host","hostname","port","protocol"].forEach((function(t){!function(t){Object.defineProperty(n,t,{get:function(){return this._anchorElement[t]},set:function(e){this._anchorElement[t]=e},enumerable:!0})}(t)})),Object.defineProperty(n,"search",{get:function(){return this._anchorElement.search},set:function(t){this._anchorElement.search=t,this._updateSearchParams()},enumerable:!0}),Object.defineProperties(n,{toString:{get:function(){var t=this;return function(){return t.href}}},href:{get:function(){return this._anchorElement.href.replace(/\?$/,"")},set:function(t){this._anchorElement.href=t,this._updateSearchParams()},enumerable:!0},pathname:{get:function(){return this._anchorElement.pathname.replace(/(^\/?)/,"/")},set:function(t){this._anchorElement.pathname=t},enumerable:!0},origin:{get:function(){return this._anchorElement.protocol+"//"+this._anchorElement.hostname+(this._anchorElement.port!={"http:":80,"https:":443,"ftp:":21}[this._anchorElement.protocol]&&""!==this._anchorElement.port?":"+this._anchorElement.port:"")},enumerable:!0},password:{get:function(){return""},set:function(t){},enumerable:!0},username:{get:function(){return""},set:function(t){},enumerable:!0}}),r.createObjectURL=function(t){return e.createObjectURL.apply(e,arguments)},r.revokeObjectURL=function(t){return e.revokeObjectURL.apply(e,arguments)},t.URL=r),void 0!==t.location&&!("origin"in t.location)){var o=function(){return t.location.protocol+"//"+t.location.hostname+(t.location.port?":"+t.location.port:"")};try{Object.defineProperty(t.location,"origin",{get:o,enumerable:!0})}catch(e){setInterval((function(){t.location.origin=o()}),100)}}}(void 0!==e?e:"undefined"!=typeof window?window:"undefined"!=typeof self?self:e);var Jc=Object.getOwnPropertySymbols,Qc=Object.prototype.hasOwnProperty,Zc=Object.prototype.propertyIsEnumerable;function ts(t){if(null==t)throw new TypeError("Object.assign cannot be called with null or undefined");return Object(t)}var es=function(){try{if(!Object.assign)return!1;var t=new String("abc");if(t[5]="de","5"===Object.getOwnPropertyNames(t)[0])return!1;for(var e={},r=0;r<10;r++)e["_"+String.fromCharCode(r)]=r;if("0123456789"!==Object.getOwnPropertyNames(e).map((function(t){return e[t]})).join(""))return!1;var n={};return"abcdefghijklmnopqrst".split("").forEach((function(t){n[t]=t})),"abcdefghijklmnopqrst"===Object.keys(Object.assign({},n)).join("")}catch(t){return!1}}()?Object.assign:function(t,e){for(var r,n,o=ts(t),i=1;i<arguments.length;i++){for(var a in r=Object(arguments[i]))Qc.call(r,a)&&(o[a]=r[a]);if(Jc){n=Jc(r);for(var u=0;u<n.length;u++)Zc.call(r,n[u])&&(o[n[u]]=r[n[u]])}}return o};Object.assign=es}()}).call(this,r("yLpj"))},WVtH:function(t,e,r){"use strict";r.r(e);r("VXT5")},yLpj:function(t,e){var r;r=function(){return this}();try{r=r||new Function("return this")()}catch(n){"object"==typeof window&&(r=window)}t.exports=r}},[["WVtH",2]]]);
+//# sourceMappingURL=polyfill-e4957c11759bdfc149d9.js.map
\ No newline at end of file
diff --git a/polyfill-e4957c11759bdfc149d9.js.map b/polyfill-e4957c11759bdfc149d9.js.map
new file mode 100644
index 0000000..b5fc884
--- /dev/null
+++ b/polyfill-e4957c11759bdfc149d9.js.map
@@ -0,0 +1 @@
+{"version":3,"sources":["webpack:///./node_modules/gatsby-legacy-polyfills/dist/polyfills.js","webpack:///./.cache/polyfill-entry.js","webpack:///(webpack)/buildin/global.js"],"names":["t","globalThis","window","global","self","e","r","path","exports","require","Error","Math","n","this","Function","o","i","Object","defineProperty","get","a","propertyIsEnumerable","u","getOwnPropertyDescriptor","c","f","call","1","enumerable","s","configurable","writable","value","toString","l","slice","h","split","p","d","TypeError","v","g","y","valueOf","m","hasOwnProperty","b","S","document","E","createElement","w","R","T","O","x","String","A","I","_","j","P","N","inspectSource","M","U","k","L","D","WeakMap","C","test","F","push","version","mode","copyright","B","W","random","z","G","K","$","V","state","q","H","has","X","set","facade","Y","J","Q","enforce","getterFor","type","Z","unsafe","noTargetGet","source","join","prototype","tt","et","rt","arguments","length","nt","ceil","ot","floor","it","isNaN","at","min","ut","ct","max","st","ft","lt","ht","includes","indexOf","pt","dt","vt","gt","concat","yt","getOwnPropertyNames","mt","getOwnPropertySymbols","bt","St","Et","wt","Tt","Rt","xt","Ot","normalize","replace","toLowerCase","data","NATIVE","POLYFILL","At","It","_t","target","stat","forced","sham","jt","Pt","Nt","copyWithin","Mt","Symbol","Ut","iterator","kt","Lt","Dt","withoutSetter","Ct","Ft","keys","Bt","defineProperties","Wt","zt","Gt","Kt","$t","domain","ActiveXObject","write","close","parentWindow","style","display","appendChild","src","contentWindow","open","Vt","create","qt","Ht","Array","Xt","proto","Yt","Jt","apply","Qt","Zt","fill","te","isArray","ee","re","constructor","ne","oe","ie","forEach","map","filter","some","every","find","findIndex","filterOut","ae","ue","ce","se","ACCESSORS","fe","le","he","pe","de","ve","ge","flatMap","flat","ye","me","be","Se","charCodeAt","charAt","Ee","codeAt","we","getPrototypeOf","Re","Te","Oe","xe","Ae","Ie","IteratorPrototype","BUGGY_SAFARI_ITERATORS","_e","je","Pe","Ne","Me","Ue","ke","Le","setPrototypeOf","__proto__","De","Ce","Fe","Be","We","next","entries","name","values","ze","Ge","Ke","string","index","done","$e","return","Ve","qe","He","Xe","Ye","Je","Qe","Ze","tr","er","callee","rr","nr","or","ir","ar","ur","from","cr","sr","fr","lr","hr","pr","dr","kind","Arguments","vr","of","gr","yr","mr","br","Sr","match","Er","isExtensible","preventExtensions","wr","objectID","weakData","REQUIRED","fastKey","getWeakData","onFreeze","Rr","stopped","result","Tr","AS_ENTRIES","IS_ITERATOR","INTERRUPTED","that","Or","xr","Ar","getConstructor","clear","setStrong","Ir","_r","jr","Pr","Nr","Mr","Ur","kr","first","last","size","key","previous","removed","delete","add","Lr","Dr","CSSRuleList","CSSStyleDeclaration","CSSValueList","ClientRectList","DOMRectList","DOMStringList","DOMTokenList","DataTransferItemList","FileList","HTMLAllCollection","HTMLCollection","HTMLFormElement","HTMLSelectElement","MediaList","MimeTypeArray","NamedNodeMap","NodeList","PaintRequestList","Plugin","PluginArray","SVGLengthList","SVGNumberList","SVGPathSegList","SVGPointList","SVGStringList","SVGTransformList","SourceBufferList","StyleSheetList","TextTrackCueList","TextTrackList","TouchList","Cr","Fr","Br","Wr","zr","Gr","Kr","$r","Vr","qr","real","deleteAll","Hr","update","insert","emplace","Xr","Map","Yr","Jr","findKey","groupBy","keyBy","keyOf","mapKeys","mapValues","merge","reduce","Qr","upsert","updateOrInsert","Zr","tn","addAll","en","Set","difference","intersection","isDisjointFrom","isSubsetOf","isSupersetOf","symmetricDifference","union","rn","nn","on","an","un","cn","sn","frozen","fn","ln","splice","hn","id","pn","dn","vn","gn","RegExp","yn","mn","bn","start","end","trim","Sn","En","wn","Rn","Tn","Number","On","xn","An","NaN","parseInt","In","_n","jn","Pn","EPSILON","pow","Nn","isFinite","Mn","Un","isInteger","kn","abs","isSafeInteger","MAX_SAFE_INTEGER","MIN_SAFE_INTEGER","Ln","Dn","Cn","Fn","getOwnPropertyDescriptors","Bn","is","Wn","zn","Gn","codePointAt","Kn","$n","Vn","qn","Hn","Xn","Yn","Jn","endsWith","Qn","Zn","to","eo","fromCharCode","ro","fromCodePoint","RangeError","no","repeat","Infinity","oo","io","ao","uo","co","so","padStart","fo","padEnd","raw","lo","ho","startsWith","po","vo","go","yo","mo","bo","So","trimStart","trimLeft","Eo","wo","Ro","trimEnd","trimRight","To","Oo","xo","Ao","Io","_o","jo","bind","Po","No","Mo","Uo","construct","ko","Reflect","Lo","deleteProperty","Do","ownKeys","Co","Fo","Bo","store","Wo","zo","getMap","toKey","Go","Ko","defineMetadata","$o","Vo","qo","deleteMetadata","Ho","Xo","Yo","Jo","getMetadata","Qo","Zo","ti","getMetadataKeys","ei","ri","getOwnMetadata","ni","oi","getOwnMetadataKeys","ii","ai","ui","hasMetadata","ci","si","hasOwnMetadata","fi","li","metadata","hi","ignoreCase","multiline","dotAll","unicode","sticky","pi","di","UNSUPPORTED_Y","lastIndex","exec","BROKEN_CARET","vi","gi","yi","mi","bi","Si","Ei","wi","Ri","Ti","Oi","xi","Ai","Ii","_i","ji","flags","Pi","Ni","Mi","Ui","ki","Li","input","Di","Ci","Fi","Bi","Wi","zi","Gi","Ki","$i","groups","Vi","qi","Hi","Xi","Yi","REPLACE_KEEPS_$0","REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE","Ji","Qi","Zi","ta","ea","ra","na","oa","ia","aa","ua","ca","sa","fa","process","la","versions","ha","v8","pa","da","va","ga","ya","foo","Boolean","ma","ba","Sa","Ea","wa","Ra","Ta","Oa","xa","Aa","Ia","_a","ja","Pa","Na","Ma","Ua","ka","La","Da","Ca","Fa","Ba","Wa","za","Ga","QObject","Ka","findChild","$a","Va","tag","description","qa","Ha","Xa","Za","Ya","Ja","Qa","wrap","for","keyFor","useSetter","useSimple","tu","stringify","eu","ru","nu","ou","iu","au","uu","cu","JSON","su","message","AggregateError","fu","lu","hu","pu","Promise","du","vu","gu","location","yu","setImmediate","mu","clearImmediate","bu","Su","MessageChannel","Eu","Dispatch","wu","Ru","Tu","Ou","xu","Au","postMessage","protocol","host","nextTick","now","port2","port1","onmessage","addEventListener","importScripts","onreadystatechange","removeChild","setTimeout","Iu","_u","ju","Pu","Nu","Mu","Uu","ku","Lu","Du","Cu","MutationObserver","WebKitMutationObserver","Fu","Bu","Wu","zu","Gu","exit","enter","createTextNode","observe","characterData","resolve","then","Ku","$u","Vu","qu","Hu","Xu","promise","reject","Yu","Ju","Qu","error","Zu","tc","ec","rc","nc","oc","ic","ac","uc","cc","sc","fc","lc","hc","createEvent","dispatchEvent","pc","PromiseRejectionEvent","dc","vc","all","catch","gc","yc","notified","reactions","ok","fail","rejection","Ec","bc","mc","reason","initEvent","console","Sc","emit","parent","wc","Rc","Tc","fetch","race","allSettled","status","any","Oc","finally","try","xc","Ac","Ic","_c","Blob","jc","Pc","Nc","Mc","ArrayBuffer","isView","Uc","kc","Lc","shift","Dc","append","Cc","bodyUsed","Fc","onload","onerror","Bc","FileReader","readAsArrayBuffer","Wc","Uint8Array","byteLength","buffer","zc","_initBody","_bodyInit","_bodyText","isPrototypeOf","_bodyBlob","FormData","_bodyFormData","URLSearchParams","DataView","_bodyArrayBuffer","headers","blob","arrayBuffer","byteOffset","text","readAsText","formData","$c","json","parse","Gc","Kc","body","url","credentials","method","signal","toUpperCase","referrer","cache","Date","getTime","decodeURIComponent","Vc","statusText","clone","qc","redirect","Hc","DOMException","stack","Xc","aborted","XMLHttpRequest","abort","getAllResponseHeaders","substr","responseURL","response","responseText","ontimeout","onabort","href","withCredentials","responseType","setRequestHeader","readyState","removeEventListener","send","polyfill","Headers","Request","Response","encodeURIComponent","_fromString","_entries","getAll","sort","URL","pathname","searchParams","implementation","createHTMLDocument","head","checkValidity","search","_anchorElement","_updateSearchParams","origin","hostname","port","password","username","createObjectURL","revokeObjectURL","setInterval","Yc","Jc","Qc","Zc","ts","assign","module"],"mappings":"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","file":"polyfill-e4957c11759bdfc149d9.js","sourcesContent":["!function(){var t=\"undefined\"!=typeof globalThis?globalThis:\"undefined\"!=typeof window?window:\"undefined\"!=typeof global?global:\"undefined\"!=typeof self?self:{};function e(t,e,r){return t(r={path:e,exports:{},require:function(t,e){return function(){throw new Error(\"Dynamic requires are not currently supported by @rollup/plugin-commonjs\")}()}},r.exports),r.exports}var r=function(t){return t&&t.Math==Math&&t},n=r(\"object\"==typeof globalThis&&globalThis)||r(\"object\"==typeof window&&window)||r(\"object\"==typeof self&&self)||r(\"object\"==typeof t&&t)||function(){return this}()||Function(\"return this\")(),o=function(t){try{return!!t()}catch(t){return!0}},i=!o(function(){return 7!=Object.defineProperty({},1,{get:function(){return 7}})[1]}),a={}.propertyIsEnumerable,u=Object.getOwnPropertyDescriptor,c={f:u&&!a.call({1:2},1)?function(t){var e=u(this,t);return!!e&&e.enumerable}:a},s=function(t,e){return{enumerable:!(1&t),configurable:!(2&t),writable:!(4&t),value:e}},f={}.toString,l=function(t){return f.call(t).slice(8,-1)},h=\"\".split,p=o(function(){return!Object(\"z\").propertyIsEnumerable(0)})?function(t){return\"String\"==l(t)?h.call(t,\"\"):Object(t)}:Object,d=function(t){if(null==t)throw TypeError(\"Can't call method on \"+t);return t},v=function(t){return p(d(t))},g=function(t){return\"object\"==typeof t?null!==t:\"function\"==typeof t},y=function(t,e){if(!g(t))return t;var r,n;if(e&&\"function\"==typeof(r=t.toString)&&!g(n=r.call(t)))return n;if(\"function\"==typeof(r=t.valueOf)&&!g(n=r.call(t)))return n;if(!e&&\"function\"==typeof(r=t.toString)&&!g(n=r.call(t)))return n;throw TypeError(\"Can't convert object to primitive value\")},m={}.hasOwnProperty,b=function(t,e){return m.call(t,e)},S=n.document,E=g(S)&&g(S.createElement),w=function(t){return E?S.createElement(t):{}},R=!i&&!o(function(){return 7!=Object.defineProperty(w(\"div\"),\"a\",{get:function(){return 7}}).a}),T=Object.getOwnPropertyDescriptor,O={f:i?T:function(t,e){if(t=v(t),e=y(e,!0),R)try{return T(t,e)}catch(t){}if(b(t,e))return s(!c.f.call(t,e),t[e])}},x=function(t){if(!g(t))throw TypeError(String(t)+\" is not an object\");return t},A=Object.defineProperty,I={f:i?A:function(t,e,r){if(x(t),e=y(e,!0),x(r),R)try{return A(t,e,r)}catch(t){}if(\"get\"in r||\"set\"in r)throw TypeError(\"Accessors not supported\");return\"value\"in r&&(t[e]=r.value),t}},_=i?function(t,e,r){return I.f(t,e,s(1,r))}:function(t,e,r){return t[e]=r,t},j=function(t,e){try{_(n,t,e)}catch(r){n[t]=e}return e},P=n[\"__core-js_shared__\"]||j(\"__core-js_shared__\",{}),N=Function.toString;\"function\"!=typeof P.inspectSource&&(P.inspectSource=function(t){return N.call(t)});var M,U,k,L=P.inspectSource,D=n.WeakMap,C=\"function\"==typeof D&&/native code/.test(L(D)),F=e(function(t){(t.exports=function(t,e){return P[t]||(P[t]=void 0!==e?e:{})})(\"versions\",[]).push({version:\"3.8.1\",mode:\"global\",copyright:\"© 2020 Denis Pushkarev (zloirock.ru)\"})}),B=0,W=Math.random(),z=function(t){return\"Symbol(\"+String(void 0===t?\"\":t)+\")_\"+(++B+W).toString(36)},G=F(\"keys\"),K=function(t){return G[t]||(G[t]=z(t))},$={};if(C){var V=P.state||(P.state=new(0,n.WeakMap)),q=V.get,H=V.has,X=V.set;M=function(t,e){return e.facade=t,X.call(V,t,e),e},U=function(t){return q.call(V,t)||{}},k=function(t){return H.call(V,t)}}else{var Y=K(\"state\");$[Y]=!0,M=function(t,e){return e.facade=t,_(t,Y,e),e},U=function(t){return b(t,Y)?t[Y]:{}},k=function(t){return b(t,Y)}}var J,Q={set:M,get:U,has:k,enforce:function(t){return k(t)?U(t):M(t,{})},getterFor:function(t){return function(e){var r;if(!g(e)||(r=U(e)).type!==t)throw TypeError(\"Incompatible receiver, \"+t+\" required\");return r}}},Z=e(function(t){var e=Q.get,r=Q.enforce,o=String(String).split(\"String\");(t.exports=function(t,e,i,a){var u,c=!!a&&!!a.unsafe,s=!!a&&!!a.enumerable,f=!!a&&!!a.noTargetGet;\"function\"==typeof i&&(\"string\"!=typeof e||b(i,\"name\")||_(i,\"name\",e),(u=r(i)).source||(u.source=o.join(\"string\"==typeof e?e:\"\"))),t!==n?(c?!f&&t[e]&&(s=!0):delete t[e],s?t[e]=i:_(t,e,i)):s?t[e]=i:j(e,i)})(Function.prototype,\"toString\",function(){return\"function\"==typeof this&&e(this).source||L(this)})}),tt=n,et=function(t){return\"function\"==typeof t?t:void 0},rt=function(t,e){return arguments.length<2?et(tt[t])||et(n[t]):tt[t]&&tt[t][e]||n[t]&&n[t][e]},nt=Math.ceil,ot=Math.floor,it=function(t){return isNaN(t=+t)?0:(t>0?ot:nt)(t)},at=Math.min,ut=function(t){return t>0?at(it(t),9007199254740991):0},ct=Math.max,st=Math.min,ft=function(t,e){var r=it(t);return r<0?ct(r+e,0):st(r,e)},lt=function(t){return function(e,r,n){var o,i=v(e),a=ut(i.length),u=ft(n,a);if(t&&r!=r){for(;a>u;)if((o=i[u++])!=o)return!0}else for(;a>u;u++)if((t||u in i)&&i[u]===r)return t||u||0;return!t&&-1}},ht={includes:lt(!0),indexOf:lt(!1)},pt=ht.indexOf,dt=function(t,e){var r,n=v(t),o=0,i=[];for(r in n)!b($,r)&&b(n,r)&&i.push(r);for(;e.length>o;)b(n,r=e[o++])&&(~pt(i,r)||i.push(r));return i},vt=[\"constructor\",\"hasOwnProperty\",\"isPrototypeOf\",\"propertyIsEnumerable\",\"toLocaleString\",\"toString\",\"valueOf\"],gt=vt.concat(\"length\",\"prototype\"),yt={f:Object.getOwnPropertyNames||function(t){return dt(t,gt)}},mt={f:Object.getOwnPropertySymbols},bt=rt(\"Reflect\",\"ownKeys\")||function(t){var e=yt.f(x(t)),r=mt.f;return r?e.concat(r(t)):e},St=function(t,e){for(var r=bt(e),n=I.f,o=O.f,i=0;i<r.length;i++){var a=r[i];b(t,a)||n(t,a,o(e,a))}},Et=/#|\\.prototype\\./,wt=function(t,e){var r=Tt[Rt(t)];return r==xt||r!=Ot&&(\"function\"==typeof e?o(e):!!e)},Rt=wt.normalize=function(t){return String(t).replace(Et,\".\").toLowerCase()},Tt=wt.data={},Ot=wt.NATIVE=\"N\",xt=wt.POLYFILL=\"P\",At=wt,It=O.f,_t=function(t,e){var r,o,i,a,u,c=t.target,s=t.global,f=t.stat;if(r=s?n:f?n[c]||j(c,{}):(n[c]||{}).prototype)for(o in e){if(a=e[o],i=t.noTargetGet?(u=It(r,o))&&u.value:r[o],!At(s?o:c+(f?\".\":\"#\")+o,t.forced)&&void 0!==i){if(typeof a==typeof i)continue;St(a,i)}(t.sham||i&&i.sham)&&_(a,\"sham\",!0),Z(r,o,a,t)}},jt=function(t){return Object(d(t))},Pt=Math.min,Nt=[].copyWithin||function(t,e){var r=jt(this),n=ut(r.length),o=ft(t,n),i=ft(e,n),a=arguments.length>2?arguments[2]:void 0,u=Pt((void 0===a?n:ft(a,n))-i,n-o),c=1;for(i<o&&o<i+u&&(c=-1,i+=u-1,o+=u-1);u-- >0;)i in r?r[o]=r[i]:delete r[o],o+=c,i+=c;return r},Mt=!!Object.getOwnPropertySymbols&&!o(function(){return!String(Symbol())}),Ut=Mt&&!Symbol.sham&&\"symbol\"==typeof Symbol.iterator,kt=F(\"wks\"),Lt=n.Symbol,Dt=Ut?Lt:Lt&&Lt.withoutSetter||z,Ct=function(t){return b(kt,t)||(kt[t]=Mt&&b(Lt,t)?Lt[t]:Dt(\"Symbol.\"+t)),kt[t]},Ft=Object.keys||function(t){return dt(t,vt)},Bt=i?Object.defineProperties:function(t,e){x(t);for(var r,n=Ft(e),o=n.length,i=0;o>i;)I.f(t,r=n[i++],e[r]);return t},Wt=rt(\"document\",\"documentElement\"),zt=K(\"IE_PROTO\"),Gt=function(){},Kt=function(t){return\"<script>\"+t+\"<\\/script>\"},$t=function(){try{J=document.domain&&new ActiveXObject(\"htmlfile\")}catch(t){}var t,e;$t=J?function(t){t.write(Kt(\"\")),t.close();var e=t.parentWindow.Object;return t=null,e}(J):((e=w(\"iframe\")).style.display=\"none\",Wt.appendChild(e),e.src=String(\"javascript:\"),(t=e.contentWindow.document).open(),t.write(Kt(\"document.F=Object\")),t.close(),t.F);for(var r=vt.length;r--;)delete $t.prototype[vt[r]];return $t()};$[zt]=!0;var Vt=Object.create||function(t,e){var r;return null!==t?(Gt.prototype=x(t),r=new Gt,Gt.prototype=null,r[zt]=t):r=$t(),void 0===e?r:Bt(r,e)},qt=Ct(\"unscopables\"),Ht=Array.prototype;null==Ht[qt]&&I.f(Ht,qt,{configurable:!0,value:Vt(null)});var Xt=function(t){Ht[qt][t]=!0};_t({target:\"Array\",proto:!0},{copyWithin:Nt}),Xt(\"copyWithin\");var Yt=function(t){if(\"function\"!=typeof t)throw TypeError(String(t)+\" is not a function\");return t},Jt=function(t,e,r){if(Yt(t),void 0===e)return t;switch(r){case 0:return function(){return t.call(e)};case 1:return function(r){return t.call(e,r)};case 2:return function(r,n){return t.call(e,r,n)};case 3:return function(r,n,o){return t.call(e,r,n,o)}}return function(){return t.apply(e,arguments)}},Qt=Function.call,Zt=function(t,e,r){return Jt(Qt,n[t].prototype[e],r)};Zt(\"Array\",\"copyWithin\"),_t({target:\"Array\",proto:!0},{fill:function(t){for(var e=jt(this),r=ut(e.length),n=arguments.length,o=ft(n>1?arguments[1]:void 0,r),i=n>2?arguments[2]:void 0,a=void 0===i?r:ft(i,r);a>o;)e[o++]=t;return e}}),Xt(\"fill\"),Zt(\"Array\",\"fill\");var te=Array.isArray||function(t){return\"Array\"==l(t)},ee=Ct(\"species\"),re=function(t,e){var r;return te(t)&&(\"function\"!=typeof(r=t.constructor)||r!==Array&&!te(r.prototype)?g(r)&&null===(r=r[ee])&&(r=void 0):r=void 0),new(void 0===r?Array:r)(0===e?0:e)},ne=[].push,oe=function(t){var e=1==t,r=2==t,n=3==t,o=4==t,i=6==t,a=7==t,u=5==t||i;return function(c,s,f,l){for(var h,d,v=jt(c),g=p(v),y=Jt(s,f,3),m=ut(g.length),b=0,S=l||re,E=e?S(c,m):r||a?S(c,0):void 0;m>b;b++)if((u||b in g)&&(d=y(h=g[b],b,v),t))if(e)E[b]=d;else if(d)switch(t){case 3:return!0;case 5:return h;case 6:return b;case 2:ne.call(E,h)}else switch(t){case 4:return!1;case 7:ne.call(E,h)}return i?-1:n||o?o:E}},ie={forEach:oe(0),map:oe(1),filter:oe(2),some:oe(3),every:oe(4),find:oe(5),findIndex:oe(6),filterOut:oe(7)},ae=Object.defineProperty,ue={},ce=function(t){throw t},se=function(t,e){if(b(ue,t))return ue[t];e||(e={});var r=[][t],n=!!b(e,\"ACCESSORS\")&&e.ACCESSORS,a=b(e,0)?e[0]:ce,u=b(e,1)?e[1]:void 0;return ue[t]=!!r&&!o(function(){if(n&&!i)return!0;var t={length:-1};n?ae(t,1,{enumerable:!0,get:ce}):t[1]=1,r.call(t,a,u)})},fe=ie.find,le=!0,he=se(\"find\");\"find\"in[]&&Array(1).find(function(){le=!1}),_t({target:\"Array\",proto:!0,forced:le||!he},{find:function(t){return fe(this,t,arguments.length>1?arguments[1]:void 0)}}),Xt(\"find\"),Zt(\"Array\",\"find\");var pe=ie.findIndex,de=!0,ve=se(\"findIndex\");\"findIndex\"in[]&&Array(1).findIndex(function(){de=!1}),_t({target:\"Array\",proto:!0,forced:de||!ve},{findIndex:function(t){return pe(this,t,arguments.length>1?arguments[1]:void 0)}}),Xt(\"findIndex\"),Zt(\"Array\",\"findIndex\");var ge=function t(e,r,n,o,i,a,u,c){for(var s,f=i,l=0,h=!!u&&Jt(u,c,3);l<o;){if(l in n){if(s=h?h(n[l],l,r):n[l],a>0&&te(s))f=t(e,r,s,ut(s.length),f,a-1)-1;else{if(f>=9007199254740991)throw TypeError(\"Exceed the acceptable array length\");e[f]=s}f++}l++}return f};_t({target:\"Array\",proto:!0},{flatMap:function(t){var e,r=jt(this),n=ut(r.length);return Yt(t),(e=re(r,0)).length=ge(e,r,r,n,0,1,t,arguments.length>1?arguments[1]:void 0),e}}),Xt(\"flatMap\"),Zt(\"Array\",\"flatMap\"),_t({target:\"Array\",proto:!0},{flat:function(){var t=arguments.length?arguments[0]:void 0,e=jt(this),r=ut(e.length),n=re(e,0);return n.length=ge(n,e,e,r,0,void 0===t?1:it(t)),n}}),Xt(\"flat\"),Zt(\"Array\",\"flat\");var ye,me,be,Se=function(t){return function(e,r){var n,o,i=String(d(e)),a=it(r),u=i.length;return a<0||a>=u?t?\"\":void 0:(n=i.charCodeAt(a))<55296||n>56319||a+1===u||(o=i.charCodeAt(a+1))<56320||o>57343?t?i.charAt(a):n:t?i.slice(a,a+2):o-56320+(n-55296<<10)+65536}},Ee={codeAt:Se(!1),charAt:Se(!0)},we=!o(function(){function t(){}return t.prototype.constructor=null,Object.getPrototypeOf(new t)!==t.prototype}),Re=K(\"IE_PROTO\"),Te=Object.prototype,Oe=we?Object.getPrototypeOf:function(t){return t=jt(t),b(t,Re)?t[Re]:\"function\"==typeof t.constructor&&t instanceof t.constructor?t.constructor.prototype:t instanceof Object?Te:null},xe=Ct(\"iterator\"),Ae=!1;[].keys&&(\"next\"in(be=[].keys())?(me=Oe(Oe(be)))!==Object.prototype&&(ye=me):Ae=!0),null==ye&&(ye={}),b(ye,xe)||_(ye,xe,function(){return this});var Ie={IteratorPrototype:ye,BUGGY_SAFARI_ITERATORS:Ae},_e=I.f,je=Ct(\"toStringTag\"),Pe=function(t,e,r){t&&!b(t=r?t:t.prototype,je)&&_e(t,je,{configurable:!0,value:e})},Ne={},Me=Ie.IteratorPrototype,Ue=function(){return this},ke=function(t){if(!g(t)&&null!==t)throw TypeError(\"Can't set \"+String(t)+\" as a prototype\");return t},Le=Object.setPrototypeOf||(\"__proto__\"in{}?function(){var t,e=!1,r={};try{(t=Object.getOwnPropertyDescriptor(Object.prototype,\"__proto__\").set).call(r,[]),e=r instanceof Array}catch(t){}return function(r,n){return x(r),ke(n),e?t.call(r,n):r.__proto__=n,r}}():void 0),De=Ie.IteratorPrototype,Ce=Ie.BUGGY_SAFARI_ITERATORS,Fe=Ct(\"iterator\"),Be=function(){return this},We=function(t,e,r,n,o,i,a){!function(t,e,r){var n=e+\" Iterator\";t.prototype=Vt(Me,{next:s(1,r)}),Pe(t,n,!1),Ne[n]=Ue}(r,e,n);var u,c,f,l=function(t){if(t===o&&g)return g;if(!Ce&&t in d)return d[t];switch(t){case\"keys\":case\"values\":case\"entries\":return function(){return new r(this,t)}}return function(){return new r(this)}},h=e+\" Iterator\",p=!1,d=t.prototype,v=d[Fe]||d[\"@@iterator\"]||o&&d[o],g=!Ce&&v||l(o),y=\"Array\"==e&&d.entries||v;if(y&&(u=Oe(y.call(new t)),De!==Object.prototype&&u.next&&(Oe(u)!==De&&(Le?Le(u,De):\"function\"!=typeof u[Fe]&&_(u,Fe,Be)),Pe(u,h,!0))),\"values\"==o&&v&&\"values\"!==v.name&&(p=!0,g=function(){return v.call(this)}),d[Fe]!==g&&_(d,Fe,g),Ne[e]=g,o)if(c={values:l(\"values\"),keys:i?g:l(\"keys\"),entries:l(\"entries\")},a)for(f in c)(Ce||p||!(f in d))&&Z(d,f,c[f]);else _t({target:e,proto:!0,forced:Ce||p},c);return c},ze=Ee.charAt,Ge=Q.set,Ke=Q.getterFor(\"String Iterator\");We(String,\"String\",function(t){Ge(this,{type:\"String Iterator\",string:String(t),index:0})},function(){var t,e=Ke(this),r=e.string,n=e.index;return n>=r.length?{value:void 0,done:!0}:(t=ze(r,n),e.index+=t.length,{value:t,done:!1})});var $e=function(t){var e=t.return;if(void 0!==e)return x(e.call(t)).value},Ve=function(t,e,r,n){try{return n?e(x(r)[0],r[1]):e(r)}catch(e){throw $e(t),e}},qe=Ct(\"iterator\"),He=Array.prototype,Xe=function(t){return void 0!==t&&(Ne.Array===t||He[qe]===t)},Ye=function(t,e,r){var n=y(e);n in t?I.f(t,n,s(0,r)):t[n]=r},Je={};Je[Ct(\"toStringTag\")]=\"z\";var Qe=\"[object z]\"===String(Je),Ze=Ct(\"toStringTag\"),tr=\"Arguments\"==l(function(){return arguments}()),er=Qe?l:function(t){var e,r,n;return void 0===t?\"Undefined\":null===t?\"Null\":\"string\"==typeof(r=function(t,e){try{return t[e]}catch(t){}}(e=Object(t),Ze))?r:tr?l(e):\"Object\"==(n=l(e))&&\"function\"==typeof e.callee?\"Arguments\":n},rr=Ct(\"iterator\"),nr=function(t){if(null!=t)return t[rr]||t[\"@@iterator\"]||Ne[er(t)]},or=Ct(\"iterator\"),ir=!1;try{var ar=0,ur={next:function(){return{done:!!ar++}},return:function(){ir=!0}};ur[or]=function(){return this},Array.from(ur,function(){throw 2})}catch(t){}var cr=function(t,e){if(!e&&!ir)return!1;var r=!1;try{var n={};n[or]=function(){return{next:function(){return{done:r=!0}}}},t(n)}catch(t){}return r},sr=!cr(function(t){Array.from(t)});_t({target:\"Array\",stat:!0,forced:sr},{from:function(t){var e,r,n,o,i,a,u=jt(t),c=\"function\"==typeof this?this:Array,s=arguments.length,f=s>1?arguments[1]:void 0,l=void 0!==f,h=nr(u),p=0;if(l&&(f=Jt(f,s>2?arguments[2]:void 0,2)),null==h||c==Array&&Xe(h))for(r=new c(e=ut(u.length));e>p;p++)a=l?f(u[p],p):u[p],Ye(r,p,a);else for(i=(o=h.call(u)).next,r=new c;!(n=i.call(o)).done;p++)a=l?Ve(o,f,[n.value,p],!0):n.value,Ye(r,p,a);return r.length=p,r}});var fr=ht.includes,lr=se(\"indexOf\",{ACCESSORS:!0,1:0});_t({target:\"Array\",proto:!0,forced:!lr},{includes:function(t){return fr(this,t,arguments.length>1?arguments[1]:void 0)}}),Xt(\"includes\"),Zt(\"Array\",\"includes\");var hr=Q.set,pr=Q.getterFor(\"Array Iterator\"),dr=We(Array,\"Array\",function(t,e){hr(this,{type:\"Array Iterator\",target:v(t),index:0,kind:e})},function(){var t=pr(this),e=t.target,r=t.kind,n=t.index++;return!e||n>=e.length?(t.target=void 0,{value:void 0,done:!0}):\"keys\"==r?{value:n,done:!1}:\"values\"==r?{value:e[n],done:!1}:{value:[n,e[n]],done:!1}},\"values\");Ne.Arguments=Ne.Array,Xt(\"keys\"),Xt(\"values\"),Xt(\"entries\"),Zt(\"Array\",\"values\");var vr=o(function(){function t(){}return!(Array.of.call(t)instanceof t)});_t({target:\"Array\",stat:!0,forced:vr},{of:function(){for(var t=0,e=arguments.length,r=new(\"function\"==typeof this?this:Array)(e);e>t;)Ye(r,t,arguments[t++]);return r.length=e,r}});var gr=Ct(\"hasInstance\"),yr=Function.prototype;gr in yr||I.f(yr,gr,{value:function(t){if(\"function\"!=typeof this||!g(t))return!1;if(!g(this.prototype))return t instanceof this;for(;t=Oe(t);)if(this.prototype===t)return!0;return!1}}),Ct(\"hasInstance\");var mr=Function.prototype,br=mr.toString,Sr=/^\\s*function ([^ (]*)/;i&&!(\"name\"in mr)&&(0,I.f)(mr,\"name\",{configurable:!0,get:function(){try{return br.call(this).match(Sr)[1]}catch(t){return\"\"}}});var Er=!o(function(){return Object.isExtensible(Object.preventExtensions({}))}),wr=e(function(t){var e=I.f,r=z(\"meta\"),n=0,o=Object.isExtensible||function(){return!0},i=function(t){e(t,r,{value:{objectID:\"O\"+ ++n,weakData:{}}})},a=t.exports={REQUIRED:!1,fastKey:function(t,e){if(!g(t))return\"symbol\"==typeof t?t:(\"string\"==typeof t?\"S\":\"P\")+t;if(!b(t,r)){if(!o(t))return\"F\";if(!e)return\"E\";i(t)}return t[r].objectID},getWeakData:function(t,e){if(!b(t,r)){if(!o(t))return!0;if(!e)return!1;i(t)}return t[r].weakData},onFreeze:function(t){return Er&&a.REQUIRED&&o(t)&&!b(t,r)&&i(t),t}};$[r]=!0}),Rr=function(t,e){this.stopped=t,this.result=e},Tr=function(t,e,r){var n,o,i,a,u,c,s,f=!(!r||!r.AS_ENTRIES),l=!(!r||!r.IS_ITERATOR),h=!(!r||!r.INTERRUPTED),p=Jt(e,r&&r.that,1+f+h),d=function(t){return n&&$e(n),new Rr(!0,t)},v=function(t){return f?(x(t),h?p(t[0],t[1],d):p(t[0],t[1])):h?p(t,d):p(t)};if(l)n=t;else{if(\"function\"!=typeof(o=nr(t)))throw TypeError(\"Target is not iterable\");if(Xe(o)){for(i=0,a=ut(t.length);a>i;i++)if((u=v(t[i]))&&u instanceof Rr)return u;return new Rr(!1)}n=o.call(t)}for(c=n.next;!(s=c.call(n)).done;){try{u=v(s.value)}catch(t){throw $e(n),t}if(\"object\"==typeof u&&u&&u instanceof Rr)return u}return new Rr(!1)},Or=function(t,e,r){if(!(t instanceof e))throw TypeError(\"Incorrect \"+(r?r+\" \":\"\")+\"invocation\");return t},xr=function(t,e,r){var n,o;return Le&&\"function\"==typeof(n=e.constructor)&&n!==r&&g(o=n.prototype)&&o!==r.prototype&&Le(t,o),t},Ar=function(t,e,r){var i=-1!==t.indexOf(\"Map\"),a=-1!==t.indexOf(\"Weak\"),u=i?\"set\":\"add\",c=n[t],s=c&&c.prototype,f=c,l={},h=function(t){var e=s[t];Z(s,t,\"add\"==t?function(t){return e.call(this,0===t?0:t),this}:\"delete\"==t?function(t){return!(a&&!g(t))&&e.call(this,0===t?0:t)}:\"get\"==t?function(t){return a&&!g(t)?void 0:e.call(this,0===t?0:t)}:\"has\"==t?function(t){return!(a&&!g(t))&&e.call(this,0===t?0:t)}:function(t,r){return e.call(this,0===t?0:t,r),this})};if(At(t,\"function\"!=typeof c||!(a||s.forEach&&!o(function(){(new c).entries().next()}))))f=r.getConstructor(e,t,i,u),wr.REQUIRED=!0;else if(At(t,!0)){var p=new f,d=p[u](a?{}:-0,1)!=p,v=o(function(){p.has(1)}),y=cr(function(t){new c(t)}),m=!a&&o(function(){for(var t=new c,e=5;e--;)t[u](e,e);return!t.has(-0)});y||((f=e(function(e,r){Or(e,f,t);var n=xr(new c,e,f);return null!=r&&Tr(r,n[u],{that:n,AS_ENTRIES:i}),n})).prototype=s,s.constructor=f),(v||m)&&(h(\"delete\"),h(\"has\"),i&&h(\"get\")),(m||d)&&h(u),a&&s.clear&&delete s.clear}return l[t]=f,_t({global:!0,forced:f!=c},l),Pe(f,t),a||r.setStrong(f,t,i),f},Ir=function(t,e,r){for(var n in e)Z(t,n,e[n],r);return t},_r=Ct(\"species\"),jr=function(t){var e=rt(t);i&&e&&!e[_r]&&(0,I.f)(e,_r,{configurable:!0,get:function(){return this}})},Pr=I.f,Nr=wr.fastKey,Mr=Q.set,Ur=Q.getterFor,kr={getConstructor:function(t,e,r,n){var o=t(function(t,a){Or(t,o,e),Mr(t,{type:e,index:Vt(null),first:void 0,last:void 0,size:0}),i||(t.size=0),null!=a&&Tr(a,t[n],{that:t,AS_ENTRIES:r})}),a=Ur(e),u=function(t,e,r){var n,o,u=a(t),s=c(t,e);return s?s.value=r:(u.last=s={index:o=Nr(e,!0),key:e,value:r,previous:n=u.last,next:void 0,removed:!1},u.first||(u.first=s),n&&(n.next=s),i?u.size++:t.size++,\"F\"!==o&&(u.index[o]=s)),t},c=function(t,e){var r,n=a(t),o=Nr(e);if(\"F\"!==o)return n.index[o];for(r=n.first;r;r=r.next)if(r.key==e)return r};return Ir(o.prototype,{clear:function(){for(var t=a(this),e=t.index,r=t.first;r;)r.removed=!0,r.previous&&(r.previous=r.previous.next=void 0),delete e[r.index],r=r.next;t.first=t.last=void 0,i?t.size=0:this.size=0},delete:function(t){var e=a(this),r=c(this,t);if(r){var n=r.next,o=r.previous;delete e.index[r.index],r.removed=!0,o&&(o.next=n),n&&(n.previous=o),e.first==r&&(e.first=n),e.last==r&&(e.last=o),i?e.size--:this.size--}return!!r},forEach:function(t){for(var e,r=a(this),n=Jt(t,arguments.length>1?arguments[1]:void 0,3);e=e?e.next:r.first;)for(n(e.value,e.key,this);e&&e.removed;)e=e.previous},has:function(t){return!!c(this,t)}}),Ir(o.prototype,r?{get:function(t){var e=c(this,t);return e&&e.value},set:function(t,e){return u(this,0===t?0:t,e)}}:{add:function(t){return u(this,t=0===t?0:t,t)}}),i&&Pr(o.prototype,\"size\",{get:function(){return a(this).size}}),o},setStrong:function(t,e,r){var n=e+\" Iterator\",o=Ur(e),i=Ur(n);We(t,e,function(t,e){Mr(this,{type:n,target:t,state:o(t),kind:e,last:void 0})},function(){for(var t=i(this),e=t.kind,r=t.last;r&&r.removed;)r=r.previous;return t.target&&(t.last=r=r?r.next:t.state.first)?\"keys\"==e?{value:r.key,done:!1}:\"values\"==e?{value:r.value,done:!1}:{value:[r.key,r.value],done:!1}:(t.target=void 0,{value:void 0,done:!0})},r?\"entries\":\"values\",!r,!0),jr(e)}},Lr=Ar(\"Map\",function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},kr);Qe||Z(Object.prototype,\"toString\",Qe?{}.toString:function(){return\"[object \"+er(this)+\"]\"},{unsafe:!0});var Dr={CSSRuleList:0,CSSStyleDeclaration:0,CSSValueList:0,ClientRectList:0,DOMRectList:0,DOMStringList:0,DOMTokenList:1,DataTransferItemList:0,FileList:0,HTMLAllCollection:0,HTMLCollection:0,HTMLFormElement:0,HTMLSelectElement:0,MediaList:0,MimeTypeArray:0,NamedNodeMap:0,NodeList:1,PaintRequestList:0,Plugin:0,PluginArray:0,SVGLengthList:0,SVGNumberList:0,SVGPathSegList:0,SVGPointList:0,SVGStringList:0,SVGTransformList:0,SourceBufferList:0,StyleSheetList:0,TextTrackCueList:0,TextTrackList:0,TouchList:0},Cr=Ct(\"iterator\"),Fr=Ct(\"toStringTag\"),Br=dr.values;for(var Wr in Dr){var zr=n[Wr],Gr=zr&&zr.prototype;if(Gr){if(Gr[Cr]!==Br)try{_(Gr,Cr,Br)}catch(t){Gr[Cr]=Br}if(Gr[Fr]||_(Gr,Fr,Wr),Dr[Wr])for(var Kr in dr)if(Gr[Kr]!==dr[Kr])try{_(Gr,Kr,dr[Kr])}catch(t){Gr[Kr]=dr[Kr]}}}var $r=function(t){var e,r,n,o,i=arguments.length,a=i>1?arguments[1]:void 0;return Yt(this),(e=void 0!==a)&&Yt(a),null==t?new this:(r=[],e?(n=0,o=Jt(a,i>2?arguments[2]:void 0,2),Tr(t,function(t){r.push(o(t,n++))})):Tr(t,r.push,{that:r}),new this(r))};_t({target:\"Map\",stat:!0},{from:$r});var Vr=function(){for(var t=arguments.length,e=new Array(t);t--;)e[t]=arguments[t];return new this(e)};_t({target:\"Map\",stat:!0},{of:Vr});var qr=function(){for(var t,e=x(this),r=Yt(e.delete),n=!0,o=0,i=arguments.length;o<i;o++)t=r.call(e,arguments[o]),n=n&&t;return!!n};_t({target:\"Map\",proto:!0,real:!0,forced:!1},{deleteAll:function(){return qr.apply(this,arguments)}});var Hr=function(t,e){var r=x(this),n=r.has(t)&&\"update\"in e?e.update(r.get(t),t,r):e.insert(t,r);return r.set(t,n),n};_t({target:\"Map\",proto:!0,real:!0,forced:!1},{emplace:Hr});var Xr=function(t){return Map.prototype.entries.call(t)};_t({target:\"Map\",proto:!0,real:!0,forced:!1},{every:function(t){var e=x(this),r=Xr(e),n=Jt(t,arguments.length>1?arguments[1]:void 0,3);return!Tr(r,function(t,r,o){if(!n(r,t,e))return o()},{AS_ENTRIES:!0,IS_ITERATOR:!0,INTERRUPTED:!0}).stopped}});var Yr=Ct(\"species\"),Jr=function(t,e){var r,n=x(t).constructor;return void 0===n||null==(r=x(n)[Yr])?e:Yt(r)};_t({target:\"Map\",proto:!0,real:!0,forced:!1},{filter:function(t){var e=x(this),r=Xr(e),n=Jt(t,arguments.length>1?arguments[1]:void 0,3),o=new(Jr(e,rt(\"Map\"))),i=Yt(o.set);return Tr(r,function(t,r){n(r,t,e)&&i.call(o,t,r)},{AS_ENTRIES:!0,IS_ITERATOR:!0}),o}}),_t({target:\"Map\",proto:!0,real:!0,forced:!1},{find:function(t){var e=x(this),r=Xr(e),n=Jt(t,arguments.length>1?arguments[1]:void 0,3);return Tr(r,function(t,r,o){if(n(r,t,e))return o(r)},{AS_ENTRIES:!0,IS_ITERATOR:!0,INTERRUPTED:!0}).result}}),_t({target:\"Map\",proto:!0,real:!0,forced:!1},{findKey:function(t){var e=x(this),r=Xr(e),n=Jt(t,arguments.length>1?arguments[1]:void 0,3);return Tr(r,function(t,r,o){if(n(r,t,e))return o(t)},{AS_ENTRIES:!0,IS_ITERATOR:!0,INTERRUPTED:!0}).result}}),_t({target:\"Map\",stat:!0},{groupBy:function(t,e){var r=new this;Yt(e);var n=Yt(r.has),o=Yt(r.get),i=Yt(r.set);return Tr(t,function(t){var a=e(t);n.call(r,a)?o.call(r,a).push(t):i.call(r,a,[t])}),r}}),_t({target:\"Map\",proto:!0,real:!0,forced:!1},{includes:function(t){return Tr(Xr(x(this)),function(e,r,n){if((o=r)===(i=t)||o!=o&&i!=i)return n();var o,i},{AS_ENTRIES:!0,IS_ITERATOR:!0,INTERRUPTED:!0}).stopped}}),_t({target:\"Map\",stat:!0},{keyBy:function(t,e){var r=new this;Yt(e);var n=Yt(r.set);return Tr(t,function(t){n.call(r,e(t),t)}),r}}),_t({target:\"Map\",proto:!0,real:!0,forced:!1},{keyOf:function(t){return Tr(Xr(x(this)),function(e,r,n){if(r===t)return n(e)},{AS_ENTRIES:!0,IS_ITERATOR:!0,INTERRUPTED:!0}).result}}),_t({target:\"Map\",proto:!0,real:!0,forced:!1},{mapKeys:function(t){var e=x(this),r=Xr(e),n=Jt(t,arguments.length>1?arguments[1]:void 0,3),o=new(Jr(e,rt(\"Map\"))),i=Yt(o.set);return Tr(r,function(t,r){i.call(o,n(r,t,e),r)},{AS_ENTRIES:!0,IS_ITERATOR:!0}),o}}),_t({target:\"Map\",proto:!0,real:!0,forced:!1},{mapValues:function(t){var e=x(this),r=Xr(e),n=Jt(t,arguments.length>1?arguments[1]:void 0,3),o=new(Jr(e,rt(\"Map\"))),i=Yt(o.set);return Tr(r,function(t,r){i.call(o,t,n(r,t,e))},{AS_ENTRIES:!0,IS_ITERATOR:!0}),o}}),_t({target:\"Map\",proto:!0,real:!0,forced:!1},{merge:function(t){for(var e=x(this),r=Yt(e.set),n=0;n<arguments.length;)Tr(arguments[n++],r,{that:e,AS_ENTRIES:!0});return e}}),_t({target:\"Map\",proto:!0,real:!0,forced:!1},{reduce:function(t){var e=x(this),r=Xr(e),n=arguments.length<2,o=n?void 0:arguments[1];if(Yt(t),Tr(r,function(r,i){n?(n=!1,o=i):o=t(o,i,r,e)},{AS_ENTRIES:!0,IS_ITERATOR:!0}),n)throw TypeError(\"Reduce of empty map with no initial value\");return o}}),_t({target:\"Map\",proto:!0,real:!0,forced:!1},{some:function(t){var e=x(this),r=Xr(e),n=Jt(t,arguments.length>1?arguments[1]:void 0,3);return Tr(r,function(t,r,o){if(n(r,t,e))return o()},{AS_ENTRIES:!0,IS_ITERATOR:!0,INTERRUPTED:!0}).stopped}}),_t({target:\"Map\",proto:!0,real:!0,forced:!1},{update:function(t,e){var r=x(this),n=arguments.length;Yt(e);var o=r.has(t);if(!o&&n<3)throw TypeError(\"Updating absent value\");var i=o?r.get(t):Yt(n>2?arguments[2]:void 0)(t,r);return r.set(t,e(i,t,r)),r}});var Qr=function(t,e){var r,n=x(this),o=arguments.length>2?arguments[2]:void 0;if(\"function\"!=typeof e&&\"function\"!=typeof o)throw TypeError(\"At least one callback required\");return n.has(t)?(r=n.get(t),\"function\"==typeof e&&(r=e(r),n.set(t,r))):\"function\"==typeof o&&(r=o(),n.set(t,r)),r};_t({target:\"Map\",proto:!0,real:!0,forced:!1},{upsert:Qr}),_t({target:\"Map\",proto:!0,real:!0,forced:!1},{updateOrInsert:Qr});var Zr=Ar(\"Set\",function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},kr);_t({target:\"Set\",stat:!0},{from:$r}),_t({target:\"Set\",stat:!0},{of:Vr});var tn=function(){for(var t=x(this),e=Yt(t.add),r=0,n=arguments.length;r<n;r++)e.call(t,arguments[r]);return t};_t({target:\"Set\",proto:!0,real:!0,forced:!1},{addAll:function(){return tn.apply(this,arguments)}}),_t({target:\"Set\",proto:!0,real:!0,forced:!1},{deleteAll:function(){return qr.apply(this,arguments)}});var en=function(t){return Set.prototype.values.call(t)};_t({target:\"Set\",proto:!0,real:!0,forced:!1},{every:function(t){var e=x(this),r=en(e),n=Jt(t,arguments.length>1?arguments[1]:void 0,3);return!Tr(r,function(t,r){if(!n(t,t,e))return r()},{IS_ITERATOR:!0,INTERRUPTED:!0}).stopped}}),_t({target:\"Set\",proto:!0,real:!0,forced:!1},{difference:function(t){var e=x(this),r=new(Jr(e,rt(\"Set\")))(e),n=Yt(r.delete);return Tr(t,function(t){n.call(r,t)}),r}}),_t({target:\"Set\",proto:!0,real:!0,forced:!1},{filter:function(t){var e=x(this),r=en(e),n=Jt(t,arguments.length>1?arguments[1]:void 0,3),o=new(Jr(e,rt(\"Set\"))),i=Yt(o.add);return Tr(r,function(t){n(t,t,e)&&i.call(o,t)},{IS_ITERATOR:!0}),o}}),_t({target:\"Set\",proto:!0,real:!0,forced:!1},{find:function(t){var e=x(this),r=en(e),n=Jt(t,arguments.length>1?arguments[1]:void 0,3);return Tr(r,function(t,r){if(n(t,t,e))return r(t)},{IS_ITERATOR:!0,INTERRUPTED:!0}).result}}),_t({target:\"Set\",proto:!0,real:!0,forced:!1},{intersection:function(t){var e=x(this),r=new(Jr(e,rt(\"Set\"))),n=Yt(e.has),o=Yt(r.add);return Tr(t,function(t){n.call(e,t)&&o.call(r,t)}),r}}),_t({target:\"Set\",proto:!0,real:!0,forced:!1},{isDisjointFrom:function(t){var e=x(this),r=Yt(e.has);return!Tr(t,function(t,n){if(!0===r.call(e,t))return n()},{INTERRUPTED:!0}).stopped}}),_t({target:\"Set\",proto:!0,real:!0,forced:!1},{isSubsetOf:function(t){var e=function(t){var e=nr(t);if(\"function\"!=typeof e)throw TypeError(String(t)+\" is not iterable\");return x(e.call(t))}(this),r=x(t),n=r.has;return\"function\"!=typeof n&&(r=new(rt(\"Set\"))(t),n=Yt(r.has)),!Tr(e,function(t,e){if(!1===n.call(r,t))return e()},{IS_ITERATOR:!0,INTERRUPTED:!0}).stopped}}),_t({target:\"Set\",proto:!0,real:!0,forced:!1},{isSupersetOf:function(t){var e=x(this),r=Yt(e.has);return!Tr(t,function(t,n){if(!1===r.call(e,t))return n()},{INTERRUPTED:!0}).stopped}}),_t({target:\"Set\",proto:!0,real:!0,forced:!1},{join:function(t){var e=x(this),r=en(e),n=void 0===t?\",\":String(t),o=[];return Tr(r,o.push,{that:o,IS_ITERATOR:!0}),o.join(n)}}),_t({target:\"Set\",proto:!0,real:!0,forced:!1},{map:function(t){var e=x(this),r=en(e),n=Jt(t,arguments.length>1?arguments[1]:void 0,3),o=new(Jr(e,rt(\"Set\"))),i=Yt(o.add);return Tr(r,function(t){i.call(o,n(t,t,e))},{IS_ITERATOR:!0}),o}}),_t({target:\"Set\",proto:!0,real:!0,forced:!1},{reduce:function(t){var e=x(this),r=en(e),n=arguments.length<2,o=n?void 0:arguments[1];if(Yt(t),Tr(r,function(r){n?(n=!1,o=r):o=t(o,r,r,e)},{IS_ITERATOR:!0}),n)throw TypeError(\"Reduce of empty set with no initial value\");return o}}),_t({target:\"Set\",proto:!0,real:!0,forced:!1},{some:function(t){var e=x(this),r=en(e),n=Jt(t,arguments.length>1?arguments[1]:void 0,3);return Tr(r,function(t,r){if(n(t,t,e))return r()},{IS_ITERATOR:!0,INTERRUPTED:!0}).stopped}}),_t({target:\"Set\",proto:!0,real:!0,forced:!1},{symmetricDifference:function(t){var e=x(this),r=new(Jr(e,rt(\"Set\")))(e),n=Yt(r.delete),o=Yt(r.add);return Tr(t,function(t){n.call(r,t)||o.call(r,t)}),r}}),_t({target:\"Set\",proto:!0,real:!0,forced:!1},{union:function(t){var e=x(this),r=new(Jr(e,rt(\"Set\")))(e);return Tr(t,Yt(r.add),{that:r}),r}});var rn=wr.getWeakData,nn=Q.set,on=Q.getterFor,an=ie.find,un=ie.findIndex,cn=0,sn=function(t){return t.frozen||(t.frozen=new fn)},fn=function(){this.entries=[]},ln=function(t,e){return an(t.entries,function(t){return t[0]===e})};fn.prototype={get:function(t){var e=ln(this,t);if(e)return e[1]},has:function(t){return!!ln(this,t)},set:function(t,e){var r=ln(this,t);r?r[1]=e:this.entries.push([t,e])},delete:function(t){var e=un(this.entries,function(e){return e[0]===t});return~e&&this.entries.splice(e,1),!!~e}};var hn={getConstructor:function(t,e,r,n){var o=t(function(t,i){Or(t,o,e),nn(t,{type:e,id:cn++,frozen:void 0}),null!=i&&Tr(i,t[n],{that:t,AS_ENTRIES:r})}),i=on(e),a=function(t,e,r){var n=i(t),o=rn(x(e),!0);return!0===o?sn(n).set(e,r):o[n.id]=r,t};return Ir(o.prototype,{delete:function(t){var e=i(this);if(!g(t))return!1;var r=rn(t);return!0===r?sn(e).delete(t):r&&b(r,e.id)&&delete r[e.id]},has:function(t){var e=i(this);if(!g(t))return!1;var r=rn(t);return!0===r?sn(e).has(t):r&&b(r,e.id)}}),Ir(o.prototype,r?{get:function(t){var e=i(this);if(g(t)){var r=rn(t);return!0===r?sn(e).get(t):r?r[e.id]:void 0}},set:function(t,e){return a(this,t,e)}}:{add:function(t){return a(this,t,!0)}}),o}},pn=e(function(t){var e,r=Q.enforce,o=!n.ActiveXObject&&\"ActiveXObject\"in n,i=Object.isExtensible,a=function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},u=t.exports=Ar(\"WeakMap\",a,hn);if(C&&o){e=hn.getConstructor(a,\"WeakMap\",!0),wr.REQUIRED=!0;var c=u.prototype,s=c.delete,f=c.has,l=c.get,h=c.set;Ir(c,{delete:function(t){if(g(t)&&!i(t)){var n=r(this);return n.frozen||(n.frozen=new e),s.call(this,t)||n.frozen.delete(t)}return s.call(this,t)},has:function(t){if(g(t)&&!i(t)){var n=r(this);return n.frozen||(n.frozen=new e),f.call(this,t)||n.frozen.has(t)}return f.call(this,t)},get:function(t){if(g(t)&&!i(t)){var n=r(this);return n.frozen||(n.frozen=new e),f.call(this,t)?l.call(this,t):n.frozen.get(t)}return l.call(this,t)},set:function(t,n){if(g(t)&&!i(t)){var o=r(this);o.frozen||(o.frozen=new e),f.call(this,t)?h.call(this,t,n):o.frozen.set(t,n)}else h.call(this,t,n);return this}})}});_t({target:\"WeakMap\",proto:!0,real:!0,forced:!1},{emplace:Hr}),_t({target:\"WeakMap\",stat:!0},{from:$r}),_t({target:\"WeakMap\",stat:!0},{of:Vr}),_t({target:\"WeakMap\",proto:!0,real:!0,forced:!1},{deleteAll:function(){return qr.apply(this,arguments)}}),_t({target:\"WeakMap\",proto:!0,real:!0,forced:!1},{upsert:Qr}),Ar(\"WeakSet\",function(t){return function(){return t(this,arguments.length?arguments[0]:void 0)}},hn),_t({target:\"WeakSet\",proto:!0,real:!0,forced:!1},{addAll:function(){return tn.apply(this,arguments)}}),_t({target:\"WeakSet\",proto:!0,real:!0,forced:!1},{deleteAll:function(){return qr.apply(this,arguments)}}),_t({target:\"WeakSet\",stat:!0},{from:$r}),_t({target:\"WeakSet\",stat:!0},{of:Vr});var dn=\"\\t\\n\\v\\f\\r \\u2028\\u2029\\ufeff\",vn=\"[\"+dn+\"]\",gn=RegExp(\"^\"+vn+vn+\"*\"),yn=RegExp(vn+vn+\"*$\"),mn=function(t){return function(e){var r=String(d(e));return 1&t&&(r=r.replace(gn,\"\")),2&t&&(r=r.replace(yn,\"\")),r}},bn={start:mn(1),end:mn(2),trim:mn(3)},Sn=yt.f,En=O.f,wn=I.f,Rn=bn.trim,Tn=n.Number,On=Tn.prototype,xn=\"Number\"==l(Vt(On)),An=function(t){var e,r,n,o,i,a,u,c,s=y(t,!1);if(\"string\"==typeof s&&s.length>2)if(43===(e=(s=Rn(s)).charCodeAt(0))||45===e){if(88===(r=s.charCodeAt(2))||120===r)return NaN}else if(48===e){switch(s.charCodeAt(1)){case 66:case 98:n=2,o=49;break;case 79:case 111:n=8,o=55;break;default:return+s}for(a=(i=s.slice(2)).length,u=0;u<a;u++)if((c=i.charCodeAt(u))<48||c>o)return NaN;return parseInt(i,n)}return+s};if(At(\"Number\",!Tn(\" 0o1\")||!Tn(\"0b1\")||Tn(\"+0x1\"))){for(var In,_n=function(t){var e=arguments.length<1?0:t,r=this;return r instanceof _n&&(xn?o(function(){On.valueOf.call(r)}):\"Number\"!=l(r))?xr(new Tn(An(e)),r,_n):An(e)},jn=i?Sn(Tn):\"MAX_VALUE,MIN_VALUE,NaN,NEGATIVE_INFINITY,POSITIVE_INFINITY,EPSILON,isFinite,isInteger,isNaN,isSafeInteger,MAX_SAFE_INTEGER,MIN_SAFE_INTEGER,parseFloat,parseInt,isInteger,fromString,range\".split(\",\"),Pn=0;jn.length>Pn;Pn++)b(Tn,In=jn[Pn])&&!b(_n,In)&&wn(_n,In,En(Tn,In));_n.prototype=On,On.constructor=_n,Z(n,\"Number\",_n)}_t({target:\"Number\",stat:!0},{EPSILON:Math.pow(2,-52)});var Nn=n.isFinite;_t({target:\"Number\",stat:!0},{isFinite:Number.isFinite||function(t){return\"number\"==typeof t&&Nn(t)}});var Mn=Math.floor,Un=function(t){return!g(t)&&isFinite(t)&&Mn(t)===t};_t({target:\"Number\",stat:!0},{isInteger:Un}),_t({target:\"Number\",stat:!0},{isNaN:function(t){return t!=t}});var kn=Math.abs;_t({target:\"Number\",stat:!0},{isSafeInteger:function(t){return Un(t)&&kn(t)<=9007199254740991}}),_t({target:\"Number\",stat:!0},{MAX_SAFE_INTEGER:9007199254740991}),_t({target:\"Number\",stat:!0},{MIN_SAFE_INTEGER:-9007199254740991});var Ln=c.f,Dn=function(t){return function(e){for(var r,n=v(e),o=Ft(n),a=o.length,u=0,c=[];a>u;)r=o[u++],i&&!Ln.call(n,r)||c.push(t?[r,n[r]]:n[r]);return c}},Cn={entries:Dn(!0),values:Dn(!1)},Fn=Cn.entries;_t({target:\"Object\",stat:!0},{entries:function(t){return Fn(t)}}),_t({target:\"Object\",stat:!0,sham:!i},{getOwnPropertyDescriptors:function(t){for(var e,r,n=v(t),o=O.f,i=bt(n),a={},u=0;i.length>u;)void 0!==(r=o(n,e=i[u++]))&&Ye(a,e,r);return a}});var Bn=Object.is||function(t,e){return t===e?0!==t||1/t==1/e:t!=t&&e!=e};_t({target:\"Object\",stat:!0},{is:Bn});var Wn=o(function(){Ft(1)});_t({target:\"Object\",stat:!0,forced:Wn},{keys:function(t){return Ft(jt(t))}});var zn=Cn.values;_t({target:\"Object\",stat:!0},{values:function(t){return zn(t)}});var Gn=Ee.codeAt;_t({target:\"String\",proto:!0},{codePointAt:function(t){return Gn(this,t)}}),Zt(\"String\",\"codePointAt\");var Kn,$n=Ct(\"match\"),Vn=function(t){var e;return g(t)&&(void 0!==(e=t[$n])?!!e:\"RegExp\"==l(t))},qn=function(t){if(Vn(t))throw TypeError(\"The method doesn't accept regular expressions\");return t},Hn=Ct(\"match\"),Xn=function(t){var e=/./;try{\"/./\"[t](e)}catch(r){try{return e[Hn]=!1,\"/./\"[t](e)}catch(t){}}return!1},Yn=O.f,Jn=\"\".endsWith,Qn=Math.min,Zn=Xn(\"endsWith\"),to=!(Zn||(Kn=Yn(String.prototype,\"endsWith\"),!Kn||Kn.writable));_t({target:\"String\",proto:!0,forced:!to&&!Zn},{endsWith:function(t){var e=String(d(this));qn(t);var r=arguments.length>1?arguments[1]:void 0,n=ut(e.length),o=void 0===r?n:Qn(ut(r),n),i=String(t);return Jn?Jn.call(e,i,o):e.slice(o-i.length,o)===i}}),Zt(\"String\",\"endsWith\");var eo=String.fromCharCode,ro=String.fromCodePoint;_t({target:\"String\",stat:!0,forced:!!ro&&1!=ro.length},{fromCodePoint:function(t){for(var e,r=[],n=arguments.length,o=0;n>o;){if(e=+arguments[o++],ft(e,1114111)!==e)throw RangeError(e+\" is not a valid code point\");r.push(e<65536?eo(e):eo(55296+((e-=65536)>>10),e%1024+56320))}return r.join(\"\")}}),_t({target:\"String\",proto:!0,forced:!Xn(\"includes\")},{includes:function(t){return!!~String(d(this)).indexOf(qn(t),arguments.length>1?arguments[1]:void 0)}}),Zt(\"String\",\"includes\");var no=\"\".repeat||function(t){var e=String(d(this)),r=\"\",n=it(t);if(n<0||Infinity==n)throw RangeError(\"Wrong number of repetitions\");for(;n>0;(n>>>=1)&&(e+=e))1&n&&(r+=e);return r},oo=Math.ceil,io=function(t){return function(e,r,n){var o,i,a=String(d(e)),u=a.length,c=void 0===n?\" \":String(n),s=ut(r);return s<=u||\"\"==c?a:((i=no.call(c,oo((o=s-u)/c.length))).length>o&&(i=i.slice(0,o)),t?a+i:i+a)}},ao={start:io(!1),end:io(!0)},uo=rt(\"navigator\",\"userAgent\")||\"\",co=/Version\\/10\\.\\d+(\\.\\d+)?( Mobile\\/\\w+)? Safari\\//.test(uo),so=ao.start;_t({target:\"String\",proto:!0,forced:co},{padStart:function(t){return so(this,t,arguments.length>1?arguments[1]:void 0)}}),Zt(\"String\",\"padStart\");var fo=ao.end;_t({target:\"String\",proto:!0,forced:co},{padEnd:function(t){return fo(this,t,arguments.length>1?arguments[1]:void 0)}}),Zt(\"String\",\"padEnd\"),_t({target:\"String\",stat:!0},{raw:function(t){for(var e=v(t.raw),r=ut(e.length),n=arguments.length,o=[],i=0;r>i;)o.push(String(e[i++])),i<n&&o.push(String(arguments[i]));return o.join(\"\")}}),_t({target:\"String\",proto:!0},{repeat:no}),Zt(\"String\",\"repeat\");var lo=O.f,ho=\"\".startsWith,po=Math.min,vo=Xn(\"startsWith\"),go=!vo&&!!function(){var t=lo(String.prototype,\"startsWith\");return t&&!t.writable}();_t({target:\"String\",proto:!0,forced:!go&&!vo},{startsWith:function(t){var e=String(d(this));qn(t);var r=ut(po(arguments.length>1?arguments[1]:void 0,e.length)),n=String(t);return ho?ho.call(e,n,r):e.slice(r,r+n.length)===n}}),Zt(\"String\",\"startsWith\");var yo=function(t){return o(function(){return!!dn[t]()||\"
\"!=\"
\"[t]()||dn[t].name!==t})},mo=bn.start,bo=yo(\"trimStart\"),So=bo?function(){return mo(this)}:\"\".trimStart;_t({target:\"String\",proto:!0,forced:bo},{trimStart:So,trimLeft:So}),Zt(\"String\",\"trimLeft\");var Eo=bn.end,wo=yo(\"trimEnd\"),Ro=wo?function(){return Eo(this)}:\"\".trimEnd;_t({target:\"String\",proto:!0,forced:wo},{trimEnd:Ro,trimRight:Ro}),Zt(\"String\",\"trimRight\");var To=rt(\"Reflect\",\"apply\"),Oo=Function.apply,xo=!o(function(){To(function(){})});_t({target:\"Reflect\",stat:!0,forced:xo},{apply:function(t,e,r){return Yt(t),x(r),To?To(t,e,r):Oo.call(t,e,r)}});var Ao=[].slice,Io={},_o=function(t,e,r){if(!(e in Io)){for(var n=[],o=0;o<e;o++)n[o]=\"a[\"+o+\"]\";Io[e]=Function(\"C,a\",\"return new C(\"+n.join(\",\")+\")\")}return Io[e](t,r)},jo=Function.bind||function(t){var e=Yt(this),r=Ao.call(arguments,1),n=function(){var o=r.concat(Ao.call(arguments));return this instanceof n?_o(e,o.length,o):e.apply(t,o)};return g(e.prototype)&&(n.prototype=e.prototype),n},Po=rt(\"Reflect\",\"construct\"),No=o(function(){function t(){}return!(Po(function(){},[],t)instanceof t)}),Mo=!o(function(){Po(function(){})}),Uo=No||Mo;_t({target:\"Reflect\",stat:!0,forced:Uo,sham:Uo},{construct:function(t,e){Yt(t),x(e);var r=arguments.length<3?t:Yt(arguments[2]);if(Mo&&!No)return Po(t,e,r);if(t==r){switch(e.length){case 0:return new t;case 1:return new t(e[0]);case 2:return new t(e[0],e[1]);case 3:return new t(e[0],e[1],e[2]);case 4:return new t(e[0],e[1],e[2],e[3])}var n=[null];return n.push.apply(n,e),new(jo.apply(t,n))}var o=r.prototype,i=Vt(g(o)?o:Object.prototype),a=Function.apply.call(t,i,e);return g(a)?a:i}});var ko=o(function(){Reflect.defineProperty(I.f({},1,{value:1}),1,{value:2})});_t({target:\"Reflect\",stat:!0,forced:ko,sham:!i},{defineProperty:function(t,e,r){x(t);var n=y(e,!0);x(r);try{return I.f(t,n,r),!0}catch(t){return!1}}});var Lo=O.f;_t({target:\"Reflect\",stat:!0},{deleteProperty:function(t,e){var r=Lo(x(t),e);return!(r&&!r.configurable)&&delete t[e]}}),_t({target:\"Reflect\",stat:!0},{get:function t(e,r){var n,o,i=arguments.length<3?e:arguments[2];return x(e)===i?e[r]:(n=O.f(e,r))?b(n,\"value\")?n.value:void 0===n.get?void 0:n.get.call(i):g(o=Oe(e))?t(o,r,i):void 0}}),_t({target:\"Reflect\",stat:!0,sham:!i},{getOwnPropertyDescriptor:function(t,e){return O.f(x(t),e)}}),_t({target:\"Reflect\",stat:!0,sham:!we},{getPrototypeOf:function(t){return Oe(x(t))}}),_t({target:\"Reflect\",stat:!0},{has:function(t,e){return e in t}});var Do=Object.isExtensible;_t({target:\"Reflect\",stat:!0},{isExtensible:function(t){return x(t),!Do||Do(t)}}),_t({target:\"Reflect\",stat:!0},{ownKeys:bt}),_t({target:\"Reflect\",stat:!0,sham:!Er},{preventExtensions:function(t){x(t);try{var e=rt(\"Object\",\"preventExtensions\");return e&&e(t),!0}catch(t){return!1}}});var Co=o(function(){var t=function(){},e=I.f(new t,\"a\",{configurable:!0});return!1!==Reflect.set(t.prototype,\"a\",1,e)});_t({target:\"Reflect\",stat:!0,forced:Co},{set:function t(e,r,n){var o,i,a=arguments.length<4?e:arguments[3],u=O.f(x(e),r);if(!u){if(g(i=Oe(e)))return t(i,r,n,a);u=s(0)}if(b(u,\"value\")){if(!1===u.writable||!g(a))return!1;if(o=O.f(a,r)){if(o.get||o.set||!1===o.writable)return!1;o.value=n,I.f(a,r,o)}else I.f(a,r,s(0,n));return!0}return void 0!==u.set&&(u.set.call(a,n),!0)}}),Le&&_t({target:\"Reflect\",stat:!0},{setPrototypeOf:function(t,e){x(t),ke(e);try{return Le(t,e),!0}catch(t){return!1}}}),_t({global:!0},{Reflect:{}}),Pe(n.Reflect,\"Reflect\",!0);var Fo=F(\"metadata\"),Bo=Fo.store||(Fo.store=new pn),Wo=function(t,e,r){var n=Bo.get(t);if(!n){if(!r)return;Bo.set(t,n=new Lr)}var o=n.get(e);if(!o){if(!r)return;n.set(e,o=new Lr)}return o},zo={store:Bo,getMap:Wo,has:function(t,e,r){var n=Wo(e,r,!1);return void 0!==n&&n.has(t)},get:function(t,e,r){var n=Wo(e,r,!1);return void 0===n?void 0:n.get(t)},set:function(t,e,r,n){Wo(r,n,!0).set(t,e)},keys:function(t,e){var r=Wo(t,e,!1),n=[];return r&&r.forEach(function(t,e){n.push(e)}),n},toKey:function(t){return void 0===t||\"symbol\"==typeof t?t:String(t)}},Go=zo.toKey,Ko=zo.set;_t({target:\"Reflect\",stat:!0},{defineMetadata:function(t,e,r){var n=arguments.length<4?void 0:Go(arguments[3]);Ko(t,e,x(r),n)}});var $o=zo.toKey,Vo=zo.getMap,qo=zo.store;_t({target:\"Reflect\",stat:!0},{deleteMetadata:function(t,e){var r=arguments.length<3?void 0:$o(arguments[2]),n=Vo(x(e),r,!1);if(void 0===n||!n.delete(t))return!1;if(n.size)return!0;var o=qo.get(e);return o.delete(r),!!o.size||qo.delete(e)}});var Ho=zo.has,Xo=zo.get,Yo=zo.toKey,Jo=function t(e,r,n){if(Ho(e,r,n))return Xo(e,r,n);var o=Oe(r);return null!==o?t(e,o,n):void 0};_t({target:\"Reflect\",stat:!0},{getMetadata:function(t,e){var r=arguments.length<3?void 0:Yo(arguments[2]);return Jo(t,x(e),r)}});var Qo=zo.keys,Zo=zo.toKey,ti=function t(e,r){var n=Qo(e,r),o=Oe(e);if(null===o)return n;var i,a,u=t(o,r);return u.length?n.length?(i=new Zr(n.concat(u)),Tr(i,(a=[]).push,{that:a}),a):u:n};_t({target:\"Reflect\",stat:!0},{getMetadataKeys:function(t){var e=arguments.length<2?void 0:Zo(arguments[1]);return ti(x(t),e)}});var ei=zo.get,ri=zo.toKey;_t({target:\"Reflect\",stat:!0},{getOwnMetadata:function(t,e){var r=arguments.length<3?void 0:ri(arguments[2]);return ei(t,x(e),r)}});var ni=zo.keys,oi=zo.toKey;_t({target:\"Reflect\",stat:!0},{getOwnMetadataKeys:function(t){var e=arguments.length<2?void 0:oi(arguments[1]);return ni(x(t),e)}});var ii=zo.has,ai=zo.toKey,ui=function t(e,r,n){if(ii(e,r,n))return!0;var o=Oe(r);return null!==o&&t(e,o,n)};_t({target:\"Reflect\",stat:!0},{hasMetadata:function(t,e){var r=arguments.length<3?void 0:ai(arguments[2]);return ui(t,x(e),r)}});var ci=zo.has,si=zo.toKey;_t({target:\"Reflect\",stat:!0},{hasOwnMetadata:function(t,e){var r=arguments.length<3?void 0:si(arguments[2]);return ci(t,x(e),r)}});var fi=zo.toKey,li=zo.set;_t({target:\"Reflect\",stat:!0},{metadata:function(t,e){return function(r,n){li(t,e,x(r),fi(n))}}});var hi=function(){var t=x(this),e=\"\";return t.global&&(e+=\"g\"),t.ignoreCase&&(e+=\"i\"),t.multiline&&(e+=\"m\"),t.dotAll&&(e+=\"s\"),t.unicode&&(e+=\"u\"),t.sticky&&(e+=\"y\"),e};function pi(t,e){return RegExp(t,e)}var di={UNSUPPORTED_Y:o(function(){var t=pi(\"a\",\"y\");return t.lastIndex=2,null!=t.exec(\"abcd\")}),BROKEN_CARET:o(function(){var t=pi(\"^r\",\"gy\");return t.lastIndex=2,null!=t.exec(\"str\")})},vi=I.f,gi=yt.f,yi=Q.set,mi=Ct(\"match\"),bi=n.RegExp,Si=bi.prototype,Ei=/a/g,wi=/a/g,Ri=new bi(Ei)!==Ei,Ti=di.UNSUPPORTED_Y;if(i&&At(\"RegExp\",!Ri||Ti||o(function(){return wi[mi]=!1,bi(Ei)!=Ei||bi(wi)==wi||\"/a/i\"!=bi(Ei,\"i\")}))){for(var Oi=function(t,e){var r,n=this instanceof Oi,o=Vn(t),i=void 0===e;if(!n&&o&&t.constructor===Oi&&i)return t;Ri?o&&!i&&(t=t.source):t instanceof Oi&&(i&&(e=hi.call(t)),t=t.source),Ti&&(r=!!e&&e.indexOf(\"y\")>-1)&&(e=e.replace(/y/g,\"\"));var a=xr(Ri?new bi(t,e):bi(t,e),n?this:Si,Oi);return Ti&&r&&yi(a,{sticky:r}),a},xi=function(t){t in Oi||vi(Oi,t,{configurable:!0,get:function(){return bi[t]},set:function(e){bi[t]=e}})},Ai=gi(bi),Ii=0;Ai.length>Ii;)xi(Ai[Ii++]);Si.constructor=Oi,Oi.prototype=Si,Z(n,\"RegExp\",Oi)}jr(\"RegExp\");var _i=RegExp.prototype,ji=_i.toString;(o(function(){return\"/a/b\"!=ji.call({source:\"a\",flags:\"b\"})})||\"toString\"!=ji.name)&&Z(RegExp.prototype,\"toString\",function(){var t=x(this),e=String(t.source),r=t.flags;return\"/\"+e+\"/\"+String(void 0===r&&t instanceof RegExp&&!(\"flags\"in _i)?hi.call(t):r)},{unsafe:!0});var Pi=RegExp.prototype.exec,Ni=String.prototype.replace,Mi=Pi,Ui=function(){var t=/a/,e=/b*/g;return Pi.call(t,\"a\"),Pi.call(e,\"a\"),0!==t.lastIndex||0!==e.lastIndex}(),ki=di.UNSUPPORTED_Y||di.BROKEN_CARET,Li=void 0!==/()??/.exec(\"\")[1];(Ui||Li||ki)&&(Mi=function(t){var e,r,n,o,i=this,a=ki&&i.sticky,u=hi.call(i),c=i.source,s=0,f=t;return a&&(-1===(u=u.replace(\"y\",\"\")).indexOf(\"g\")&&(u+=\"g\"),f=String(t).slice(i.lastIndex),i.lastIndex>0&&(!i.multiline||i.multiline&&\"\\n\"!==t[i.lastIndex-1])&&(c=\"(?: \"+c+\")\",f=\" \"+f,s++),r=new RegExp(\"^(?:\"+c+\")\",u)),Li&&(r=new RegExp(\"^\"+c+\"$(?!\\\\s)\",u)),Ui&&(e=i.lastIndex),n=Pi.call(a?r:i,f),a?n?(n.input=n.input.slice(s),n[0]=n[0].slice(s),n.index=i.lastIndex,i.lastIndex+=n[0].length):i.lastIndex=0:Ui&&n&&(i.lastIndex=i.global?n.index+n[0].length:e),Li&&n&&n.length>1&&Ni.call(n[0],r,function(){for(o=1;o<arguments.length-2;o++)void 0===arguments[o]&&(n[o]=void 0)}),n});var Di=Mi;_t({target:\"RegExp\",proto:!0,forced:/./.exec!==Di},{exec:Di}),i&&(\"g\"!=/./g.flags||di.UNSUPPORTED_Y)&&I.f(RegExp.prototype,\"flags\",{configurable:!0,get:hi});var Ci=Q.get,Fi=RegExp.prototype;i&&di.UNSUPPORTED_Y&&(0,I.f)(RegExp.prototype,\"sticky\",{configurable:!0,get:function(){if(this!==Fi){if(this instanceof RegExp)return!!Ci(this).sticky;throw TypeError(\"Incompatible receiver, RegExp required\")}}});var Bi,Wi,zi=(Bi=!1,(Wi=/[ac]/).exec=function(){return Bi=!0,/./.exec.apply(this,arguments)},!0===Wi.test(\"abc\")&&Bi),Gi=/./.test;_t({target:\"RegExp\",proto:!0,forced:!zi},{test:function(t){if(\"function\"!=typeof this.exec)return Gi.call(this,t);var e=this.exec(t);if(null!==e&&!g(e))throw new Error(\"RegExp exec method returned something other than an Object or null\");return!!e}});var Ki=Ct(\"species\"),$i=!o(function(){var t=/./;return t.exec=function(){var t=[];return t.groups={a:\"7\"},t},\"7\"!==\"\".replace(t,\"$<a>\")}),Vi=\"$0\"===\"a\".replace(/./,\"$0\"),qi=Ct(\"replace\"),Hi=!!/./[qi]&&\"\"===/./[qi](\"a\",\"$0\"),Xi=!o(function(){var t=/(?:)/,e=t.exec;t.exec=function(){return e.apply(this,arguments)};var r=\"ab\".split(t);return 2!==r.length||\"a\"!==r[0]||\"b\"!==r[1]}),Yi=function(t,e,r,n){var i=Ct(t),a=!o(function(){var e={};return e[i]=function(){return 7},7!=\"\"[t](e)}),u=a&&!o(function(){var e=!1,r=/a/;return\"split\"===t&&((r={}).constructor={},r.constructor[Ki]=function(){return r},r.flags=\"\",r[i]=/./[i]),r.exec=function(){return e=!0,null},r[i](\"\"),!e});if(!a||!u||\"replace\"===t&&(!$i||!Vi||Hi)||\"split\"===t&&!Xi){var c=/./[i],s=r(i,\"\"[t],function(t,e,r,n,o){return e.exec===Di?a&&!o?{done:!0,value:c.call(e,r,n)}:{done:!0,value:t.call(r,e,n)}:{done:!1}},{REPLACE_KEEPS_$0:Vi,REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE:Hi}),f=s[1];Z(String.prototype,t,s[0]),Z(RegExp.prototype,i,2==e?function(t,e){return f.call(t,this,e)}:function(t){return f.call(t,this)})}n&&_(RegExp.prototype[i],\"sham\",!0)},Ji=Ee.charAt,Qi=function(t,e,r){return e+(r?Ji(t,e).length:1)},Zi=function(t,e){var r=t.exec;if(\"function\"==typeof r){var n=r.call(t,e);if(\"object\"!=typeof n)throw TypeError(\"RegExp exec method returned something other than an Object or null\");return n}if(\"RegExp\"!==l(t))throw TypeError(\"RegExp#exec called on incompatible receiver\");return Di.call(t,e)};Yi(\"match\",1,function(t,e,r){return[function(e){var r=d(this),n=null==e?void 0:e[t];return void 0!==n?n.call(e,r):new RegExp(e)[t](String(r))},function(t){var n=r(e,t,this);if(n.done)return n.value;var o=x(t),i=String(this);if(!o.global)return Zi(o,i);var a=o.unicode;o.lastIndex=0;for(var u,c=[],s=0;null!==(u=Zi(o,i));){var f=String(u[0]);c[s]=f,\"\"===f&&(o.lastIndex=Qi(i,ut(o.lastIndex),a)),s++}return 0===s?null:c}]});var ta=Math.max,ea=Math.min,ra=Math.floor,na=/\\$([$&'`]|\\d\\d?|<[^>]*>)/g,oa=/\\$([$&'`]|\\d\\d?)/g;Yi(\"replace\",2,function(t,e,r,n){var o=n.REGEXP_REPLACE_SUBSTITUTES_UNDEFINED_CAPTURE,i=n.REPLACE_KEEPS_$0,a=o?\"$\":\"$0\";return[function(r,n){var o=d(this),i=null==r?void 0:r[t];return void 0!==i?i.call(r,o,n):e.call(String(o),r,n)},function(t,n){if(!o&&i||\"string\"==typeof n&&-1===n.indexOf(a)){var c=r(e,t,this,n);if(c.done)return c.value}var s=x(t),f=String(this),l=\"function\"==typeof n;l||(n=String(n));var h=s.global;if(h){var p=s.unicode;s.lastIndex=0}for(var d=[];;){var v=Zi(s,f);if(null===v)break;if(d.push(v),!h)break;\"\"===String(v[0])&&(s.lastIndex=Qi(f,ut(s.lastIndex),p))}for(var g,y=\"\",m=0,b=0;b<d.length;b++){v=d[b];for(var S=String(v[0]),E=ta(ea(it(v.index),f.length),0),w=[],R=1;R<v.length;R++)w.push(void 0===(g=v[R])?g:String(g));var T=v.groups;if(l){var O=[S].concat(w,E,f);void 0!==T&&O.push(T);var A=String(n.apply(void 0,O))}else A=u(S,f,E,w,T,n);E>=m&&(y+=f.slice(m,E)+A,m=E+S.length)}return y+f.slice(m)}];function u(t,r,n,o,i,a){var u=n+t.length,c=o.length,s=oa;return void 0!==i&&(i=jt(i),s=na),e.call(a,s,function(e,a){var s;switch(a.charAt(0)){case\"$\":return\"$\";case\"&\":return t;case\"`\":return r.slice(0,n);case\"'\":return r.slice(u);case\"<\":s=i[a.slice(1,-1)];break;default:var f=+a;if(0===f)return e;if(f>c){var l=ra(f/10);return 0===l?e:l<=c?void 0===o[l-1]?a.charAt(1):o[l-1]+a.charAt(1):e}s=o[f-1]}return void 0===s?\"\":s})}}),Yi(\"search\",1,function(t,e,r){return[function(e){var r=d(this),n=null==e?void 0:e[t];return void 0!==n?n.call(e,r):new RegExp(e)[t](String(r))},function(t){var n=r(e,t,this);if(n.done)return n.value;var o=x(t),i=String(this),a=o.lastIndex;Bn(a,0)||(o.lastIndex=0);var u=Zi(o,i);return Bn(o.lastIndex,a)||(o.lastIndex=a),null===u?-1:u.index}]});var ia=[].push,aa=Math.min,ua=!o(function(){return!RegExp(4294967295,\"y\")});Yi(\"split\",2,function(t,e,r){var n;return n=\"c\"==\"abbc\".split(/(b)*/)[1]||4!=\"test\".split(/(?:)/,-1).length||2!=\"ab\".split(/(?:ab)*/).length||4!=\".\".split(/(.?)(.?)/).length||\".\".split(/()()/).length>1||\"\".split(/.?/).length?function(t,r){var n=String(d(this)),o=void 0===r?4294967295:r>>>0;if(0===o)return[];if(void 0===t)return[n];if(!Vn(t))return e.call(n,t,o);for(var i,a,u,c=[],s=0,f=new RegExp(t.source,(t.ignoreCase?\"i\":\"\")+(t.multiline?\"m\":\"\")+(t.unicode?\"u\":\"\")+(t.sticky?\"y\":\"\")+\"g\");(i=Di.call(f,n))&&!((a=f.lastIndex)>s&&(c.push(n.slice(s,i.index)),i.length>1&&i.index<n.length&&ia.apply(c,i.slice(1)),u=i[0].length,s=a,c.length>=o));)f.lastIndex===i.index&&f.lastIndex++;return s===n.length?!u&&f.test(\"\")||c.push(\"\"):c.push(n.slice(s)),c.length>o?c.slice(0,o):c}:\"0\".split(void 0,0).length?function(t,r){return void 0===t&&0===r?[]:e.call(this,t,r)}:e,[function(e,r){var o=d(this),i=null==e?void 0:e[t];return void 0!==i?i.call(e,o,r):n.call(String(o),e,r)},function(t,o){var i=r(n,t,this,o,n!==e);if(i.done)return i.value;var a=x(t),u=String(this),c=Jr(a,RegExp),s=a.unicode,f=new c(ua?a:\"^(?:\"+a.source+\")\",(a.ignoreCase?\"i\":\"\")+(a.multiline?\"m\":\"\")+(a.unicode?\"u\":\"\")+(ua?\"y\":\"g\")),l=void 0===o?4294967295:o>>>0;if(0===l)return[];if(0===u.length)return null===Zi(f,u)?[u]:[];for(var h=0,p=0,d=[];p<u.length;){f.lastIndex=ua?p:0;var v,g=Zi(f,ua?u:u.slice(p));if(null===g||(v=aa(ut(f.lastIndex+(ua?0:p)),u.length))===h)p=Qi(u,p,s);else{if(d.push(u.slice(h,p)),d.length===l)return d;for(var y=1;y<=g.length-1;y++)if(d.push(g[y]),d.length===l)return d;p=h=v}}return d.push(u.slice(h)),d}]},!ua);var ca,sa,fa=n.process,la=fa&&fa.versions,ha=la&&la.v8;ha?sa=(ca=ha.split(\".\"))[0]+ca[1]:uo&&(!(ca=uo.match(/Edge\\/(\\d+)/))||ca[1]>=74)&&(ca=uo.match(/Chrome\\/(\\d+)/))&&(sa=ca[1]);var pa=sa&&+sa,da=Ct(\"species\"),va=Ct(\"isConcatSpreadable\"),ga=pa>=51||!o(function(){var t=[];return t[va]=!1,t.concat()[0]!==t}),ya=pa>=51||!o(function(){var t=[];return(t.constructor={})[da]=function(){return{foo:1}},1!==t.concat(Boolean).foo}),ma=function(t){if(!g(t))return!1;var e=t[va];return void 0!==e?!!e:te(t)};_t({target:\"Array\",proto:!0,forced:!ga||!ya},{concat:function(t){var e,r,n,o,i,a=jt(this),u=re(a,0),c=0;for(e=-1,n=arguments.length;e<n;e++)if(ma(i=-1===e?a:arguments[e])){if(c+(o=ut(i.length))>9007199254740991)throw TypeError(\"Maximum allowed index exceeded\");for(r=0;r<o;r++,c++)r in i&&Ye(u,c,i[r])}else{if(c>=9007199254740991)throw TypeError(\"Maximum allowed index exceeded\");Ye(u,c++,i)}return u.length=c,u}});var ba=yt.f,Sa={}.toString,Ea=\"object\"==typeof window&&window&&Object.getOwnPropertyNames?Object.getOwnPropertyNames(window):[],wa={f:function(t){return Ea&&\"[object Window]\"==Sa.call(t)?function(t){try{return ba(t)}catch(t){return Ea.slice()}}(t):ba(v(t))}},Ra={f:Ct},Ta=I.f,Oa=function(t){var e=tt.Symbol||(tt.Symbol={});b(e,t)||Ta(e,t,{value:Ra.f(t)})},xa=ie.forEach,Aa=K(\"hidden\"),Ia=Ct(\"toPrimitive\"),_a=Q.set,ja=Q.getterFor(\"Symbol\"),Pa=Object.prototype,Na=n.Symbol,Ma=rt(\"JSON\",\"stringify\"),Ua=O.f,ka=I.f,La=wa.f,Da=c.f,Ca=F(\"symbols\"),Fa=F(\"op-symbols\"),Ba=F(\"string-to-symbol-registry\"),Wa=F(\"symbol-to-string-registry\"),za=F(\"wks\"),Ga=n.QObject,Ka=!Ga||!Ga.prototype||!Ga.prototype.findChild,$a=i&&o(function(){return 7!=Vt(ka({},\"a\",{get:function(){return ka(this,\"a\",{value:7}).a}})).a})?function(t,e,r){var n=Ua(Pa,e);n&&delete Pa[e],ka(t,e,r),n&&t!==Pa&&ka(Pa,e,n)}:ka,Va=function(t,e){var r=Ca[t]=Vt(Na.prototype);return _a(r,{type:\"Symbol\",tag:t,description:e}),i||(r.description=e),r},qa=Ut?function(t){return\"symbol\"==typeof t}:function(t){return Object(t)instanceof Na},Ha=function(t,e,r){t===Pa&&Ha(Fa,e,r),x(t);var n=y(e,!0);return x(r),b(Ca,n)?(r.enumerable?(b(t,Aa)&&t[Aa][n]&&(t[Aa][n]=!1),r=Vt(r,{enumerable:s(0,!1)})):(b(t,Aa)||ka(t,Aa,s(1,{})),t[Aa][n]=!0),$a(t,n,r)):ka(t,n,r)},Xa=function(t,e){x(t);var r=v(e),n=Ft(r).concat(Za(r));return xa(n,function(e){i&&!Ya.call(r,e)||Ha(t,e,r[e])}),t},Ya=function(t){var e=y(t,!0),r=Da.call(this,e);return!(this===Pa&&b(Ca,e)&&!b(Fa,e))&&(!(r||!b(this,e)||!b(Ca,e)||b(this,Aa)&&this[Aa][e])||r)},Ja=function(t,e){var r=v(t),n=y(e,!0);if(r!==Pa||!b(Ca,n)||b(Fa,n)){var o=Ua(r,n);return!o||!b(Ca,n)||b(r,Aa)&&r[Aa][n]||(o.enumerable=!0),o}},Qa=function(t){var e=La(v(t)),r=[];return xa(e,function(t){b(Ca,t)||b($,t)||r.push(t)}),r},Za=function(t){var e=t===Pa,r=La(e?Fa:v(t)),n=[];return xa(r,function(t){!b(Ca,t)||e&&!b(Pa,t)||n.push(Ca[t])}),n};if(Mt||(Z((Na=function(){if(this instanceof Na)throw TypeError(\"Symbol is not a constructor\");var t=arguments.length&&void 0!==arguments[0]?String(arguments[0]):void 0,e=z(t),r=function t(r){this===Pa&&t.call(Fa,r),b(this,Aa)&&b(this[Aa],e)&&(this[Aa][e]=!1),$a(this,e,s(1,r))};return i&&Ka&&$a(Pa,e,{configurable:!0,set:r}),Va(e,t)}).prototype,\"toString\",function(){return ja(this).tag}),Z(Na,\"withoutSetter\",function(t){return Va(z(t),t)}),c.f=Ya,I.f=Ha,O.f=Ja,yt.f=wa.f=Qa,mt.f=Za,Ra.f=function(t){return Va(Ct(t),t)},i&&(ka(Na.prototype,\"description\",{configurable:!0,get:function(){return ja(this).description}}),Z(Pa,\"propertyIsEnumerable\",Ya,{unsafe:!0}))),_t({global:!0,wrap:!0,forced:!Mt,sham:!Mt},{Symbol:Na}),xa(Ft(za),function(t){Oa(t)}),_t({target:\"Symbol\",stat:!0,forced:!Mt},{for:function(t){var e=String(t);if(b(Ba,e))return Ba[e];var r=Na(e);return Ba[e]=r,Wa[r]=e,r},keyFor:function(t){if(!qa(t))throw TypeError(t+\" is not a symbol\");if(b(Wa,t))return Wa[t]},useSetter:function(){Ka=!0},useSimple:function(){Ka=!1}}),_t({target:\"Object\",stat:!0,forced:!Mt,sham:!i},{create:function(t,e){return void 0===e?Vt(t):Xa(Vt(t),e)},defineProperty:Ha,defineProperties:Xa,getOwnPropertyDescriptor:Ja}),_t({target:\"Object\",stat:!0,forced:!Mt},{getOwnPropertyNames:Qa,getOwnPropertySymbols:Za}),_t({target:\"Object\",stat:!0,forced:o(function(){mt.f(1)})},{getOwnPropertySymbols:function(t){return mt.f(jt(t))}}),Ma){var tu=!Mt||o(function(){var t=Na();return\"[null]\"!=Ma([t])||\"{}\"!=Ma({a:t})||\"{}\"!=Ma(Object(t))});_t({target:\"JSON\",stat:!0,forced:tu},{stringify:function(t,e,r){for(var n,o=[t],i=1;arguments.length>i;)o.push(arguments[i++]);if(n=e,(g(e)||void 0!==t)&&!qa(t))return te(e)||(e=function(t,e){if(\"function\"==typeof n&&(e=n.call(this,t,e)),!qa(e))return e}),o[1]=e,Ma.apply(null,o)}})}Na.prototype[Ia]||_(Na.prototype,Ia,Na.prototype.valueOf),Pe(Na,\"Symbol\"),$[Aa]=!0,Oa(\"asyncIterator\");var eu=I.f,ru=n.Symbol;if(i&&\"function\"==typeof ru&&(!(\"description\"in ru.prototype)||void 0!==ru().description)){var nu={},ou=function(){var t=arguments.length<1||void 0===arguments[0]?void 0:String(arguments[0]),e=this instanceof ou?new ru(t):void 0===t?ru():ru(t);return\"\"===t&&(nu[e]=!0),e};St(ou,ru);var iu=ou.prototype=ru.prototype;iu.constructor=ou;var au=iu.toString,uu=\"Symbol(test)\"==String(ru(\"test\")),cu=/^Symbol\\((.*)\\)[^)]+$/;eu(iu,\"description\",{configurable:!0,get:function(){var t=g(this)?this.valueOf():this,e=au.call(t);if(b(nu,t))return\"\";var r=uu?e.slice(7,-1):e.replace(cu,\"$1\");return\"\"===r?void 0:r}}),_t({global:!0,forced:!0},{Symbol:ou})}Oa(\"hasInstance\"),Oa(\"isConcatSpreadable\"),Oa(\"iterator\"),Oa(\"match\"),Oa(\"matchAll\"),Oa(\"replace\"),Oa(\"search\"),Oa(\"species\"),Oa(\"split\"),Oa(\"toPrimitive\"),Oa(\"toStringTag\"),Oa(\"unscopables\"),Pe(n.JSON,\"JSON\",!0),Pe(Math,\"Math\",!0),Oa(\"asyncDispose\"),Oa(\"dispose\"),Oa(\"observable\"),Oa(\"patternMatch\"),Oa(\"replaceAll\");var su=function(t,e){var r=this;if(!(r instanceof su))return new su(t,e);Le&&(r=Le(new Error(void 0),Oe(r))),void 0!==e&&_(r,\"message\",String(e));var n=[];return Tr(t,n.push,{that:n}),_(r,\"errors\",n),r};su.prototype=Vt(Error.prototype,{constructor:s(5,su),message:s(5,\"\"),name:s(5,\"AggregateError\")}),_t({global:!0},{AggregateError:su});var fu,lu,hu,pu=n.Promise,du=/(iphone|ipod|ipad).*applewebkit/i.test(uo),vu=\"process\"==l(n.process),gu=n.location,yu=n.setImmediate,mu=n.clearImmediate,bu=n.process,Su=n.MessageChannel,Eu=n.Dispatch,wu=0,Ru={},Tu=function(t){if(Ru.hasOwnProperty(t)){var e=Ru[t];delete Ru[t],e()}},Ou=function(t){return function(){Tu(t)}},xu=function(t){Tu(t.data)},Au=function(t){n.postMessage(t+\"\",gu.protocol+\"//\"+gu.host)};yu&&mu||(yu=function(t){for(var e=[],r=1;arguments.length>r;)e.push(arguments[r++]);return Ru[++wu]=function(){(\"function\"==typeof t?t:Function(t)).apply(void 0,e)},fu(wu),wu},mu=function(t){delete Ru[t]},vu?fu=function(t){bu.nextTick(Ou(t))}:Eu&&Eu.now?fu=function(t){Eu.now(Ou(t))}:Su&&!du?(hu=(lu=new Su).port2,lu.port1.onmessage=xu,fu=Jt(hu.postMessage,hu,1)):n.addEventListener&&\"function\"==typeof postMessage&&!n.importScripts&&gu&&\"file:\"!==gu.protocol&&!o(Au)?(fu=Au,n.addEventListener(\"message\",xu,!1)):fu=\"onreadystatechange\"in w(\"script\")?function(t){Wt.appendChild(w(\"script\")).onreadystatechange=function(){Wt.removeChild(this),Tu(t)}}:function(t){setTimeout(Ou(t),0)});var Iu,_u,ju,Pu,Nu,Mu,Uu,ku,Lu={set:yu,clear:mu},Du=Lu.set,Cu=n.MutationObserver||n.WebKitMutationObserver,Fu=n.document,Bu=n.process,Wu=n.Promise,zu=(0,O.f)(n,\"queueMicrotask\"),Gu=zu&&zu.value;Gu||(Iu=function(){var t,e;for(vu&&(t=Bu.domain)&&t.exit();_u;){e=_u.fn,_u=_u.next;try{e()}catch(t){throw _u?Pu():ju=void 0,t}}ju=void 0,t&&t.enter()},!du&&!vu&&Cu&&Fu?(Nu=!0,Mu=Fu.createTextNode(\"\"),new Cu(Iu).observe(Mu,{characterData:!0}),Pu=function(){Mu.data=Nu=!Nu}):Wu&&Wu.resolve?(Uu=Wu.resolve(void 0),ku=Uu.then,Pu=function(){ku.call(Uu,Iu)}):Pu=vu?function(){Bu.nextTick(Iu)}:function(){Du.call(n,Iu)});var Ku,$u,Vu,qu,Hu=Gu||function(t){var e={fn:t,next:void 0};ju&&(ju.next=e),_u||(_u=e,Pu()),ju=e},Xu=function(t){var e,r;this.promise=new t(function(t,n){if(void 0!==e||void 0!==r)throw TypeError(\"Bad Promise constructor\");e=t,r=n}),this.resolve=Yt(e),this.reject=Yt(r)},Yu={f:function(t){return new Xu(t)}},Ju=function(t,e){if(x(t),g(e)&&e.constructor===t)return e;var r=Yu.f(t);return(0,r.resolve)(e),r.promise},Qu=function(t){try{return{error:!1,value:t()}}catch(t){return{error:!0,value:t}}},Zu=Lu.set,tc=Ct(\"species\"),ec=\"Promise\",rc=Q.get,nc=Q.set,oc=Q.getterFor(ec),ic=pu,ac=n.TypeError,uc=n.document,cc=n.process,sc=rt(\"fetch\"),fc=Yu.f,lc=fc,hc=!!(uc&&uc.createEvent&&n.dispatchEvent),pc=\"function\"==typeof PromiseRejectionEvent,dc=At(ec,function(){if(L(ic)===String(ic)){if(66===pa)return!0;if(!vu&&!pc)return!0}if(pa>=51&&/native code/.test(ic))return!1;var t=ic.resolve(1),e=function(t){t(function(){},function(){})};return(t.constructor={})[tc]=e,!(t.then(function(){})instanceof e)}),vc=dc||!cr(function(t){ic.all(t).catch(function(){})}),gc=function(t){var e;return!(!g(t)||\"function\"!=typeof(e=t.then))&&e},yc=function(t,e){if(!t.notified){t.notified=!0;var r=t.reactions;Hu(function(){for(var n=t.value,o=1==t.state,i=0;r.length>i;){var a,u,c,s=r[i++],f=o?s.ok:s.fail,l=s.resolve,h=s.reject,p=s.domain;try{f?(o||(2===t.rejection&&Ec(t),t.rejection=1),!0===f?a=n:(p&&p.enter(),a=f(n),p&&(p.exit(),c=!0)),a===s.promise?h(ac(\"Promise-chain cycle\")):(u=gc(a))?u.call(a,l,h):l(a)):h(n)}catch(t){p&&!c&&p.exit(),h(t)}}t.reactions=[],t.notified=!1,e&&!t.rejection&&bc(t)})}},mc=function(t,e,r){var o,i;hc?((o=uc.createEvent(\"Event\")).promise=e,o.reason=r,o.initEvent(t,!1,!0),n.dispatchEvent(o)):o={promise:e,reason:r},!pc&&(i=n[\"on\"+t])?i(o):\"unhandledrejection\"===t&&function(t,e){var r=n.console;r&&r.error&&(1===arguments.length?r.error(t):r.error(t,e))}(\"Unhandled promise rejection\",r)},bc=function(t){Zu.call(n,function(){var e,r=t.facade,n=t.value;if(Sc(t)&&(e=Qu(function(){vu?cc.emit(\"unhandledRejection\",n,r):mc(\"unhandledrejection\",r,n)}),t.rejection=vu||Sc(t)?2:1,e.error))throw e.value})},Sc=function(t){return 1!==t.rejection&&!t.parent},Ec=function(t){Zu.call(n,function(){var e=t.facade;vu?cc.emit(\"rejectionHandled\",e):mc(\"rejectionhandled\",e,t.value)})},wc=function(t,e,r){return function(n){t(e,n,r)}},Rc=function(t,e,r){t.done||(t.done=!0,r&&(t=r),t.value=e,t.state=2,yc(t,!0))},Tc=function t(e,r,n){if(!e.done){e.done=!0,n&&(e=n);try{if(e.facade===r)throw ac(\"Promise can't be resolved itself\");var o=gc(r);o?Hu(function(){var n={done:!1};try{o.call(r,wc(t,n,e),wc(Rc,n,e))}catch(t){Rc(n,t,e)}}):(e.value=r,e.state=1,yc(e,!1))}catch(t){Rc({done:!1},t,e)}}};dc&&(ic=function(t){Or(this,ic,ec),Yt(t),Ku.call(this);var e=rc(this);try{t(wc(Tc,e),wc(Rc,e))}catch(t){Rc(e,t)}},(Ku=function(t){nc(this,{type:ec,done:!1,notified:!1,parent:!1,reactions:[],rejection:!1,state:0,value:void 0})}).prototype=Ir(ic.prototype,{then:function(t,e){var r=oc(this),n=fc(Jr(this,ic));return n.ok=\"function\"!=typeof t||t,n.fail=\"function\"==typeof e&&e,n.domain=vu?cc.domain:void 0,r.parent=!0,r.reactions.push(n),0!=r.state&&yc(r,!1),n.promise},catch:function(t){return this.then(void 0,t)}}),$u=function(){var t=new Ku,e=rc(t);this.promise=t,this.resolve=wc(Tc,e),this.reject=wc(Rc,e)},Yu.f=fc=function(t){return t===ic||t===Vu?new $u(t):lc(t)},\"function\"==typeof pu&&(qu=pu.prototype.then,Z(pu.prototype,\"then\",function(t,e){var r=this;return new ic(function(t,e){qu.call(r,t,e)}).then(t,e)},{unsafe:!0}),\"function\"==typeof sc&&_t({global:!0,enumerable:!0,forced:!0},{fetch:function(t){return Ju(ic,sc.apply(n,arguments))}}))),_t({global:!0,wrap:!0,forced:dc},{Promise:ic}),Pe(ic,ec,!1),jr(ec),Vu=rt(ec),_t({target:ec,stat:!0,forced:dc},{reject:function(t){var e=fc(this);return e.reject.call(void 0,t),e.promise}}),_t({target:ec,stat:!0,forced:dc},{resolve:function(t){return Ju(this,t)}}),_t({target:ec,stat:!0,forced:vc},{all:function(t){var e=this,r=fc(e),n=r.resolve,o=r.reject,i=Qu(function(){var r=Yt(e.resolve),i=[],a=0,u=1;Tr(t,function(t){var c=a++,s=!1;i.push(void 0),u++,r.call(e,t).then(function(t){s||(s=!0,i[c]=t,--u||n(i))},o)}),--u||n(i)});return i.error&&o(i.value),r.promise},race:function(t){var e=this,r=fc(e),n=r.reject,o=Qu(function(){var o=Yt(e.resolve);Tr(t,function(t){o.call(e,t).then(r.resolve,n)})});return o.error&&n(o.value),r.promise}}),_t({target:\"Promise\",stat:!0},{allSettled:function(t){var e=this,r=Yu.f(e),n=r.resolve,o=r.reject,i=Qu(function(){var r=Yt(e.resolve),o=[],i=0,a=1;Tr(t,function(t){var u=i++,c=!1;o.push(void 0),a++,r.call(e,t).then(function(t){c||(c=!0,o[u]={status:\"fulfilled\",value:t},--a||n(o))},function(t){c||(c=!0,o[u]={status:\"rejected\",reason:t},--a||n(o))})}),--a||n(o)});return i.error&&o(i.value),r.promise}}),_t({target:\"Promise\",stat:!0},{any:function(t){var e=this,r=Yu.f(e),n=r.resolve,o=r.reject,i=Qu(function(){var r=Yt(e.resolve),i=[],a=0,u=1,c=!1;Tr(t,function(t){var s=a++,f=!1;i.push(void 0),u++,r.call(e,t).then(function(t){f||c||(c=!0,n(t))},function(t){f||c||(f=!0,i[s]=t,--u||o(new(rt(\"AggregateError\"))(i,\"No one promise resolved\")))})}),--u||o(new(rt(\"AggregateError\"))(i,\"No one promise resolved\"))});return i.error&&o(i.value),r.promise}});var Oc=!!pu&&o(function(){pu.prototype.finally.call({then:function(){}},function(){})});_t({target:\"Promise\",proto:!0,real:!0,forced:Oc},{finally:function(t){var e=Jr(this,rt(\"Promise\")),r=\"function\"==typeof t;return this.then(r?function(r){return Ju(e,t()).then(function(){return r})}:t,r?function(r){return Ju(e,t()).then(function(){throw r})}:t)}}),\"function\"!=typeof pu||pu.prototype.finally||Z(pu.prototype,\"finally\",rt(\"Promise\").prototype.finally),_t({target:\"Promise\",stat:!0},{try:function(t){var e=Yu.f(this),r=Qu(t);return(r.error?e.reject:e.resolve)(r.value),e.promise}});var xc=\"undefined\"!=typeof globalThis&&globalThis||\"undefined\"!=typeof self&&self||void 0!==xc&&xc,Ac=\"URLSearchParams\"in xc,Ic=\"Symbol\"in xc&&\"iterator\"in Symbol,_c=\"FileReader\"in xc&&\"Blob\"in xc&&function(){try{return new Blob,!0}catch(t){return!1}}(),jc=\"FormData\"in xc,Pc=\"ArrayBuffer\"in xc;if(Pc)var Nc=[\"[object Int8Array]\",\"[object Uint8Array]\",\"[object Uint8ClampedArray]\",\"[object Int16Array]\",\"[object Uint16Array]\",\"[object Int32Array]\",\"[object Uint32Array]\",\"[object Float32Array]\",\"[object Float64Array]\"],Mc=ArrayBuffer.isView||function(t){return t&&Nc.indexOf(Object.prototype.toString.call(t))>-1};function Uc(t){if(\"string\"!=typeof t&&(t=String(t)),/[^a-z0-9\\-#$%&'*+.^_`|~!]/i.test(t)||\"\"===t)throw new TypeError(\"Invalid character in header field name\");return t.toLowerCase()}function kc(t){return\"string\"!=typeof t&&(t=String(t)),t}function Lc(t){var e={next:function(){var e=t.shift();return{done:void 0===e,value:e}}};return Ic&&(e[Symbol.iterator]=function(){return e}),e}function Dc(t){this.map={},t instanceof Dc?t.forEach(function(t,e){this.append(e,t)},this):Array.isArray(t)?t.forEach(function(t){this.append(t[0],t[1])},this):t&&Object.getOwnPropertyNames(t).forEach(function(e){this.append(e,t[e])},this)}function Cc(t){if(t.bodyUsed)return Promise.reject(new TypeError(\"Already read\"));t.bodyUsed=!0}function Fc(t){return new Promise(function(e,r){t.onload=function(){e(t.result)},t.onerror=function(){r(t.error)}})}function Bc(t){var e=new FileReader,r=Fc(e);return e.readAsArrayBuffer(t),r}function Wc(t){if(t.slice)return t.slice(0);var e=new Uint8Array(t.byteLength);return e.set(new Uint8Array(t)),e.buffer}function zc(){return this.bodyUsed=!1,this._initBody=function(t){var e;this.bodyUsed=this.bodyUsed,this._bodyInit=t,t?\"string\"==typeof t?this._bodyText=t:_c&&Blob.prototype.isPrototypeOf(t)?this._bodyBlob=t:jc&&FormData.prototype.isPrototypeOf(t)?this._bodyFormData=t:Ac&&URLSearchParams.prototype.isPrototypeOf(t)?this._bodyText=t.toString():Pc&&_c&&(e=t)&&DataView.prototype.isPrototypeOf(e)?(this._bodyArrayBuffer=Wc(t.buffer),this._bodyInit=new Blob([this._bodyArrayBuffer])):Pc&&(ArrayBuffer.prototype.isPrototypeOf(t)||Mc(t))?this._bodyArrayBuffer=Wc(t):this._bodyText=t=Object.prototype.toString.call(t):this._bodyText=\"\",this.headers.get(\"content-type\")||(\"string\"==typeof t?this.headers.set(\"content-type\",\"text/plain;charset=UTF-8\"):this._bodyBlob&&this._bodyBlob.type?this.headers.set(\"content-type\",this._bodyBlob.type):Ac&&URLSearchParams.prototype.isPrototypeOf(t)&&this.headers.set(\"content-type\",\"application/x-www-form-urlencoded;charset=UTF-8\"))},_c&&(this.blob=function(){var t=Cc(this);if(t)return t;if(this._bodyBlob)return Promise.resolve(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(new Blob([this._bodyArrayBuffer]));if(this._bodyFormData)throw new Error(\"could not read FormData body as blob\");return Promise.resolve(new Blob([this._bodyText]))},this.arrayBuffer=function(){return this._bodyArrayBuffer?Cc(this)||(ArrayBuffer.isView(this._bodyArrayBuffer)?Promise.resolve(this._bodyArrayBuffer.buffer.slice(this._bodyArrayBuffer.byteOffset,this._bodyArrayBuffer.byteOffset+this._bodyArrayBuffer.byteLength)):Promise.resolve(this._bodyArrayBuffer)):this.blob().then(Bc)}),this.text=function(){var t=Cc(this);if(t)return t;if(this._bodyBlob)return function(t){var e=new FileReader,r=Fc(e);return e.readAsText(t),r}(this._bodyBlob);if(this._bodyArrayBuffer)return Promise.resolve(function(t){for(var e=new Uint8Array(t),r=new Array(e.length),n=0;n<e.length;n++)r[n]=String.fromCharCode(e[n]);return r.join(\"\")}(this._bodyArrayBuffer));if(this._bodyFormData)throw new Error(\"could not read FormData body as text\");return Promise.resolve(this._bodyText)},jc&&(this.formData=function(){return this.text().then($c)}),this.json=function(){return this.text().then(JSON.parse)},this}Dc.prototype.append=function(t,e){t=Uc(t),e=kc(e);var r=this.map[t];this.map[t]=r?r+\", \"+e:e},Dc.prototype.delete=function(t){delete this.map[Uc(t)]},Dc.prototype.get=function(t){return t=Uc(t),this.has(t)?this.map[t]:null},Dc.prototype.has=function(t){return this.map.hasOwnProperty(Uc(t))},Dc.prototype.set=function(t,e){this.map[Uc(t)]=kc(e)},Dc.prototype.forEach=function(t,e){for(var r in this.map)this.map.hasOwnProperty(r)&&t.call(e,this.map[r],r,this)},Dc.prototype.keys=function(){var t=[];return this.forEach(function(e,r){t.push(r)}),Lc(t)},Dc.prototype.values=function(){var t=[];return this.forEach(function(e){t.push(e)}),Lc(t)},Dc.prototype.entries=function(){var t=[];return this.forEach(function(e,r){t.push([r,e])}),Lc(t)},Ic&&(Dc.prototype[Symbol.iterator]=Dc.prototype.entries);var Gc=[\"DELETE\",\"GET\",\"HEAD\",\"OPTIONS\",\"POST\",\"PUT\"];function Kc(t,e){if(!(this instanceof Kc))throw new TypeError('Please use the \"new\" operator, this DOM object constructor cannot be called as a function.');var r,n,o=(e=e||{}).body;if(t instanceof Kc){if(t.bodyUsed)throw new TypeError(\"Already read\");this.url=t.url,this.credentials=t.credentials,e.headers||(this.headers=new Dc(t.headers)),this.method=t.method,this.mode=t.mode,this.signal=t.signal,o||null==t._bodyInit||(o=t._bodyInit,t.bodyUsed=!0)}else this.url=String(t);if(this.credentials=e.credentials||this.credentials||\"same-origin\",!e.headers&&this.headers||(this.headers=new Dc(e.headers)),this.method=(n=(r=e.method||this.method||\"GET\").toUpperCase(),Gc.indexOf(n)>-1?n:r),this.mode=e.mode||this.mode||null,this.signal=e.signal||this.signal,this.referrer=null,(\"GET\"===this.method||\"HEAD\"===this.method)&&o)throw new TypeError(\"Body not allowed for GET or HEAD requests\");if(this._initBody(o),!(\"GET\"!==this.method&&\"HEAD\"!==this.method||\"no-store\"!==e.cache&&\"no-cache\"!==e.cache)){var i=/([?&])_=[^&]*/;i.test(this.url)?this.url=this.url.replace(i,\"$1_=\"+(new Date).getTime()):this.url+=(/\\?/.test(this.url)?\"&\":\"?\")+\"_=\"+(new Date).getTime()}}function $c(t){var e=new FormData;return t.trim().split(\"&\").forEach(function(t){if(t){var r=t.split(\"=\"),n=r.shift().replace(/\\+/g,\" \"),o=r.join(\"=\").replace(/\\+/g,\" \");e.append(decodeURIComponent(n),decodeURIComponent(o))}}),e}function Vc(t,e){if(!(this instanceof Vc))throw new TypeError('Please use the \"new\" operator, this DOM object constructor cannot be called as a function.');e||(e={}),this.type=\"default\",this.status=void 0===e.status?200:e.status,this.ok=this.status>=200&&this.status<300,this.statusText=\"statusText\"in e?e.statusText:\"\",this.headers=new Dc(e.headers),this.url=e.url||\"\",this._initBody(t)}Kc.prototype.clone=function(){return new Kc(this,{body:this._bodyInit})},zc.call(Kc.prototype),zc.call(Vc.prototype),Vc.prototype.clone=function(){return new Vc(this._bodyInit,{status:this.status,statusText:this.statusText,headers:new Dc(this.headers),url:this.url})},Vc.error=function(){var t=new Vc(null,{status:0,statusText:\"\"});return t.type=\"error\",t};var qc=[301,302,303,307,308];Vc.redirect=function(t,e){if(-1===qc.indexOf(e))throw new RangeError(\"Invalid status code\");return new Vc(null,{status:e,headers:{location:t}})};var Hc=xc.DOMException;try{new Hc}catch(t){(Hc=function(t,e){this.message=t,this.name=e;var r=Error(t);this.stack=r.stack}).prototype=Object.create(Error.prototype),Hc.prototype.constructor=Hc}function Xc(t,e){return new Promise(function(r,n){var o=new Kc(t,e);if(o.signal&&o.signal.aborted)return n(new Hc(\"Aborted\",\"AbortError\"));var i=new XMLHttpRequest;function a(){i.abort()}i.onload=function(){var t,e,n={status:i.status,statusText:i.statusText,headers:(t=i.getAllResponseHeaders()||\"\",e=new Dc,t.replace(/\\r?\\n[\\t ]+/g,\" \").split(\"\\r\").map(function(t){return 0===t.indexOf(\"\\n\")?t.substr(1,t.length):t}).forEach(function(t){var r=t.split(\":\"),n=r.shift().trim();if(n){var o=r.join(\":\").trim();e.append(n,o)}}),e)};n.url=\"responseURL\"in i?i.responseURL:n.headers.get(\"X-Request-URL\");var o=\"response\"in i?i.response:i.responseText;setTimeout(function(){r(new Vc(o,n))},0)},i.onerror=function(){setTimeout(function(){n(new TypeError(\"Network request failed\"))},0)},i.ontimeout=function(){setTimeout(function(){n(new TypeError(\"Network request failed\"))},0)},i.onabort=function(){setTimeout(function(){n(new Hc(\"Aborted\",\"AbortError\"))},0)},i.open(o.method,function(t){try{return\"\"===t&&xc.location.href?xc.location.href:t}catch(e){return t}}(o.url),!0),\"include\"===o.credentials?i.withCredentials=!0:\"omit\"===o.credentials&&(i.withCredentials=!1),\"responseType\"in i&&(_c?i.responseType=\"blob\":Pc&&o.headers.get(\"Content-Type\")&&-1!==o.headers.get(\"Content-Type\").indexOf(\"application/octet-stream\")&&(i.responseType=\"arraybuffer\")),!e||\"object\"!=typeof e.headers||e.headers instanceof Dc?o.headers.forEach(function(t,e){i.setRequestHeader(e,t)}):Object.getOwnPropertyNames(e.headers).forEach(function(t){i.setRequestHeader(t,kc(e.headers[t]))}),o.signal&&(o.signal.addEventListener(\"abort\",a),i.onreadystatechange=function(){4===i.readyState&&o.signal.removeEventListener(\"abort\",a)}),i.send(void 0===o._bodyInit?null:o._bodyInit)})}Xc.polyfill=!0,xc.fetch||(xc.fetch=Xc,xc.Headers=Dc,xc.Request=Kc,xc.Response=Vc),function(t){var e=function(){try{return!!Symbol.iterator}catch(t){return!1}}(),r=function(t){var r={next:function(){var e=t.shift();return{done:void 0===e,value:e}}};return e&&(r[Symbol.iterator]=function(){return r}),r},n=function(t){return encodeURIComponent(t).replace(/%20/g,\"+\")},o=function(t){return decodeURIComponent(String(t).replace(/\\+/g,\" \"))};(function(){try{var e=t.URLSearchParams;return\"a=1\"===new e(\"?a=1\").toString()&&\"function\"==typeof e.prototype.set&&\"function\"==typeof e.prototype.entries}catch(t){return!1}})()||function(){var o=function t(e){Object.defineProperty(this,\"_entries\",{writable:!0,value:{}});var r=typeof e;if(\"undefined\"===r);else if(\"string\"===r)\"\"!==e&&this._fromString(e);else if(e instanceof t){var n=this;e.forEach(function(t,e){n.append(e,t)})}else{if(null===e||\"object\"!==r)throw new TypeError(\"Unsupported input's type for URLSearchParams\");if(\"[object Array]\"===Object.prototype.toString.call(e))for(var o=0;o<e.length;o++){var i=e[o];if(\"[object Array]\"!==Object.prototype.toString.call(i)&&2===i.length)throw new TypeError(\"Expected [string, any] as entry at index \"+o+\" of URLSearchParams's input\");this.append(i[0],i[1])}else for(var a in e)e.hasOwnProperty(a)&&this.append(a,e[a])}},i=o.prototype;i.append=function(t,e){t in this._entries?this._entries[t].push(String(e)):this._entries[t]=[String(e)]},i.delete=function(t){delete this._entries[t]},i.get=function(t){return t in this._entries?this._entries[t][0]:null},i.getAll=function(t){return t in this._entries?this._entries[t].slice(0):[]},i.has=function(t){return t in this._entries},i.set=function(t,e){this._entries[t]=[String(e)]},i.forEach=function(t,e){var r;for(var n in this._entries)if(this._entries.hasOwnProperty(n)){r=this._entries[n];for(var o=0;o<r.length;o++)t.call(e,r[o],n,this)}},i.keys=function(){var t=[];return this.forEach(function(e,r){t.push(r)}),r(t)},i.values=function(){var t=[];return this.forEach(function(e){t.push(e)}),r(t)},i.entries=function(){var t=[];return this.forEach(function(e,r){t.push([r,e])}),r(t)},e&&(i[Symbol.iterator]=i.entries),i.toString=function(){var t=[];return this.forEach(function(e,r){t.push(n(r)+\"=\"+n(e))}),t.join(\"&\")},t.URLSearchParams=o}();var i=t.URLSearchParams.prototype;\"function\"!=typeof i.sort&&(i.sort=function(){var t=this,e=[];this.forEach(function(r,n){e.push([n,r]),t._entries||t.delete(n)}),e.sort(function(t,e){return t[0]<e[0]?-1:t[0]>e[0]?1:0}),t._entries&&(t._entries={});for(var r=0;r<e.length;r++)this.append(e[r][0],e[r][1])}),\"function\"!=typeof i._fromString&&Object.defineProperty(i,\"_fromString\",{enumerable:!1,configurable:!1,writable:!1,value:function(t){if(this._entries)this._entries={};else{var e=[];this.forEach(function(t,r){e.push(r)});for(var r=0;r<e.length;r++)this.delete(e[r])}var n,i=(t=t.replace(/^\\?/,\"\")).split(\"&\");for(r=0;r<i.length;r++)n=i[r].split(\"=\"),this.append(o(n[0]),n.length>1?o(n[1]):\"\")}})}(void 0!==t?t:\"undefined\"!=typeof window?window:\"undefined\"!=typeof self?self:t),function(t){var e,r,n;if(function(){try{var e=new t.URL(\"b\",\"http://a\");return e.pathname=\"c d\",\"http://a/c%20d\"===e.href&&e.searchParams}catch(t){return!1}}()||(e=t.URL,n=(r=function(e,r){\"string\"!=typeof e&&(e=String(e)),r&&\"string\"!=typeof r&&(r=String(r));var n,o=document;if(r&&(void 0===t.location||r!==t.location.href)){r=r.toLowerCase(),(n=(o=document.implementation.createHTMLDocument(\"\")).createElement(\"base\")).href=r,o.head.appendChild(n);try{if(0!==n.href.indexOf(r))throw new Error(n.href)}catch(t){throw new Error(\"URL unable to set base \"+r+\" due to \"+t)}}var i=o.createElement(\"a\");i.href=e,n&&(o.body.appendChild(i),i.href=i.href);var a=o.createElement(\"input\");if(a.type=\"url\",a.value=e,\":\"===i.protocol||!/:/.test(i.href)||!a.checkValidity()&&!r)throw new TypeError(\"Invalid URL\");Object.defineProperty(this,\"_anchorElement\",{value:i});var u=new t.URLSearchParams(this.search),c=!0,s=!0,f=this;[\"append\",\"delete\",\"set\"].forEach(function(t){var e=u[t];u[t]=function(){e.apply(u,arguments),c&&(s=!1,f.search=u.toString(),s=!0)}}),Object.defineProperty(this,\"searchParams\",{value:u,enumerable:!0});var l=void 0;Object.defineProperty(this,\"_updateSearchParams\",{enumerable:!1,configurable:!1,writable:!1,value:function(){this.search!==l&&(l=this.search,s&&(c=!1,this.searchParams._fromString(this.search),c=!0))}})}).prototype,[\"hash\",\"host\",\"hostname\",\"port\",\"protocol\"].forEach(function(t){!function(t){Object.defineProperty(n,t,{get:function(){return this._anchorElement[t]},set:function(e){this._anchorElement[t]=e},enumerable:!0})}(t)}),Object.defineProperty(n,\"search\",{get:function(){return this._anchorElement.search},set:function(t){this._anchorElement.search=t,this._updateSearchParams()},enumerable:!0}),Object.defineProperties(n,{toString:{get:function(){var t=this;return function(){return t.href}}},href:{get:function(){return this._anchorElement.href.replace(/\\?$/,\"\")},set:function(t){this._anchorElement.href=t,this._updateSearchParams()},enumerable:!0},pathname:{get:function(){return this._anchorElement.pathname.replace(/(^\\/?)/,\"/\")},set:function(t){this._anchorElement.pathname=t},enumerable:!0},origin:{get:function(){return this._anchorElement.protocol+\"//\"+this._anchorElement.hostname+(this._anchorElement.port!={\"http:\":80,\"https:\":443,\"ftp:\":21}[this._anchorElement.protocol]&&\"\"!==this._anchorElement.port?\":\"+this._anchorElement.port:\"\")},enumerable:!0},password:{get:function(){return\"\"},set:function(t){},enumerable:!0},username:{get:function(){return\"\"},set:function(t){},enumerable:!0}}),r.createObjectURL=function(t){return e.createObjectURL.apply(e,arguments)},r.revokeObjectURL=function(t){return e.revokeObjectURL.apply(e,arguments)},t.URL=r),void 0!==t.location&&!(\"origin\"in t.location)){var o=function(){return t.location.protocol+\"//\"+t.location.hostname+(t.location.port?\":\"+t.location.port:\"\")};try{Object.defineProperty(t.location,\"origin\",{get:o,enumerable:!0})}catch(e){setInterval(function(){t.location.origin=o()},100)}}}(void 0!==t?t:\"undefined\"!=typeof window?window:\"undefined\"!=typeof self?self:t);var Yc=Object.getOwnPropertySymbols,Jc=Object.prototype.hasOwnProperty,Qc=Object.prototype.propertyIsEnumerable;function Zc(t){if(null==t)throw new TypeError(\"Object.assign cannot be called with null or undefined\");return Object(t)}var ts=function(){try{if(!Object.assign)return!1;var t=new String(\"abc\");if(t[5]=\"de\",\"5\"===Object.getOwnPropertyNames(t)[0])return!1;for(var e={},r=0;r<10;r++)e[\"_\"+String.fromCharCode(r)]=r;if(\"0123456789\"!==Object.getOwnPropertyNames(e).map(function(t){return e[t]}).join(\"\"))return!1;var n={};return\"abcdefghijklmnopqrst\".split(\"\").forEach(function(t){n[t]=t}),\"abcdefghijklmnopqrst\"===Object.keys(Object.assign({},n)).join(\"\")}catch(t){return!1}}()?Object.assign:function(t,e){for(var r,n,o=Zc(t),i=1;i<arguments.length;i++){for(var a in r=Object(arguments[i]))Jc.call(r,a)&&(o[a]=r[a]);if(Yc){n=Yc(r);for(var u=0;u<n.length;u++)Qc.call(r,n[u])&&(o[n[u]]=r[n[u]])}}return o};Object.assign=ts}();\n","import \"gatsby-legacy-polyfills\"\n\nif (process.env.NODE_ENV === `development`) {\n require(`event-source-polyfill`)\n}\n","var g;\n\n// This works in non-strict mode\ng = (function() {\n\treturn this;\n})();\n\ntry {\n\t// This works if eval is allowed (see CSP)\n\tg = g || new Function(\"return this\")();\n} catch (e) {\n\t// This works if the window reference is available\n\tif (typeof window === \"object\") g = window;\n}\n\n// g can still be undefined, but nothing to do about it...\n// We return undefined, instead of nothing here, so it's\n// easier to handle this case. if(!global) { ...}\n\nmodule.exports = g;\n"],"sourceRoot":""}
\ No newline at end of file
diff --git a/quickstarts/index.html b/quickstarts/index.html
index bfe3ae7..72af2c5 100644
--- a/quickstarts/index.html
+++ b/quickstarts/index.html
@@ -1,4 +1,4 @@
-<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><style data-href="/jkube/styles.5c9b852c43e28f117cb7.css">@import url(https://fonts.googleapis.com/css?family=Libre+Franklin:100,300,400,600,700,|Roboto:300,400,500,700|Jura);@import url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css);@import url(https://unpkg.com/@coreui/icons/css/brand.min.css);code[class*=language-],pre[class*=language-]{color:#657b83;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-ms-hyphens:none;hyphens:none}code[class*=language-]::selection,code[class*=language-] ::selection,pre[class*=language-]::selection,pre[class*=language-] ::selection{background:#073642}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;border-radius:.3em}:not(pre)>code[class*=language-],pre[class*=language-]{background-color:#fdf6e3}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#93a1a1}.token.punctuation{color:#586e75}.token.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#268bd2}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string,.token.url{color:#2aa198}.token.entity{color:#657b83;background:#eee8d5}.token.atrule,.token.attr-value,.token.keyword{color:#859900}.token.class-name,.token.function{color:#b58900}.token.important,.token.regex,.token.variable{color:#cb4b16}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body,html{font-family:Libre Franklin,Roboto,sans-serif}body{margin:0;padding:0;outline:0;background:#f1f2f2;font-size:16px;color:#222}h1{font-size:3rem}h1,h2{margin-top:0;font-family:Roboto,sans-serif;font-weight:300}h2{font-size:2rem}h3{font-size:1.5rem;font-weight:300}a{color:#525c86}a:focus,a:hover{color:#222}.eclipse-jkube-footer{padding:16px;border-top:10px solid #222;background-color:#292c2f;font-size:19.2px;font-family:Roboto,sans-serif;font-weight:300;line-height:1.5}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube{display:flex;flex-direction:column;max-width:1170px;margin:0 auto 16px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-image{width:160px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-tagline{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links{max-width:1170px;margin:0 auto 16px;display:flex;flex-wrap:wrap}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list{padding:0;margin:0 48px 16px 0;list-style:none}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a{transition:color .1s linear;color:#f1f2f2}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a,.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a:hover{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a:hover{color:#525c86}.eclipse-jkube-footer .eclipse-jkube-footer__links a{text-decoration:none}.eclipse-jkube-footer .eclipse-jkube-footer__copyright{max-width:1170px;margin:0 auto 16px;font-family:Roboto,sans-serif;color:#939598}.eclipse-jkube__header{display:block;position:relative;height:175px;background-color:#292c2f}@media (min-width:700px){.eclipse-jkube__header{height:105px}}.eclipse-jkube__header .eclipse-jkube__header-trade-mark{font-size:.5em;font-size:.3em;line-height:2.5;vertical-align:top}.eclipse-jkube__header .eclipse-jkube__header-container{position:relative;margin:0 auto;padding:0 16px;height:100%;max-width:1170px}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-container{display:flex;flex-wrap:nowrap;height:105px}}.eclipse-jkube__header .eclipse-jkube__header-logo{display:flex;justify-content:center;align-items:center;font-size:32px;font-weight:400;color:#f1f2f2}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo{font-size:50px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:65px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:90px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image img{max-height:100%;max-width:100%}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:50px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:65px}}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube-image{height:100%}.eclipse-jkube__header .eclipse-jkube__header-logo:hover{color:#f1f2f2}.eclipse-jkube__header .eclipse-jkube__header-content{flex:1 0;min-width:1px;display:flex;justify-content:center;align-items:center}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-content{justify-content:flex-end}}.eclipse-jkube__header .eclipse-jkube__header-content ul{display:flex;flex-wrap:wrap;align-items:center;justify-content:center}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-content ul{justify-content:flex-start}}.eclipse-jkube__header .eclipse-jkube__header-content ul li{margin:4px 0;padding-right:16px;list-style:none;color:#f1f2f2;font-size:20px}.eclipse-jkube__header .eclipse-jkube__header-content .eclipse-jkube__header-stars{display:block;width:85px;height:20px;line-height:20px}.eclipse-jkube__header a{color:#f1f2f2;text-decoration:none}.eclipse-jkube__header a:hover{color:#dd8623;transition:color .3s}.quick-start-card{border:1px solid #d6d6d6;padding:16px}.quick-start-card .quick-start-card__title{margin:0;padding:0}.quick-start-card .quick-start-card__title a{text-decoration:none}.quick-start-card .quick-start-card__title a:active,.quick-start-card .quick-start-card__title a:hover{text-decoration:underline}.quick-start-card .quick-start-card__technologies{margin:16px 0 0;padding:0}.quick-start-card .quick-start-card__technologies-item{display:inline-flex;align-items:center;padding:.25rem .3rem;border-radius:.2rem;font-size:.8rem;margin:0 0 .5rem;background:#dd8623;color:#222}.quick-start-card .quick-start-card__technologies-item:not(:last-child){margin-right:.5rem}.quick-start-card .quick-start-card__technologies-item-icon{display:inline-block;height:.8rem;margin-right:.2rem}.quick-start-card .quick-start-card__description p{margin-top:0}.quick-start-card .quick-start-card__links a{display:inline-block;text-decoration:none;padding:.3rem .5rem;border-radius:.2rem;border:1px solid #d6d6d6;background:#d6d6d6;color:#222}.quick-start-card .quick-start-card__links a:active,.quick-start-card .quick-start-card__links a:hover{background-color:#f1f2f2}.eclipse-jkube{display:flex;flex-direction:column;min-height:100vh}.eclipse-jkube__main{flex:1 1}@media (min-width:1170px){.eclipse-jkube__main{overflow-x:hidden}}.eclipse-jkube__main .eclipse-jkube__content{margin:0 16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content{max-width:1154px;margin:0 auto}}.eclipse-jkube__main .eclipse-jkube__content img{max-width:100%}.eclipse-jkube__main .eclipse-jkube__content :not(pre)>code[class*=language-],.eclipse-jkube__main .eclipse-jkube__content pre[class*=language-]{background-color:transparent}.eclipse-jkube__main .eclipse-jkube__content .hero{margin:0 -16px 16px;display:block;background-color:#272727;background-image:url(/jkube/static/cubes-8e1e59c337437947105e6668f1f3790a.jpg);background-size:cover;color:#f1f2f2}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px;background-color:rgba(39,39,39,.7)}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px calc((100% - 1170px)/2)}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content .getting-involved{color:#f1f2f2;margin:0 -16px;padding:0 16px;display:flex;justify-content:flex-end}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content h1{font-size:2.5rem;font-family:Libre Franklin,Roboto,sans-serif;font-weight:400}.eclipse-jkube__main .eclipse-jkube__content .section-dark{background-color:#404040;color:#f1f2f2;margin:0 -16px;padding:16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;padding:16px calc((100% - 1170px)/2)}}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark>*{padding:0 calc((100% - 1170px)/2)}}.eclipse-jkube__main .eclipse-jkube__content .highlight{display:flex;align-items:center}.eclipse-jkube__main .eclipse-jkube__content .highlight>p{margin:16px 32px;display:none}@media (min-width:501px){.eclipse-jkube__main .eclipse-jkube__content .highlight>p{display:block}}.eclipse-jkube__main .eclipse-jkube__content .highlight>p img{max-width:100px}.eclipse-jkube__main .eclipse-jkube__content .highlight-description{flex:1 1;min-width:1px}.eclipse-jkube__main .eclipse-jkube__content .highlight ul{flex:1 1;min-width:1px;margin:0;padding:0}.eclipse-jkube__main .eclipse-jkube__content .highlight li{list-style:none;margin:16px 0}.eclipse-jkube__main .eclipse-jkube__content .calendar{position:relative;overflow:hidden;padding-bottom:75%;margin-bottom:16px}@media (min-width:666.66667px){.eclipse-jkube__main .eclipse-jkube__content .calendar{padding-bottom:0;height:500px}}.eclipse-jkube__main .eclipse-jkube__content .calendar iframe{position:absolute;top:0;height:100%;max-height:500px;width:100%}.eclipse-jkube__documentation{margin:0}@media screen and (min-width:768px){.eclipse-jkube__documentation{position:absolute;top:105px;bottom:0;width:100%;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content{position:relative;padding:16px;overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content article,.eclipse-jkube__documentation .eclipse-jkube__documentation-content aside,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figcaption,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure,.eclipse-jkube__documentation .eclipse-jkube__documentation-content footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content header,.eclipse-jkube__documentation .eclipse-jkube__documentation-content hgroup,.eclipse-jkube__documentation .eclipse-jkube__documentation-content main,.eclipse-jkube__documentation .eclipse-jkube__documentation-content nav,.eclipse-jkube__documentation .eclipse-jkube__documentation-content section{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio,.eclipse-jkube__documentation .eclipse-jkube__documentation-content video{display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio:not([controls]){display:none;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus{outline:thin dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{outline:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2em;margin:.67em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]{border-bottom:1px dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dfn{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{box-sizing:content-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content mark{background:#ff0;color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content samp{font-family:monospace;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{white-space:pre-wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content q{quotes:"\201C" "\201D" "\2018" "\2019"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub{bottom:-.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg:not(:root){overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure{margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content legend{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select,.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{font-family:inherit;font-size:100%;margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input{line-height:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[type=button],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=reset],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=submit]{-webkit-appearance:button;cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button[disabled],.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[disabled]{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=checkbox],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=radio]{box-sizing:border-box;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button::-moz-focus-inner,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input::-moz-focus-inner{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{overflow:auto;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{border-collapse:collapse;border-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content *,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :before{box-sizing:border-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body{background:#fff;color:rgba(0,0,0,.8);padding:0;margin:0;font-family:"Noto Serif","DejaVu Serif",serif;font-weight:400;font-style:normal;line-height:1;position:relative;cursor:auto;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{max-width:100%;height:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{height:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{-ms-interpolation-mode:bicubic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .left{float:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .right{float:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-left{text-align:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-right{text-align:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-center{text-align:center!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-justify{text-align:justify!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{display:inline-block;vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{height:auto;min-height:50px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .center{margin-left:auto;margin-right:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stretch{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .subheader,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{line-height:1.45;color:#7a2518;font-weight:400;margin-top:0;margin-bottom:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content div,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content form,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6,.eclipse-jkube__documentation .eclipse-jkube__documentation-content li,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin:0;padding:0;direction:ltr}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:#2156a5;text-decoration:underline;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{color:#1d4b8f}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{font-family:inherit;font-weight:400;font-size:1em;line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p aside{font-size:.875em;line-height:1.35;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-family:Open Sans,DejaVu Sans,sans-serif;font-weight:300;font-style:normal;color:#ba3925;text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:.5em;line-height:1.0125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 small{font-size:60%;color:#e99b8f;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5{font-size:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{border:solid #dddddf;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em,.eclipse-jkube__documentation .eclipse-jkube__documentation-content i{font-style:italic;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b,.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong{font-weight:700;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:60%;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;font-weight:400;color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{font-size:1em;line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ul{margin-left:1.25em;margin-bottom:0;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square li ul{list-style:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square{list-style-type:square}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle{list-style-type:circle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc{list-style-type:disc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ul{margin-left:1.25em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dt{margin-bottom:.3125em;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content acronym{text-transform:uppercase;font-size:90%;color:rgba(0,0,0,.8);border-bottom:1px dotted #ddd;cursor:help}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote{margin:0 0 1.25em;padding:.5625em 1.25em 0 1.1875em;border-left:1px solid #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite{display:block;font-size:.9375em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite:before{content:"\2014 "}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a:visited{color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote p{line-height:1.6;color:rgba(0,0,0,.85)}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:2.3125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4{font-size:1.4375em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{background:#fff;margin-bottom:1.25em;border:1px solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead{background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th{padding:.5em .625em .625em;font-size:inherit;color:rgba(0,0,0,.8);text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr th{padding:.5625em .625em;font-size:inherit;color:rgba(0,0,0,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.even{background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tbody tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td{display:table-cell;line-height:1.6}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2;word-spacing:-.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre):not([class^=L])>code{font-size:.9375em;font-style:normal!important;letter-spacing:0;padding:.1em .5ex;word-spacing:-.15em;background:#f7f7f8;border-radius:4px;line-height:1.45;text-rendering:optimizeSpeed;word-wrap:break-word}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nobreak{word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nowrap{white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{color:rgba(0,0,0,.9);font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;line-height:1.45;text-rendering:optimizeSpeed}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre pre{color:inherit;font-size:inherit;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre>code{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap pre{white-space:pre;word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em em{font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq{color:rgba(51,51,51,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;display:inline-block;color:rgba(0,0,0,.8);font-size:.65em;line-height:1.45;background:#f7f7f7;border:1px solid #ccc;border-radius:3px;box-shadow:0 1px 0 rgba(0,0,0,.2),inset 0 0 0 .1em #fff;margin:0 .15em;padding:.2em .5em;vertical-align:middle;position:relative;top:-.1em;white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:first-child{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:last-child{margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b:not(.caret){font-weight:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{word-spacing:-.02em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b.caret{font-size:1.25em;line-height:.8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq i.caret{font-weight:700;text-align:center;width:.45em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{position:relative;top:-1px;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{content:"[";padding:0 3px 0 2px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after{content:"]";padding:0 2px 0 3px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p a>code:hover{color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{width:100%;margin:0 auto;max-width:62.5em;*zoom:1;position:relative;padding-left:.9375em;padding-right:.9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-top:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before{content:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{color:rgba(0,0,0,.85);margin-top:2.25rem;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child+#toc{margin-top:8px;border-top:1px solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:only-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #dddddf;padding-bottom:8px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details{border-bottom:1px solid #dddddf;line-height:1.45;padding-top:.25em;padding-bottom:.25em;padding-left:.25em;color:rgba(0,0,0,.6);display:flex;flex-flow:row wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span:first-child{margin-left:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span.email a{color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span:before{content:"\A0\2013\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span.author:before{content:"\A0\22C5\A0";color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span#revremark:before{content:"\A0|\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber{text-transform:capitalize}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber:after{content:"\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content>h1:first-child:not([class]){color:rgba(0,0,0,.85);border-bottom:1px solid #dddddf;padding-bottom:8px;margin-top:0;padding-top:1rem;margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #e7e7e9;padding-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc>ul{margin-left:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0>li>a{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0 ul.sectlevel1{margin:.5em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul{font-family:Open Sans,DejaVu Sans,sans-serif;list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc li{line-height:1.3334;margin-top:.3334em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{color:#7a2518;font-size:1.2em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:15em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{margin-top:0!important;background:#f8f8f7;position:fixed;width:15em;left:0;top:0;border-right:1px solid #e7e7e9;border-top-width:0!important;border-bottom-width:0!important;z-index:1000;padding:1.25em 1em;height:100%;overflow:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{margin-top:0;margin-bottom:.8rem;font-size:1.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.9em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{margin-left:0;padding-left:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:.5em;margin-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:15em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right #toc.toc2{border-right-width:0;border-left:1px solid #e7e7e9;left:auto;right:0}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:20em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{width:20em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.95em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{padding-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:20em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc{border:1px solid #e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{max-width:100%;background:rgba(0,0,0,.8);padding:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:hsla(0,0%,100%,.8);line-height:1.44}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:.625em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:1.25em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1:last-child{padding-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border-top:1px solid #e7e7e9}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:before{content:"\A7";font-size:.85em;display:block;padding-top:.1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:hover{visibility:visible}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link{color:#ba3925;text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link:hover{color:#a53221}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content details>summary:first-of-type{cursor:pointer;display:list-item;outline:none;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{text-rendering:optimizeLegibility;text-align:left;font-family:"Noto Serif","DejaVu Serif",serif;font-size:1rem;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock.fit-content>caption.title{white-space:nowrap;width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #preamble>.sectionbody>[class=paragraph]:first-of-type p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph.lead>p{font-size:1.21875em;line-height:1.6;color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock #preamble>.sectionbody>[class=paragraph]:first-of-type p{font-size:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon{text-align:center;width:80px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon .title{font-weight:700;font-family:Open Sans,DejaVu Sans,sans-serif;text-transform:uppercase}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content{padding-left:1.125em;padding-right:1.25em;border-left:1px solid #dddddf;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{border:1px solid #e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#fff;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{border:1px solid #dbdbd6;margin-bottom:1.25em;padding:1.25em;background:#f3f3f2;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title{color:#7a2518;margin-top:0;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{border-radius:4px;word-wrap:break-word;overflow-x:auto;padding:1em;font-size:.8125em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:.90625em}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:1em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre:not(.highlight),.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class=highlight],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class^="highlight "],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock.output pre{color:#f7f7f8;background:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content{position:relative}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:none;content:attr(data-lang);position:absolute;font-size:.75em;top:.425rem;right:.5rem;line-height:1;text-transform:uppercase;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock:hover code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:before{content:attr(data-prompt);padding-right:.5em;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:not([data-prompt]):before{content:"$"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs{padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs>code{padding:1em;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.prettyprint{border-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .prettyprint{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint .linenums{line-height:1.45;margin-left:2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li{background:none;list-style-type:inherit;padding-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li code[data-lang]:before{opacity:1}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li:not(:first-child) code[data-lang]:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable{border-collapse:separate;border:0;margin-bottom:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td[class]{color:inherit;vertical-align:top;padding:0;line-height:inherit;white-space:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.code{padding-left:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.linenos{border-right:1px solid;opacity:.35;padding-right:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno{border-right:1px solid;opacity:.35;display:inline-block;margin-right:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno:before{content:"";margin-right:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock{margin:0 1em 1.25em 1.5em;display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock:not(.excerpt)>.title{margin-left:-1.5em;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock p{color:rgba(0,0,0,.85);font-size:1.15rem;line-height:1.75;word-spacing:.1em;letter-spacing:0;font-style:italic;text-align:justify}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote{margin:0;padding:0;border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote:before{content:"\201C";float:left;font-size:2.75em;font-weight:700;line-height:.6em;margin-left:-.6em;color:#7a2518;text-shadow:0 1px 2px rgba(0,0,0,.1)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote>.paragraph:last-child p{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution{margin-top:.75em;margin-right:.5ex;text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock{margin:0 1em 1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre{font-family:Open Sans,DejaVu Sans,sans;font-size:1.15rem;color:rgba(0,0,0,.85);font-weight:300;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{margin-top:1.25rem;margin-left:.5ex}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{font-size:.9375em;line-height:1.45;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution br,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution cite,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution cite{display:block;letter-spacing:-.025em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{line-height:1.6;word-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract{margin:0 1em 1.25em;display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract>.title{margin:0 0 .375em;font-size:1.15em;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt>blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{padding:0 0 .25em 1em;border-left:.25em solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{color:inherit;font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock .attribution{color:inherit;text-align:left;margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock{max-width:100%;border-collapse:separate}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child{margin-bottom:-1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child.sidebarblock{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{border:0 solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead>tr>.tableblock{border-width:0 1px 1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tfoot>tr>.tableblock{border-width:1px 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock{border-width:0 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead>tr>.tableblock{border-width:0 0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tfoot>tr>.tableblock{border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>*>tr>.tableblock:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock:last-child{border-right-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead:last-child>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead:last-child>tr>.tableblock{border-bottom-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-all{border-width:1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-sides{border-width:0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-ends,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-topbot{border-width:1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-all tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-even tr:nth-of-type(2n),.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-hover tr:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-odd tr:nth-of-type(odd){background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-left{text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-right,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-right{text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-center,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-center{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-top,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-top{vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-bottom,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-bottom{vertical-align:bottom}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-middle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-middle{vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead th{font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th{display:table-cell;line-height:1.6;background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th p{color:rgba(0,0,0,.8);font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock>code:only-child{background:none;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol{margin-left:1.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-left:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul dd{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-check-square-o:first-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-square-o:first-child{width:1.25em;font-size:.8em;position:relative;bottom:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>input[type=checkbox]:first-child{margin-right:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline{display:flex;flex-flow:row wrap;list-style:none;margin:0 0 .625em -1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline>li{margin-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .unstyled dl dt{font-weight:400;font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.arabic{list-style-type:decimal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.decimal{list-style-type:decimal-leading-zero}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.loweralpha{list-style-type:lower-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperalpha{list-style-type:upper-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowerroman{list-style-type:lower-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperroman{list-style-type:upper-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowergreek{list-style-type:lower-greek}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table{border:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table>tbody>tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table>tbody>tr{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist2{vertical-align:top;padding:0 .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1{font-weight:700;padding-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock+.colist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock+.colist{margin-top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child{padding:.4em .75em 0;line-height:1;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):last-child{padding:.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .thumb{line-height:0;display:inline-block;border:4px solid #fff;box-shadow:0 0 0 1px #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.left{margin:.25em .625em 1.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.right{margin:.25em 0 1.25em .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb{border-width:6px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb>.title{padding:0 .125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-top:.25em;margin-bottom:.25em;display:inline-block;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left{margin-right:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image{text-decoration:none;display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image object{pointer-events:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref{font-size:.875em;position:static;vertical-align:super}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 .75em;border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote{padding:0 .375em 0 .225em;line-height:1.3334;font-size:.875em;margin-left:1.2em;margin-bottom:.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote a:first-of-type{font-weight:700;text-decoration:none;margin-left:-1.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote:last-of-type{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table{border:0;background:#fff;width:100%;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table td.line-data{width:99%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.unbreakable{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .big{font-size:larger}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .small{font-size:smaller}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .underline{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .overline{text-decoration:overline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .line-through{text-decoration:line-through}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua{color:#00bfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua-background{background:#00fafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black-background{background:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue{color:#0000bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue-background{background:#0000fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia{color:#bf00bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia-background{background:#fa00fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray{color:#606060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray-background{background:#7d7d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green{color:#006000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green-background{background:#007d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime{color:#00bf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime-background{background:#00fa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon{color:#600000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon-background{background:#7d0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy{color:#000060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy-background{background:#00007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive{color:#606000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive-background{background:#7d7d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple{color:#600060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple-background{background:#7d007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red{color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red-background{background:#fa0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver{color:#909090}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver-background{background:#bcbcbc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal{color:#006060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal-background{background:#007d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white{color:#bfbfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white-background{background:#fafafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow{color:#bfbf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow-background{background:#fafa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.icon>.fa{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a span.icon>.fa{cursor:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;text-shadow:1px 1px 2px rgba(0,0,0,.5);cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-note:before{content:"\F05A";color:#19407c}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-tip:before{content:"\F0EB";text-shadow:1px 1px 2px rgba(155,155,0,.8);color:#111}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-warning:before{content:"\F071";color:#bf6900}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-caution:before{content:"\F06D";color:#bf3400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-important:before{content:"\F06A";color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]{display:inline-block;color:#fff!important;background:rgba(0,0,0,.8);border-radius:100px;text-align:center;font-size:.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:Open Sans,DejaVu Sans,sans-serif;font-style:normal;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value] *{color:#fff!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]+b{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]:after{content:attr(data-value)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre .conum[data-value]{position:relative;top:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.conum *{color:inherit!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum:not([data-value]):empty{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{letter-spacing:-.01em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content strong{letter-spacing:-.005em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{background:#fffef7;border-color:#e0e0dc;box-shadow:0 1px 4px #e0e0dc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:none!important}@page{.eclipse-jkube__documentation .eclipse-jkube__documentation-content{margin:1.25cm .75cm}}@media print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content *{box-shadow:none!important;text-shadow:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:inherit!important;text-decoration:underline!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.bare,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="#"],.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="mailto:"]{text-decoration:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="http:"]:not(.bare):after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="https:"]:not(.bare):after{content:"(" attr(href) ")";display:inline-block;font-size:.875em;padding-left:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]:after{content:" (" attr(title) ")"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tr{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content thead{display:table-header-group}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{max-width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1em;orphans:3;widows:3}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{page-break-after:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{background:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #dddddf!important;padding-bottom:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details{border:0!important;display:block;padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details span:first-child{margin-left:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br+span:before{content:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #preamble,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book .sect1>h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book h1.sect0{page-break-before:always}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{padding:0 .9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-on-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:block!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-for-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .show-for-print{display:inherit!important}}@media amzn-kf8,print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{margin-top:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:rgba(0,0,0,.6);font-size:.9em}}@media amzn-kf8{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{padding:0}}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content{padding-left:21em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .toc{position:fixed;width:20em;left:0;top:105px;bottom:0;z-index:1000;padding:0 16px;border-right:1px solid #efefed;border-top-width:0!important;border-bottom-width:0!important;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content i.fa{font-style:normal}.eclipse-jkube__quickstarts{padding:0}.eclipse-jkube__quickstarts-item{list-style:none}.eclipse-jkube__quickstarts-item:not(:last-child){margin-bottom:16px}</style><meta name="generator" content="Gatsby 2.24.12"/><title data-react-helmet="true">Quickstarts</title><meta data-react-helmet="true" charSet="UTF-8"/><meta data-react-helmet="true" name="description" content="Eclipse JKube Quickstarts and examples"/><style type="text/css">
+<!DOCTYPE html><html lang="en"><head><meta charSet="utf-8"/><meta http-equiv="x-ua-compatible" content="ie=edge"/><meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no"/><style data-href="/jkube/styles.5c9b852c43e28f117cb7.css" id="gatsby-global-css">@import url(https://fonts.googleapis.com/css?family=Libre+Franklin:100,300,400,600,700,|Roboto:300,400,500,700|Jura);@import url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css);@import url(https://unpkg.com/@coreui/icons/css/brand.min.css);code[class*=language-],pre[class*=language-]{color:#657b83;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-ms-hyphens:none;hyphens:none}code[class*=language-]::selection,code[class*=language-] ::selection,pre[class*=language-]::selection,pre[class*=language-] ::selection{background:#073642}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;border-radius:.3em}:not(pre)>code[class*=language-],pre[class*=language-]{background-color:#fdf6e3}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#93a1a1}.token.punctuation{color:#586e75}.token.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#268bd2}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string,.token.url{color:#2aa198}.token.entity{color:#657b83;background:#eee8d5}.token.atrule,.token.attr-value,.token.keyword{color:#859900}.token.class-name,.token.function{color:#b58900}.token.important,.token.regex,.token.variable{color:#cb4b16}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body,html{font-family:Libre Franklin,Roboto,sans-serif}body{margin:0;padding:0;outline:0;background:#f1f2f2;font-size:16px;color:#222}h1{font-size:3rem}h1,h2{margin-top:0;font-family:Roboto,sans-serif;font-weight:300}h2{font-size:2rem}h3{font-size:1.5rem;font-weight:300}a{color:#525c86}a:focus,a:hover{color:#222}.eclipse-jkube-footer{padding:16px;border-top:10px solid #222;background-color:#292c2f;font-size:19.2px;font-family:Roboto,sans-serif;font-weight:300;line-height:1.5}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube{display:flex;flex-direction:column;max-width:1170px;margin:0 auto 16px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-image{width:160px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-tagline{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links{max-width:1170px;margin:0 auto 16px;display:flex;flex-wrap:wrap}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list{padding:0;margin:0 48px 16px 0;list-style:none}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a{transition:color .1s linear;color:#f1f2f2}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a,.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a:hover{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a:hover{color:#525c86}.eclipse-jkube-footer .eclipse-jkube-footer__links a{text-decoration:none}.eclipse-jkube-footer .eclipse-jkube-footer__copyright{max-width:1170px;margin:0 auto 16px;font-family:Roboto,sans-serif;color:#939598}.eclipse-jkube__header{display:block;position:relative;height:175px;background-color:#292c2f}@media (min-width:700px){.eclipse-jkube__header{height:105px}}.eclipse-jkube__header .eclipse-jkube__header-trade-mark{font-size:.5em;font-size:.3em;line-height:2.5;vertical-align:top}.eclipse-jkube__header .eclipse-jkube__header-container{position:relative;margin:0 auto;padding:0 16px;height:100%;max-width:1170px}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-container{display:flex;flex-wrap:nowrap;height:105px}}.eclipse-jkube__header .eclipse-jkube__header-logo{display:flex;justify-content:center;align-items:center;font-size:32px;font-weight:400;color:#f1f2f2}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo{font-size:50px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:65px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:90px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image img{max-height:100%;max-width:100%}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:50px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:65px}}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube-image{height:100%}.eclipse-jkube__header .eclipse-jkube__header-logo:hover{color:#f1f2f2}.eclipse-jkube__header .eclipse-jkube__header-content{flex:1 0;min-width:1px;display:flex;justify-content:center;align-items:center}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-content{justify-content:flex-end}}.eclipse-jkube__header .eclipse-jkube__header-content ul{display:flex;flex-wrap:wrap;align-items:center;justify-content:center}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-content ul{justify-content:flex-start}}.eclipse-jkube__header .eclipse-jkube__header-content ul li{margin:4px 0;padding-right:16px;list-style:none;color:#f1f2f2;font-size:20px}.eclipse-jkube__header .eclipse-jkube__header-content .eclipse-jkube__header-stars{display:block;width:85px;height:20px;line-height:20px}.eclipse-jkube__header a{color:#f1f2f2;text-decoration:none}.eclipse-jkube__header a:hover{color:#dd8623;transition:color .3s}.quick-start-card{border:1px solid #d6d6d6;padding:16px}.quick-start-card .quick-start-card__title{margin:0;padding:0}.quick-start-card .quick-start-card__title a{text-decoration:none}.quick-start-card .quick-start-card__title a:active,.quick-start-card .quick-start-card__title a:hover{text-decoration:underline}.quick-start-card .quick-start-card__technologies{margin:16px 0 0;padding:0}.quick-start-card .quick-start-card__technologies-item{display:inline-flex;align-items:center;padding:.25rem .3rem;border-radius:.2rem;font-size:.8rem;margin:0 0 .5rem;background:#dd8623;color:#222}.quick-start-card .quick-start-card__technologies-item:not(:last-child){margin-right:.5rem}.quick-start-card .quick-start-card__technologies-item-icon{display:inline-block;height:.8rem;margin-right:.2rem}.quick-start-card .quick-start-card__description p{margin-top:0}.quick-start-card .quick-start-card__links a{display:inline-block;text-decoration:none;padding:.3rem .5rem;border-radius:.2rem;border:1px solid #d6d6d6;background:#d6d6d6;color:#222}.quick-start-card .quick-start-card__links a:active,.quick-start-card .quick-start-card__links a:hover{background-color:#f1f2f2}.eclipse-jkube{display:flex;flex-direction:column;min-height:100vh}.eclipse-jkube__main{flex:1 1}@media (min-width:1170px){.eclipse-jkube__main{overflow-x:hidden}}.eclipse-jkube__main .eclipse-jkube__content{margin:0 16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content{max-width:1154px;margin:0 auto}}.eclipse-jkube__main .eclipse-jkube__content img{max-width:100%}.eclipse-jkube__main .eclipse-jkube__content :not(pre)>code[class*=language-],.eclipse-jkube__main .eclipse-jkube__content pre[class*=language-]{background-color:transparent}.eclipse-jkube__main .eclipse-jkube__content .hero{margin:0 -16px 16px;display:block;background-color:#272727;background-image:url(/jkube/static/cubes-8e1e59c337437947105e6668f1f3790a.jpg);background-size:cover;color:#f1f2f2}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px;background-color:rgba(39,39,39,.7)}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px calc(50% - 585px)}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content .getting-involved{color:#f1f2f2;margin:0 -16px;padding:0 16px;display:flex;justify-content:flex-end}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content h1{font-size:2.5rem;font-family:Libre Franklin,Roboto,sans-serif;font-weight:400}.eclipse-jkube__main .eclipse-jkube__content .section-dark{background-color:#404040;color:#f1f2f2;margin:0 -16px;padding:16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;padding:16px calc(50% - 585px)}}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark>*{padding:0 calc(50% - 585px)}}.eclipse-jkube__main .eclipse-jkube__content .highlight{display:flex;align-items:center}.eclipse-jkube__main .eclipse-jkube__content .highlight>p{margin:16px 32px;display:none}@media (min-width:501px){.eclipse-jkube__main .eclipse-jkube__content .highlight>p{display:block}}.eclipse-jkube__main .eclipse-jkube__content .highlight>p img{max-width:100px}.eclipse-jkube__main .eclipse-jkube__content .highlight-description{flex:1 1;min-width:1px}.eclipse-jkube__main .eclipse-jkube__content .highlight ul{flex:1 1;min-width:1px;margin:0;padding:0}.eclipse-jkube__main .eclipse-jkube__content .highlight li{list-style:none;margin:16px 0}.eclipse-jkube__main .eclipse-jkube__content .calendar{position:relative;overflow:hidden;padding-bottom:75%;margin-bottom:16px}@media (min-width:666.66667px){.eclipse-jkube__main .eclipse-jkube__content .calendar{padding-bottom:0;height:500px}}.eclipse-jkube__main .eclipse-jkube__content .calendar iframe{position:absolute;top:0;height:100%;max-height:500px;width:100%}.eclipse-jkube__documentation{margin:0}@media screen and (min-width:768px){.eclipse-jkube__documentation{position:absolute;top:105px;bottom:0;width:100%;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content{position:relative;padding:16px;overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content article,.eclipse-jkube__documentation .eclipse-jkube__documentation-content aside,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figcaption,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure,.eclipse-jkube__documentation .eclipse-jkube__documentation-content footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content header,.eclipse-jkube__documentation .eclipse-jkube__documentation-content hgroup,.eclipse-jkube__documentation .eclipse-jkube__documentation-content main,.eclipse-jkube__documentation .eclipse-jkube__documentation-content nav,.eclipse-jkube__documentation .eclipse-jkube__documentation-content section{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio,.eclipse-jkube__documentation .eclipse-jkube__documentation-content video{display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio:not([controls]){display:none;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus{outline:thin dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{outline:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2em;margin:.67em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]{border-bottom:1px dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dfn{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{box-sizing:content-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content mark{background:#ff0;color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content samp{font-family:monospace;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{white-space:pre-wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content q{quotes:"\201C" "\201D" "\2018" "\2019"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub{bottom:-.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg:not(:root){overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure{margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content legend{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select,.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{font-family:inherit;font-size:100%;margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input{line-height:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[type=button],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=reset],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=submit]{-webkit-appearance:button;cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button[disabled],.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[disabled]{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=checkbox],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=radio]{box-sizing:border-box;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button::-moz-focus-inner,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input::-moz-focus-inner{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{overflow:auto;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{border-collapse:collapse;border-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content *,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :before{box-sizing:border-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body{background:#fff;color:rgba(0,0,0,.8);padding:0;margin:0;font-family:"Noto Serif","DejaVu Serif",serif;font-weight:400;font-style:normal;line-height:1;position:relative;cursor:auto;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{max-width:100%;height:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{height:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{-ms-interpolation-mode:bicubic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .left{float:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .right{float:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-left{text-align:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-right{text-align:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-center{text-align:center!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-justify{text-align:justify!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{display:inline-block;vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{height:auto;min-height:50px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .center{margin-left:auto;margin-right:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stretch{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .subheader,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{line-height:1.45;color:#7a2518;font-weight:400;margin-top:0;margin-bottom:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content div,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content form,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6,.eclipse-jkube__documentation .eclipse-jkube__documentation-content li,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin:0;padding:0;direction:ltr}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:#2156a5;text-decoration:underline;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{color:#1d4b8f}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{font-family:inherit;font-weight:400;font-size:1em;line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p aside{font-size:.875em;line-height:1.35;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-family:Open Sans,DejaVu Sans,sans-serif;font-weight:300;font-style:normal;color:#ba3925;text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:.5em;line-height:1.0125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 small{font-size:60%;color:#e99b8f;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5{font-size:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{border:solid #dddddf;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em,.eclipse-jkube__documentation .eclipse-jkube__documentation-content i{font-style:italic;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b,.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong{font-weight:700;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:60%;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;font-weight:400;color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{font-size:1em;line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ul{margin-left:1.25em;margin-bottom:0;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square li ul{list-style:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square{list-style-type:square}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle{list-style-type:circle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc{list-style-type:disc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ul{margin-left:1.25em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dt{margin-bottom:.3125em;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content acronym{text-transform:uppercase;font-size:90%;color:rgba(0,0,0,.8);border-bottom:1px dotted #ddd;cursor:help}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote{margin:0 0 1.25em;padding:.5625em 1.25em 0 1.1875em;border-left:1px solid #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite{display:block;font-size:.9375em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite:before{content:"\2014 "}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a:visited{color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote p{line-height:1.6;color:rgba(0,0,0,.85)}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:2.3125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4{font-size:1.4375em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{background:#fff;margin-bottom:1.25em;border:1px solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead{background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th{padding:.5em .625em .625em;font-size:inherit;color:rgba(0,0,0,.8);text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr th{padding:.5625em .625em;font-size:inherit;color:rgba(0,0,0,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.even{background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tbody tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td{display:table-cell;line-height:1.6}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2;word-spacing:-.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre):not([class^=L])>code{font-size:.9375em;font-style:normal!important;letter-spacing:0;padding:.1em .5ex;word-spacing:-.15em;background:#f7f7f8;border-radius:4px;line-height:1.45;text-rendering:optimizeSpeed;word-wrap:break-word}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nobreak{word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nowrap{white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{color:rgba(0,0,0,.9);font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;line-height:1.45;text-rendering:optimizeSpeed}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre pre{color:inherit;font-size:inherit;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre>code{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap pre{white-space:pre;word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em em{font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq{color:rgba(51,51,51,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;display:inline-block;color:rgba(0,0,0,.8);font-size:.65em;line-height:1.45;background:#f7f7f7;border:1px solid #ccc;border-radius:3px;box-shadow:0 1px 0 rgba(0,0,0,.2),inset 0 0 0 .1em #fff;margin:0 .15em;padding:.2em .5em;vertical-align:middle;position:relative;top:-.1em;white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:first-child{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:last-child{margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b:not(.caret){font-weight:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{word-spacing:-.02em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b.caret{font-size:1.25em;line-height:.8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq i.caret{font-weight:700;text-align:center;width:.45em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{position:relative;top:-1px;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{content:"[";padding:0 3px 0 2px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after{content:"]";padding:0 2px 0 3px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p a>code:hover{color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{width:100%;margin:0 auto;max-width:62.5em;*zoom:1;position:relative;padding-left:.9375em;padding-right:.9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-top:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before{content:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{color:rgba(0,0,0,.85);margin-top:2.25rem;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child+#toc{margin-top:8px;border-top:1px solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:only-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #dddddf;padding-bottom:8px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details{border-bottom:1px solid #dddddf;line-height:1.45;padding-top:.25em;padding-bottom:.25em;padding-left:.25em;color:rgba(0,0,0,.6);display:flex;flex-flow:row wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span:first-child{margin-left:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span.email a{color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span:before{content:"\A0\2013\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span.author:before{content:"\A0\22C5\A0";color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span#revremark:before{content:"\A0|\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber{text-transform:capitalize}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber:after{content:"\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content>h1:first-child:not([class]){color:rgba(0,0,0,.85);border-bottom:1px solid #dddddf;padding-bottom:8px;margin-top:0;padding-top:1rem;margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #e7e7e9;padding-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc>ul{margin-left:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0>li>a{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0 ul.sectlevel1{margin:.5em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul{font-family:Open Sans,DejaVu Sans,sans-serif;list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc li{line-height:1.3334;margin-top:.3334em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{color:#7a2518;font-size:1.2em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:15em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{margin-top:0!important;background:#f8f8f7;position:fixed;width:15em;left:0;top:0;border-right:1px solid #e7e7e9;border-top-width:0!important;border-bottom-width:0!important;z-index:1000;padding:1.25em 1em;height:100%;overflow:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{margin-top:0;margin-bottom:.8rem;font-size:1.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.9em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{margin-left:0;padding-left:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:.5em;margin-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:15em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right #toc.toc2{border-right-width:0;border-left:1px solid #e7e7e9;left:auto;right:0}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:20em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{width:20em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.95em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{padding-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:20em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc{border:1px solid #e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{max-width:100%;background:rgba(0,0,0,.8);padding:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:hsla(0,0%,100%,.8);line-height:1.44}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:.625em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:1.25em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1:last-child{padding-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border-top:1px solid #e7e7e9}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:before{content:"\A7";font-size:.85em;display:block;padding-top:.1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:hover{visibility:visible}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link{color:#ba3925;text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link:hover{color:#a53221}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content details>summary:first-of-type{cursor:pointer;display:list-item;outline:none;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{text-rendering:optimizeLegibility;text-align:left;font-family:"Noto Serif","DejaVu Serif",serif;font-size:1rem;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock.fit-content>caption.title{white-space:nowrap;width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #preamble>.sectionbody>[class=paragraph]:first-of-type p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph.lead>p{font-size:1.21875em;line-height:1.6;color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock #preamble>.sectionbody>[class=paragraph]:first-of-type p{font-size:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon{text-align:center;width:80px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon .title{font-weight:700;font-family:Open Sans,DejaVu Sans,sans-serif;text-transform:uppercase}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content{padding-left:1.125em;padding-right:1.25em;border-left:1px solid #dddddf;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{border:1px solid #e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#fff;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{border:1px solid #dbdbd6;margin-bottom:1.25em;padding:1.25em;background:#f3f3f2;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title{color:#7a2518;margin-top:0;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{border-radius:4px;word-wrap:break-word;overflow-x:auto;padding:1em;font-size:.8125em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:.90625em}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:1em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre:not(.highlight),.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class=highlight],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class^="highlight "],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock.output pre{color:#f7f7f8;background:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content{position:relative}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:none;content:attr(data-lang);position:absolute;font-size:.75em;top:.425rem;right:.5rem;line-height:1;text-transform:uppercase;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock:hover code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:before{content:attr(data-prompt);padding-right:.5em;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:not([data-prompt]):before{content:"$"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs{padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs>code{padding:1em;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.prettyprint{border-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .prettyprint{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint .linenums{line-height:1.45;margin-left:2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li{background:none;list-style-type:inherit;padding-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li code[data-lang]:before{opacity:1}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li:not(:first-child) code[data-lang]:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable{border-collapse:separate;border:0;margin-bottom:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td[class]{color:inherit;vertical-align:top;padding:0;line-height:inherit;white-space:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.code{padding-left:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.linenos{border-right:1px solid;opacity:.35;padding-right:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno{border-right:1px solid;opacity:.35;display:inline-block;margin-right:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno:before{content:"";margin-right:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock{margin:0 1em 1.25em 1.5em;display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock:not(.excerpt)>.title{margin-left:-1.5em;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock p{color:rgba(0,0,0,.85);font-size:1.15rem;line-height:1.75;word-spacing:.1em;letter-spacing:0;font-style:italic;text-align:justify}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote{margin:0;padding:0;border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote:before{content:"\201C";float:left;font-size:2.75em;font-weight:700;line-height:.6em;margin-left:-.6em;color:#7a2518;text-shadow:0 1px 2px rgba(0,0,0,.1)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote>.paragraph:last-child p{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution{margin-top:.75em;margin-right:.5ex;text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock{margin:0 1em 1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre{font-family:Open Sans,DejaVu Sans,sans;font-size:1.15rem;color:rgba(0,0,0,.85);font-weight:300;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{margin-top:1.25rem;margin-left:.5ex}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{font-size:.9375em;line-height:1.45;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution br,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution cite,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution cite{display:block;letter-spacing:-.025em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{line-height:1.6;word-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract{margin:0 1em 1.25em;display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract>.title{margin:0 0 .375em;font-size:1.15em;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt>blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{padding:0 0 .25em 1em;border-left:.25em solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{color:inherit;font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock .attribution{color:inherit;text-align:left;margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock{max-width:100%;border-collapse:separate}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child{margin-bottom:-1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child.sidebarblock{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{border:0 solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead>tr>.tableblock{border-width:0 1px 1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tfoot>tr>.tableblock{border-width:1px 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock{border-width:0 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead>tr>.tableblock{border-width:0 0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tfoot>tr>.tableblock{border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>*>tr>.tableblock:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock:last-child{border-right-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead:last-child>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead:last-child>tr>.tableblock{border-bottom-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-all{border-width:1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-sides{border-width:0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-ends,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-topbot{border-width:1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-all tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-even tr:nth-of-type(2n),.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-hover tr:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-odd tr:nth-of-type(odd){background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-left{text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-right,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-right{text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-center,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-center{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-top,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-top{vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-bottom,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-bottom{vertical-align:bottom}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-middle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-middle{vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead th{font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th{display:table-cell;line-height:1.6;background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th p{color:rgba(0,0,0,.8);font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock>code:only-child{background:none;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol{margin-left:1.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-left:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul dd{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-check-square-o:first-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-square-o:first-child{width:1.25em;font-size:.8em;position:relative;bottom:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>input[type=checkbox]:first-child{margin-right:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline{display:flex;flex-flow:row wrap;list-style:none;margin:0 0 .625em -1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline>li{margin-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .unstyled dl dt{font-weight:400;font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.arabic{list-style-type:decimal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.decimal{list-style-type:decimal-leading-zero}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.loweralpha{list-style-type:lower-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperalpha{list-style-type:upper-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowerroman{list-style-type:lower-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperroman{list-style-type:upper-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowergreek{list-style-type:lower-greek}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table{border:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table>tbody>tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table>tbody>tr{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist2{vertical-align:top;padding:0 .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1{font-weight:700;padding-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock+.colist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock+.colist{margin-top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child{padding:.4em .75em 0;line-height:1;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):last-child{padding:.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .thumb{line-height:0;display:inline-block;border:4px solid #fff;box-shadow:0 0 0 1px #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.left{margin:.25em .625em 1.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.right{margin:.25em 0 1.25em .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb{border-width:6px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb>.title{padding:0 .125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-top:.25em;margin-bottom:.25em;display:inline-block;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left{margin-right:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image{text-decoration:none;display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image object{pointer-events:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref{font-size:.875em;position:static;vertical-align:super}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 .75em;border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote{padding:0 .375em 0 .225em;line-height:1.3334;font-size:.875em;margin-left:1.2em;margin-bottom:.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote a:first-of-type{font-weight:700;text-decoration:none;margin-left:-1.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote:last-of-type{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table{border:0;background:#fff;width:100%;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table td.line-data{width:99%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.unbreakable{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .big{font-size:larger}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .small{font-size:smaller}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .underline{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .overline{text-decoration:overline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .line-through{text-decoration:line-through}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua{color:#00bfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua-background{background:#00fafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black-background{background:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue{color:#0000bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue-background{background:#0000fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia{color:#bf00bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia-background{background:#fa00fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray{color:#606060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray-background{background:#7d7d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green{color:#006000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green-background{background:#007d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime{color:#00bf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime-background{background:#00fa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon{color:#600000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon-background{background:#7d0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy{color:#000060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy-background{background:#00007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive{color:#606000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive-background{background:#7d7d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple{color:#600060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple-background{background:#7d007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red{color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red-background{background:#fa0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver{color:#909090}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver-background{background:#bcbcbc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal{color:#006060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal-background{background:#007d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white{color:#bfbfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white-background{background:#fafafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow{color:#bfbf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow-background{background:#fafa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.icon>.fa{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a span.icon>.fa{cursor:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;text-shadow:1px 1px 2px rgba(0,0,0,.5);cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-note:before{content:"\F05A";color:#19407c}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-tip:before{content:"\F0EB";text-shadow:1px 1px 2px rgba(155,155,0,.8);color:#111}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-warning:before{content:"\F071";color:#bf6900}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-caution:before{content:"\F06D";color:#bf3400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-important:before{content:"\F06A";color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]{display:inline-block;color:#fff!important;background:rgba(0,0,0,.8);border-radius:100px;text-align:center;font-size:.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:Open Sans,DejaVu Sans,sans-serif;font-style:normal;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value] *{color:#fff!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]+b{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]:after{content:attr(data-value)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre .conum[data-value]{position:relative;top:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.conum *{color:inherit!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum:not([data-value]):empty{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{letter-spacing:-.01em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content strong{letter-spacing:-.005em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{background:#fffef7;border-color:#e0e0dc;box-shadow:0 1px 4px #e0e0dc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:none!important}@page{.eclipse-jkube__documentation .eclipse-jkube__documentation-content{margin:1.25cm .75cm}}@media print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content *{box-shadow:none!important;text-shadow:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:inherit!important;text-decoration:underline!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.bare,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="#"],.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="mailto:"]{text-decoration:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="http:"]:not(.bare):after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="https:"]:not(.bare):after{content:"(" attr(href) ")";display:inline-block;font-size:.875em;padding-left:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]:after{content:" (" attr(title) ")"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tr{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content thead{display:table-header-group}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{max-width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1em;orphans:3;widows:3}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{page-break-after:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{background:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #dddddf!important;padding-bottom:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details{border:0!important;display:block;padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details span:first-child{margin-left:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br+span:before{content:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #preamble,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book .sect1>h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book h1.sect0{page-break-before:always}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{padding:0 .9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-on-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:block!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-for-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .show-for-print{display:inherit!important}}@media amzn-kf8,print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{margin-top:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:rgba(0,0,0,.6);font-size:.9em}}@media amzn-kf8{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{padding:0}}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content{padding-left:21em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .toc{position:fixed;width:20em;left:0;top:105px;bottom:0;z-index:1000;padding:0 16px;border-right:1px solid #efefed;border-top-width:0!important;border-bottom-width:0!important;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content i.fa{font-style:normal}.eclipse-jkube__quickstarts{padding:0}.eclipse-jkube__quickstarts-item{list-style:none}.eclipse-jkube__quickstarts-item:not(:last-child){margin-bottom:16px}</style><meta name="generator" content="Gatsby 2.30.1"/><title data-react-helmet="true">Quickstarts</title><meta data-react-helmet="true" charSet="UTF-8"/><meta data-react-helmet="true" name="description" content="Eclipse JKube Quickstarts and examples"/><style type="text/css">
.anchor.before {
position: absolute;
top: 0;
@@ -48,4 +48,4 @@
}
}
})
- </script><link as="script" rel="preload" href="/jkube/webpack-runtime-5e7a06a902090b1f37ba.js"/><link as="script" rel="preload" href="/jkube/framework-fd2b85530eec85104a39.js"/><link as="script" rel="preload" href="/jkube/app-d7398b08e923fe8a3caa.js"/><link as="script" rel="preload" href="/jkube/styles-c2fe8482057191dca484.js"/><link as="script" rel="preload" href="/jkube/commons-8b827618f0536ebfeda2.js"/><link as="script" rel="preload" href="/jkube/component---src-pages-quickstarts-index-jsx-a1e42093b41968828647.js"/><link as="fetch" rel="preload" href="/jkube/page-data/quickstarts/page-data.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/jkube/page-data/app-data.json" crossorigin="anonymous"/></head><body><div id="___gatsby"><div style="outline:none" tabindex="-1" id="gatsby-focus-wrapper"><div class="eclipse-jkube"><header class="eclipse-jkube__header"><div class="eclipse-jkube__header-container"><a class="eclipse-jkube__header-logo" href="/jkube/"><div class="eclipse-jkube__header-logo-eclipse-image"><img src="/jkube/static/EF_WHT-OR_png-d0fd43ad31261ee9693a060be920e71e.png" alt="Eclipse Foundation"/></div><div class="eclipse-jkube__header-logo-jkube"><img class="eclipse-jkube__header-logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/><span class="eclipse-jkube__header-trade-mark">™</span></div></a><div class="eclipse-jkube__header-content"><ul><li><a href="/jkube/docs">Docs</a></li><li><a href="/jkube/demos">Demos</a></li><li><a href="/jkube/community">Community</a></li><li><a href="/jkube/contributing">Contributing</a></li><li><a class="eclipse-jkube__header-stars" href="https://github.com/eclipse/jkube" title="eclipse/jkube" target="_blank" rel="nofollow noopener noreferrer"><img src="https://img.shields.io/github/stars/eclipse/jkube?style=social" alt="eclipse/jkube stargazers"/></a></li></ul></div></div></header><div class="eclipse-jkube__main"><div class="eclipse-jkube__content"><div class="hero"><div class="hero-content"><h1>Quickstarts</h1><p>Eclipse JKube Quickstarts and examples</p></div></div><ul class="eclipse-jkube__quickstarts" itemscope="" itemType="http://schema.org/SoftwareApplication"><meta itemProp="name" content="Eclipse JKube"/><meta itemProp="applicationCategory" content="Developer Tools"/><meta itemProp="operatingSystem" content="Linux,Windows,OSX,Mac"/><meta itemProp="downloadUrl" content="https://github.com/eclipse/jkube"/><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content=""/><meta itemProp="name" content="Kit :: Custom Istio Enricher Parent"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/kit/custom-istio-enricher/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/kit/custom-istio-enricher/" itemProp="url">Kit :: Custom Istio Enricher Parent</a></h3><ul class="quick-start-card__technologies"></ul><div class="quick-start-card__description" itemProp="description"><p>Eclipse JKube Kit example to build and use a Custom Enricher in a SpringBoot Application. It will demonstrate how you can extend Eclipse JKube Kit's Enricher API to make your own enricher and use it to enrich or generate manifests as per your requirements.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/kit/custom-istio-enricher/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content=""/><meta itemProp="name" content="Kit :: Docker Image"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/kit/docker-image/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/kit/docker-image/" itemProp="url">Kit :: Docker Image</a></h3><ul class="quick-start-card__technologies"></ul><div class="quick-start-card__description" itemProp="description"><p>Eclipse JKube Kit example showing how to generate a Docker image by using Eclipse JKube in standalone mode.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/kit/docker-image/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content=""/><meta itemProp="name" content="Kit :: Docker Image from Multilayer Dockerfile"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/kit/dynamic-docker-image-file-multi-layer/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/kit/dynamic-docker-image-file-multi-layer/" itemProp="url">Kit :: Docker Image from Multilayer Dockerfile</a></h3><ul class="quick-start-card__technologies"></ul><div class="quick-start-card__description" itemProp="description"><p>Eclipse JKube Kit example showing how to Dynamically generate a Docker image.</p><p>The generated image contains multiple COPY statements which allows the generation of a multilayered container image.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/kit/dynamic-docker-image-file-multi-layer/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,Spring"/><meta itemProp="name" content="Maven :: Docker File Provided"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/docker-file-provided/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/docker-file-provided/" itemProp="url">Maven :: Docker File Provided</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-spring"></i>Spring</li></ul><div class="quick-start-card__description" itemProp="description"><p>This quick start showcases how to use Eclipse JKube with external Docker files.</p><p>There are several profiles highlighting the different configuration modes available.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/docker-file-provided/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,Spring"/><meta itemProp="name" content="Maven :: Dockerfile :: Simple"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/docker-file-simple/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/docker-file-simple/" itemProp="url">Maven :: Dockerfile :: Simple</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-spring"></i>Spring</li></ul><div class="quick-start-card__description" itemProp="description"><p>This quickstart showcases how to use Eclipse JKube with external Docker files without any additional configuration.</p><p>Docker file mode is automatically selected when a Dockerfile is detected in the project's root directory.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/docker-file-simple/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,OpenShift,Spring"/><meta itemProp="name" content="Maven :: External Resources"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/external-resources/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/external-resources/" itemProp="url">Maven :: External Resources</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-spring"></i>Spring</li></ul><div class="quick-start-card__description" itemProp="description"><p>Simple Spring Boot application which demonstrates how you can use Eclipse JKube's resource fragments.</p><p>Fragments in `src/main/jkube` directory are detected and picked up by JKube.</p><p>These fragments are then merged with the JKube generated cluster configuration manifests (YAML).</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/external-resources/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes"/><meta itemProp="name" content="Maven :: Hello World"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/hello-world/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/hello-world/" itemProp="url">Maven :: Hello World</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li></ul><div class="quick-start-card__description" itemProp="description"><p>Demo project for getting started with Eclipse JKube.</p><p>It just prints "Hello World" on command line and exits.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/hello-world/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes"/><meta itemProp="name" content="Maven :: JavaEE 8 WebProfile"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/ibm-javaee8-webprofile-liberty/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/ibm-javaee8-webprofile-liberty/" itemProp="url">Maven :: JavaEE 8 WebProfile</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li></ul><div class="quick-start-card__description" itemProp="description"><p>Demo project for Jakarta EE 8 WebProfile, IBM WebSphere Liberty is used as a Jakarta EE implementation.</p><p>On Windows or Mac if VirtualBox is used, run the tests using:</p><p>$ mvn clean verify -DtestProxyHost=192.168.99.100</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/ibm-javaee8-webprofile-liberty/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,OpenShift,ApacheCamel,ApacheKaraf"/><meta itemProp="name" content="Maven :: Karaf Camel Log"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/karaf-camel-log/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/karaf-camel-log/" itemProp="url">Maven :: Karaf Camel Log</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-apache"></i>ApacheCamel</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-apache"></i>ApacheKaraf</li></ul><div class="quick-start-card__description" itemProp="description"><p>Simple Apache Camel application on top of Apache Karaf that logs a series of messages to the Server log.</p><p>The application also generates and processes random orders using Camel routes.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/karaf-camel-log/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,OpenShift"/><meta itemProp="name" content="Maven :: Micronaut customized Image"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/micronaut-customized-image/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/micronaut-customized-image/" itemProp="url">Maven :: Micronaut customized Image</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li></ul><div class="quick-start-card__description" itemProp="description"><p>Micronaut application featuring REST endpoints (micronaut-http) with validation (micronaut-validation).</p><p></p><p>Includes configuration to enable health check probes (livenessProbe & readinessProbe) using JKube's</p><p>powerful resource fragments and micronaut-management feature.</p><p></p><p>XML based image configuration compatible with OpenShift and Kubernetes.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/micronaut-customized-image/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="OpenShift,OpenLiberty"/><meta itemProp="name" content="Maven :: Open Liberty"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/openliberty/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/openliberty/" itemProp="url">Maven :: Open Liberty</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-java"></i>OpenLiberty</li></ul><div class="quick-start-card__description" itemProp="description"><p>JAX-RS application deployed with OpenLiberty and Eclipse JKube.</p><p>The application contains a single endpoint (/hello) that prints 'Hello, World.'.</p><p>An Arquillian based Integration Test is also included.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/openliberty/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,OpenShift"/><meta itemProp="name" content="Maven :: Open Liberty & MicroProfile"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/openliberty-microprofile/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/openliberty-microprofile/" itemProp="url">Maven :: Open Liberty & MicroProfile</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li></ul><div class="quick-start-card__description" itemProp="description"><p>How to integrate Eclipse JKube into an OpenLiberty-MicroProfile project as downloaded from start.microprofile.io.</p><p>Includes a JAX-RS endpoint, sample CDI injected configuration, and Liveness and Readiness probes.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/openliberty-microprofile/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,OpenShift,Quarkus"/><meta itemProp="name" content="Maven :: Quarkus"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/quarkus/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/quarkus/" itemProp="url">Maven :: Quarkus</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-quarkus"></i>Quarkus</li></ul><div class="quick-start-card__description" itemProp="description"><p>Quarkus application with a single JAX-RS endpoint.</p><p>Demonstrates how to package the project using JVM mode or Native image mode.</p><p>Demonstrates how to build a Quarkus project container with Eclipse JKube's S2I, Docker and JIB build strategies.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/quarkus/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="OpenShift,Quarkus"/><meta itemProp="name" content="Maven :: Quarkus customized Image"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/quarkus-customized-image/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/quarkus-customized-image/" itemProp="url">Maven :: Quarkus customized Image</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-quarkus"></i>Quarkus</li></ul><div class="quick-start-card__description" itemProp="description"><p>Quarkus application with a single JAX-RS endpoint.</p><p>Demonstrates how to build a Quarkus container image based on a Red Hat container image private registry.</p><p>Uses a pull secret from Red Hat Registry Service Accounts to authenticate.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/quarkus-customized-image/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,OpenShift,Spring"/><meta itemProp="name" content="Maven :: Spring Boot Web"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot/" itemProp="url">Maven :: Spring Boot Web</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-spring"></i>Spring</li></ul><div class="quick-start-card__description" itemProp="description"><p>Spring Boot Web application with a single @RestController.</p><p>Shows how to deploy Spring Boot applications to Kubernetes (-Pkubermetes) and OpenShift (-Popenshift) using Eclipse JKube.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,OpenShift,ApacheCamel,Spring"/><meta itemProp="name" content="Maven :: Spring Boot - Camel"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-camel-complete/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-camel-complete/" itemProp="url">Maven :: Spring Boot - Camel</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-apache"></i>ApacheCamel</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-spring"></i>Spring</li></ul><div class="quick-start-card__description" itemProp="description"><p>Spring Boot application with Camel Spring Boot integration.</p><p>Programmatically (RouteBuilder) declares 2 routes to log messages and process orders.</p><p>Declares an Apache Camel servlet REST endpoint.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-camel-complete/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,OpenShift,Spring"/><meta itemProp="name" content="Maven :: Spring Boot - Custom Resources"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-crd/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-crd/" itemProp="url">Maven :: Spring Boot - Custom Resources</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-spring"></i>Spring</li></ul><div class="quick-start-card__description" itemProp="description"><p>Spring Boot application using K8s Custom Resources.</p><p>Declares a "Framework" Custom Resource Definition.</p><p>Initializes cluster with sample data.</p><p>Declares an endpoint to consume Custom Resource data stored in the cluster.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-crd/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,OpenShift,Spring"/><meta itemProp="name" content="Maven :: Spring Boot - Dekorate"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-dekorate/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-dekorate/" itemProp="url">Maven :: Spring Boot - Dekorate</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-spring"></i>Spring</li></ul><div class="quick-start-card__description" itemProp="description"><p>Spring Boot application with Dekorate integration.</p><p>Eclipse JKube uses Dekorate generated cluster configuration manifests.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-dekorate/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,OpenShift,Spring"/><meta itemProp="name" content="Maven :: Spring Boot - Helm"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-helm/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-helm/" itemProp="url">Maven :: Spring Boot - Helm</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-spring"></i>Spring</li></ul><div class="quick-start-card__description" itemProp="description"><p>Spring Boot application with a single REST endpoint.</p><p>Demonstrates how to generate Helm chart (YAML) files using Eclipse JKube's k8s:helm Maven goal.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-helm/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,Spring"/><meta itemProp="name" content="Maven :: Spring Boot Watch"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-watch/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-watch/" itemProp="url">Maven :: Spring Boot Watch</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-spring"></i>Spring</li></ul><div class="quick-start-card__description" itemProp="description"><p>Spring Boot application with a single REST endpoint.</p><p>Demonstrates how to watch for source changes using Eclipse JKube's k8s:watch goal.</p><p>Application gets live reloaded in the cluster each time the project is recompiled (mvn package).</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-watch/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,Spring"/><meta itemProp="name" content="Maven :: Spring Boot JIB"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-with-jib/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-with-jib/" itemProp="url">Maven :: Spring Boot JIB</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-spring"></i>Spring</li></ul><div class="quick-start-card__description" itemProp="description"><p>Spring Boot application with a single REST endpoint.</p><p>Demonstrates how to build a project using Eclipse JKube JIB build strategy.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-with-jib/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,OpenShift,Thorntail"/><meta itemProp="name" content="Maven :: Thorntail"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/thorntail/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/thorntail/" itemProp="url">Maven :: Thorntail</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-java"></i>Thorntail</li></ul><div class="quick-start-card__description" itemProp="description"><p>Java web application with a single JAX-RS endpoint packaged with Thorntail.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/thorntail/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,OpenShift,Vertx"/><meta itemProp="name" content="Maven :: Vertx Web"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/vertx/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/vertx/" itemProp="url">Maven :: Vertx Web</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-eclipseide"></i>Vertx</li></ul><div class="quick-start-card__description" itemProp="description"><p>Eclipse Vert.x example application declaring a Simple AbstractVerticle.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/vertx/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,OpenShift"/><meta itemProp="name" content="Maven :: Webapp"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/webapp/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/webapp/" itemProp="url">Maven :: Webapp</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li></ul><div class="quick-start-card__description" itemProp="description"><p>Java Web Application with a static index.html resource.</p><p>Demonstrates how to create a container image with an embedded Apache Tomcat server using Eclipse JKube.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/webapp/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,OpenShift"/><meta itemProp="name" content="Maven :: Webapp Jetty"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/webapp-jetty/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/webapp-jetty/" itemProp="url">Maven :: Webapp Jetty</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li></ul><div class="quick-start-card__description" itemProp="description"><p>Java Web Application with a static index.html resource.</p><p>Demonstrates how to create a container image with an embedded Eclipse Jetty server using Eclipse JKube.</p><p>Jetty is used instead of Apache Tomcat because there is a Jetty specific configuration file (jetty-logging.properties).</p><p>Eclipse JKube detects this file and chooses a Jetty specific base container image.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/webapp-jetty/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,OpenShift"/><meta itemProp="name" content="Maven :: Webapp :: Wildfly"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/webapp-wildfly/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/webapp-wildfly/" itemProp="url">Maven :: Webapp :: Wildfly</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li></ul><div class="quick-start-card__description" itemProp="description"><p>Java Web Application with a static index.html resource.</p><p>Demonstrates how to create a container image with an embedded WildFly server using Eclipse JKube.</p><p>WildFly is used instead of Apache Tomcat because there is a WildFly specific plugin configuration.</p><p>Eclipse JKube detects this plugin and chooses a WildFly specific base container image.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/webapp-wildfly/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,OpenShift"/><meta itemProp="name" content="Maven :: Wildfly JAR"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/wildfly-jar/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/wildfly-jar/" itemProp="url">Maven :: Wildfly JAR</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li></ul><div class="quick-start-card__description" itemProp="description"><p>Java web application with a single JAX-RS endpoint packaged with WildFly Jar Maven Plugin.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/wildfly-jar/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,OpenShift"/><meta itemProp="name" content="Maven :: Wildfly JAR"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/wildfly-jar-slim/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/wildfly-jar-slim/" itemProp="url">Maven :: Wildfly JAR</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li></ul><div class="quick-start-card__description" itemProp="description"><p>Java web application with a single JAX-RS endpoint packaged with WildFly Jar Maven Plugin.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/wildfly-jar-slim/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,ApacheCamel"/><meta itemProp="name" content="Maven :: XML configuration"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/xml-config/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/xml-config/" itemProp="url">Maven :: XML configuration</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-apache"></i>ApacheCamel</li></ul><div class="quick-start-card__description" itemProp="description"><p>Apache Camel application.</p><p>Demonstrates how to configure Eclipse JKube build and resource properties using XML elements in the project's pom.xml plugin configuration.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/xml-config/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes"/><meta itemProp="name" content="Maven :: Yaml"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/yaml-only/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/yaml-only/" itemProp="url">Maven :: Yaml</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li></ul><div class="quick-start-card__description" itemProp="description"><p>Example showing how to use Eclipse JKube Maven Plugins to deploy cluster configuration YAML files.</p><p>Example with Yaml only resources</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/yaml-only/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,OpenShift,Spring"/><meta itemProp="name" content="Maven :: Zero-Config"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/zero-config/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/zero-config/" itemProp="url">Maven :: Zero-Config</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-spring"></i>Spring</li></ul><div class="quick-start-card__description" itemProp="description"><p>Spring Boot application with a single REST endpoint.</p><p>Demonstrates Eclipse JKube Zero Configuration capabilities.</p><p>All configurations to create the container image and resource manifests are inferred from the project and its dependencies.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/zero-config/"><i class="cib-github"></i> GitHub repository</a></div></div></li></ul></div></div><div class="eclipse-jkube-footer"><div class="eclipse-jkube-footer__logo-jkube"><a href="/jkube/"><img class="eclipse-jkube-footer__logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/></a><span class="eclipse-jkube-footer__logo-jkube-tagline">Cloud-Native Java Applications without a hassle</span></div><div class="eclipse-jkube-footer__links"><ul class="eclipse-jkube-footer__links-list"><li><a href="/jkube/docs#getting-started">Get Started</a></li><li><a href="/jkube/docs">Docs</a></li><li><a href="/jkube/quickstarts">Quickstarts</a></li><li><a href="/jkube/docs#katacoda-courses">Katacoda Courses</a></li><li><a href="/jkube/demos">Demos</a></li></ul><ul class="eclipse-jkube-footer__links-list"><li><a href="/jkube/community">Community</a></li><li><a href="/jkube/community#planning-and-meetings">Get Involved</a></li><li><a href="/jkube/contributing">Contributing</a></li></ul><ul class="eclipse-jkube-footer__links-list"><li><a href="https://www.eclipse.org" target="_blank" rel="nofollow noopener noreferrer">Eclipse Foundation</a></li><li><a href="https://www.eclipse.org/legal/privacy.php" target="_blank" rel="nofollow noopener noreferrer">Privacy Policy</a></li><li><a href="https://www.eclipse.org/legal/termsofuse.php" target="_blank" rel="nofollow noopener noreferrer">Terms of Use</a></li><li><a href="https://www.eclipse.org/legal/copyright.php" target="_blank" rel="nofollow noopener noreferrer">Copyright Agent</a></li><li><a href="https://www.eclipse.org/legal" target="_blank" rel="nofollow noopener noreferrer">Legal Resources</a></li></ul></div><div class="eclipse-jkube-footer__copyright">Copyright © Eclipse Foundation 2020</div></div></div></div><div id="gatsby-announcer" style="position:absolute;top:0;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0" aria-live="assertive" aria-atomic="true"></div></div><script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/quickstarts/";/*]]>*/</script><script id="gatsby-chunk-mapping">/*<![CDATA[*/window.___chunkMapping={"polyfill":["/polyfill-88d9aed314b16f9b2adc.js"],"app":["/app-d7398b08e923fe8a3caa.js"],"component---src-pages-quickstarts-index-jsx":["/component---src-pages-quickstarts-index-jsx-a1e42093b41968828647.js"],"component---src-templates-doc-jsx":["/component---src-templates-doc-jsx-5366dbd1b50f3447a412.js"],"component---src-templates-main-jsx":["/component---src-templates-main-jsx-456568a5c9ae2c9095ee.js"]};/*]]>*/</script><script src="/jkube/polyfill-88d9aed314b16f9b2adc.js" nomodule=""></script><script src="/jkube/component---src-pages-quickstarts-index-jsx-a1e42093b41968828647.js" async=""></script><script src="/jkube/commons-8b827618f0536ebfeda2.js" async=""></script><script src="/jkube/styles-c2fe8482057191dca484.js" async=""></script><script src="/jkube/app-d7398b08e923fe8a3caa.js" async=""></script><script src="/jkube/framework-fd2b85530eec85104a39.js" async=""></script><script src="/jkube/webpack-runtime-5e7a06a902090b1f37ba.js" async=""></script></body></html>
\ No newline at end of file
+ </script><link as="script" rel="preload" href="/jkube/webpack-runtime-b52c77882f7d7b54b2b3.js"/><link as="script" rel="preload" href="/jkube/framework-5e01c8af6b1735c9eaa3.js"/><link as="script" rel="preload" href="/jkube/app-59faa9989d677dd59195.js"/><link as="script" rel="preload" href="/jkube/styles-e9d24b1846c7d6eb9685.js"/><link as="script" rel="preload" href="/jkube/commons-ee34cd715ab4f7da30e0.js"/><link as="script" rel="preload" href="/jkube/component---src-pages-quickstarts-index-jsx-8b53e5455e208a3e59b9.js"/><link as="fetch" rel="preload" href="/jkube/page-data/quickstarts/page-data.json" crossorigin="anonymous"/><link as="fetch" rel="preload" href="/jkube/page-data/app-data.json" crossorigin="anonymous"/></head><body><div id="___gatsby"><div style="outline:none" tabindex="-1" id="gatsby-focus-wrapper"><div class="eclipse-jkube"><header class="eclipse-jkube__header"><div class="eclipse-jkube__header-container"><a class="eclipse-jkube__header-logo" href="/jkube/"><div class="eclipse-jkube__header-logo-eclipse-image"><img src="/jkube/static/EF_WHT-OR_png-d0fd43ad31261ee9693a060be920e71e.png" alt="Eclipse Foundation"/></div><div class="eclipse-jkube__header-logo-jkube"><img class="eclipse-jkube__header-logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/><span class="eclipse-jkube__header-trade-mark">™</span></div></a><div class="eclipse-jkube__header-content"><ul><li><a href="/jkube/docs">Docs</a></li><li><a href="/jkube/demos">Demos</a></li><li><a href="/jkube/community">Community</a></li><li><a href="/jkube/contributing">Contributing</a></li><li><a class="eclipse-jkube__header-stars" href="https://github.com/eclipse/jkube" title="eclipse/jkube" target="_blank" rel="nofollow noopener noreferrer"><img src="https://img.shields.io/github/stars/eclipse/jkube?style=social" alt="eclipse/jkube stargazers"/></a></li></ul></div></div></header><div class="eclipse-jkube__main"><div class="eclipse-jkube__content"><div class="hero"><div class="hero-content"><h1>Quickstarts</h1><p>Eclipse JKube Quickstarts and examples</p></div></div><ul class="eclipse-jkube__quickstarts" itemscope="" itemType="http://schema.org/SoftwareApplication"><meta itemProp="name" content="Eclipse JKube"/><meta itemProp="applicationCategory" content="Developer Tools"/><meta itemProp="operatingSystem" content="Linux,Windows,OSX,Mac"/><meta itemProp="downloadUrl" content="https://github.com/eclipse/jkube"/><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content=""/><meta itemProp="name" content="Kit :: Custom Istio Enricher Parent"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/kit/custom-istio-enricher/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/kit/custom-istio-enricher/" itemProp="url">Kit :: Custom Istio Enricher Parent</a></h3><ul class="quick-start-card__technologies"></ul><div class="quick-start-card__description" itemProp="description"><p>Eclipse JKube Kit example to build and use a Custom Enricher in a SpringBoot Application. It will demonstrate how you can extend Eclipse JKube Kit's Enricher API to make your own enricher and use it to enrich or generate manifests as per your requirements.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/kit/custom-istio-enricher/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content=""/><meta itemProp="name" content="Kit :: Docker Image"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/kit/docker-image/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/kit/docker-image/" itemProp="url">Kit :: Docker Image</a></h3><ul class="quick-start-card__technologies"></ul><div class="quick-start-card__description" itemProp="description"><p>Eclipse JKube Kit example showing how to generate a Docker image by using Eclipse JKube in standalone mode.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/kit/docker-image/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content=""/><meta itemProp="name" content="Kit :: Docker Image from Multilayer Dockerfile"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/kit/dynamic-docker-image-file-multi-layer/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/kit/dynamic-docker-image-file-multi-layer/" itemProp="url">Kit :: Docker Image from Multilayer Dockerfile</a></h3><ul class="quick-start-card__technologies"></ul><div class="quick-start-card__description" itemProp="description"><p>Eclipse JKube Kit example showing how to Dynamically generate a Docker image.</p><p>The generated image contains multiple COPY statements which allows the generation of a multilayered container image.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/kit/dynamic-docker-image-file-multi-layer/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,Spring"/><meta itemProp="name" content="Maven :: Docker File Provided"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/docker-file-provided/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/docker-file-provided/" itemProp="url">Maven :: Docker File Provided</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-spring"></i>Spring</li></ul><div class="quick-start-card__description" itemProp="description"><p>This quick start showcases how to use Eclipse JKube with external Docker files.</p><p>There are several profiles highlighting the different configuration modes available.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/docker-file-provided/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,Spring"/><meta itemProp="name" content="Maven :: Dockerfile :: Simple"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/docker-file-simple/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/docker-file-simple/" itemProp="url">Maven :: Dockerfile :: Simple</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-spring"></i>Spring</li></ul><div class="quick-start-card__description" itemProp="description"><p>This quickstart showcases how to use Eclipse JKube with external Docker files without any additional configuration.</p><p>Docker file mode is automatically selected when a Dockerfile is detected in the project's root directory.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/docker-file-simple/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,OpenShift,Spring"/><meta itemProp="name" content="Maven :: External Resources"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/external-resources/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/external-resources/" itemProp="url">Maven :: External Resources</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-spring"></i>Spring</li></ul><div class="quick-start-card__description" itemProp="description"><p>Simple Spring Boot application which demonstrates how you can use Eclipse JKube's resource fragments.</p><p>Fragments in `src/main/jkube` directory are detected and picked up by JKube.</p><p>These fragments are then merged with the JKube generated cluster configuration manifests (YAML).</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/external-resources/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes"/><meta itemProp="name" content="Maven :: Hello World"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/hello-world/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/hello-world/" itemProp="url">Maven :: Hello World</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li></ul><div class="quick-start-card__description" itemProp="description"><p>Demo project for getting started with Eclipse JKube.</p><p>It just prints "Hello World" on command line and exits.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/hello-world/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes"/><meta itemProp="name" content="Maven :: JavaEE 8 WebProfile"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/ibm-javaee8-webprofile-liberty/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/ibm-javaee8-webprofile-liberty/" itemProp="url">Maven :: JavaEE 8 WebProfile</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li></ul><div class="quick-start-card__description" itemProp="description"><p>Demo project for Jakarta EE 8 WebProfile, IBM WebSphere Liberty is used as a Jakarta EE implementation.</p><p>On Windows or Mac if VirtualBox is used, run the tests using:</p><p>$ mvn clean verify -DtestProxyHost=192.168.99.100</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/ibm-javaee8-webprofile-liberty/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,OpenShift,ApacheCamel,ApacheKaraf"/><meta itemProp="name" content="Maven :: Karaf Camel Log"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/karaf-camel-log/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/karaf-camel-log/" itemProp="url">Maven :: Karaf Camel Log</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-apache"></i>ApacheCamel</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-apache"></i>ApacheKaraf</li></ul><div class="quick-start-card__description" itemProp="description"><p>Simple Apache Camel application on top of Apache Karaf that logs a series of messages to the Server log.</p><p>The application also generates and processes random orders using Camel routes.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/karaf-camel-log/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,OpenShift"/><meta itemProp="name" content="Maven :: Micronaut"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/micronaut/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/micronaut/" itemProp="url">Maven :: Micronaut</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li></ul><div class="quick-start-card__description" itemProp="description"><p>Micronaut application featuring REST endpoints (micronaut-http) with validation (micronaut-validation).</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/micronaut/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,OpenShift"/><meta itemProp="name" content="Maven :: Micronaut customized Image"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/micronaut-customized-image/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/micronaut-customized-image/" itemProp="url">Maven :: Micronaut customized Image</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li></ul><div class="quick-start-card__description" itemProp="description"><p>Micronaut application featuring REST endpoints (micronaut-http) with validation (micronaut-validation).</p><p></p><p>Includes configuration to enable health check probes (livenessProbe & readinessProbe) using JKube's</p><p>powerful resource fragments and micronaut-management feature.</p><p></p><p>XML based image configuration compatible with OpenShift and Kubernetes.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/micronaut-customized-image/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="OpenShift,OpenLiberty"/><meta itemProp="name" content="Maven :: Open Liberty"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/openliberty/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/openliberty/" itemProp="url">Maven :: Open Liberty</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-java"></i>OpenLiberty</li></ul><div class="quick-start-card__description" itemProp="description"><p>JAX-RS application deployed with OpenLiberty and Eclipse JKube.</p><p>The application contains a single endpoint (/hello) that prints 'Hello, World.'.</p><p>An Arquillian based Integration Test is also included.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/openliberty/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,OpenShift"/><meta itemProp="name" content="Maven :: Open Liberty & MicroProfile"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/openliberty-microprofile/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/openliberty-microprofile/" itemProp="url">Maven :: Open Liberty & MicroProfile</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li></ul><div class="quick-start-card__description" itemProp="description"><p>How to integrate Eclipse JKube into an OpenLiberty-MicroProfile project as downloaded from start.microprofile.io.</p><p>Includes a JAX-RS endpoint, sample CDI injected configuration, and Liveness and Readiness probes.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/openliberty-microprofile/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,OpenShift,Quarkus"/><meta itemProp="name" content="Maven :: Quarkus"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/quarkus/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/quarkus/" itemProp="url">Maven :: Quarkus</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-quarkus"></i>Quarkus</li></ul><div class="quick-start-card__description" itemProp="description"><p>Quarkus application with a single JAX-RS endpoint.</p><p>Demonstrates how to package the project using JVM mode or Native image mode.</p><p>Demonstrates how to build a Quarkus project container with Eclipse JKube's S2I, Docker and JIB build strategies.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/quarkus/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="OpenShift,Quarkus"/><meta itemProp="name" content="Maven :: Quarkus customized Image"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/quarkus-customized-image/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/quarkus-customized-image/" itemProp="url">Maven :: Quarkus customized Image</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-quarkus"></i>Quarkus</li></ul><div class="quick-start-card__description" itemProp="description"><p>Quarkus application with a single JAX-RS endpoint.</p><p>Demonstrates how to build a Quarkus container image based on a Red Hat container image private registry.</p><p>Uses a pull secret from Red Hat Registry Service Accounts to authenticate.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/quarkus-customized-image/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,OpenShift,Spring"/><meta itemProp="name" content="Maven :: Spring Boot Web"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot/" itemProp="url">Maven :: Spring Boot Web</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-spring"></i>Spring</li></ul><div class="quick-start-card__description" itemProp="description"><p>Spring Boot Web application with a single @RestController.</p><p>Shows how to deploy Spring Boot applications to Kubernetes (-Pkubernetes) and OpenShift (-Popenshift) using Eclipse JKube.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,OpenShift,ApacheCamel,Spring"/><meta itemProp="name" content="Maven :: Spring Boot - Camel"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-camel-complete/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-camel-complete/" itemProp="url">Maven :: Spring Boot - Camel</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-apache"></i>ApacheCamel</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-spring"></i>Spring</li></ul><div class="quick-start-card__description" itemProp="description"><p>Spring Boot application with Camel Spring Boot integration.</p><p>Programmatically (RouteBuilder) declares 2 routes to log messages and process orders.</p><p>Declares an Apache Camel servlet REST endpoint.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-camel-complete/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,OpenShift,Spring"/><meta itemProp="name" content="Maven :: Spring Boot - Custom Resources"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-crd/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-crd/" itemProp="url">Maven :: Spring Boot - Custom Resources</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-spring"></i>Spring</li></ul><div class="quick-start-card__description" itemProp="description"><p>Spring Boot application using K8s Custom Resources.</p><p>Declares a "Framework" Custom Resource Definition.</p><p>Initializes cluster with sample data.</p><p>Declares an endpoint to consume Custom Resource data stored in the cluster.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-crd/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,OpenShift,Spring"/><meta itemProp="name" content="Maven :: Spring Boot - Dekorate"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-dekorate/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-dekorate/" itemProp="url">Maven :: Spring Boot - Dekorate</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-spring"></i>Spring</li></ul><div class="quick-start-card__description" itemProp="description"><p>Spring Boot application with Dekorate integration.</p><p>Eclipse JKube uses Dekorate generated cluster configuration manifests.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-dekorate/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,OpenShift,Spring"/><meta itemProp="name" content="Maven :: Spring Boot - Helm"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-helm/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-helm/" itemProp="url">Maven :: Spring Boot - Helm</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-spring"></i>Spring</li></ul><div class="quick-start-card__description" itemProp="description"><p>Spring Boot application with a single REST endpoint.</p><p>Demonstrates how to generate Helm chart (YAML) files using Eclipse JKube's k8s:helm Maven goal.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-helm/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,Spring"/><meta itemProp="name" content="Maven :: Spring Boot Watch"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-watch/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-watch/" itemProp="url">Maven :: Spring Boot Watch</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-spring"></i>Spring</li></ul><div class="quick-start-card__description" itemProp="description"><p>Spring Boot application with a single REST endpoint.</p><p>Demonstrates how to watch for source changes using Eclipse JKube's k8s:watch goal.</p><p>Application gets live reloaded in the cluster each time the project is recompiled (mvn package).</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-watch/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,Spring"/><meta itemProp="name" content="Maven :: Spring Boot JIB"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-with-jib/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-with-jib/" itemProp="url">Maven :: Spring Boot JIB</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-spring"></i>Spring</li></ul><div class="quick-start-card__description" itemProp="description"><p>Spring Boot application with a single REST endpoint.</p><p>Demonstrates how to build a project using Eclipse JKube JIB build strategy.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/spring-boot-with-jib/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,OpenShift,Thorntail"/><meta itemProp="name" content="Maven :: Thorntail"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/thorntail/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/thorntail/" itemProp="url">Maven :: Thorntail</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-java"></i>Thorntail</li></ul><div class="quick-start-card__description" itemProp="description"><p>Java web application with a single JAX-RS endpoint packaged with Thorntail.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/thorntail/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,OpenShift,Vertx"/><meta itemProp="name" content="Maven :: Vertx Web"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/vertx/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/vertx/" itemProp="url">Maven :: Vertx Web</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-eclipseide"></i>Vertx</li></ul><div class="quick-start-card__description" itemProp="description"><p>Eclipse Vert.x example application declaring a Simple AbstractVerticle.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/vertx/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,OpenShift"/><meta itemProp="name" content="Maven :: Webapp"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/webapp/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/webapp/" itemProp="url">Maven :: Webapp</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li></ul><div class="quick-start-card__description" itemProp="description"><p>Java Web Application with a static index.html resource.</p><p>Demonstrates how to create a container image with an embedded Apache Tomcat server using Eclipse JKube.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/webapp/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,OpenShift"/><meta itemProp="name" content="Maven :: Webapp Jetty"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/webapp-jetty/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/webapp-jetty/" itemProp="url">Maven :: Webapp Jetty</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li></ul><div class="quick-start-card__description" itemProp="description"><p>Java Web Application with a static index.html resource.</p><p>Demonstrates how to create a container image with an embedded Eclipse Jetty server using Eclipse JKube.</p><p>Jetty is used instead of Apache Tomcat because there is a Jetty specific configuration file (jetty-logging.properties).</p><p>Eclipse JKube detects this file and chooses a Jetty specific base container image.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/webapp-jetty/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,OpenShift"/><meta itemProp="name" content="Maven :: Webapp :: Wildfly"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/webapp-wildfly/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/webapp-wildfly/" itemProp="url">Maven :: Webapp :: Wildfly</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li></ul><div class="quick-start-card__description" itemProp="description"><p>Java Web Application with a static index.html resource.</p><p>Demonstrates how to create a container image with an embedded WildFly server using Eclipse JKube.</p><p>WildFly is used instead of Apache Tomcat because there is a WildFly specific plugin configuration.</p><p>Eclipse JKube detects this plugin and chooses a WildFly specific base container image.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/webapp-wildfly/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,OpenShift"/><meta itemProp="name" content="Maven :: Wildfly JAR"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/wildfly-jar/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/wildfly-jar/" itemProp="url">Maven :: Wildfly JAR</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li></ul><div class="quick-start-card__description" itemProp="description"><p>Java web application with a single JAX-RS endpoint packaged with WildFly Jar Maven Plugin.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/wildfly-jar/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,OpenShift"/><meta itemProp="name" content="Maven :: Wildfly JAR"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/wildfly-jar-slim/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/wildfly-jar-slim/" itemProp="url">Maven :: Wildfly JAR</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li></ul><div class="quick-start-card__description" itemProp="description"><p>Java web application with a single JAX-RS endpoint packaged with WildFly Jar Maven Plugin.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/wildfly-jar-slim/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,ApacheCamel"/><meta itemProp="name" content="Maven :: XML configuration"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/xml-config/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/xml-config/" itemProp="url">Maven :: XML configuration</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-apache"></i>ApacheCamel</li></ul><div class="quick-start-card__description" itemProp="description"><p>Apache Camel application.</p><p>Demonstrates how to configure Eclipse JKube build and resource properties using XML elements in the project's pom.xml plugin configuration.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/xml-config/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes"/><meta itemProp="name" content="Maven :: Yaml"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/yaml-only/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/yaml-only/" itemProp="url">Maven :: Yaml</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li></ul><div class="quick-start-card__description" itemProp="description"><p>Example showing how to use Eclipse JKube Maven Plugins to deploy cluster configuration YAML files.</p><p>Example with Yaml only resources</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/yaml-only/"><i class="cib-github"></i> GitHub repository</a></div></div></li><li class="eclipse-jkube__quickstarts-item"><div class="quick-start-card" itemscope="" itemType="http://schema.org/SoftwareSourceCode"><meta itemProp="programmingLanguage" content="Java"/><meta itemProp="codeSampleType" content="full (compile ready) solution"/><meta itemProp="keywords" content="Kubernetes,OpenShift,Spring"/><meta itemProp="name" content="Maven :: Zero-Config"/><meta itemProp="codeRepository" content="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/zero-config/"/><h3 class="quick-start-card__title"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/zero-config/" itemProp="url">Maven :: Zero-Config</a></h3><ul class="quick-start-card__technologies"><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-kubernetes"></i>Kubernetes</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-redhat"></i>OpenShift</li><li class="quick-start-card__technologies-item"><i class="quick-start-card__technologies-item-icon cib-spring"></i>Spring</li></ul><div class="quick-start-card__description" itemProp="description"><p>Spring Boot application with a single REST endpoint.</p><p>Demonstrates Eclipse JKube Zero Configuration capabilities.</p><p>All configurations to create the container image and resource manifests are inferred from the project and its dependencies.</p></div><div class="quick-start-card__links"><a href="https://github.com/eclipse/jkube/tree/master/quickstarts/maven/zero-config/"><i class="cib-github"></i> GitHub repository</a></div></div></li></ul></div></div><div class="eclipse-jkube-footer"><div class="eclipse-jkube-footer__logo-jkube"><a href="/jkube/"><img class="eclipse-jkube-footer__logo-jkube-image" src="data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDI0LjIuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMSIgaWQ9IkxheWVyXzEiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHg9IjBweCIgeT0iMHB4IgoJIHZpZXdCb3g9IjAgMCAyOTEuMiA4OC41IiBzdHlsZT0iZW5hYmxlLWJhY2tncm91bmQ6bmV3IDAgMCAyOTEuMiA4OC41OyIgeG1sOnNwYWNlPSJwcmVzZXJ2ZSI+CjxzdHlsZSB0eXBlPSJ0ZXh0L2NzcyI+Cgkuamt1YmUtaWNvbi1vdXRlcntmaWxsLXJ1bGU6ZXZlbm9kZDtjbGlwLXJ1bGU6ZXZlbm9kZDt9Cgkuamt1YmUtaWNvbi1pbm5lciwgLmprdWJlLWljb24tb3V0ZXJ7ZmlsbDojRkZGRkZGO30KCS5qa3ViZS10ZXh0e2ZpbGw6ICNGRkZGRkY7fQo8L3N0eWxlPgo8Zz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTAwLjIsMjMuMWgyMS43djI4LjFjMCwzLTAuOCw1LjgtMi4zLDguNGMtMS41LDIuNi0zLjYsNC42LTYuMiw2LjFjLTIuNiwxLjUtNS41LDIuMi04LjUsMi4yYy0zLjEsMC01LjktMC43LTguNS0yLjIKCQljLTIuNi0xLjUtNC43LTMuNS02LjItNi4xYy0xLjUtMi42LTIuMy01LjQtMi4zLTguNGgxMS4yYzAsMS41LDAuNiwyLjgsMS43LDMuOXMyLjUsMS42LDQuMSwxLjZjMS42LDAsMi45LTAuNSw0LjEtMS42CgkJYzEuMS0xLjEsMS43LTIuNCwxLjctMy45di0xN2gtMTAuNVYyMy4xeiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0xNjMuMywyM2wtMTguMywxOS43bDE4LDI0LjNIMTQ5bC0xMS44LTE2bDAsMHYxNS43aC0xMS4yVjIzaDExLjJ2MTEuNkwxNDcuOSwyM0gxNjMuM3oiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMTk4LDM1LjFjLTAuMywyLjYtMC40LDQuOS0wLjQsOC4ydjE3YzAsMy44LDAuMSw2LDAuNCw4LjJIMTg3di0yLjRjMC0wLjMsMC0xLjEsMC4xLTEuNWMtMy42LDMuNC02LjgsNC43LTExLjQsNC43CgkJYy0zLjcsMC02LjYtMS04LjctMy4xYy0yLjItMi4yLTMuMS00LjktMy4xLTkuMlY0My4zYzAtMy4yLTAuMi01LjktMC40LTguMmgxMS40Yy0wLjMsMi42LTAuNCw0LjktMC40LDguMnYxMS4zCgkJYzAsMi4zLDAuMiwzLjIsMC45LDQuMWMwLjgsMSwyLDEuNSwzLjYsMS41YzMsMCw2LjEtMi4xLDguMi01LjdWNDMuM2MwLTMuMS0wLjEtNS40LTAuNC04LjJIMTk4eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLXRleHQiIGQ9Ik0yMDMuNyw2OC42YzAuMy0yLjYsMC40LTQuOSwwLjQtOC42VjMxLjVjMC00LTAuMS02LTAuNC04LjZoMTEuMWMtMC4zLDIuNi0wLjQsNC42LTAuNCw4LjZ2NC42YzAsMC44LDAsMS4zLTAuMSwyLjEKCQljMy4yLTIuOSw2LjgtNC4xLDExLjMtNC4xYzEwLDAsMTUuOCw2LjQsMTUuOCwxNy4yYzAsNS45LTEuNywxMC42LTQuOSwxMy45Yy0yLjksMi45LTYuNiw0LjMtMTEuNCw0LjNjLTQuNiwwLTcuMi0wLjktMTAuOC0zLjkKCQljMCwwLjIsMC4xLDAuOSwwLjEsMS4ydjEuOEgyMDMuN3ogTTIyMy4yLDQyLjRjLTUsMC04LjYsMy44LTguNiw5LjJjMCw1LjQsMy42LDkuNiw4LjMsOS42YzQuOCwwLDgtMy45LDgtOS43CgkJQzIzMC45LDQ1LjgsMjI4LDQyLjQsMjIzLjIsNDIuNHoiLz4KCTxwYXRoIGNsYXNzPSJqa3ViZS10ZXh0IiBkPSJNMjU0LjYsNTQuOWMwLjUsNC40LDMuMSw2LjgsNy41LDYuOGMyLjIsMCw0LjEtMC43LDUuNS0yYzAuOC0wLjgsMS4yLTEuNCwxLjYtMi44bDkuNiwyLjdjLTEuMywyLjktMi4xLDQuMS0zLjYsNS43CgkJYy0zLjEsMy4xLTcuNSw0LjctMTMsNC43Yy01LjQsMC05LjYtMS41LTEyLjctNC43Yy0zLjItMy4zLTUtOC01LTEzLjRjMC0xMC45LDctMTguMSwxNy41LTE4LjFjOC42LDAsMTQuNiw0LjcsMTYuNSwxMi45CgkJYzAuNCwxLjgsMC43LDQuMSwwLjgsNy4yYzAsMC4yLDAsMC41LDAuMSwxLjFIMjU0LjZ6IE0yNjguOSw0Ny4zYy0wLjgtMy41LTMuMS01LjQtNi45LTUuNGMtMy45LDAtNi4zLDEuOC03LjIsNS40SDI2OC45eiIvPgo8L2c+CjxnPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik05LjMsNTkuOGMwLjksMC44LDIuNSwxLjUsMy41LDIuMWwyMS42LDEyLjVjMSwwLjYsMi41LDEuNiwzLjYsMnYtNi4zTDE0LjgsNTYuNmwwLTI2LjgKCQljLTEuNi0wLjQtNC4yLTIuNy01LjYtMi45TDkuMyw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik02OSw1OS44bC0wLjEtMzNjLTEuNSwwLjUtMy45LDIuNi01LjUsM2wwLDI2LjljLTAuOCwwLjgtNC45LDIuOS02LjEsMy42TDQ1LDY3LjNjLTUuMSwzLTQuOCwyLTQuOCw0LjkKCQlsMC4xLDQuMkw2OSw1OS44eiIvPgoJPHBhdGggY2xhc3M9ImprdWJlLWljb24tb3V0ZXIiIGQ9Ik0xNS45LDI4YzEuOS0wLjcsNC4zLTIuNCw2LTMuNGMxLjktMS4xLDMuOC0yLjIsNS43LTMuM2MyLjEtMS4yLDMuNy0yLjIsNS44LTMuNGMxLjctMC45LDQuMS0yLjYsNS43LTMuMgoJCWwxNC4zLDguMmMyLjQsMS40LDQuNywyLjcsNy4yLDQuMWMyLjEsMS4yLDEuNiwxLDMuNy0wLjFjMS0wLjYsMi43LTEuNCwzLjQtMi4xQzY3LDI0LjEsMzkuNCw4LjMsMzkuMiw4LjMKCQlDMzksOC4zLDExLjQsMjQsMTAuNSwyNC45TDE1LjksMjh6Ii8+CjwvZz4KPHBhdGggY2xhc3M9ImprdWJlLWljb24taW5uZXIiIGQ9Ik0zOS4yLDE3LjhMMTcuOCwzMC4xdjI0LjdsMjEuNCwxMi4zbDIxLjQtMTIuM1YzMC4xTDM5LjIsMTcuOHogTTQ2LjYsNDYuOGMwLDEuOC0wLjUsMy42LTEuNCw1LjEKCWMtMC45LDEuNi0yLjIsMi44LTMuOCwzLjdjLTEuNiwwLjktMy4zLDEuNC01LjIsMS40Yy0xLjksMC0zLjYtMC41LTUuMi0xLjRjLTEuNi0wLjktMi45LTIuMi0zLjgtMy43Yy0wLjktMS42LTEuNC0zLjMtMS40LTUuMWg2LjgKCWMwLDAuOSwwLjMsMS43LDEsMi40czEuNSwxLDIuNSwxYzEsMCwxLjgtMC4zLDIuNS0xYzAuNy0wLjcsMS0xLjUsMS0yLjRWMzYuNWgtNi40di02LjhoMTMuM1Y0Ni44eiIvPgo8L3N2Zz4K" alt="JKube"/></a><span class="eclipse-jkube-footer__logo-jkube-tagline">Cloud-Native Java Applications without a hassle</span></div><div class="eclipse-jkube-footer__links"><ul class="eclipse-jkube-footer__links-list"><li><a href="/jkube/docs#getting-started">Get Started</a></li><li><a href="/jkube/docs">Docs</a></li><li><a href="/jkube/quickstarts">Quickstarts</a></li><li><a href="/jkube/docs#katacoda-courses">Katacoda Courses</a></li><li><a href="/jkube/demos">Demos</a></li></ul><ul class="eclipse-jkube-footer__links-list"><li><a href="/jkube/community">Community</a></li><li><a href="/jkube/community#planning-and-meetings">Get Involved</a></li><li><a href="/jkube/contributing">Contributing</a></li></ul><ul class="eclipse-jkube-footer__links-list"><li><a href="https://www.eclipse.org" target="_blank" rel="nofollow noopener noreferrer">Eclipse Foundation</a></li><li><a href="https://www.eclipse.org/legal/privacy.php" target="_blank" rel="nofollow noopener noreferrer">Privacy Policy</a></li><li><a href="https://www.eclipse.org/legal/termsofuse.php" target="_blank" rel="nofollow noopener noreferrer">Terms of Use</a></li><li><a href="https://www.eclipse.org/legal/copyright.php" target="_blank" rel="nofollow noopener noreferrer">Copyright Agent</a></li><li><a href="https://www.eclipse.org/legal" target="_blank" rel="nofollow noopener noreferrer">Legal Resources</a></li></ul></div><div class="eclipse-jkube-footer__copyright">Copyright © Eclipse Foundation 2020</div></div></div></div><div id="gatsby-announcer" style="position:absolute;top:0;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0, 0, 0, 0);white-space:nowrap;border:0" aria-live="assertive" aria-atomic="true"></div></div><script id="gatsby-script-loader">/*<![CDATA[*/window.pagePath="/quickstarts/";/*]]>*/</script><script id="gatsby-chunk-mapping">/*<![CDATA[*/window.___chunkMapping={"polyfill":["/polyfill-e4957c11759bdfc149d9.js"],"app":["/app-59faa9989d677dd59195.js"],"component---src-pages-quickstarts-index-jsx":["/component---src-pages-quickstarts-index-jsx-8b53e5455e208a3e59b9.js"],"component---src-templates-doc-jsx":["/component---src-templates-doc-jsx-21a94bb36ef3df298f42.js"],"component---src-templates-main-jsx":["/component---src-templates-main-jsx-8853cf342e1cf1bead5c.js"]};/*]]>*/</script><script src="/jkube/polyfill-e4957c11759bdfc149d9.js" nomodule=""></script><script src="/jkube/component---src-pages-quickstarts-index-jsx-8b53e5455e208a3e59b9.js" async=""></script><script src="/jkube/commons-ee34cd715ab4f7da30e0.js" async=""></script><script src="/jkube/styles-e9d24b1846c7d6eb9685.js" async=""></script><script src="/jkube/app-59faa9989d677dd59195.js" async=""></script><script src="/jkube/framework-5e01c8af6b1735c9eaa3.js" async=""></script><script src="/jkube/webpack-runtime-b52c77882f7d7b54b2b3.js" async=""></script></body></html>
\ No newline at end of file
diff --git a/styles-c2fe8482057191dca484.js b/styles-c2fe8482057191dca484.js
deleted file mode 100644
index 7b49a8b..0000000
--- a/styles-c2fe8482057191dca484.js
+++ /dev/null
@@ -1,2 +0,0 @@
-(window.webpackJsonp=window.webpackJsonp||[]).push([[1],[]]);
-//# sourceMappingURL=styles-c2fe8482057191dca484.js.map
\ No newline at end of file
diff --git a/styles-c2fe8482057191dca484.js.map b/styles-c2fe8482057191dca484.js.map
deleted file mode 100644
index 45af994..0000000
--- a/styles-c2fe8482057191dca484.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":[],"names":[],"mappings":"","file":"styles-c2fe8482057191dca484.js","sourceRoot":""}
\ No newline at end of file
diff --git a/styles-e9d24b1846c7d6eb9685.js b/styles-e9d24b1846c7d6eb9685.js
new file mode 100644
index 0000000..8105167
--- /dev/null
+++ b/styles-e9d24b1846c7d6eb9685.js
@@ -0,0 +1,2 @@
+(window.webpackJsonp=window.webpackJsonp||[]).push([[1],[]]);
+//# sourceMappingURL=styles-e9d24b1846c7d6eb9685.js.map
\ No newline at end of file
diff --git a/styles-e9d24b1846c7d6eb9685.js.map b/styles-e9d24b1846c7d6eb9685.js.map
new file mode 100644
index 0000000..cdecec7
--- /dev/null
+++ b/styles-e9d24b1846c7d6eb9685.js.map
@@ -0,0 +1 @@
+{"version":3,"sources":[],"names":[],"mappings":"","file":"styles-e9d24b1846c7d6eb9685.js","sourceRoot":""}
\ No newline at end of file
diff --git a/styles.5c9b852c43e28f117cb7.css b/styles.5c9b852c43e28f117cb7.css
index f267ad6..d6c099b 100644
--- a/styles.5c9b852c43e28f117cb7.css
+++ b/styles.5c9b852c43e28f117cb7.css
@@ -1 +1 @@
-@import url(https://fonts.googleapis.com/css?family=Libre+Franklin:100,300,400,600,700,|Roboto:300,400,500,700|Jura);@import url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css);@import url(https://unpkg.com/@coreui/icons/css/brand.min.css);code[class*=language-],pre[class*=language-]{color:#657b83;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-ms-hyphens:none;hyphens:none}code[class*=language-]::selection,code[class*=language-] ::selection,pre[class*=language-]::selection,pre[class*=language-] ::selection{background:#073642}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;border-radius:.3em}:not(pre)>code[class*=language-],pre[class*=language-]{background-color:#fdf6e3}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#93a1a1}.token.punctuation{color:#586e75}.token.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#268bd2}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string,.token.url{color:#2aa198}.token.entity{color:#657b83;background:#eee8d5}.token.atrule,.token.attr-value,.token.keyword{color:#859900}.token.class-name,.token.function{color:#b58900}.token.important,.token.regex,.token.variable{color:#cb4b16}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body,html{font-family:Libre Franklin,Roboto,sans-serif}body{margin:0;padding:0;outline:0;background:#f1f2f2;font-size:16px;color:#222}h1{font-size:3rem}h1,h2{margin-top:0;font-family:Roboto,sans-serif;font-weight:300}h2{font-size:2rem}h3{font-size:1.5rem;font-weight:300}a{color:#525c86}a:focus,a:hover{color:#222}.eclipse-jkube-footer{padding:16px;border-top:10px solid #222;background-color:#292c2f;font-size:19.2px;font-family:Roboto,sans-serif;font-weight:300;line-height:1.5}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube{display:flex;flex-direction:column;max-width:1170px;margin:0 auto 16px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-image{width:160px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-tagline{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links{max-width:1170px;margin:0 auto 16px;display:flex;flex-wrap:wrap}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list{padding:0;margin:0 48px 16px 0;list-style:none}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a{transition:color .1s linear;color:#f1f2f2}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a,.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a:hover{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a:hover{color:#525c86}.eclipse-jkube-footer .eclipse-jkube-footer__links a{text-decoration:none}.eclipse-jkube-footer .eclipse-jkube-footer__copyright{max-width:1170px;margin:0 auto 16px;font-family:Roboto,sans-serif;color:#939598}.eclipse-jkube__header{display:block;position:relative;height:175px;background-color:#292c2f}@media (min-width:700px){.eclipse-jkube__header{height:105px}}.eclipse-jkube__header .eclipse-jkube__header-trade-mark{font-size:.5em;font-size:.3em;line-height:2.5;vertical-align:top}.eclipse-jkube__header .eclipse-jkube__header-container{position:relative;margin:0 auto;padding:0 16px;height:100%;max-width:1170px}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-container{display:flex;flex-wrap:nowrap;height:105px}}.eclipse-jkube__header .eclipse-jkube__header-logo{display:flex;justify-content:center;align-items:center;font-size:32px;font-weight:400;color:#f1f2f2}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo{font-size:50px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:65px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:90px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image img{max-height:100%;max-width:100%}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:50px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:65px}}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube-image{height:100%}.eclipse-jkube__header .eclipse-jkube__header-logo:hover{color:#f1f2f2}.eclipse-jkube__header .eclipse-jkube__header-content{flex:1 0;min-width:1px;display:flex;justify-content:center;align-items:center}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-content{justify-content:flex-end}}.eclipse-jkube__header .eclipse-jkube__header-content ul{display:flex;flex-wrap:wrap;align-items:center;justify-content:center}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-content ul{justify-content:flex-start}}.eclipse-jkube__header .eclipse-jkube__header-content ul li{margin:4px 0;padding-right:16px;list-style:none;color:#f1f2f2;font-size:20px}.eclipse-jkube__header .eclipse-jkube__header-content .eclipse-jkube__header-stars{display:block;width:85px;height:20px;line-height:20px}.eclipse-jkube__header a{color:#f1f2f2;text-decoration:none}.eclipse-jkube__header a:hover{color:#dd8623;transition:color .3s}.quick-start-card{border:1px solid #d6d6d6;padding:16px}.quick-start-card .quick-start-card__title{margin:0;padding:0}.quick-start-card .quick-start-card__title a{text-decoration:none}.quick-start-card .quick-start-card__title a:active,.quick-start-card .quick-start-card__title a:hover{text-decoration:underline}.quick-start-card .quick-start-card__technologies{margin:16px 0 0;padding:0}.quick-start-card .quick-start-card__technologies-item{display:inline-flex;align-items:center;padding:.25rem .3rem;border-radius:.2rem;font-size:.8rem;margin:0 0 .5rem;background:#dd8623;color:#222}.quick-start-card .quick-start-card__technologies-item:not(:last-child){margin-right:.5rem}.quick-start-card .quick-start-card__technologies-item-icon{display:inline-block;height:.8rem;margin-right:.2rem}.quick-start-card .quick-start-card__description p{margin-top:0}.quick-start-card .quick-start-card__links a{display:inline-block;text-decoration:none;padding:.3rem .5rem;border-radius:.2rem;border:1px solid #d6d6d6;background:#d6d6d6;color:#222}.quick-start-card .quick-start-card__links a:active,.quick-start-card .quick-start-card__links a:hover{background-color:#f1f2f2}.eclipse-jkube{display:flex;flex-direction:column;min-height:100vh}.eclipse-jkube__main{flex:1 1}@media (min-width:1170px){.eclipse-jkube__main{overflow-x:hidden}}.eclipse-jkube__main .eclipse-jkube__content{margin:0 16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content{max-width:1154px;margin:0 auto}}.eclipse-jkube__main .eclipse-jkube__content img{max-width:100%}.eclipse-jkube__main .eclipse-jkube__content :not(pre)>code[class*=language-],.eclipse-jkube__main .eclipse-jkube__content pre[class*=language-]{background-color:transparent}.eclipse-jkube__main .eclipse-jkube__content .hero{margin:0 -16px 16px;display:block;background-color:#272727;background-image:url(/jkube/static/cubes-8e1e59c337437947105e6668f1f3790a.jpg);background-size:cover;color:#f1f2f2}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px;background-color:rgba(39,39,39,.7)}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px calc((100% - 1170px)/2)}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content .getting-involved{color:#f1f2f2;margin:0 -16px;padding:0 16px;display:flex;justify-content:flex-end}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content h1{font-size:2.5rem;font-family:Libre Franklin,Roboto,sans-serif;font-weight:400}.eclipse-jkube__main .eclipse-jkube__content .section-dark{background-color:#404040;color:#f1f2f2;margin:0 -16px;padding:16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;padding:16px calc((100% - 1170px)/2)}}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark>*{padding:0 calc((100% - 1170px)/2)}}.eclipse-jkube__main .eclipse-jkube__content .highlight{display:flex;align-items:center}.eclipse-jkube__main .eclipse-jkube__content .highlight>p{margin:16px 32px;display:none}@media (min-width:501px){.eclipse-jkube__main .eclipse-jkube__content .highlight>p{display:block}}.eclipse-jkube__main .eclipse-jkube__content .highlight>p img{max-width:100px}.eclipse-jkube__main .eclipse-jkube__content .highlight-description{flex:1 1;min-width:1px}.eclipse-jkube__main .eclipse-jkube__content .highlight ul{flex:1 1;min-width:1px;margin:0;padding:0}.eclipse-jkube__main .eclipse-jkube__content .highlight li{list-style:none;margin:16px 0}.eclipse-jkube__main .eclipse-jkube__content .calendar{position:relative;overflow:hidden;padding-bottom:75%;margin-bottom:16px}@media (min-width:666.66667px){.eclipse-jkube__main .eclipse-jkube__content .calendar{padding-bottom:0;height:500px}}.eclipse-jkube__main .eclipse-jkube__content .calendar iframe{position:absolute;top:0;height:100%;max-height:500px;width:100%}.eclipse-jkube__documentation{margin:0}@media screen and (min-width:768px){.eclipse-jkube__documentation{position:absolute;top:105px;bottom:0;width:100%;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content{position:relative;padding:16px;overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content article,.eclipse-jkube__documentation .eclipse-jkube__documentation-content aside,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figcaption,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure,.eclipse-jkube__documentation .eclipse-jkube__documentation-content footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content header,.eclipse-jkube__documentation .eclipse-jkube__documentation-content hgroup,.eclipse-jkube__documentation .eclipse-jkube__documentation-content main,.eclipse-jkube__documentation .eclipse-jkube__documentation-content nav,.eclipse-jkube__documentation .eclipse-jkube__documentation-content section{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio,.eclipse-jkube__documentation .eclipse-jkube__documentation-content video{display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio:not([controls]){display:none;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus{outline:thin dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{outline:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2em;margin:.67em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]{border-bottom:1px dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dfn{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{box-sizing:content-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content mark{background:#ff0;color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content samp{font-family:monospace;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{white-space:pre-wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content q{quotes:"\201C" "\201D" "\2018" "\2019"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub{bottom:-.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg:not(:root){overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure{margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content legend{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select,.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{font-family:inherit;font-size:100%;margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input{line-height:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[type=button],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=reset],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=submit]{-webkit-appearance:button;cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button[disabled],.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[disabled]{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=checkbox],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=radio]{box-sizing:border-box;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button::-moz-focus-inner,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input::-moz-focus-inner{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{overflow:auto;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{border-collapse:collapse;border-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content *,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :before{box-sizing:border-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body{background:#fff;color:rgba(0,0,0,.8);padding:0;margin:0;font-family:"Noto Serif","DejaVu Serif",serif;font-weight:400;font-style:normal;line-height:1;position:relative;cursor:auto;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{max-width:100%;height:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{height:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{-ms-interpolation-mode:bicubic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .left{float:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .right{float:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-left{text-align:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-right{text-align:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-center{text-align:center!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-justify{text-align:justify!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{display:inline-block;vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{height:auto;min-height:50px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .center{margin-left:auto;margin-right:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stretch{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .subheader,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{line-height:1.45;color:#7a2518;font-weight:400;margin-top:0;margin-bottom:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content div,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content form,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6,.eclipse-jkube__documentation .eclipse-jkube__documentation-content li,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin:0;padding:0;direction:ltr}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:#2156a5;text-decoration:underline;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{color:#1d4b8f}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{font-family:inherit;font-weight:400;font-size:1em;line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p aside{font-size:.875em;line-height:1.35;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-family:Open Sans,DejaVu Sans,sans-serif;font-weight:300;font-style:normal;color:#ba3925;text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:.5em;line-height:1.0125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 small{font-size:60%;color:#e99b8f;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5{font-size:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{border:solid #dddddf;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em,.eclipse-jkube__documentation .eclipse-jkube__documentation-content i{font-style:italic;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b,.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong{font-weight:700;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:60%;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;font-weight:400;color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{font-size:1em;line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ul{margin-left:1.25em;margin-bottom:0;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square li ul{list-style:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square{list-style-type:square}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle{list-style-type:circle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc{list-style-type:disc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ul{margin-left:1.25em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dt{margin-bottom:.3125em;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content acronym{text-transform:uppercase;font-size:90%;color:rgba(0,0,0,.8);border-bottom:1px dotted #ddd;cursor:help}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote{margin:0 0 1.25em;padding:.5625em 1.25em 0 1.1875em;border-left:1px solid #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite{display:block;font-size:.9375em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite:before{content:"\2014 "}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a:visited{color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote p{line-height:1.6;color:rgba(0,0,0,.85)}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:2.3125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4{font-size:1.4375em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{background:#fff;margin-bottom:1.25em;border:1px solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead{background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th{padding:.5em .625em .625em;font-size:inherit;color:rgba(0,0,0,.8);text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr th{padding:.5625em .625em;font-size:inherit;color:rgba(0,0,0,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.even{background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tbody tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td{display:table-cell;line-height:1.6}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2;word-spacing:-.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre):not([class^=L])>code{font-size:.9375em;font-style:normal!important;letter-spacing:0;padding:.1em .5ex;word-spacing:-.15em;background:#f7f7f8;border-radius:4px;line-height:1.45;text-rendering:optimizeSpeed;word-wrap:break-word}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nobreak{word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nowrap{white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{color:rgba(0,0,0,.9);font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;line-height:1.45;text-rendering:optimizeSpeed}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre pre{color:inherit;font-size:inherit;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre>code{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap pre{white-space:pre;word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em em{font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq{color:rgba(51,51,51,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;display:inline-block;color:rgba(0,0,0,.8);font-size:.65em;line-height:1.45;background:#f7f7f7;border:1px solid #ccc;border-radius:3px;box-shadow:0 1px 0 rgba(0,0,0,.2),inset 0 0 0 .1em #fff;margin:0 .15em;padding:.2em .5em;vertical-align:middle;position:relative;top:-.1em;white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:first-child{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:last-child{margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b:not(.caret){font-weight:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{word-spacing:-.02em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b.caret{font-size:1.25em;line-height:.8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq i.caret{font-weight:700;text-align:center;width:.45em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{position:relative;top:-1px;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{content:"[";padding:0 3px 0 2px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after{content:"]";padding:0 2px 0 3px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p a>code:hover{color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{width:100%;margin:0 auto;max-width:62.5em;*zoom:1;position:relative;padding-left:.9375em;padding-right:.9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-top:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before{content:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{color:rgba(0,0,0,.85);margin-top:2.25rem;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child+#toc{margin-top:8px;border-top:1px solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:only-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #dddddf;padding-bottom:8px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details{border-bottom:1px solid #dddddf;line-height:1.45;padding-top:.25em;padding-bottom:.25em;padding-left:.25em;color:rgba(0,0,0,.6);display:flex;flex-flow:row wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span:first-child{margin-left:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span.email a{color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span:before{content:"\A0\2013\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span.author:before{content:"\A0\22C5\A0";color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span#revremark:before{content:"\A0|\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber{text-transform:capitalize}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber:after{content:"\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content>h1:first-child:not([class]){color:rgba(0,0,0,.85);border-bottom:1px solid #dddddf;padding-bottom:8px;margin-top:0;padding-top:1rem;margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #e7e7e9;padding-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc>ul{margin-left:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0>li>a{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0 ul.sectlevel1{margin:.5em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul{font-family:Open Sans,DejaVu Sans,sans-serif;list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc li{line-height:1.3334;margin-top:.3334em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{color:#7a2518;font-size:1.2em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:15em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{margin-top:0!important;background:#f8f8f7;position:fixed;width:15em;left:0;top:0;border-right:1px solid #e7e7e9;border-top-width:0!important;border-bottom-width:0!important;z-index:1000;padding:1.25em 1em;height:100%;overflow:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{margin-top:0;margin-bottom:.8rem;font-size:1.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.9em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{margin-left:0;padding-left:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:.5em;margin-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:15em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right #toc.toc2{border-right-width:0;border-left:1px solid #e7e7e9;left:auto;right:0}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:20em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{width:20em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.95em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{padding-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:20em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc{border:1px solid #e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{max-width:100%;background:rgba(0,0,0,.8);padding:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:hsla(0,0%,100%,.8);line-height:1.44}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:.625em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:1.25em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1:last-child{padding-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border-top:1px solid #e7e7e9}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:before{content:"\A7";font-size:.85em;display:block;padding-top:.1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:hover{visibility:visible}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link{color:#ba3925;text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link:hover{color:#a53221}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content details>summary:first-of-type{cursor:pointer;display:list-item;outline:none;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{text-rendering:optimizeLegibility;text-align:left;font-family:"Noto Serif","DejaVu Serif",serif;font-size:1rem;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock.fit-content>caption.title{white-space:nowrap;width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #preamble>.sectionbody>[class=paragraph]:first-of-type p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph.lead>p{font-size:1.21875em;line-height:1.6;color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock #preamble>.sectionbody>[class=paragraph]:first-of-type p{font-size:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon{text-align:center;width:80px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon .title{font-weight:700;font-family:Open Sans,DejaVu Sans,sans-serif;text-transform:uppercase}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content{padding-left:1.125em;padding-right:1.25em;border-left:1px solid #dddddf;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{border:1px solid #e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#fff;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{border:1px solid #dbdbd6;margin-bottom:1.25em;padding:1.25em;background:#f3f3f2;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title{color:#7a2518;margin-top:0;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{border-radius:4px;word-wrap:break-word;overflow-x:auto;padding:1em;font-size:.8125em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:.90625em}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:1em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre:not(.highlight),.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class=highlight],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class^="highlight "],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock.output pre{color:#f7f7f8;background:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content{position:relative}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:none;content:attr(data-lang);position:absolute;font-size:.75em;top:.425rem;right:.5rem;line-height:1;text-transform:uppercase;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock:hover code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:before{content:attr(data-prompt);padding-right:.5em;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:not([data-prompt]):before{content:"$"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs{padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs>code{padding:1em;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.prettyprint{border-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .prettyprint{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint .linenums{line-height:1.45;margin-left:2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li{background:none;list-style-type:inherit;padding-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li code[data-lang]:before{opacity:1}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li:not(:first-child) code[data-lang]:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable{border-collapse:separate;border:0;margin-bottom:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td[class]{color:inherit;vertical-align:top;padding:0;line-height:inherit;white-space:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.code{padding-left:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.linenos{border-right:1px solid;opacity:.35;padding-right:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno{border-right:1px solid;opacity:.35;display:inline-block;margin-right:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno:before{content:"";margin-right:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock{margin:0 1em 1.25em 1.5em;display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock:not(.excerpt)>.title{margin-left:-1.5em;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock p{color:rgba(0,0,0,.85);font-size:1.15rem;line-height:1.75;word-spacing:.1em;letter-spacing:0;font-style:italic;text-align:justify}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote{margin:0;padding:0;border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote:before{content:"\201C";float:left;font-size:2.75em;font-weight:700;line-height:.6em;margin-left:-.6em;color:#7a2518;text-shadow:0 1px 2px rgba(0,0,0,.1)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote>.paragraph:last-child p{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution{margin-top:.75em;margin-right:.5ex;text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock{margin:0 1em 1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre{font-family:Open Sans,DejaVu Sans,sans;font-size:1.15rem;color:rgba(0,0,0,.85);font-weight:300;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{margin-top:1.25rem;margin-left:.5ex}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{font-size:.9375em;line-height:1.45;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution br,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution cite,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution cite{display:block;letter-spacing:-.025em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{line-height:1.6;word-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract{margin:0 1em 1.25em;display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract>.title{margin:0 0 .375em;font-size:1.15em;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt>blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{padding:0 0 .25em 1em;border-left:.25em solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{color:inherit;font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock .attribution{color:inherit;text-align:left;margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock{max-width:100%;border-collapse:separate}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child{margin-bottom:-1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child.sidebarblock{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{border:0 solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead>tr>.tableblock{border-width:0 1px 1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tfoot>tr>.tableblock{border-width:1px 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock{border-width:0 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead>tr>.tableblock{border-width:0 0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tfoot>tr>.tableblock{border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>*>tr>.tableblock:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock:last-child{border-right-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead:last-child>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead:last-child>tr>.tableblock{border-bottom-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-all{border-width:1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-sides{border-width:0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-ends,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-topbot{border-width:1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-all tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-even tr:nth-of-type(2n),.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-hover tr:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-odd tr:nth-of-type(odd){background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-left{text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-right,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-right{text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-center,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-center{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-top,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-top{vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-bottom,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-bottom{vertical-align:bottom}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-middle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-middle{vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead th{font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th{display:table-cell;line-height:1.6;background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th p{color:rgba(0,0,0,.8);font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock>code:only-child{background:none;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol{margin-left:1.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-left:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul dd{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-check-square-o:first-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-square-o:first-child{width:1.25em;font-size:.8em;position:relative;bottom:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>input[type=checkbox]:first-child{margin-right:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline{display:flex;flex-flow:row wrap;list-style:none;margin:0 0 .625em -1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline>li{margin-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .unstyled dl dt{font-weight:400;font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.arabic{list-style-type:decimal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.decimal{list-style-type:decimal-leading-zero}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.loweralpha{list-style-type:lower-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperalpha{list-style-type:upper-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowerroman{list-style-type:lower-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperroman{list-style-type:upper-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowergreek{list-style-type:lower-greek}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table{border:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table>tbody>tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table>tbody>tr{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist2{vertical-align:top;padding:0 .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1{font-weight:700;padding-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock+.colist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock+.colist{margin-top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child{padding:.4em .75em 0;line-height:1;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):last-child{padding:.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .thumb{line-height:0;display:inline-block;border:4px solid #fff;box-shadow:0 0 0 1px #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.left{margin:.25em .625em 1.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.right{margin:.25em 0 1.25em .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb{border-width:6px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb>.title{padding:0 .125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-top:.25em;margin-bottom:.25em;display:inline-block;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left{margin-right:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image{text-decoration:none;display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image object{pointer-events:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref{font-size:.875em;position:static;vertical-align:super}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 .75em;border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote{padding:0 .375em 0 .225em;line-height:1.3334;font-size:.875em;margin-left:1.2em;margin-bottom:.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote a:first-of-type{font-weight:700;text-decoration:none;margin-left:-1.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote:last-of-type{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table{border:0;background:#fff;width:100%;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table td.line-data{width:99%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.unbreakable{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .big{font-size:larger}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .small{font-size:smaller}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .underline{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .overline{text-decoration:overline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .line-through{text-decoration:line-through}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua{color:#00bfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua-background{background:#00fafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black-background{background:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue{color:#0000bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue-background{background:#0000fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia{color:#bf00bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia-background{background:#fa00fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray{color:#606060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray-background{background:#7d7d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green{color:#006000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green-background{background:#007d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime{color:#00bf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime-background{background:#00fa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon{color:#600000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon-background{background:#7d0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy{color:#000060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy-background{background:#00007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive{color:#606000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive-background{background:#7d7d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple{color:#600060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple-background{background:#7d007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red{color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red-background{background:#fa0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver{color:#909090}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver-background{background:#bcbcbc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal{color:#006060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal-background{background:#007d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white{color:#bfbfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white-background{background:#fafafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow{color:#bfbf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow-background{background:#fafa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.icon>.fa{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a span.icon>.fa{cursor:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;text-shadow:1px 1px 2px rgba(0,0,0,.5);cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-note:before{content:"\F05A";color:#19407c}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-tip:before{content:"\F0EB";text-shadow:1px 1px 2px rgba(155,155,0,.8);color:#111}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-warning:before{content:"\F071";color:#bf6900}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-caution:before{content:"\F06D";color:#bf3400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-important:before{content:"\F06A";color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]{display:inline-block;color:#fff!important;background:rgba(0,0,0,.8);border-radius:100px;text-align:center;font-size:.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:Open Sans,DejaVu Sans,sans-serif;font-style:normal;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value] *{color:#fff!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]+b{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]:after{content:attr(data-value)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre .conum[data-value]{position:relative;top:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.conum *{color:inherit!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum:not([data-value]):empty{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{letter-spacing:-.01em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content strong{letter-spacing:-.005em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{background:#fffef7;border-color:#e0e0dc;box-shadow:0 1px 4px #e0e0dc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:none!important}@page{.eclipse-jkube__documentation .eclipse-jkube__documentation-content{margin:1.25cm .75cm}}@media print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content *{box-shadow:none!important;text-shadow:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:inherit!important;text-decoration:underline!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.bare,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="#"],.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="mailto:"]{text-decoration:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="http:"]:not(.bare):after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="https:"]:not(.bare):after{content:"(" attr(href) ")";display:inline-block;font-size:.875em;padding-left:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]:after{content:" (" attr(title) ")"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tr{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content thead{display:table-header-group}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{max-width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1em;orphans:3;widows:3}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{page-break-after:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{background:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #dddddf!important;padding-bottom:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details{border:0!important;display:block;padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details span:first-child{margin-left:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br+span:before{content:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #preamble,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book .sect1>h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book h1.sect0{page-break-before:always}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{padding:0 .9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-on-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:block!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-for-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .show-for-print{display:inherit!important}}@media amzn-kf8,print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{margin-top:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:rgba(0,0,0,.6);font-size:.9em}}@media amzn-kf8{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{padding:0}}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content{padding-left:21em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .toc{position:fixed;width:20em;left:0;top:105px;bottom:0;z-index:1000;padding:0 16px;border-right:1px solid #efefed;border-top-width:0!important;border-bottom-width:0!important;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content i.fa{font-style:normal}.eclipse-jkube__quickstarts{padding:0}.eclipse-jkube__quickstarts-item{list-style:none}.eclipse-jkube__quickstarts-item:not(:last-child){margin-bottom:16px}
\ No newline at end of file
+@import url(https://fonts.googleapis.com/css?family=Libre+Franklin:100,300,400,600,700,|Roboto:300,400,500,700|Jura);@import url(https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css);@import url(https://unpkg.com/@coreui/icons/css/brand.min.css);code[class*=language-],pre[class*=language-]{color:#657b83;font-family:Consolas,Monaco,Andale Mono,Ubuntu Mono,monospace;font-size:1em;text-align:left;white-space:pre;word-spacing:normal;word-break:normal;word-wrap:normal;line-height:1.5;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-webkit-hyphens:none;-ms-hyphens:none;hyphens:none}code[class*=language-]::selection,code[class*=language-] ::selection,pre[class*=language-]::selection,pre[class*=language-] ::selection{background:#073642}pre[class*=language-]{padding:1em;margin:.5em 0;overflow:auto;border-radius:.3em}:not(pre)>code[class*=language-],pre[class*=language-]{background-color:#fdf6e3}:not(pre)>code[class*=language-]{padding:.1em;border-radius:.3em}.token.cdata,.token.comment,.token.doctype,.token.prolog{color:#93a1a1}.token.punctuation{color:#586e75}.token.namespace{opacity:.7}.token.boolean,.token.constant,.token.deleted,.token.number,.token.property,.token.symbol,.token.tag{color:#268bd2}.token.attr-name,.token.builtin,.token.char,.token.inserted,.token.selector,.token.string,.token.url{color:#2aa198}.token.entity{color:#657b83;background:#eee8d5}.token.atrule,.token.attr-value,.token.keyword{color:#859900}.token.class-name,.token.function{color:#b58900}.token.important,.token.regex,.token.variable{color:#cb4b16}.token.bold,.token.important{font-weight:700}.token.italic{font-style:italic}.token.entity{cursor:help}html{-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body,html{font-family:Libre Franklin,Roboto,sans-serif}body{margin:0;padding:0;outline:0;background:#f1f2f2;font-size:16px;color:#222}h1{font-size:3rem}h1,h2{margin-top:0;font-family:Roboto,sans-serif;font-weight:300}h2{font-size:2rem}h3{font-size:1.5rem;font-weight:300}a{color:#525c86}a:focus,a:hover{color:#222}.eclipse-jkube-footer{padding:16px;border-top:10px solid #222;background-color:#292c2f;font-size:19.2px;font-family:Roboto,sans-serif;font-weight:300;line-height:1.5}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube{display:flex;flex-direction:column;max-width:1170px;margin:0 auto 16px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-image{width:160px}.eclipse-jkube-footer .eclipse-jkube-footer__logo-jkube .eclipse-jkube-footer__logo-jkube-tagline{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links{max-width:1170px;margin:0 auto 16px;display:flex;flex-wrap:wrap}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list{padding:0;margin:0 48px 16px 0;list-style:none}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a{transition:color .1s linear;color:#f1f2f2}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a,.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li a:hover{color:#939598}.eclipse-jkube-footer .eclipse-jkube-footer__links .eclipse-jkube-footer__links-list li:first-child a:hover{color:#525c86}.eclipse-jkube-footer .eclipse-jkube-footer__links a{text-decoration:none}.eclipse-jkube-footer .eclipse-jkube-footer__copyright{max-width:1170px;margin:0 auto 16px;font-family:Roboto,sans-serif;color:#939598}.eclipse-jkube__header{display:block;position:relative;height:175px;background-color:#292c2f}@media (min-width:700px){.eclipse-jkube__header{height:105px}}.eclipse-jkube__header .eclipse-jkube__header-trade-mark{font-size:.5em;font-size:.3em;line-height:2.5;vertical-align:top}.eclipse-jkube__header .eclipse-jkube__header-container{position:relative;margin:0 auto;padding:0 16px;height:100%;max-width:1170px}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-container{display:flex;flex-wrap:nowrap;height:105px}}.eclipse-jkube__header .eclipse-jkube__header-logo{display:flex;justify-content:center;align-items:center;font-size:32px;font-weight:400;color:#f1f2f2}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo{font-size:50px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:65px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image{height:90px}}.eclipse-jkube__header .eclipse-jkube__header-logo-eclipse-image img{max-height:100%;max-width:100%}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:50px}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-logo-jkube{height:65px}}.eclipse-jkube__header .eclipse-jkube__header-logo-jkube-image{height:100%}.eclipse-jkube__header .eclipse-jkube__header-logo:hover{color:#f1f2f2}.eclipse-jkube__header .eclipse-jkube__header-content{flex:1 0;min-width:1px;display:flex;justify-content:center;align-items:center}@media (min-width:501px){.eclipse-jkube__header .eclipse-jkube__header-content{justify-content:flex-end}}.eclipse-jkube__header .eclipse-jkube__header-content ul{display:flex;flex-wrap:wrap;align-items:center;justify-content:center}@media (min-width:700px){.eclipse-jkube__header .eclipse-jkube__header-content ul{justify-content:flex-start}}.eclipse-jkube__header .eclipse-jkube__header-content ul li{margin:4px 0;padding-right:16px;list-style:none;color:#f1f2f2;font-size:20px}.eclipse-jkube__header .eclipse-jkube__header-content .eclipse-jkube__header-stars{display:block;width:85px;height:20px;line-height:20px}.eclipse-jkube__header a{color:#f1f2f2;text-decoration:none}.eclipse-jkube__header a:hover{color:#dd8623;transition:color .3s}.quick-start-card{border:1px solid #d6d6d6;padding:16px}.quick-start-card .quick-start-card__title{margin:0;padding:0}.quick-start-card .quick-start-card__title a{text-decoration:none}.quick-start-card .quick-start-card__title a:active,.quick-start-card .quick-start-card__title a:hover{text-decoration:underline}.quick-start-card .quick-start-card__technologies{margin:16px 0 0;padding:0}.quick-start-card .quick-start-card__technologies-item{display:inline-flex;align-items:center;padding:.25rem .3rem;border-radius:.2rem;font-size:.8rem;margin:0 0 .5rem;background:#dd8623;color:#222}.quick-start-card .quick-start-card__technologies-item:not(:last-child){margin-right:.5rem}.quick-start-card .quick-start-card__technologies-item-icon{display:inline-block;height:.8rem;margin-right:.2rem}.quick-start-card .quick-start-card__description p{margin-top:0}.quick-start-card .quick-start-card__links a{display:inline-block;text-decoration:none;padding:.3rem .5rem;border-radius:.2rem;border:1px solid #d6d6d6;background:#d6d6d6;color:#222}.quick-start-card .quick-start-card__links a:active,.quick-start-card .quick-start-card__links a:hover{background-color:#f1f2f2}.eclipse-jkube{display:flex;flex-direction:column;min-height:100vh}.eclipse-jkube__main{flex:1 1}@media (min-width:1170px){.eclipse-jkube__main{overflow-x:hidden}}.eclipse-jkube__main .eclipse-jkube__content{margin:0 16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content{max-width:1154px;margin:0 auto}}.eclipse-jkube__main .eclipse-jkube__content img{max-width:100%}.eclipse-jkube__main .eclipse-jkube__content :not(pre)>code[class*=language-],.eclipse-jkube__main .eclipse-jkube__content pre[class*=language-]{background-color:transparent}.eclipse-jkube__main .eclipse-jkube__content .hero{margin:0 -16px 16px;display:block;background-color:#272727;background-image:url(/jkube/static/cubes-8e1e59c337437947105e6668f1f3790a.jpg);background-size:cover;color:#f1f2f2}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px;background-color:rgba(39,39,39,.7)}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content{padding:16px calc(50% - 585px)}}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content .getting-involved{color:#f1f2f2;margin:0 -16px;padding:0 16px;display:flex;justify-content:flex-end}.eclipse-jkube__main .eclipse-jkube__content .hero .hero-content h1{font-size:2.5rem;font-family:Libre Franklin,Roboto,sans-serif;font-weight:400}.eclipse-jkube__main .eclipse-jkube__content .section-dark{background-color:#404040;color:#f1f2f2;margin:0 -16px;padding:16px}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark{position:relative;width:100vw;left:50%;right:50%;margin-left:-50vw;margin-right:-50vw;padding:16px calc(50% - 585px)}}@media (min-width:1170px){.eclipse-jkube__main .eclipse-jkube__content .section-dark>*{padding:0 calc(50% - 585px)}}.eclipse-jkube__main .eclipse-jkube__content .highlight{display:flex;align-items:center}.eclipse-jkube__main .eclipse-jkube__content .highlight>p{margin:16px 32px;display:none}@media (min-width:501px){.eclipse-jkube__main .eclipse-jkube__content .highlight>p{display:block}}.eclipse-jkube__main .eclipse-jkube__content .highlight>p img{max-width:100px}.eclipse-jkube__main .eclipse-jkube__content .highlight-description{flex:1 1;min-width:1px}.eclipse-jkube__main .eclipse-jkube__content .highlight ul{flex:1 1;min-width:1px;margin:0;padding:0}.eclipse-jkube__main .eclipse-jkube__content .highlight li{list-style:none;margin:16px 0}.eclipse-jkube__main .eclipse-jkube__content .calendar{position:relative;overflow:hidden;padding-bottom:75%;margin-bottom:16px}@media (min-width:666.66667px){.eclipse-jkube__main .eclipse-jkube__content .calendar{padding-bottom:0;height:500px}}.eclipse-jkube__main .eclipse-jkube__content .calendar iframe{position:absolute;top:0;height:100%;max-height:500px;width:100%}.eclipse-jkube__documentation{margin:0}@media screen and (min-width:768px){.eclipse-jkube__documentation{position:absolute;top:105px;bottom:0;width:100%;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content{position:relative;padding:16px;overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content article,.eclipse-jkube__documentation .eclipse-jkube__documentation-content aside,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figcaption,.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure,.eclipse-jkube__documentation .eclipse-jkube__documentation-content footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content header,.eclipse-jkube__documentation .eclipse-jkube__documentation-content hgroup,.eclipse-jkube__documentation .eclipse-jkube__documentation-content main,.eclipse-jkube__documentation .eclipse-jkube__documentation-content nav,.eclipse-jkube__documentation .eclipse-jkube__documentation-content section{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio,.eclipse-jkube__documentation .eclipse-jkube__documentation-content video{display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content audio:not([controls]){display:none;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus{outline:thin dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{outline:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2em;margin:.67em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]{border-bottom:1px dotted}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dfn{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{box-sizing:content-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content mark{background:#ff0;color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content samp{font-family:monospace;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{white-space:pre-wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content q{quotes:"\201C" "\201D" "\2018" "\2019"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup{top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sub{bottom:-.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg:not(:root){overflow:hidden}.eclipse-jkube__documentation .eclipse-jkube__documentation-content figure{margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content fieldset{border:1px solid silver;margin:0 2px;padding:.35em .625em .75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content legend{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select,.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{font-family:inherit;font-size:100%;margin:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input{line-height:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[type=button],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=reset],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=submit]{-webkit-appearance:button;cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button[disabled],.eclipse-jkube__documentation .eclipse-jkube__documentation-content html input[disabled]{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=checkbox],.eclipse-jkube__documentation .eclipse-jkube__documentation-content input[type=radio]{box-sizing:border-box;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content button::-moz-focus-inner,.eclipse-jkube__documentation .eclipse-jkube__documentation-content input::-moz-focus-inner{border:0;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{overflow:auto;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{border-collapse:collapse;border-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content *,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content :before{box-sizing:border-box}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body,.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body{background:#fff;color:rgba(0,0,0,.8);padding:0;margin:0;font-family:"Noto Serif","DejaVu Serif",serif;font-weight:400;font-style:normal;line-height:1;position:relative;cursor:auto;-moz-tab-size:4;-o-tab-size:4;tab-size:4;-moz-osx-font-smoothing:grayscale;-webkit-font-smoothing:antialiased}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{cursor:pointer}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{max-width:100%;height:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content embed,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object{height:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img{-ms-interpolation-mode:bicubic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .left{float:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .right{float:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-left{text-align:left!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-right{text-align:right!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-center{text-align:center!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .text-justify{text-align:justify!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{display:inline-block;vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content textarea{height:auto;min-height:50px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content select{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .center{margin-left:auto;margin-right:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stretch{width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .subheader,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{line-height:1.45;color:#7a2518;font-weight:400;margin-top:0;margin-bottom:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content div,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content form,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6,.eclipse-jkube__documentation .eclipse-jkube__documentation-content li,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin:0;padding:0;direction:ltr}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:#2156a5;text-decoration:underline;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:focus,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a:hover{color:#1d4b8f}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a img{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{font-family:inherit;font-weight:400;font-size:1em;line-height:1.6;margin-bottom:1.25em;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p aside{font-size:.875em;line-height:1.35;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-family:Open Sans,DejaVu Sans,sans-serif;font-weight:300;font-style:normal;color:#ba3925;text-rendering:optimizeLegibility;margin-top:1em;margin-bottom:.5em;line-height:1.0125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 small,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 small{font-size:60%;color:#e99b8f;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5{font-size:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content hr{border:solid #dddddf;border-width:1px 0 0;clear:both;margin:1.25em 0 1.1875em;height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em,.eclipse-jkube__documentation .eclipse-jkube__documentation-content i{font-style:italic;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b,.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong{font-weight:700;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content small{font-size:60%;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content code{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;font-weight:400;color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{font-size:1em;line-height:1.6;margin-bottom:1.25em;list-style-position:outside;font-family:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ul{margin-left:1.25em;margin-bottom:0;font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc li ul,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square li ul{list-style:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.square{list-style-type:square}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.circle{list-style-type:circle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.disc{list-style-type:disc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ol,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol li ul{margin-left:1.25em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dt{margin-bottom:.3125em;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content acronym{text-transform:uppercase;font-size:90%;color:rgba(0,0,0,.8);border-bottom:1px dotted #ddd;cursor:help}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr{text-transform:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote{margin:0 0 1.25em;padding:.5625em 1.25em 0 1.1875em;border-left:1px solid #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite{display:block;font-size:.9375em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite:before{content:"\2014 "}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote cite a:visited{color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote p{line-height:1.6;color:rgba(0,0,0,.85)}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1{font-size:2.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2{font-size:2.3125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{font-size:1.6875em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4{font-size:1.4375em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table{background:#fff;margin-bottom:1.25em;border:1px solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead{background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th{padding:.5em .625em .625em;font-size:inherit;color:rgba(0,0,0,.8);text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr th{padding:.5625em .625em;font-size:inherit;color:rgba(0,0,0,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr.even{background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tbody tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr td,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tr td{display:table-cell;line-height:1.6}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6{line-height:1.2;word-spacing:-.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5 strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6 strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .clearfix:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .float-group:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre):not([class^=L])>code{font-size:.9375em;font-style:normal!important;letter-spacing:0;padding:.1em .5ex;word-spacing:-.15em;background:#f7f7f8;border-radius:4px;line-height:1.45;text-rendering:optimizeSpeed;word-wrap:break-word}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nobreak{word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content :not(pre)>code.nowrap{white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre{color:rgba(0,0,0,.9);font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;line-height:1.45;text-rendering:optimizeSpeed}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre code,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre pre{color:inherit;font-size:inherit;line-height:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre>code{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.nowrap pre{white-space:pre;word-wrap:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content em em{font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content strong strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq{color:rgba(51,51,51,.8)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content kbd{font-family:Droid Sans Mono,DejaVu Sans Mono,monospace;display:inline-block;color:rgba(0,0,0,.8);font-size:.65em;line-height:1.45;background:#f7f7f7;border:1px solid #ccc;border-radius:3px;box-shadow:0 1px 0 rgba(0,0,0,.2),inset 0 0 0 .1em #fff;margin:0 .15em;padding:.2em .5em;vertical-align:middle;position:relative;top:-.1em;white-space:nowrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:first-child{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .keyseq kbd:last-child{margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuref,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b:not(.caret){font-weight:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq{word-spacing:-.02em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq b.caret{font-size:1.25em;line-height:.8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .menuseq i.caret{font-weight:700;text-align:center;width:.45em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{position:relative;top:-1px;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:before{content:"[";padding:0 3px 0 2px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.button:after{content:"]";padding:0 2px 0 3px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p a>code:hover{color:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{width:100%;margin:0 auto;max-width:62.5em;*zoom:1;position:relative;padding-left:.9375em;padding-right:.9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:before{content:" ";display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes:after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header:after{clear:both}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-top:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content:before{content:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{color:rgba(0,0,0,.85);margin-top:2.25rem;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child+#toc{margin-top:8px;border-top:1px solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:only-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2 #header>h1:nth-last-child(2){border-bottom:1px solid #dddddf;padding-bottom:8px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details{border-bottom:1px solid #dddddf;line-height:1.45;padding-top:.25em;padding-bottom:.25em;padding-left:.25em;color:rgba(0,0,0,.6);display:flex;flex-flow:row wrap}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span:first-child{margin-left:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details span.email a{color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span:before{content:"\A0\2013\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span.author:before{content:"\A0\22C5\A0";color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header .details br+span#revremark:before{content:"\A0|\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber{text-transform:capitalize}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header #revnumber:after{content:"\A0"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content>h1:first-child:not([class]){color:rgba(0,0,0,.85);border-bottom:1px solid #dddddf;padding-bottom:8px;margin-top:0;padding-top:1rem;margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #e7e7e9;padding-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc>ul{margin-left:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0>li>a{font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul.sectlevel0 ul.sectlevel1{margin:.5em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc ul{font-family:Open Sans,DejaVu Sans,sans-serif;list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc li{line-height:1.3334;margin-top:.3334em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{color:#7a2518;font-size:1.2em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:15em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{margin-top:0!important;background:#f8f8f7;position:fixed;width:15em;left:0;top:0;border-right:1px solid #e7e7e9;border-top-width:0!important;border-bottom-width:0!important;z-index:1000;padding:1.25em 1em;height:100%;overflow:auto}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{margin-top:0;margin-bottom:.8rem;font-size:1.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.9em;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{margin-left:0;padding-left:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul.sectlevel0 ul.sectlevel1{padding-left:0;margin-top:.5em;margin-bottom:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:15em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right #toc.toc2{border-right-width:0;border-left:1px solid #e7e7e9;left:auto;right:0}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2{padding-left:20em;padding-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2{width:20em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 #toctitle{font-size:1.375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2>ul{font-size:.95em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc.toc2 ul ul{padding-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.toc2.toc-right{padding-left:0;padding-right:20em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc{border:1px solid #e0e0dc;margin-bottom:1.25em;padding:1.25em;background:#f8f8f7;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #toc>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{max-width:100%;background:rgba(0,0,0,.8);padding:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:hsla(0,0%,100%,.8);line-height:1.44}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:.625em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding-bottom:1.25em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1:last-child{padding-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border-top:1px solid #e7e7e9}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor{position:absolute;z-index:1001;width:1.5ex;margin-left:-1.5ex;display:block;text-decoration:none!important;visibility:hidden;text-align:center;font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:before{content:"\A7";font-size:.85em;display:block;padding-top:.1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.anchor:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6:hover>a.anchor,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.anchor:hover{visibility:visible}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link{color:#ba3925;text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content h1>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h4>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h5>a.link:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h6>a.link:hover{color:#a53221}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content details{margin-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content details>summary:first-of-type{cursor:pointer;display:list-item;outline:none;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .audioblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .dlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .openblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .qlist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .stemblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .videoblock>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock>.title{text-rendering:optimizeLegibility;text-align:left;font-family:"Noto Serif","DejaVu Serif",serif;font-size:1rem;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock.fit-content>caption.title{white-space:nowrap;width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #preamble>.sectionbody>[class=paragraph]:first-of-type p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .paragraph.lead>p{font-size:1.21875em;line-height:1.6;color:rgba(0,0,0,.85)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock #preamble>.sectionbody>[class=paragraph]:first-of-type p{font-size:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table{border-collapse:separate;border:0;background:none;width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon{text-align:center;width:80px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.icon .title{font-weight:700;font-family:Open Sans,DejaVu Sans,sans-serif;text-transform:uppercase}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content{padding-left:1.125em;padding-right:1.25em;border-left:1px solid #dddddf;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock>table td.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{border:1px solid #e6e6e6;margin-bottom:1.25em;padding:1.25em;background:#fff;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{border:1px solid #dbdbd6;margin-bottom:1.25em;padding:1.25em;background:#f3f3f2;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:first-child{margin-top:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title{color:#7a2518;margin-top:0;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content>:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .olist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .qlist>ol>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content .ulist>ul>li:last-child>:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{border-radius:4px;word-wrap:break-word;overflow-x:auto;padding:1em;font-size:.8125em}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:.90625em}}@media screen and (min-width:1280px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{font-size:1em}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre:not(.highlight),.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class=highlight],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content>pre[class^="highlight "],.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock pre{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock.output pre{color:#f7f7f8;background:rgba(0,0,0,.9)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock>.content{position:relative}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:none;content:attr(data-lang);position:absolute;font-size:.75em;top:.425rem;right:.5rem;line-height:1;text-transform:uppercase;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock:hover code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:before{content:attr(data-prompt);padding-right:.5em;color:inherit;opacity:.5}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock.terminal pre .command:not([data-prompt]):before{content:"$"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs{padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.highlightjs>code{padding:1em;border-radius:4px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock pre.prettyprint{border-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .prettyprint{background:#f7f7f8}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint .linenums{line-height:1.45;margin-left:2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li{background:none;list-style-type:inherit;padding-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li code[data-lang]:before{opacity:1}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.prettyprint li:not(:first-child) code[data-lang]:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable{border-collapse:separate;border:0;margin-bottom:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td[class]{color:inherit;vertical-align:top;padding:0;line-height:inherit;white-space:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.code{padding-left:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.linenotable td.linenos{border-right:1px solid;opacity:.35;padding-right:.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno{border-right:1px solid;opacity:.35;display:inline-block;margin-right:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre.pygments .lineno:before{content:"";margin-right:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock{margin:0 1em 1.25em 1.5em;display:table}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock:not(.excerpt)>.title{margin-left:-1.5em;margin-bottom:.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock p{color:rgba(0,0,0,.85);font-size:1.15rem;line-height:1.75;word-spacing:.1em;letter-spacing:0;font-style:italic;text-align:justify}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote{margin:0;padding:0;border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote:before{content:"\201C";float:left;font-size:2.75em;font-weight:700;line-height:.6em;margin-left:-.6em;color:#7a2518;text-shadow:0 1px 2px rgba(0,0,0,.1)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock blockquote>.paragraph:last-child p{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution{margin-top:.75em;margin-right:.5ex;text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock{margin:0 1em 1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre{font-family:Open Sans,DejaVu Sans,sans;font-size:1.15rem;color:rgba(0,0,0,.85);font-weight:300;text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock pre strong{font-weight:400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{margin-top:1.25rem;margin-left:.5ex}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution{font-size:.9375em;line-height:1.45;font-style:italic}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution br,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution br{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .attribution cite,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .verseblock .attribution cite{display:block;letter-spacing:-.025em;color:rgba(0,0,0,.6)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote:before,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote:before{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{line-height:1.6;word-spacing:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract{margin:0 1em 1.25em;display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.abstract>.title{margin:0 0 .375em;font-size:1.15em;text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt>blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{padding:0 0 .25em 1em;border-left:.25em solid #dddddf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock p{color:inherit;font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock.excerpt .attribution,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .quoteblock .quoteblock .attribution{color:inherit;text-align:left;margin-right:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock{max-width:100%;border-collapse:separate}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child{margin-bottom:-1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock>.content>:last-child.sidebarblock{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{border:0 solid #dedede}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead>tr>.tableblock{border-width:0 1px 1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tfoot>tr>.tableblock{border-width:1px 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock{border-width:0 1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead>tr>.tableblock{border-width:0 0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tfoot>tr>.tableblock{border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>*>tr>.tableblock:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-cols>*>tr>.tableblock:last-child{border-right-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-all>thead:last-child>tr>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>tbody>tr:last-child>.tableblock,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.grid-rows>thead:last-child>tr>.tableblock{border-bottom-width:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-all{border-width:1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-sides{border-width:0 1px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-ends,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.frame-topbot{border-width:1px 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-all tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-even tr:nth-of-type(2n),.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-hover tr:hover,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table.stripes-odd tr:nth-of-type(odd){background:#f8f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-left{text-align:left}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-right,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-right{text-align:right}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.halign-center,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.halign-center{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-top,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-top{vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-bottom,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-bottom{vertical-align:bottom}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.valign-middle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.valign-middle{vertical-align:middle}.eclipse-jkube__documentation .eclipse-jkube__documentation-content table tfoot th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content table thead th{font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th{display:table-cell;line-height:1.6;background:#f7f8f7}.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tbody tr th p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tfoot tr th p{color:rgba(0,0,0,.8);font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock>code:only-child{background:none;padding:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol{margin-left:1.75em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul li ol{margin-left:1.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd{margin-left:1.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dl dd:last-child>:last-child{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .olist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .ulist .ulist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol dd,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul>li p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul dd{margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.none,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{list-style-type:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.no-bullet,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unnumbered,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.no-bullet{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.unstyled,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.unstyled{margin-left:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-check-square-o:first-child,.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>.fa-square-o:first-child{width:1.25em;font-size:.8em;position:relative;bottom:.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.checklist li>p:first-child>input[type=checkbox]:first-child{margin-right:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline{display:flex;flex-flow:row wrap;list-style:none;margin:0 0 .625em -1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ul.inline>li{margin-left:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .unstyled dl dt{font-weight:400;font-style:normal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.arabic{list-style-type:decimal}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.decimal{list-style-type:decimal-leading-zero}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.loweralpha{list-style-type:lower-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperalpha{list-style-type:upper-alpha}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowerroman{list-style-type:lower-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.upperroman{list-style-type:upper-roman}.eclipse-jkube__documentation .eclipse-jkube__documentation-content ol.lowergreek{list-style-type:lower-greek}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table{border:0;background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist>table>tbody>tr,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hdlist>table>tbody>tr{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist2{vertical-align:top;padding:0 .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.hdlist1{font-weight:700;padding-bottom:1.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock+.colist,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .literalblock+.colist{margin-top:-.5em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child{padding:.4em .75em 0;line-height:1;vertical-align:top}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):first-child img{max-width:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .colist td:not([class]):last-child{padding:.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .thumb{line-height:0;display:inline-block;border:4px solid #fff;box-shadow:0 0 0 1px #ddd}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.left{margin:.25em .625em 1.25em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.right{margin:.25em 0 1.25em .625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock>.title{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb{border-width:6px}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.th>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .imageblock.thumb>.title{padding:0 .125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-top:.25em;margin-bottom:.25em;display:inline-block;line-height:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.left{margin-right:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .image.right{margin-left:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image{text-decoration:none;display:inline-block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.image object{pointer-events:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref{font-size:.875em;position:static;vertical-align:super}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a{text-decoration:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnote a:active,.eclipse-jkube__documentation .eclipse-jkube__documentation-content sup.footnoteref a:active{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes{padding-top:.75em;padding-bottom:.75em;margin-bottom:.625em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes hr{width:20%;min-width:6.25em;margin:-.25em 0 .75em;border-width:1px 0 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote{padding:0 .375em 0 .225em;line-height:1.3334;font-size:.875em;margin-left:1.2em;margin-bottom:.2em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote a:first-of-type{font-weight:700;text-decoration:none;margin-left:-1.05em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes .footnote:last-of-type{margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content #footnotes{margin-top:-.625em;margin-bottom:0;padding:.75em 0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table{border:0;background:#fff;width:100%;margin-bottom:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gist .file-data>table td.line-data{width:99%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.unbreakable{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .big{font-size:larger}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .small{font-size:smaller}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .underline{text-decoration:underline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .overline{text-decoration:overline}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .line-through{text-decoration:line-through}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua{color:#00bfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .aqua-background{background:#00fafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black{color:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .black-background{background:#000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue{color:#0000bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .blue-background{background:#0000fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia{color:#bf00bf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .fuchsia-background{background:#fa00fa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray{color:#606060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .gray-background{background:#7d7d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green{color:#006000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .green-background{background:#007d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime{color:#00bf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .lime-background{background:#00fa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon{color:#600000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .maroon-background{background:#7d0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy{color:#000060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .navy-background{background:#00007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive{color:#606000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .olive-background{background:#7d7d00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple{color:#600060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .purple-background{background:#7d007d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red{color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .red-background{background:#fa0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver{color:#909090}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .silver-background{background:#bcbcbc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal{color:#006060}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .teal-background{background:#007d7d}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white{color:#bfbfbf}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .white-background{background:#fafafa}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow{color:#bfbf00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .yellow-background{background:#fafa00}.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.icon>.fa{cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a span.icon>.fa{cursor:inherit}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon [class^="fa icon-"]{font-size:2.5em;text-shadow:1px 1px 2px rgba(0,0,0,.5);cursor:default}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-note:before{content:"\F05A";color:#19407c}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-tip:before{content:"\F0EB";text-shadow:1px 1px 2px rgba(155,155,0,.8);color:#111}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-warning:before{content:"\F071";color:#bf6900}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-caution:before{content:"\F06D";color:#bf3400}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .admonitionblock td.icon .icon-important:before{content:"\F06A";color:#bf0000}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]{display:inline-block;color:#fff!important;background:rgba(0,0,0,.8);border-radius:100px;text-align:center;font-size:.75em;width:1.67em;height:1.67em;line-height:1.67em;font-family:Open Sans,DejaVu Sans,sans-serif;font-style:normal;font-weight:700}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value] *{color:#fff!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]+b{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum[data-value]:after{content:attr(data-value)}.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre .conum[data-value]{position:relative;top:-.125em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content b.conum *{color:inherit!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .conum:not([data-value]):empty{display:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content th.tableblock{text-rendering:optimizeLegibility}.eclipse-jkube__documentation .eclipse-jkube__documentation-content h1,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{letter-spacing:-.01em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content div.footnote strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p strong,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content strong{letter-spacing:-.005em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content span.alt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1.0625rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content p{margin-bottom:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock td.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p.tableblock{font-size:1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content{background:#fffef7;border-color:#e0e0dc;box-shadow:0 1px 4px #e0e0dc}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:none!important}@page{.eclipse-jkube__documentation .eclipse-jkube__documentation-content{margin:1.25cm .75cm}}@media print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content *{box-shadow:none!important;text-shadow:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content html{font-size:80%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a{color:inherit!important;text-decoration:underline!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a.bare,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="#"],.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="mailto:"]{text-decoration:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="http:"]:not(.bare):after,.eclipse-jkube__documentation .eclipse-jkube__documentation-content a[href^="https:"]:not(.bare):after{content:"(" attr(href) ")";display:inline-block;font-size:.875em;padding-left:.25em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content abbr[title]:after{content:" (" attr(title) ")"}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content img,.eclipse-jkube__documentation .eclipse-jkube__documentation-content object,.eclipse-jkube__documentation .eclipse-jkube__documentation-content pre,.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg,.eclipse-jkube__documentation .eclipse-jkube__documentation-content tr{page-break-inside:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content thead{display:table-header-group}.eclipse-jkube__documentation .eclipse-jkube__documentation-content svg{max-width:100%}.eclipse-jkube__documentation .eclipse-jkube__documentation-content blockquote,.eclipse-jkube__documentation .eclipse-jkube__documentation-content dt,.eclipse-jkube__documentation .eclipse-jkube__documentation-content p,.eclipse-jkube__documentation .eclipse-jkube__documentation-content td.content{font-size:1em;orphans:3;widows:3}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toctitle,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock>.content>.title,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content h3{page-break-after:avoid}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .exampleblock>.content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sidebarblock{background:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #toc{border-bottom:1px solid #dddddf!important;padding-bottom:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header{text-align:center}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header>h1:first-child{border:0!important;margin:2.5em 0 1em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details{border:0!important;display:block;padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details span:first-child{margin-left:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #header .details br+span:before{content:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc{border:0!important;text-align:left!important;padding:0!important;margin:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #preamble,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book #toc,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book .sect1>h2,.eclipse-jkube__documentation .eclipse-jkube__documentation-content body.book h1.sect0{page-break-before:always}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .listingblock code[data-lang]:before{display:block}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{padding:0 .9375em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-on-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .print-only{display:block!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .hide-for-print{display:none!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .show-for-print{display:inherit!important}}@media amzn-kf8,print{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header>h1:first-child{margin-top:1.25rem}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1{padding:0!important}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .sect1+.sect1{border:0}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer{background:none}.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer-text{color:rgba(0,0,0,.6);font-size:.9em}}@media amzn-kf8{.eclipse-jkube__documentation .eclipse-jkube__documentation-content #content,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footer,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #footnotes,.eclipse-jkube__documentation .eclipse-jkube__documentation-content #header{padding:0}}@media screen and (min-width:768px){.eclipse-jkube__documentation .eclipse-jkube__documentation-content{padding-left:21em}.eclipse-jkube__documentation .eclipse-jkube__documentation-content .toc{position:fixed;width:20em;left:0;top:105px;bottom:0;z-index:1000;padding:0 16px;border-right:1px solid #efefed;border-top-width:0!important;border-bottom-width:0!important;overflow:auto}}.eclipse-jkube__documentation .eclipse-jkube__documentation-content i.fa{font-style:normal}.eclipse-jkube__quickstarts{padding:0}.eclipse-jkube__quickstarts-item{list-style:none}.eclipse-jkube__quickstarts-item:not(:last-child){margin-bottom:16px}
\ No newline at end of file
diff --git a/webpack-runtime-5e7a06a902090b1f37ba.js.map b/webpack-runtime-5e7a06a902090b1f37ba.js.map
deleted file mode 100644
index bb600a5..0000000
--- a/webpack-runtime-5e7a06a902090b1f37ba.js.map
+++ /dev/null
@@ -1 +0,0 @@
-{"version":3,"sources":["webpack:///webpack/bootstrap"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","installedCssChunks","2","exports","module","l","e","promises","Promise","resolve","reject","href","fullhref","p","existingLinkTags","document","getElementsByTagName","dataHref","tag","getAttribute","rel","existingStyleTags","linkTag","createElement","type","onload","onerror","event","request","target","src","err","Error","code","parentNode","removeChild","appendChild","then","installedChunkData","promise","onScriptComplete","script","charset","timeout","nc","setAttribute","jsonpScriptSrc","error","clearTimeout","chunk","errorType","realSrc","message","name","undefined","setTimeout","head","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","console","jsonpArray","window","oldJsonpFunction","slice"],"mappings":"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","file":"webpack-runtime-5e7a06a902090b1f37ba.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t2: 0\n \t}\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t2: 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"\" + ({\"0\":\"commons\",\"1\":\"styles\",\"4\":\"component---src-pages-quickstarts-index-jsx\",\"5\":\"component---src-templates-doc-jsx\",\"6\":\"component---src-templates-main-jsx\"}[chunkId]||chunkId) + \"-\" + {\"0\":\"8b827618f0536ebfeda2\",\"1\":\"c2fe8482057191dca484\",\"4\":\"a1e42093b41968828647\",\"5\":\"5366dbd1b50f3447a412\",\"6\":\"456568a5c9ae2c9095ee\"}[chunkId] + \".js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// mini-css-extract-plugin CSS loading\n \t\tvar cssChunks = {\"1\":1};\n \t\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n \t\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n \t\t\tpromises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {\n \t\t\t\tvar href = \"\" + ({\"0\":\"commons\",\"1\":\"styles\",\"4\":\"component---src-pages-quickstarts-index-jsx\",\"5\":\"component---src-templates-doc-jsx\",\"6\":\"component---src-templates-main-jsx\"}[chunkId]||chunkId) + \".\" + {\"0\":\"31d6cfe0d16ae931b73c\",\"1\":\"5c9b852c43e28f117cb7\",\"4\":\"31d6cfe0d16ae931b73c\",\"5\":\"31d6cfe0d16ae931b73c\",\"6\":\"31d6cfe0d16ae931b73c\"}[chunkId] + \".css\";\n \t\t\t\tvar fullhref = __webpack_require__.p + href;\n \t\t\t\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n \t\t\t\tfor(var i = 0; i < existingLinkTags.length; i++) {\n \t\t\t\t\tvar tag = existingLinkTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n \t\t\t\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return resolve();\n \t\t\t\t}\n \t\t\t\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n \t\t\t\tfor(var i = 0; i < existingStyleTags.length; i++) {\n \t\t\t\t\tvar tag = existingStyleTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\");\n \t\t\t\t\tif(dataHref === href || dataHref === fullhref) return resolve();\n \t\t\t\t}\n \t\t\t\tvar linkTag = document.createElement(\"link\");\n \t\t\t\tlinkTag.rel = \"stylesheet\";\n \t\t\t\tlinkTag.type = \"text/css\";\n \t\t\t\tlinkTag.onload = resolve;\n \t\t\t\tlinkTag.onerror = function(event) {\n \t\t\t\t\tvar request = event && event.target && event.target.src || fullhref;\n \t\t\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + request + \")\");\n \t\t\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n \t\t\t\t\terr.request = request;\n \t\t\t\t\tdelete installedCssChunks[chunkId]\n \t\t\t\t\tlinkTag.parentNode.removeChild(linkTag)\n \t\t\t\t\treject(err);\n \t\t\t\t};\n \t\t\t\tlinkTag.href = fullhref;\n\n \t\t\t\tvar head = document.getElementsByTagName(\"head\")[0];\n \t\t\t\thead.appendChild(linkTag);\n \t\t\t}).then(function() {\n \t\t\t\tinstalledCssChunks[chunkId] = 0;\n \t\t\t}));\n \t\t}\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/jkube/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// run deferred modules from other chunks\n \tcheckDeferredModules();\n"],"sourceRoot":""}
\ No newline at end of file
diff --git a/webpack-runtime-5e7a06a902090b1f37ba.js b/webpack-runtime-b52c77882f7d7b54b2b3.js
similarity index 92%
rename from webpack-runtime-5e7a06a902090b1f37ba.js
rename to webpack-runtime-b52c77882f7d7b54b2b3.js
index 16eebc6..574f9b4 100644
--- a/webpack-runtime-5e7a06a902090b1f37ba.js
+++ b/webpack-runtime-b52c77882f7d7b54b2b3.js
@@ -1,2 +1,2 @@
-!function(e){function t(t){for(var n,o,s=t[0],u=t[1],i=t[2],l=0,d=[];l<s.length;l++)o=s[l],Object.prototype.hasOwnProperty.call(a,o)&&a[o]&&d.push(a[o][0]),a[o]=0;for(n in u)Object.prototype.hasOwnProperty.call(u,n)&&(e[n]=u[n]);for(f&&f(t);d.length;)d.shift()();return c.push.apply(c,i||[]),r()}function r(){for(var e,t=0;t<c.length;t++){for(var r=c[t],n=!0,o=1;o<r.length;o++){var u=r[o];0!==a[u]&&(n=!1)}n&&(c.splice(t--,1),e=s(s.s=r[0]))}return e}var n={},o={2:0},a={2:0},c=[];function s(t){if(n[t])return n[t].exports;var r=n[t]={i:t,l:!1,exports:{}};return e[t].call(r.exports,r,r.exports,s),r.l=!0,r.exports}s.e=function(e){var t=[];o[e]?t.push(o[e]):0!==o[e]&&{1:1}[e]&&t.push(o[e]=new Promise((function(t,r){for(var n=({0:"commons",1:"styles",4:"component---src-pages-quickstarts-index-jsx",5:"component---src-templates-doc-jsx",6:"component---src-templates-main-jsx"}[e]||e)+"."+{0:"31d6cfe0d16ae931b73c",1:"5c9b852c43e28f117cb7",4:"31d6cfe0d16ae931b73c",5:"31d6cfe0d16ae931b73c",6:"31d6cfe0d16ae931b73c"}[e]+".css",a=s.p+n,c=document.getElementsByTagName("link"),u=0;u<c.length;u++){var i=(f=c[u]).getAttribute("data-href")||f.getAttribute("href");if("stylesheet"===f.rel&&(i===n||i===a))return t()}var l=document.getElementsByTagName("style");for(u=0;u<l.length;u++){var f;if((i=(f=l[u]).getAttribute("data-href"))===n||i===a)return t()}var d=document.createElement("link");d.rel="stylesheet",d.type="text/css",d.onload=t,d.onerror=function(t){var n=t&&t.target&&t.target.src||a,c=new Error("Loading CSS chunk "+e+" failed.\n("+n+")");c.code="CSS_CHUNK_LOAD_FAILED",c.request=n,delete o[e],d.parentNode.removeChild(d),r(c)},d.href=a,document.getElementsByTagName("head")[0].appendChild(d)})).then((function(){o[e]=0})));var r=a[e];if(0!==r)if(r)t.push(r[2]);else{var n=new Promise((function(t,n){r=a[e]=[t,n]}));t.push(r[2]=n);var c,u=document.createElement("script");u.charset="utf-8",u.timeout=120,s.nc&&u.setAttribute("nonce",s.nc),u.src=function(e){return s.p+""+({0:"commons",1:"styles",4:"component---src-pages-quickstarts-index-jsx",5:"component---src-templates-doc-jsx",6:"component---src-templates-main-jsx"}[e]||e)+"-"+{0:"8b827618f0536ebfeda2",1:"c2fe8482057191dca484",4:"a1e42093b41968828647",5:"5366dbd1b50f3447a412",6:"456568a5c9ae2c9095ee"}[e]+".js"}(e);var i=new Error;c=function(t){u.onerror=u.onload=null,clearTimeout(l);var r=a[e];if(0!==r){if(r){var n=t&&("load"===t.type?"missing":t.type),o=t&&t.target&&t.target.src;i.message="Loading chunk "+e+" failed.\n("+n+": "+o+")",i.name="ChunkLoadError",i.type=n,i.request=o,r[1](i)}a[e]=void 0}};var l=setTimeout((function(){c({type:"timeout",target:u})}),12e4);u.onerror=u.onload=c,document.head.appendChild(u)}return Promise.all(t)},s.m=e,s.c=n,s.d=function(e,t,r){s.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},s.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},s.t=function(e,t){if(1&t&&(e=s(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(s.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)s.d(r,n,function(t){return e[t]}.bind(null,n));return r},s.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return s.d(t,"a",t),t},s.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},s.p="/jkube/",s.oe=function(e){throw console.error(e),e};var u=window.webpackJsonp=window.webpackJsonp||[],i=u.push.bind(u);u.push=t,u=u.slice();for(var l=0;l<u.length;l++)t(u[l]);var f=i;r()}([]);
-//# sourceMappingURL=webpack-runtime-5e7a06a902090b1f37ba.js.map
\ No newline at end of file
+!function(e){function t(t){for(var n,o,s=t[0],u=t[1],i=t[2],l=0,d=[];l<s.length;l++)o=s[l],Object.prototype.hasOwnProperty.call(a,o)&&a[o]&&d.push(a[o][0]),a[o]=0;for(n in u)Object.prototype.hasOwnProperty.call(u,n)&&(e[n]=u[n]);for(f&&f(t);d.length;)d.shift()();return c.push.apply(c,i||[]),r()}function r(){for(var e,t=0;t<c.length;t++){for(var r=c[t],n=!0,o=1;o<r.length;o++){var u=r[o];0!==a[u]&&(n=!1)}n&&(c.splice(t--,1),e=s(s.s=r[0]))}return e}var n={},o={2:0},a={2:0},c=[];function s(t){if(n[t])return n[t].exports;var r=n[t]={i:t,l:!1,exports:{}};return e[t].call(r.exports,r,r.exports,s),r.l=!0,r.exports}s.e=function(e){var t=[];o[e]?t.push(o[e]):0!==o[e]&&{1:1}[e]&&t.push(o[e]=new Promise((function(t,r){for(var n=({0:"commons",1:"styles",4:"component---src-pages-quickstarts-index-jsx",5:"component---src-templates-doc-jsx",6:"component---src-templates-main-jsx"}[e]||e)+"."+{0:"31d6cfe0d16ae931b73c",1:"5c9b852c43e28f117cb7",4:"31d6cfe0d16ae931b73c",5:"31d6cfe0d16ae931b73c",6:"31d6cfe0d16ae931b73c"}[e]+".css",a=s.p+n,c=document.getElementsByTagName("link"),u=0;u<c.length;u++){var i=(f=c[u]).getAttribute("data-href")||f.getAttribute("href");if("stylesheet"===f.rel&&(i===n||i===a))return t()}var l=document.getElementsByTagName("style");for(u=0;u<l.length;u++){var f;if((i=(f=l[u]).getAttribute("data-href"))===n||i===a)return t()}var d=document.createElement("link");d.rel="stylesheet",d.type="text/css",d.onload=t,d.onerror=function(t){var n=t&&t.target&&t.target.src||a,c=new Error("Loading CSS chunk "+e+" failed.\n("+n+")");c.code="CSS_CHUNK_LOAD_FAILED",c.request=n,delete o[e],d.parentNode.removeChild(d),r(c)},d.href=a,document.getElementsByTagName("head")[0].appendChild(d)})).then((function(){o[e]=0})));var r=a[e];if(0!==r)if(r)t.push(r[2]);else{var n=new Promise((function(t,n){r=a[e]=[t,n]}));t.push(r[2]=n);var c,u=document.createElement("script");u.charset="utf-8",u.timeout=120,s.nc&&u.setAttribute("nonce",s.nc),u.src=function(e){return s.p+""+({0:"commons",1:"styles",4:"component---src-pages-quickstarts-index-jsx",5:"component---src-templates-doc-jsx",6:"component---src-templates-main-jsx"}[e]||e)+"-"+{0:"ee34cd715ab4f7da30e0",1:"e9d24b1846c7d6eb9685",4:"8b53e5455e208a3e59b9",5:"21a94bb36ef3df298f42",6:"8853cf342e1cf1bead5c"}[e]+".js"}(e);var i=new Error;c=function(t){u.onerror=u.onload=null,clearTimeout(l);var r=a[e];if(0!==r){if(r){var n=t&&("load"===t.type?"missing":t.type),o=t&&t.target&&t.target.src;i.message="Loading chunk "+e+" failed.\n("+n+": "+o+")",i.name="ChunkLoadError",i.type=n,i.request=o,r[1](i)}a[e]=void 0}};var l=setTimeout((function(){c({type:"timeout",target:u})}),12e4);u.onerror=u.onload=c,document.head.appendChild(u)}return Promise.all(t)},s.m=e,s.c=n,s.d=function(e,t,r){s.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},s.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},s.t=function(e,t){if(1&t&&(e=s(e)),8&t)return e;if(4&t&&"object"==typeof e&&e&&e.__esModule)return e;var r=Object.create(null);if(s.r(r),Object.defineProperty(r,"default",{enumerable:!0,value:e}),2&t&&"string"!=typeof e)for(var n in e)s.d(r,n,function(t){return e[t]}.bind(null,n));return r},s.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return s.d(t,"a",t),t},s.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},s.p="/jkube/",s.oe=function(e){throw console.error(e),e};var u=window.webpackJsonp=window.webpackJsonp||[],i=u.push.bind(u);u.push=t,u=u.slice();for(var l=0;l<u.length;l++)t(u[l]);var f=i;r()}([]);
+//# sourceMappingURL=webpack-runtime-b52c77882f7d7b54b2b3.js.map
\ No newline at end of file
diff --git a/webpack-runtime-b52c77882f7d7b54b2b3.js.map b/webpack-runtime-b52c77882f7d7b54b2b3.js.map
new file mode 100644
index 0000000..ac204ef
--- /dev/null
+++ b/webpack-runtime-b52c77882f7d7b54b2b3.js.map
@@ -0,0 +1 @@
+{"version":3,"sources":["webpack:///webpack/bootstrap"],"names":["webpackJsonpCallback","data","moduleId","chunkId","chunkIds","moreModules","executeModules","i","resolves","length","Object","prototype","hasOwnProperty","call","installedChunks","push","modules","parentJsonpFunction","shift","deferredModules","apply","checkDeferredModules","result","deferredModule","fulfilled","j","depId","splice","__webpack_require__","s","installedModules","installedCssChunks","2","exports","module","l","e","promises","Promise","resolve","reject","href","fullhref","p","existingLinkTags","document","getElementsByTagName","dataHref","tag","getAttribute","rel","existingStyleTags","linkTag","createElement","type","onload","onerror","event","request","target","src","err","Error","code","parentNode","removeChild","appendChild","then","installedChunkData","promise","onScriptComplete","script","charset","timeout","nc","setAttribute","jsonpScriptSrc","error","clearTimeout","chunk","errorType","realSrc","message","name","undefined","setTimeout","head","all","m","c","d","getter","o","defineProperty","enumerable","get","r","Symbol","toStringTag","value","t","mode","__esModule","ns","create","key","bind","n","object","property","oe","console","jsonpArray","window","oldJsonpFunction","slice"],"mappings":"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","file":"webpack-runtime-b52c77882f7d7b54b2b3.js","sourcesContent":[" \t// install a JSONP callback for chunk loading\n \tfunction webpackJsonpCallback(data) {\n \t\tvar chunkIds = data[0];\n \t\tvar moreModules = data[1];\n \t\tvar executeModules = data[2];\n\n \t\t// add \"moreModules\" to the modules object,\n \t\t// then flag all \"chunkIds\" as loaded and fire callback\n \t\tvar moduleId, chunkId, i = 0, resolves = [];\n \t\tfor(;i < chunkIds.length; i++) {\n \t\t\tchunkId = chunkIds[i];\n \t\t\tif(Object.prototype.hasOwnProperty.call(installedChunks, chunkId) && installedChunks[chunkId]) {\n \t\t\t\tresolves.push(installedChunks[chunkId][0]);\n \t\t\t}\n \t\t\tinstalledChunks[chunkId] = 0;\n \t\t}\n \t\tfor(moduleId in moreModules) {\n \t\t\tif(Object.prototype.hasOwnProperty.call(moreModules, moduleId)) {\n \t\t\t\tmodules[moduleId] = moreModules[moduleId];\n \t\t\t}\n \t\t}\n \t\tif(parentJsonpFunction) parentJsonpFunction(data);\n\n \t\twhile(resolves.length) {\n \t\t\tresolves.shift()();\n \t\t}\n\n \t\t// add entry modules from loaded chunk to deferred list\n \t\tdeferredModules.push.apply(deferredModules, executeModules || []);\n\n \t\t// run deferred modules when all chunks ready\n \t\treturn checkDeferredModules();\n \t};\n \tfunction checkDeferredModules() {\n \t\tvar result;\n \t\tfor(var i = 0; i < deferredModules.length; i++) {\n \t\t\tvar deferredModule = deferredModules[i];\n \t\t\tvar fulfilled = true;\n \t\t\tfor(var j = 1; j < deferredModule.length; j++) {\n \t\t\t\tvar depId = deferredModule[j];\n \t\t\t\tif(installedChunks[depId] !== 0) fulfilled = false;\n \t\t\t}\n \t\t\tif(fulfilled) {\n \t\t\t\tdeferredModules.splice(i--, 1);\n \t\t\t\tresult = __webpack_require__(__webpack_require__.s = deferredModule[0]);\n \t\t\t}\n \t\t}\n\n \t\treturn result;\n \t}\n\n \t// The module cache\n \tvar installedModules = {};\n\n \t// object to store loaded CSS chunks\n \tvar installedCssChunks = {\n \t\t2: 0\n \t};\n\n \t// object to store loaded and loading chunks\n \t// undefined = chunk not loaded, null = chunk preloaded/prefetched\n \t// Promise = chunk loading, 0 = chunk loaded\n \tvar installedChunks = {\n \t\t2: 0\n \t};\n\n \tvar deferredModules = [];\n\n \t// script path function\n \tfunction jsonpScriptSrc(chunkId) {\n \t\treturn __webpack_require__.p + \"\" + ({\"0\":\"commons\",\"1\":\"styles\",\"4\":\"component---src-pages-quickstarts-index-jsx\",\"5\":\"component---src-templates-doc-jsx\",\"6\":\"component---src-templates-main-jsx\"}[chunkId]||chunkId) + \"-\" + {\"0\":\"ee34cd715ab4f7da30e0\",\"1\":\"e9d24b1846c7d6eb9685\",\"4\":\"8b53e5455e208a3e59b9\",\"5\":\"21a94bb36ef3df298f42\",\"6\":\"8853cf342e1cf1bead5c\"}[chunkId] + \".js\"\n \t}\n\n \t// The require function\n \tfunction __webpack_require__(moduleId) {\n\n \t\t// Check if module is in cache\n \t\tif(installedModules[moduleId]) {\n \t\t\treturn installedModules[moduleId].exports;\n \t\t}\n \t\t// Create a new module (and put it into the cache)\n \t\tvar module = installedModules[moduleId] = {\n \t\t\ti: moduleId,\n \t\t\tl: false,\n \t\t\texports: {}\n \t\t};\n\n \t\t// Execute the module function\n \t\tmodules[moduleId].call(module.exports, module, module.exports, __webpack_require__);\n\n \t\t// Flag the module as loaded\n \t\tmodule.l = true;\n\n \t\t// Return the exports of the module\n \t\treturn module.exports;\n \t}\n\n \t// This file contains only the entry chunk.\n \t// The chunk loading function for additional chunks\n \t__webpack_require__.e = function requireEnsure(chunkId) {\n \t\tvar promises = [];\n\n\n \t\t// mini-css-extract-plugin CSS loading\n \t\tvar cssChunks = {\"1\":1};\n \t\tif(installedCssChunks[chunkId]) promises.push(installedCssChunks[chunkId]);\n \t\telse if(installedCssChunks[chunkId] !== 0 && cssChunks[chunkId]) {\n \t\t\tpromises.push(installedCssChunks[chunkId] = new Promise(function(resolve, reject) {\n \t\t\t\tvar href = \"\" + ({\"0\":\"commons\",\"1\":\"styles\",\"4\":\"component---src-pages-quickstarts-index-jsx\",\"5\":\"component---src-templates-doc-jsx\",\"6\":\"component---src-templates-main-jsx\"}[chunkId]||chunkId) + \".\" + {\"0\":\"31d6cfe0d16ae931b73c\",\"1\":\"5c9b852c43e28f117cb7\",\"4\":\"31d6cfe0d16ae931b73c\",\"5\":\"31d6cfe0d16ae931b73c\",\"6\":\"31d6cfe0d16ae931b73c\"}[chunkId] + \".css\";\n \t\t\t\tvar fullhref = __webpack_require__.p + href;\n \t\t\t\tvar existingLinkTags = document.getElementsByTagName(\"link\");\n \t\t\t\tfor(var i = 0; i < existingLinkTags.length; i++) {\n \t\t\t\t\tvar tag = existingLinkTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\") || tag.getAttribute(\"href\");\n \t\t\t\t\tif(tag.rel === \"stylesheet\" && (dataHref === href || dataHref === fullhref)) return resolve();\n \t\t\t\t}\n \t\t\t\tvar existingStyleTags = document.getElementsByTagName(\"style\");\n \t\t\t\tfor(var i = 0; i < existingStyleTags.length; i++) {\n \t\t\t\t\tvar tag = existingStyleTags[i];\n \t\t\t\t\tvar dataHref = tag.getAttribute(\"data-href\");\n \t\t\t\t\tif(dataHref === href || dataHref === fullhref) return resolve();\n \t\t\t\t}\n \t\t\t\tvar linkTag = document.createElement(\"link\");\n \t\t\t\tlinkTag.rel = \"stylesheet\";\n \t\t\t\tlinkTag.type = \"text/css\";\n \t\t\t\tlinkTag.onload = resolve;\n \t\t\t\tlinkTag.onerror = function(event) {\n \t\t\t\t\tvar request = event && event.target && event.target.src || fullhref;\n \t\t\t\t\tvar err = new Error(\"Loading CSS chunk \" + chunkId + \" failed.\\n(\" + request + \")\");\n \t\t\t\t\terr.code = \"CSS_CHUNK_LOAD_FAILED\";\n \t\t\t\t\terr.request = request;\n \t\t\t\t\tdelete installedCssChunks[chunkId]\n \t\t\t\t\tlinkTag.parentNode.removeChild(linkTag)\n \t\t\t\t\treject(err);\n \t\t\t\t};\n \t\t\t\tlinkTag.href = fullhref;\n\n \t\t\t\tvar head = document.getElementsByTagName(\"head\")[0];\n \t\t\t\thead.appendChild(linkTag);\n \t\t\t}).then(function() {\n \t\t\t\tinstalledCssChunks[chunkId] = 0;\n \t\t\t}));\n \t\t}\n\n \t\t// JSONP chunk loading for javascript\n\n \t\tvar installedChunkData = installedChunks[chunkId];\n \t\tif(installedChunkData !== 0) { // 0 means \"already installed\".\n\n \t\t\t// a Promise means \"currently loading\".\n \t\t\tif(installedChunkData) {\n \t\t\t\tpromises.push(installedChunkData[2]);\n \t\t\t} else {\n \t\t\t\t// setup Promise in chunk cache\n \t\t\t\tvar promise = new Promise(function(resolve, reject) {\n \t\t\t\t\tinstalledChunkData = installedChunks[chunkId] = [resolve, reject];\n \t\t\t\t});\n \t\t\t\tpromises.push(installedChunkData[2] = promise);\n\n \t\t\t\t// start chunk loading\n \t\t\t\tvar script = document.createElement('script');\n \t\t\t\tvar onScriptComplete;\n\n \t\t\t\tscript.charset = 'utf-8';\n \t\t\t\tscript.timeout = 120;\n \t\t\t\tif (__webpack_require__.nc) {\n \t\t\t\t\tscript.setAttribute(\"nonce\", __webpack_require__.nc);\n \t\t\t\t}\n \t\t\t\tscript.src = jsonpScriptSrc(chunkId);\n\n \t\t\t\t// create error before stack unwound to get useful stacktrace later\n \t\t\t\tvar error = new Error();\n \t\t\t\tonScriptComplete = function (event) {\n \t\t\t\t\t// avoid mem leaks in IE.\n \t\t\t\t\tscript.onerror = script.onload = null;\n \t\t\t\t\tclearTimeout(timeout);\n \t\t\t\t\tvar chunk = installedChunks[chunkId];\n \t\t\t\t\tif(chunk !== 0) {\n \t\t\t\t\t\tif(chunk) {\n \t\t\t\t\t\t\tvar errorType = event && (event.type === 'load' ? 'missing' : event.type);\n \t\t\t\t\t\t\tvar realSrc = event && event.target && event.target.src;\n \t\t\t\t\t\t\terror.message = 'Loading chunk ' + chunkId + ' failed.\\n(' + errorType + ': ' + realSrc + ')';\n \t\t\t\t\t\t\terror.name = 'ChunkLoadError';\n \t\t\t\t\t\t\terror.type = errorType;\n \t\t\t\t\t\t\terror.request = realSrc;\n \t\t\t\t\t\t\tchunk[1](error);\n \t\t\t\t\t\t}\n \t\t\t\t\t\tinstalledChunks[chunkId] = undefined;\n \t\t\t\t\t}\n \t\t\t\t};\n \t\t\t\tvar timeout = setTimeout(function(){\n \t\t\t\t\tonScriptComplete({ type: 'timeout', target: script });\n \t\t\t\t}, 120000);\n \t\t\t\tscript.onerror = script.onload = onScriptComplete;\n \t\t\t\tdocument.head.appendChild(script);\n \t\t\t}\n \t\t}\n \t\treturn Promise.all(promises);\n \t};\n\n \t// expose the modules object (__webpack_modules__)\n \t__webpack_require__.m = modules;\n\n \t// expose the module cache\n \t__webpack_require__.c = installedModules;\n\n \t// define getter function for harmony exports\n \t__webpack_require__.d = function(exports, name, getter) {\n \t\tif(!__webpack_require__.o(exports, name)) {\n \t\t\tObject.defineProperty(exports, name, { enumerable: true, get: getter });\n \t\t}\n \t};\n\n \t// define __esModule on exports\n \t__webpack_require__.r = function(exports) {\n \t\tif(typeof Symbol !== 'undefined' && Symbol.toStringTag) {\n \t\t\tObject.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });\n \t\t}\n \t\tObject.defineProperty(exports, '__esModule', { value: true });\n \t};\n\n \t// create a fake namespace object\n \t// mode & 1: value is a module id, require it\n \t// mode & 2: merge all properties of value into the ns\n \t// mode & 4: return value when already ns object\n \t// mode & 8|1: behave like require\n \t__webpack_require__.t = function(value, mode) {\n \t\tif(mode & 1) value = __webpack_require__(value);\n \t\tif(mode & 8) return value;\n \t\tif((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;\n \t\tvar ns = Object.create(null);\n \t\t__webpack_require__.r(ns);\n \t\tObject.defineProperty(ns, 'default', { enumerable: true, value: value });\n \t\tif(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));\n \t\treturn ns;\n \t};\n\n \t// getDefaultExport function for compatibility with non-harmony modules\n \t__webpack_require__.n = function(module) {\n \t\tvar getter = module && module.__esModule ?\n \t\t\tfunction getDefault() { return module['default']; } :\n \t\t\tfunction getModuleExports() { return module; };\n \t\t__webpack_require__.d(getter, 'a', getter);\n \t\treturn getter;\n \t};\n\n \t// Object.prototype.hasOwnProperty.call\n \t__webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };\n\n \t// __webpack_public_path__\n \t__webpack_require__.p = \"/jkube/\";\n\n \t// on error function for async loading\n \t__webpack_require__.oe = function(err) { console.error(err); throw err; };\n\n \tvar jsonpArray = window[\"webpackJsonp\"] = window[\"webpackJsonp\"] || [];\n \tvar oldJsonpFunction = jsonpArray.push.bind(jsonpArray);\n \tjsonpArray.push = webpackJsonpCallback;\n \tjsonpArray = jsonpArray.slice();\n \tfor(var i = 0; i < jsonpArray.length; i++) webpackJsonpCallback(jsonpArray[i]);\n \tvar parentJsonpFunction = oldJsonpFunction;\n\n\n \t// run deferred modules from other chunks\n \tcheckDeferredModules();\n"],"sourceRoot":""}
\ No newline at end of file
diff --git a/webpack.stats.json b/webpack.stats.json
index cefd2ad..2d2f833 100644
--- a/webpack.stats.json
+++ b/webpack.stats.json
@@ -1 +1 @@
-{"errors":[],"warnings":[],"namedChunkGroups":{"polyfill":{"chunks":[2,0,8],"assets":["webpack-runtime-5e7a06a902090b1f37ba.js","webpack-runtime-5e7a06a902090b1f37ba.js.map","commons-8b827618f0536ebfeda2.js","commons-8b827618f0536ebfeda2.js.map","polyfill-88d9aed314b16f9b2adc.js","polyfill-88d9aed314b16f9b2adc.js.map"],"children":{},"childAssets":{}},"app":{"chunks":[2,7,3],"assets":["webpack-runtime-5e7a06a902090b1f37ba.js","webpack-runtime-5e7a06a902090b1f37ba.js.map","framework-fd2b85530eec85104a39.js","framework-fd2b85530eec85104a39.js.map","app-d7398b08e923fe8a3caa.js","app-d7398b08e923fe8a3caa.js.map"],"children":{},"childAssets":{}},"component---src-pages-quickstarts-index-jsx":{"chunks":[1,0,4],"assets":["styles.5c9b852c43e28f117cb7.css","styles-c2fe8482057191dca484.js","styles-c2fe8482057191dca484.js.map","commons-8b827618f0536ebfeda2.js","commons-8b827618f0536ebfeda2.js.map","component---src-pages-quickstarts-index-jsx-a1e42093b41968828647.js","component---src-pages-quickstarts-index-jsx-a1e42093b41968828647.js.map"],"children":{},"childAssets":{}},"component---src-templates-doc-jsx":{"chunks":[1,0,5],"assets":["styles.5c9b852c43e28f117cb7.css","styles-c2fe8482057191dca484.js","styles-c2fe8482057191dca484.js.map","commons-8b827618f0536ebfeda2.js","commons-8b827618f0536ebfeda2.js.map","component---src-templates-doc-jsx-5366dbd1b50f3447a412.js","component---src-templates-doc-jsx-5366dbd1b50f3447a412.js.map"],"children":{},"childAssets":{}},"component---src-templates-main-jsx":{"chunks":[1,0,6],"assets":["styles.5c9b852c43e28f117cb7.css","styles-c2fe8482057191dca484.js","styles-c2fe8482057191dca484.js.map","commons-8b827618f0536ebfeda2.js","commons-8b827618f0536ebfeda2.js.map","component---src-templates-main-jsx-456568a5c9ae2c9095ee.js","component---src-templates-main-jsx-456568a5c9ae2c9095ee.js.map"],"children":{},"childAssets":{}}},"assetsByChunkName":{"polyfill":["webpack-runtime-5e7a06a902090b1f37ba.js","commons-8b827618f0536ebfeda2.js","polyfill-88d9aed314b16f9b2adc.js"],"app":["webpack-runtime-5e7a06a902090b1f37ba.js","framework-fd2b85530eec85104a39.js","app-d7398b08e923fe8a3caa.js"],"component---src-pages-quickstarts-index-jsx":["styles.5c9b852c43e28f117cb7.css","styles-c2fe8482057191dca484.js","commons-8b827618f0536ebfeda2.js","component---src-pages-quickstarts-index-jsx-a1e42093b41968828647.js"],"component---src-templates-doc-jsx":["styles.5c9b852c43e28f117cb7.css","styles-c2fe8482057191dca484.js","commons-8b827618f0536ebfeda2.js","component---src-templates-doc-jsx-5366dbd1b50f3447a412.js"],"component---src-templates-main-jsx":["styles.5c9b852c43e28f117cb7.css","styles-c2fe8482057191dca484.js","commons-8b827618f0536ebfeda2.js","component---src-templates-main-jsx-456568a5c9ae2c9095ee.js"]}}
\ No newline at end of file
+{"errors":[],"warnings":[],"namedChunkGroups":{"polyfill":{"chunks":[2,8],"assets":["webpack-runtime-b52c77882f7d7b54b2b3.js","webpack-runtime-b52c77882f7d7b54b2b3.js.map","polyfill-e4957c11759bdfc149d9.js","polyfill-e4957c11759bdfc149d9.js.map"],"children":{},"childAssets":{}},"app":{"chunks":[2,7,3],"assets":["webpack-runtime-b52c77882f7d7b54b2b3.js","webpack-runtime-b52c77882f7d7b54b2b3.js.map","framework-5e01c8af6b1735c9eaa3.js","framework-5e01c8af6b1735c9eaa3.js.map","app-59faa9989d677dd59195.js","app-59faa9989d677dd59195.js.map"],"children":{},"childAssets":{}},"component---src-pages-quickstarts-index-jsx":{"chunks":[1,0,4],"assets":["styles.5c9b852c43e28f117cb7.css","styles-e9d24b1846c7d6eb9685.js","styles-e9d24b1846c7d6eb9685.js.map","commons-ee34cd715ab4f7da30e0.js","commons-ee34cd715ab4f7da30e0.js.map","component---src-pages-quickstarts-index-jsx-8b53e5455e208a3e59b9.js","component---src-pages-quickstarts-index-jsx-8b53e5455e208a3e59b9.js.map"],"children":{},"childAssets":{}},"component---src-templates-doc-jsx":{"chunks":[1,0,5],"assets":["styles.5c9b852c43e28f117cb7.css","styles-e9d24b1846c7d6eb9685.js","styles-e9d24b1846c7d6eb9685.js.map","commons-ee34cd715ab4f7da30e0.js","commons-ee34cd715ab4f7da30e0.js.map","component---src-templates-doc-jsx-21a94bb36ef3df298f42.js","component---src-templates-doc-jsx-21a94bb36ef3df298f42.js.map"],"children":{},"childAssets":{}},"component---src-templates-main-jsx":{"chunks":[1,0,6],"assets":["styles.5c9b852c43e28f117cb7.css","styles-e9d24b1846c7d6eb9685.js","styles-e9d24b1846c7d6eb9685.js.map","commons-ee34cd715ab4f7da30e0.js","commons-ee34cd715ab4f7da30e0.js.map","component---src-templates-main-jsx-8853cf342e1cf1bead5c.js","component---src-templates-main-jsx-8853cf342e1cf1bead5c.js.map"],"children":{},"childAssets":{}}},"assetsByChunkName":{"polyfill":["webpack-runtime-b52c77882f7d7b54b2b3.js","polyfill-e4957c11759bdfc149d9.js"],"app":["webpack-runtime-b52c77882f7d7b54b2b3.js","framework-5e01c8af6b1735c9eaa3.js","app-59faa9989d677dd59195.js"],"component---src-pages-quickstarts-index-jsx":["styles.5c9b852c43e28f117cb7.css","styles-e9d24b1846c7d6eb9685.js","commons-ee34cd715ab4f7da30e0.js","component---src-pages-quickstarts-index-jsx-8b53e5455e208a3e59b9.js"],"component---src-templates-doc-jsx":["styles.5c9b852c43e28f117cb7.css","styles-e9d24b1846c7d6eb9685.js","commons-ee34cd715ab4f7da30e0.js","component---src-templates-doc-jsx-21a94bb36ef3df298f42.js"],"component---src-templates-main-jsx":["styles.5c9b852c43e28f117cb7.css","styles-e9d24b1846c7d6eb9685.js","commons-ee34cd715ab4f7da30e0.js","component---src-templates-main-jsx-8853cf342e1cf1bead5c.js"]}}
\ No newline at end of file