From d9e4711667ac894babfbb09551cf52915dde7202 Mon Sep 17 00:00:00 2001 From: <> Date: Fri, 29 Sep 2023 17:39:23 +0000 Subject: [PATCH] Deployed 135af20 with MkDocs version: 1.4.3 --- .nojekyll | 0 404.html | 427 ++ assets/_mkdocstrings.css | 0 assets/images/favicon.png | Bin 0 -> 1870 bytes assets/javascripts/bundle.220ee61c.min.js | 29 + assets/javascripts/bundle.220ee61c.min.js.map | 8 + assets/javascripts/lunr/min/lunr.ar.min.js | 1 + assets/javascripts/lunr/min/lunr.da.min.js | 18 + assets/javascripts/lunr/min/lunr.de.min.js | 18 + assets/javascripts/lunr/min/lunr.du.min.js | 18 + assets/javascripts/lunr/min/lunr.es.min.js | 18 + assets/javascripts/lunr/min/lunr.fi.min.js | 18 + assets/javascripts/lunr/min/lunr.fr.min.js | 18 + assets/javascripts/lunr/min/lunr.hi.min.js | 1 + assets/javascripts/lunr/min/lunr.hu.min.js | 18 + assets/javascripts/lunr/min/lunr.hy.min.js | 1 + assets/javascripts/lunr/min/lunr.it.min.js | 18 + assets/javascripts/lunr/min/lunr.ja.min.js | 1 + assets/javascripts/lunr/min/lunr.jp.min.js | 1 + assets/javascripts/lunr/min/lunr.kn.min.js | 1 + assets/javascripts/lunr/min/lunr.ko.min.js | 1 + assets/javascripts/lunr/min/lunr.multi.min.js | 1 + assets/javascripts/lunr/min/lunr.nl.min.js | 18 + assets/javascripts/lunr/min/lunr.no.min.js | 18 + assets/javascripts/lunr/min/lunr.pt.min.js | 18 + assets/javascripts/lunr/min/lunr.ro.min.js | 18 + assets/javascripts/lunr/min/lunr.ru.min.js | 18 + assets/javascripts/lunr/min/lunr.sa.min.js | 1 + .../lunr/min/lunr.stemmer.support.min.js | 1 + assets/javascripts/lunr/min/lunr.sv.min.js | 18 + assets/javascripts/lunr/min/lunr.ta.min.js | 1 + assets/javascripts/lunr/min/lunr.te.min.js | 1 + assets/javascripts/lunr/min/lunr.th.min.js | 1 + assets/javascripts/lunr/min/lunr.tr.min.js | 18 + assets/javascripts/lunr/min/lunr.vi.min.js | 1 + assets/javascripts/lunr/min/lunr.zh.min.js | 1 + assets/javascripts/lunr/tinyseg.js | 206 + assets/javascripts/lunr/wordcut.js | 6708 +++++++++++++++++ .../workers/search.74e28a9f.min.js | 42 + .../workers/search.74e28a9f.min.js.map | 8 + assets/stylesheets/main.26e3688c.min.css | 1 + assets/stylesheets/main.26e3688c.min.css.map | 1 + assets/stylesheets/palette.ecc896b0.min.css | 1 + .../stylesheets/palette.ecc896b0.min.css.map | 1 + changelog/index.html | 636 ++ contributing/index.html | 714 ++ index.html | 577 ++ media/screenshots/compliance-diff.png | Bin 0 -> 31744 bytes media/screenshots/compliance-error.png | Bin 0 -> 48801 bytes media/screenshots/compliance-list.png | Bin 0 -> 23740 bytes .../screenshots/compliance-missing-extra.png | Bin 0 -> 27108 bytes media/screenshots/compliance-ok.png | Bin 0 -> 17602 bytes media/screenshots/navbar.png | Bin 0 -> 4991 bytes media/screenshots/platformsetting.png | Bin 0 -> 28028 bytes media/screenshots/script-list.png | Bin 0 -> 14783 bytes media/screenshots/script.png | Bin 0 -> 37552 bytes screenshots/index.html | 469 ++ search/search_index.json | 1 + secrets/index.html | 476 ++ sitemap.xml | 33 + sitemap.xml.gz | Bin 0 -> 261 bytes usage/index.html | 597 ++ 62 files changed, 11220 insertions(+) create mode 100644 .nojekyll create mode 100644 404.html create mode 100644 assets/_mkdocstrings.css create mode 100644 assets/images/favicon.png create mode 100644 assets/javascripts/bundle.220ee61c.min.js create mode 100644 assets/javascripts/bundle.220ee61c.min.js.map create mode 100644 assets/javascripts/lunr/min/lunr.ar.min.js create mode 100644 assets/javascripts/lunr/min/lunr.da.min.js create mode 100644 assets/javascripts/lunr/min/lunr.de.min.js create mode 100644 assets/javascripts/lunr/min/lunr.du.min.js create mode 100644 assets/javascripts/lunr/min/lunr.es.min.js create mode 100644 assets/javascripts/lunr/min/lunr.fi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.fr.min.js create mode 100644 assets/javascripts/lunr/min/lunr.hi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.hu.min.js create mode 100644 assets/javascripts/lunr/min/lunr.hy.min.js create mode 100644 assets/javascripts/lunr/min/lunr.it.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ja.min.js create mode 100644 assets/javascripts/lunr/min/lunr.jp.min.js create mode 100644 assets/javascripts/lunr/min/lunr.kn.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ko.min.js create mode 100644 assets/javascripts/lunr/min/lunr.multi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.nl.min.js create mode 100644 assets/javascripts/lunr/min/lunr.no.min.js create mode 100644 assets/javascripts/lunr/min/lunr.pt.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ro.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ru.min.js create mode 100644 assets/javascripts/lunr/min/lunr.sa.min.js create mode 100644 assets/javascripts/lunr/min/lunr.stemmer.support.min.js create mode 100644 assets/javascripts/lunr/min/lunr.sv.min.js create mode 100644 assets/javascripts/lunr/min/lunr.ta.min.js create mode 100644 assets/javascripts/lunr/min/lunr.te.min.js create mode 100644 assets/javascripts/lunr/min/lunr.th.min.js create mode 100644 assets/javascripts/lunr/min/lunr.tr.min.js create mode 100644 assets/javascripts/lunr/min/lunr.vi.min.js create mode 100644 assets/javascripts/lunr/min/lunr.zh.min.js create mode 100644 assets/javascripts/lunr/tinyseg.js create mode 100644 assets/javascripts/lunr/wordcut.js create mode 100644 assets/javascripts/workers/search.74e28a9f.min.js create mode 100644 assets/javascripts/workers/search.74e28a9f.min.js.map create mode 100644 assets/stylesheets/main.26e3688c.min.css create mode 100644 assets/stylesheets/main.26e3688c.min.css.map create mode 100644 assets/stylesheets/palette.ecc896b0.min.css create mode 100644 assets/stylesheets/palette.ecc896b0.min.css.map create mode 100644 changelog/index.html create mode 100644 contributing/index.html create mode 100644 index.html create mode 100644 media/screenshots/compliance-diff.png create mode 100644 media/screenshots/compliance-error.png create mode 100644 media/screenshots/compliance-list.png create mode 100644 media/screenshots/compliance-missing-extra.png create mode 100644 media/screenshots/compliance-ok.png create mode 100644 media/screenshots/navbar.png create mode 100644 media/screenshots/platformsetting.png create mode 100644 media/screenshots/script-list.png create mode 100644 media/screenshots/script.png create mode 100644 screenshots/index.html create mode 100644 search/search_index.json create mode 100644 secrets/index.html create mode 100644 sitemap.xml create mode 100644 sitemap.xml.gz create mode 100644 usage/index.html diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 0000000..e69de29 diff --git a/404.html b/404.html new file mode 100644 index 0000000..ae128de --- /dev/null +++ b/404.html @@ -0,0 +1,427 @@ + + + + + + + + + + + + + + + + + + NetBox Config Diff Plugin + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+
+ +
+ + + + + + +
+ + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ +

404 - Not found

+ +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/assets/_mkdocstrings.css b/assets/_mkdocstrings.css new file mode 100644 index 0000000..e69de29 diff --git a/assets/images/favicon.png b/assets/images/favicon.png new file mode 100644 index 0000000000000000000000000000000000000000..1cf13b9f9d978896599290a74f77d5dbe7d1655c GIT binary patch literal 1870 zcmV-U2eJ5xP)Gc)JR9QMau)O=X#!i9;T z37kk-upj^(fsR36MHs_+1RCI)NNu9}lD0S{B^g8PN?Ww(5|~L#Ng*g{WsqleV}|#l zz8@ri&cTzw_h33bHI+12+kK6WN$h#n5cD8OQt`5kw6p~9H3()bUQ8OS4Q4HTQ=1Ol z_JAocz`fLbT2^{`8n~UAo=#AUOf=SOq4pYkt;XbC&f#7lb$*7=$na!mWCQ`dBQsO0 zLFBSPj*N?#u5&pf2t4XjEGH|=pPQ8xh7tpx;US5Cx_Ju;!O`ya-yF`)b%TEt5>eP1ZX~}sjjA%FJF?h7cX8=b!DZl<6%Cv z*G0uvvU+vmnpLZ2paivG-(cd*y3$hCIcsZcYOGh{$&)A6*XX&kXZd3G8m)G$Zz-LV z^GF3VAW^Mdv!)4OM8EgqRiz~*Cji;uzl2uC9^=8I84vNp;ltJ|q-*uQwGp2ma6cY7 z;`%`!9UXO@fr&Ebapfs34OmS9^u6$)bJxrucutf>`dKPKT%%*d3XlFVKunp9 zasduxjrjs>f8V=D|J=XNZp;_Zy^WgQ$9WDjgY=z@stwiEBm9u5*|34&1Na8BMjjgf3+SHcr`5~>oz1Y?SW^=K z^bTyO6>Gar#P_W2gEMwq)ot3; zREHn~U&Dp0l6YT0&k-wLwYjb?5zGK`W6S2v+K>AM(95m2C20L|3m~rN8dprPr@t)5lsk9Hu*W z?pS990s;Ez=+Rj{x7p``4>+c0G5^pYnB1^!TL=(?HLHZ+HicG{~4F1d^5Awl_2!1jICM-!9eoLhbbT^;yHcefyTAaqRcY zmuctDopPT!%k+}x%lZRKnzykr2}}XfG_ne?nRQO~?%hkzo;@RN{P6o`&mMUWBYMTe z6i8ChtjX&gXl`nvrU>jah)2iNM%JdjqoaeaU%yVn!^70x-flljp6Q5tK}5}&X8&&G zX3fpb3E(!rH=zVI_9Gjl45w@{(ITqngWFe7@9{mX;tO25Z_8 zQHEpI+FkTU#4xu>RkN>b3Tnc3UpWzPXWm#o55GKF09j^Mh~)K7{QqbO_~(@CVq! zS<8954|P8mXN2MRs86xZ&Q4EfM@JB94b=(YGuk)s&^jiSF=t3*oNK3`rD{H`yQ?d; ztE=laAUoZx5?RC8*WKOj`%LXEkgDd>&^Q4M^z`%u0rg-It=hLCVsq!Z%^6eB-OvOT zFZ28TN&cRmgU}Elrnk43)!>Z1FCPL2K$7}gwzIc48NX}#!A1BpJP?#v5wkNprhV** z?Cpalt1oH&{r!o3eSKc&ap)iz2BTn_VV`4>9M^b3;(YY}4>#ML6{~(4mH+?%07*qo IM6N<$f(jP3KmY&$ literal 0 HcmV?d00001 diff --git a/assets/javascripts/bundle.220ee61c.min.js b/assets/javascripts/bundle.220ee61c.min.js new file mode 100644 index 0000000..116072a --- /dev/null +++ b/assets/javascripts/bundle.220ee61c.min.js @@ -0,0 +1,29 @@ +"use strict";(()=>{var Ci=Object.create;var gr=Object.defineProperty;var Ri=Object.getOwnPropertyDescriptor;var ki=Object.getOwnPropertyNames,Ht=Object.getOwnPropertySymbols,Hi=Object.getPrototypeOf,yr=Object.prototype.hasOwnProperty,nn=Object.prototype.propertyIsEnumerable;var rn=(e,t,r)=>t in e?gr(e,t,{enumerable:!0,configurable:!0,writable:!0,value:r}):e[t]=r,P=(e,t)=>{for(var r in t||(t={}))yr.call(t,r)&&rn(e,r,t[r]);if(Ht)for(var r of Ht(t))nn.call(t,r)&&rn(e,r,t[r]);return e};var on=(e,t)=>{var r={};for(var n in e)yr.call(e,n)&&t.indexOf(n)<0&&(r[n]=e[n]);if(e!=null&&Ht)for(var n of Ht(e))t.indexOf(n)<0&&nn.call(e,n)&&(r[n]=e[n]);return r};var Pt=(e,t)=>()=>(t||e((t={exports:{}}).exports,t),t.exports);var Pi=(e,t,r,n)=>{if(t&&typeof t=="object"||typeof t=="function")for(let o of ki(t))!yr.call(e,o)&&o!==r&&gr(e,o,{get:()=>t[o],enumerable:!(n=Ri(t,o))||n.enumerable});return e};var yt=(e,t,r)=>(r=e!=null?Ci(Hi(e)):{},Pi(t||!e||!e.__esModule?gr(r,"default",{value:e,enumerable:!0}):r,e));var sn=Pt((xr,an)=>{(function(e,t){typeof xr=="object"&&typeof an!="undefined"?t():typeof define=="function"&&define.amd?define(t):t()})(xr,function(){"use strict";function e(r){var n=!0,o=!1,i=null,s={text:!0,search:!0,url:!0,tel:!0,email:!0,password:!0,number:!0,date:!0,month:!0,week:!0,time:!0,datetime:!0,"datetime-local":!0};function a(O){return!!(O&&O!==document&&O.nodeName!=="HTML"&&O.nodeName!=="BODY"&&"classList"in O&&"contains"in O.classList)}function f(O){var Qe=O.type,De=O.tagName;return!!(De==="INPUT"&&s[Qe]&&!O.readOnly||De==="TEXTAREA"&&!O.readOnly||O.isContentEditable)}function c(O){O.classList.contains("focus-visible")||(O.classList.add("focus-visible"),O.setAttribute("data-focus-visible-added",""))}function u(O){O.hasAttribute("data-focus-visible-added")&&(O.classList.remove("focus-visible"),O.removeAttribute("data-focus-visible-added"))}function p(O){O.metaKey||O.altKey||O.ctrlKey||(a(r.activeElement)&&c(r.activeElement),n=!0)}function m(O){n=!1}function d(O){a(O.target)&&(n||f(O.target))&&c(O.target)}function h(O){a(O.target)&&(O.target.classList.contains("focus-visible")||O.target.hasAttribute("data-focus-visible-added"))&&(o=!0,window.clearTimeout(i),i=window.setTimeout(function(){o=!1},100),u(O.target))}function v(O){document.visibilityState==="hidden"&&(o&&(n=!0),Y())}function Y(){document.addEventListener("mousemove",N),document.addEventListener("mousedown",N),document.addEventListener("mouseup",N),document.addEventListener("pointermove",N),document.addEventListener("pointerdown",N),document.addEventListener("pointerup",N),document.addEventListener("touchmove",N),document.addEventListener("touchstart",N),document.addEventListener("touchend",N)}function B(){document.removeEventListener("mousemove",N),document.removeEventListener("mousedown",N),document.removeEventListener("mouseup",N),document.removeEventListener("pointermove",N),document.removeEventListener("pointerdown",N),document.removeEventListener("pointerup",N),document.removeEventListener("touchmove",N),document.removeEventListener("touchstart",N),document.removeEventListener("touchend",N)}function N(O){O.target.nodeName&&O.target.nodeName.toLowerCase()==="html"||(n=!1,B())}document.addEventListener("keydown",p,!0),document.addEventListener("mousedown",m,!0),document.addEventListener("pointerdown",m,!0),document.addEventListener("touchstart",m,!0),document.addEventListener("visibilitychange",v,!0),Y(),r.addEventListener("focus",d,!0),r.addEventListener("blur",h,!0),r.nodeType===Node.DOCUMENT_FRAGMENT_NODE&&r.host?r.host.setAttribute("data-js-focus-visible",""):r.nodeType===Node.DOCUMENT_NODE&&(document.documentElement.classList.add("js-focus-visible"),document.documentElement.setAttribute("data-js-focus-visible",""))}if(typeof window!="undefined"&&typeof document!="undefined"){window.applyFocusVisiblePolyfill=e;var t;try{t=new CustomEvent("focus-visible-polyfill-ready")}catch(r){t=document.createEvent("CustomEvent"),t.initCustomEvent("focus-visible-polyfill-ready",!1,!1,{})}window.dispatchEvent(t)}typeof document!="undefined"&&e(document)})});var cn=Pt(Er=>{(function(e){var t=function(){try{return!!Symbol.iterator}catch(c){return!1}},r=t(),n=function(c){var u={next:function(){var p=c.shift();return{done:p===void 0,value:p}}};return r&&(u[Symbol.iterator]=function(){return u}),u},o=function(c){return encodeURIComponent(c).replace(/%20/g,"+")},i=function(c){return decodeURIComponent(String(c).replace(/\+/g," "))},s=function(){var c=function(p){Object.defineProperty(this,"_entries",{writable:!0,value:{}});var m=typeof p;if(m!=="undefined")if(m==="string")p!==""&&this._fromString(p);else if(p instanceof c){var d=this;p.forEach(function(B,N){d.append(N,B)})}else if(p!==null&&m==="object")if(Object.prototype.toString.call(p)==="[object Array]")for(var h=0;hd[0]?1:0}),c._entries&&(c._entries={});for(var p=0;p1?i(d[1]):"")}})})(typeof global!="undefined"?global:typeof window!="undefined"?window:typeof self!="undefined"?self:Er);(function(e){var t=function(){try{var o=new e.URL("b","http://a");return o.pathname="c d",o.href==="http://a/c%20d"&&o.searchParams}catch(i){return!1}},r=function(){var o=e.URL,i=function(f,c){typeof f!="string"&&(f=String(f)),c&&typeof c!="string"&&(c=String(c));var u=document,p;if(c&&(e.location===void 0||c!==e.location.href)){c=c.toLowerCase(),u=document.implementation.createHTMLDocument(""),p=u.createElement("base"),p.href=c,u.head.appendChild(p);try{if(p.href.indexOf(c)!==0)throw new Error(p.href)}catch(O){throw new Error("URL unable to set base "+c+" due to "+O)}}var m=u.createElement("a");m.href=f,p&&(u.body.appendChild(m),m.href=m.href);var d=u.createElement("input");if(d.type="url",d.value=f,m.protocol===":"||!/:/.test(m.href)||!d.checkValidity()&&!c)throw new TypeError("Invalid URL");Object.defineProperty(this,"_anchorElement",{value:m});var h=new e.URLSearchParams(this.search),v=!0,Y=!0,B=this;["append","delete","set"].forEach(function(O){var Qe=h[O];h[O]=function(){Qe.apply(h,arguments),v&&(Y=!1,B.search=h.toString(),Y=!0)}}),Object.defineProperty(this,"searchParams",{value:h,enumerable:!0});var N=void 0;Object.defineProperty(this,"_updateSearchParams",{enumerable:!1,configurable:!1,writable:!1,value:function(){this.search!==N&&(N=this.search,Y&&(v=!1,this.searchParams._fromString(this.search),v=!0))}})},s=i.prototype,a=function(f){Object.defineProperty(s,f,{get:function(){return this._anchorElement[f]},set:function(c){this._anchorElement[f]=c},enumerable:!0})};["hash","host","hostname","port","protocol"].forEach(function(f){a(f)}),Object.defineProperty(s,"search",{get:function(){return this._anchorElement.search},set:function(f){this._anchorElement.search=f,this._updateSearchParams()},enumerable:!0}),Object.defineProperties(s,{toString:{get:function(){var f=this;return function(){return f.href}}},href:{get:function(){return this._anchorElement.href.replace(/\?$/,"")},set:function(f){this._anchorElement.href=f,this._updateSearchParams()},enumerable:!0},pathname:{get:function(){return this._anchorElement.pathname.replace(/(^\/?)/,"/")},set:function(f){this._anchorElement.pathname=f},enumerable:!0},origin:{get:function(){var f={"http:":80,"https:":443,"ftp:":21}[this._anchorElement.protocol],c=this._anchorElement.port!=f&&this._anchorElement.port!=="";return this._anchorElement.protocol+"//"+this._anchorElement.hostname+(c?":"+this._anchorElement.port:"")},enumerable:!0},password:{get:function(){return""},set:function(f){},enumerable:!0},username:{get:function(){return""},set:function(f){},enumerable:!0}}),i.createObjectURL=function(f){return o.createObjectURL.apply(o,arguments)},i.revokeObjectURL=function(f){return o.revokeObjectURL.apply(o,arguments)},e.URL=i};if(t()||r(),e.location!==void 0&&!("origin"in e.location)){var n=function(){return e.location.protocol+"//"+e.location.hostname+(e.location.port?":"+e.location.port:"")};try{Object.defineProperty(e.location,"origin",{get:n,enumerable:!0})}catch(o){setInterval(function(){e.location.origin=n()},100)}}})(typeof global!="undefined"?global:typeof window!="undefined"?window:typeof self!="undefined"?self:Er)});var qr=Pt((Mt,Nr)=>{/*! + * clipboard.js v2.0.11 + * https://clipboardjs.com/ + * + * Licensed MIT © Zeno Rocha + */(function(t,r){typeof Mt=="object"&&typeof Nr=="object"?Nr.exports=r():typeof define=="function"&&define.amd?define([],r):typeof Mt=="object"?Mt.ClipboardJS=r():t.ClipboardJS=r()})(Mt,function(){return function(){var e={686:function(n,o,i){"use strict";i.d(o,{default:function(){return Ai}});var s=i(279),a=i.n(s),f=i(370),c=i.n(f),u=i(817),p=i.n(u);function m(j){try{return document.execCommand(j)}catch(T){return!1}}var d=function(T){var E=p()(T);return m("cut"),E},h=d;function v(j){var T=document.documentElement.getAttribute("dir")==="rtl",E=document.createElement("textarea");E.style.fontSize="12pt",E.style.border="0",E.style.padding="0",E.style.margin="0",E.style.position="absolute",E.style[T?"right":"left"]="-9999px";var H=window.pageYOffset||document.documentElement.scrollTop;return E.style.top="".concat(H,"px"),E.setAttribute("readonly",""),E.value=j,E}var Y=function(T,E){var H=v(T);E.container.appendChild(H);var I=p()(H);return m("copy"),H.remove(),I},B=function(T){var E=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body},H="";return typeof T=="string"?H=Y(T,E):T instanceof HTMLInputElement&&!["text","search","url","tel","password"].includes(T==null?void 0:T.type)?H=Y(T.value,E):(H=p()(T),m("copy")),H},N=B;function O(j){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?O=function(E){return typeof E}:O=function(E){return E&&typeof Symbol=="function"&&E.constructor===Symbol&&E!==Symbol.prototype?"symbol":typeof E},O(j)}var Qe=function(){var T=arguments.length>0&&arguments[0]!==void 0?arguments[0]:{},E=T.action,H=E===void 0?"copy":E,I=T.container,q=T.target,Me=T.text;if(H!=="copy"&&H!=="cut")throw new Error('Invalid "action" value, use either "copy" or "cut"');if(q!==void 0)if(q&&O(q)==="object"&&q.nodeType===1){if(H==="copy"&&q.hasAttribute("disabled"))throw new Error('Invalid "target" attribute. Please use "readonly" instead of "disabled" attribute');if(H==="cut"&&(q.hasAttribute("readonly")||q.hasAttribute("disabled")))throw new Error(`Invalid "target" attribute. You can't cut text from elements with "readonly" or "disabled" attributes`)}else throw new Error('Invalid "target" value, use a valid Element');if(Me)return N(Me,{container:I});if(q)return H==="cut"?h(q):N(q,{container:I})},De=Qe;function $e(j){"@babel/helpers - typeof";return typeof Symbol=="function"&&typeof Symbol.iterator=="symbol"?$e=function(E){return typeof E}:$e=function(E){return E&&typeof Symbol=="function"&&E.constructor===Symbol&&E!==Symbol.prototype?"symbol":typeof E},$e(j)}function Ei(j,T){if(!(j instanceof T))throw new TypeError("Cannot call a class as a function")}function tn(j,T){for(var E=0;E0&&arguments[0]!==void 0?arguments[0]:{};this.action=typeof I.action=="function"?I.action:this.defaultAction,this.target=typeof I.target=="function"?I.target:this.defaultTarget,this.text=typeof I.text=="function"?I.text:this.defaultText,this.container=$e(I.container)==="object"?I.container:document.body}},{key:"listenClick",value:function(I){var q=this;this.listener=c()(I,"click",function(Me){return q.onClick(Me)})}},{key:"onClick",value:function(I){var q=I.delegateTarget||I.currentTarget,Me=this.action(q)||"copy",kt=De({action:Me,container:this.container,target:this.target(q),text:this.text(q)});this.emit(kt?"success":"error",{action:Me,text:kt,trigger:q,clearSelection:function(){q&&q.focus(),window.getSelection().removeAllRanges()}})}},{key:"defaultAction",value:function(I){return vr("action",I)}},{key:"defaultTarget",value:function(I){var q=vr("target",I);if(q)return document.querySelector(q)}},{key:"defaultText",value:function(I){return vr("text",I)}},{key:"destroy",value:function(){this.listener.destroy()}}],[{key:"copy",value:function(I){var q=arguments.length>1&&arguments[1]!==void 0?arguments[1]:{container:document.body};return N(I,q)}},{key:"cut",value:function(I){return h(I)}},{key:"isSupported",value:function(){var I=arguments.length>0&&arguments[0]!==void 0?arguments[0]:["copy","cut"],q=typeof I=="string"?[I]:I,Me=!!document.queryCommandSupported;return q.forEach(function(kt){Me=Me&&!!document.queryCommandSupported(kt)}),Me}}]),E}(a()),Ai=Li},828:function(n){var o=9;if(typeof Element!="undefined"&&!Element.prototype.matches){var i=Element.prototype;i.matches=i.matchesSelector||i.mozMatchesSelector||i.msMatchesSelector||i.oMatchesSelector||i.webkitMatchesSelector}function s(a,f){for(;a&&a.nodeType!==o;){if(typeof a.matches=="function"&&a.matches(f))return a;a=a.parentNode}}n.exports=s},438:function(n,o,i){var s=i(828);function a(u,p,m,d,h){var v=c.apply(this,arguments);return u.addEventListener(m,v,h),{destroy:function(){u.removeEventListener(m,v,h)}}}function f(u,p,m,d,h){return typeof u.addEventListener=="function"?a.apply(null,arguments):typeof m=="function"?a.bind(null,document).apply(null,arguments):(typeof u=="string"&&(u=document.querySelectorAll(u)),Array.prototype.map.call(u,function(v){return a(v,p,m,d,h)}))}function c(u,p,m,d){return function(h){h.delegateTarget=s(h.target,p),h.delegateTarget&&d.call(u,h)}}n.exports=f},879:function(n,o){o.node=function(i){return i!==void 0&&i instanceof HTMLElement&&i.nodeType===1},o.nodeList=function(i){var s=Object.prototype.toString.call(i);return i!==void 0&&(s==="[object NodeList]"||s==="[object HTMLCollection]")&&"length"in i&&(i.length===0||o.node(i[0]))},o.string=function(i){return typeof i=="string"||i instanceof String},o.fn=function(i){var s=Object.prototype.toString.call(i);return s==="[object Function]"}},370:function(n,o,i){var s=i(879),a=i(438);function f(m,d,h){if(!m&&!d&&!h)throw new Error("Missing required arguments");if(!s.string(d))throw new TypeError("Second argument must be a String");if(!s.fn(h))throw new TypeError("Third argument must be a Function");if(s.node(m))return c(m,d,h);if(s.nodeList(m))return u(m,d,h);if(s.string(m))return p(m,d,h);throw new TypeError("First argument must be a String, HTMLElement, HTMLCollection, or NodeList")}function c(m,d,h){return m.addEventListener(d,h),{destroy:function(){m.removeEventListener(d,h)}}}function u(m,d,h){return Array.prototype.forEach.call(m,function(v){v.addEventListener(d,h)}),{destroy:function(){Array.prototype.forEach.call(m,function(v){v.removeEventListener(d,h)})}}}function p(m,d,h){return a(document.body,m,d,h)}n.exports=f},817:function(n){function o(i){var s;if(i.nodeName==="SELECT")i.focus(),s=i.value;else if(i.nodeName==="INPUT"||i.nodeName==="TEXTAREA"){var a=i.hasAttribute("readonly");a||i.setAttribute("readonly",""),i.select(),i.setSelectionRange(0,i.value.length),a||i.removeAttribute("readonly"),s=i.value}else{i.hasAttribute("contenteditable")&&i.focus();var f=window.getSelection(),c=document.createRange();c.selectNodeContents(i),f.removeAllRanges(),f.addRange(c),s=f.toString()}return s}n.exports=o},279:function(n){function o(){}o.prototype={on:function(i,s,a){var f=this.e||(this.e={});return(f[i]||(f[i]=[])).push({fn:s,ctx:a}),this},once:function(i,s,a){var f=this;function c(){f.off(i,c),s.apply(a,arguments)}return c._=s,this.on(i,c,a)},emit:function(i){var s=[].slice.call(arguments,1),a=((this.e||(this.e={}))[i]||[]).slice(),f=0,c=a.length;for(f;f{"use strict";/*! + * escape-html + * Copyright(c) 2012-2013 TJ Holowaychuk + * Copyright(c) 2015 Andreas Lubbe + * Copyright(c) 2015 Tiancheng "Timothy" Gu + * MIT Licensed + */var rs=/["'&<>]/;Yo.exports=ns;function ns(e){var t=""+e,r=rs.exec(t);if(!r)return t;var n,o="",i=0,s=0;for(i=r.index;i0&&i[i.length-1])&&(c[0]===6||c[0]===2)){r=0;continue}if(c[0]===3&&(!i||c[1]>i[0]&&c[1]=e.length&&(e=void 0),{value:e&&e[n++],done:!e}}};throw new TypeError(t?"Object is not iterable.":"Symbol.iterator is not defined.")}function W(e,t){var r=typeof Symbol=="function"&&e[Symbol.iterator];if(!r)return e;var n=r.call(e),o,i=[],s;try{for(;(t===void 0||t-- >0)&&!(o=n.next()).done;)i.push(o.value)}catch(a){s={error:a}}finally{try{o&&!o.done&&(r=n.return)&&r.call(n)}finally{if(s)throw s.error}}return i}function D(e,t,r){if(r||arguments.length===2)for(var n=0,o=t.length,i;n1||a(m,d)})})}function a(m,d){try{f(n[m](d))}catch(h){p(i[0][3],h)}}function f(m){m.value instanceof et?Promise.resolve(m.value.v).then(c,u):p(i[0][2],m)}function c(m){a("next",m)}function u(m){a("throw",m)}function p(m,d){m(d),i.shift(),i.length&&a(i[0][0],i[0][1])}}function pn(e){if(!Symbol.asyncIterator)throw new TypeError("Symbol.asyncIterator is not defined.");var t=e[Symbol.asyncIterator],r;return t?t.call(e):(e=typeof Ee=="function"?Ee(e):e[Symbol.iterator](),r={},n("next"),n("throw"),n("return"),r[Symbol.asyncIterator]=function(){return this},r);function n(i){r[i]=e[i]&&function(s){return new Promise(function(a,f){s=e[i](s),o(a,f,s.done,s.value)})}}function o(i,s,a,f){Promise.resolve(f).then(function(c){i({value:c,done:a})},s)}}function C(e){return typeof e=="function"}function at(e){var t=function(n){Error.call(n),n.stack=new Error().stack},r=e(t);return r.prototype=Object.create(Error.prototype),r.prototype.constructor=r,r}var It=at(function(e){return function(r){e(this),this.message=r?r.length+` errors occurred during unsubscription: +`+r.map(function(n,o){return o+1+") "+n.toString()}).join(` + `):"",this.name="UnsubscriptionError",this.errors=r}});function Ve(e,t){if(e){var r=e.indexOf(t);0<=r&&e.splice(r,1)}}var Ie=function(){function e(t){this.initialTeardown=t,this.closed=!1,this._parentage=null,this._finalizers=null}return e.prototype.unsubscribe=function(){var t,r,n,o,i;if(!this.closed){this.closed=!0;var s=this._parentage;if(s)if(this._parentage=null,Array.isArray(s))try{for(var a=Ee(s),f=a.next();!f.done;f=a.next()){var c=f.value;c.remove(this)}}catch(v){t={error:v}}finally{try{f&&!f.done&&(r=a.return)&&r.call(a)}finally{if(t)throw t.error}}else s.remove(this);var u=this.initialTeardown;if(C(u))try{u()}catch(v){i=v instanceof It?v.errors:[v]}var p=this._finalizers;if(p){this._finalizers=null;try{for(var m=Ee(p),d=m.next();!d.done;d=m.next()){var h=d.value;try{ln(h)}catch(v){i=i!=null?i:[],v instanceof It?i=D(D([],W(i)),W(v.errors)):i.push(v)}}}catch(v){n={error:v}}finally{try{d&&!d.done&&(o=m.return)&&o.call(m)}finally{if(n)throw n.error}}}if(i)throw new It(i)}},e.prototype.add=function(t){var r;if(t&&t!==this)if(this.closed)ln(t);else{if(t instanceof e){if(t.closed||t._hasParent(this))return;t._addParent(this)}(this._finalizers=(r=this._finalizers)!==null&&r!==void 0?r:[]).push(t)}},e.prototype._hasParent=function(t){var r=this._parentage;return r===t||Array.isArray(r)&&r.includes(t)},e.prototype._addParent=function(t){var r=this._parentage;this._parentage=Array.isArray(r)?(r.push(t),r):r?[r,t]:t},e.prototype._removeParent=function(t){var r=this._parentage;r===t?this._parentage=null:Array.isArray(r)&&Ve(r,t)},e.prototype.remove=function(t){var r=this._finalizers;r&&Ve(r,t),t instanceof e&&t._removeParent(this)},e.EMPTY=function(){var t=new e;return t.closed=!0,t}(),e}();var Sr=Ie.EMPTY;function jt(e){return e instanceof Ie||e&&"closed"in e&&C(e.remove)&&C(e.add)&&C(e.unsubscribe)}function ln(e){C(e)?e():e.unsubscribe()}var Le={onUnhandledError:null,onStoppedNotification:null,Promise:void 0,useDeprecatedSynchronousErrorHandling:!1,useDeprecatedNextContext:!1};var st={setTimeout:function(e,t){for(var r=[],n=2;n0},enumerable:!1,configurable:!0}),t.prototype._trySubscribe=function(r){return this._throwIfClosed(),e.prototype._trySubscribe.call(this,r)},t.prototype._subscribe=function(r){return this._throwIfClosed(),this._checkFinalizedStatuses(r),this._innerSubscribe(r)},t.prototype._innerSubscribe=function(r){var n=this,o=this,i=o.hasError,s=o.isStopped,a=o.observers;return i||s?Sr:(this.currentObservers=null,a.push(r),new Ie(function(){n.currentObservers=null,Ve(a,r)}))},t.prototype._checkFinalizedStatuses=function(r){var n=this,o=n.hasError,i=n.thrownError,s=n.isStopped;o?r.error(i):s&&r.complete()},t.prototype.asObservable=function(){var r=new F;return r.source=this,r},t.create=function(r,n){return new xn(r,n)},t}(F);var xn=function(e){ie(t,e);function t(r,n){var o=e.call(this)||this;return o.destination=r,o.source=n,o}return t.prototype.next=function(r){var n,o;(o=(n=this.destination)===null||n===void 0?void 0:n.next)===null||o===void 0||o.call(n,r)},t.prototype.error=function(r){var n,o;(o=(n=this.destination)===null||n===void 0?void 0:n.error)===null||o===void 0||o.call(n,r)},t.prototype.complete=function(){var r,n;(n=(r=this.destination)===null||r===void 0?void 0:r.complete)===null||n===void 0||n.call(r)},t.prototype._subscribe=function(r){var n,o;return(o=(n=this.source)===null||n===void 0?void 0:n.subscribe(r))!==null&&o!==void 0?o:Sr},t}(x);var Et={now:function(){return(Et.delegate||Date).now()},delegate:void 0};var wt=function(e){ie(t,e);function t(r,n,o){r===void 0&&(r=1/0),n===void 0&&(n=1/0),o===void 0&&(o=Et);var i=e.call(this)||this;return i._bufferSize=r,i._windowTime=n,i._timestampProvider=o,i._buffer=[],i._infiniteTimeWindow=!0,i._infiniteTimeWindow=n===1/0,i._bufferSize=Math.max(1,r),i._windowTime=Math.max(1,n),i}return t.prototype.next=function(r){var n=this,o=n.isStopped,i=n._buffer,s=n._infiniteTimeWindow,a=n._timestampProvider,f=n._windowTime;o||(i.push(r),!s&&i.push(a.now()+f)),this._trimBuffer(),e.prototype.next.call(this,r)},t.prototype._subscribe=function(r){this._throwIfClosed(),this._trimBuffer();for(var n=this._innerSubscribe(r),o=this,i=o._infiniteTimeWindow,s=o._buffer,a=s.slice(),f=0;f0?e.prototype.requestAsyncId.call(this,r,n,o):(r.actions.push(this),r._scheduled||(r._scheduled=ut.requestAnimationFrame(function(){return r.flush(void 0)})))},t.prototype.recycleAsyncId=function(r,n,o){var i;if(o===void 0&&(o=0),o!=null?o>0:this.delay>0)return e.prototype.recycleAsyncId.call(this,r,n,o);var s=r.actions;n!=null&&((i=s[s.length-1])===null||i===void 0?void 0:i.id)!==n&&(ut.cancelAnimationFrame(n),r._scheduled=void 0)},t}(Wt);var Sn=function(e){ie(t,e);function t(){return e!==null&&e.apply(this,arguments)||this}return t.prototype.flush=function(r){this._active=!0;var n=this._scheduled;this._scheduled=void 0;var o=this.actions,i;r=r||o.shift();do if(i=r.execute(r.state,r.delay))break;while((r=o[0])&&r.id===n&&o.shift());if(this._active=!1,i){for(;(r=o[0])&&r.id===n&&o.shift();)r.unsubscribe();throw i}},t}(Dt);var Oe=new Sn(wn);var M=new F(function(e){return e.complete()});function Vt(e){return e&&C(e.schedule)}function Cr(e){return e[e.length-1]}function Ye(e){return C(Cr(e))?e.pop():void 0}function Te(e){return Vt(Cr(e))?e.pop():void 0}function zt(e,t){return typeof Cr(e)=="number"?e.pop():t}var pt=function(e){return e&&typeof e.length=="number"&&typeof e!="function"};function Nt(e){return C(e==null?void 0:e.then)}function qt(e){return C(e[ft])}function Kt(e){return Symbol.asyncIterator&&C(e==null?void 0:e[Symbol.asyncIterator])}function Qt(e){return new TypeError("You provided "+(e!==null&&typeof e=="object"?"an invalid object":"'"+e+"'")+" where a stream was expected. You can provide an Observable, Promise, ReadableStream, Array, AsyncIterable, or Iterable.")}function zi(){return typeof Symbol!="function"||!Symbol.iterator?"@@iterator":Symbol.iterator}var Yt=zi();function Gt(e){return C(e==null?void 0:e[Yt])}function Bt(e){return un(this,arguments,function(){var r,n,o,i;return $t(this,function(s){switch(s.label){case 0:r=e.getReader(),s.label=1;case 1:s.trys.push([1,,9,10]),s.label=2;case 2:return[4,et(r.read())];case 3:return n=s.sent(),o=n.value,i=n.done,i?[4,et(void 0)]:[3,5];case 4:return[2,s.sent()];case 5:return[4,et(o)];case 6:return[4,s.sent()];case 7:return s.sent(),[3,2];case 8:return[3,10];case 9:return r.releaseLock(),[7];case 10:return[2]}})})}function Jt(e){return C(e==null?void 0:e.getReader)}function U(e){if(e instanceof F)return e;if(e!=null){if(qt(e))return Ni(e);if(pt(e))return qi(e);if(Nt(e))return Ki(e);if(Kt(e))return On(e);if(Gt(e))return Qi(e);if(Jt(e))return Yi(e)}throw Qt(e)}function Ni(e){return new F(function(t){var r=e[ft]();if(C(r.subscribe))return r.subscribe(t);throw new TypeError("Provided object does not correctly implement Symbol.observable")})}function qi(e){return new F(function(t){for(var r=0;r=2;return function(n){return n.pipe(e?A(function(o,i){return e(o,i,n)}):de,ge(1),r?He(t):Dn(function(){return new Zt}))}}function Vn(){for(var e=[],t=0;t=2,!0))}function pe(e){e===void 0&&(e={});var t=e.connector,r=t===void 0?function(){return new x}:t,n=e.resetOnError,o=n===void 0?!0:n,i=e.resetOnComplete,s=i===void 0?!0:i,a=e.resetOnRefCountZero,f=a===void 0?!0:a;return function(c){var u,p,m,d=0,h=!1,v=!1,Y=function(){p==null||p.unsubscribe(),p=void 0},B=function(){Y(),u=m=void 0,h=v=!1},N=function(){var O=u;B(),O==null||O.unsubscribe()};return y(function(O,Qe){d++,!v&&!h&&Y();var De=m=m!=null?m:r();Qe.add(function(){d--,d===0&&!v&&!h&&(p=$r(N,f))}),De.subscribe(Qe),!u&&d>0&&(u=new rt({next:function($e){return De.next($e)},error:function($e){v=!0,Y(),p=$r(B,o,$e),De.error($e)},complete:function(){h=!0,Y(),p=$r(B,s),De.complete()}}),U(O).subscribe(u))})(c)}}function $r(e,t){for(var r=[],n=2;ne.next(document)),e}function K(e,t=document){return Array.from(t.querySelectorAll(e))}function z(e,t=document){let r=ce(e,t);if(typeof r=="undefined")throw new ReferenceError(`Missing element: expected "${e}" to be present`);return r}function ce(e,t=document){return t.querySelector(e)||void 0}function _e(){return document.activeElement instanceof HTMLElement&&document.activeElement||void 0}function tr(e){return L(b(document.body,"focusin"),b(document.body,"focusout")).pipe(ke(1),l(()=>{let t=_e();return typeof t!="undefined"?e.contains(t):!1}),V(e===_e()),J())}function Xe(e){return{x:e.offsetLeft,y:e.offsetTop}}function Kn(e){return L(b(window,"load"),b(window,"resize")).pipe(Ce(0,Oe),l(()=>Xe(e)),V(Xe(e)))}function rr(e){return{x:e.scrollLeft,y:e.scrollTop}}function dt(e){return L(b(e,"scroll"),b(window,"resize")).pipe(Ce(0,Oe),l(()=>rr(e)),V(rr(e)))}var Yn=function(){if(typeof Map!="undefined")return Map;function e(t,r){var n=-1;return t.some(function(o,i){return o[0]===r?(n=i,!0):!1}),n}return function(){function t(){this.__entries__=[]}return Object.defineProperty(t.prototype,"size",{get:function(){return this.__entries__.length},enumerable:!0,configurable:!0}),t.prototype.get=function(r){var n=e(this.__entries__,r),o=this.__entries__[n];return o&&o[1]},t.prototype.set=function(r,n){var o=e(this.__entries__,r);~o?this.__entries__[o][1]=n:this.__entries__.push([r,n])},t.prototype.delete=function(r){var n=this.__entries__,o=e(n,r);~o&&n.splice(o,1)},t.prototype.has=function(r){return!!~e(this.__entries__,r)},t.prototype.clear=function(){this.__entries__.splice(0)},t.prototype.forEach=function(r,n){n===void 0&&(n=null);for(var o=0,i=this.__entries__;o0},e.prototype.connect_=function(){!Wr||this.connected_||(document.addEventListener("transitionend",this.onTransitionEnd_),window.addEventListener("resize",this.refresh),va?(this.mutationsObserver_=new MutationObserver(this.refresh),this.mutationsObserver_.observe(document,{attributes:!0,childList:!0,characterData:!0,subtree:!0})):(document.addEventListener("DOMSubtreeModified",this.refresh),this.mutationEventsAdded_=!0),this.connected_=!0)},e.prototype.disconnect_=function(){!Wr||!this.connected_||(document.removeEventListener("transitionend",this.onTransitionEnd_),window.removeEventListener("resize",this.refresh),this.mutationsObserver_&&this.mutationsObserver_.disconnect(),this.mutationEventsAdded_&&document.removeEventListener("DOMSubtreeModified",this.refresh),this.mutationsObserver_=null,this.mutationEventsAdded_=!1,this.connected_=!1)},e.prototype.onTransitionEnd_=function(t){var r=t.propertyName,n=r===void 0?"":r,o=ba.some(function(i){return!!~n.indexOf(i)});o&&this.refresh()},e.getInstance=function(){return this.instance_||(this.instance_=new e),this.instance_},e.instance_=null,e}(),Gn=function(e,t){for(var r=0,n=Object.keys(t);r0},e}(),Jn=typeof WeakMap!="undefined"?new WeakMap:new Yn,Xn=function(){function e(t){if(!(this instanceof e))throw new TypeError("Cannot call a class as a function.");if(!arguments.length)throw new TypeError("1 argument required, but only 0 present.");var r=ga.getInstance(),n=new La(t,r,this);Jn.set(this,n)}return e}();["observe","unobserve","disconnect"].forEach(function(e){Xn.prototype[e]=function(){var t;return(t=Jn.get(this))[e].apply(t,arguments)}});var Aa=function(){return typeof nr.ResizeObserver!="undefined"?nr.ResizeObserver:Xn}(),Zn=Aa;var eo=new x,Ca=$(()=>k(new Zn(e=>{for(let t of e)eo.next(t)}))).pipe(g(e=>L(ze,k(e)).pipe(R(()=>e.disconnect()))),X(1));function he(e){return{width:e.offsetWidth,height:e.offsetHeight}}function ye(e){return Ca.pipe(S(t=>t.observe(e)),g(t=>eo.pipe(A(({target:r})=>r===e),R(()=>t.unobserve(e)),l(()=>he(e)))),V(he(e)))}function bt(e){return{width:e.scrollWidth,height:e.scrollHeight}}function ar(e){let t=e.parentElement;for(;t&&(e.scrollWidth<=t.scrollWidth&&e.scrollHeight<=t.scrollHeight);)t=(e=t).parentElement;return t?e:void 0}var to=new x,Ra=$(()=>k(new IntersectionObserver(e=>{for(let t of e)to.next(t)},{threshold:0}))).pipe(g(e=>L(ze,k(e)).pipe(R(()=>e.disconnect()))),X(1));function sr(e){return Ra.pipe(S(t=>t.observe(e)),g(t=>to.pipe(A(({target:r})=>r===e),R(()=>t.unobserve(e)),l(({isIntersecting:r})=>r))))}function ro(e,t=16){return dt(e).pipe(l(({y:r})=>{let n=he(e),o=bt(e);return r>=o.height-n.height-t}),J())}var cr={drawer:z("[data-md-toggle=drawer]"),search:z("[data-md-toggle=search]")};function no(e){return cr[e].checked}function Ke(e,t){cr[e].checked!==t&&cr[e].click()}function Ue(e){let t=cr[e];return b(t,"change").pipe(l(()=>t.checked),V(t.checked))}function ka(e,t){switch(e.constructor){case HTMLInputElement:return e.type==="radio"?/^Arrow/.test(t):!0;case HTMLSelectElement:case HTMLTextAreaElement:return!0;default:return e.isContentEditable}}function Ha(){return L(b(window,"compositionstart").pipe(l(()=>!0)),b(window,"compositionend").pipe(l(()=>!1))).pipe(V(!1))}function oo(){let e=b(window,"keydown").pipe(A(t=>!(t.metaKey||t.ctrlKey)),l(t=>({mode:no("search")?"search":"global",type:t.key,claim(){t.preventDefault(),t.stopPropagation()}})),A(({mode:t,type:r})=>{if(t==="global"){let n=_e();if(typeof n!="undefined")return!ka(n,r)}return!0}),pe());return Ha().pipe(g(t=>t?M:e))}function le(){return new URL(location.href)}function ot(e){location.href=e.href}function io(){return new x}function ao(e,t){if(typeof t=="string"||typeof t=="number")e.innerHTML+=t.toString();else if(t instanceof Node)e.appendChild(t);else if(Array.isArray(t))for(let r of t)ao(e,r)}function _(e,t,...r){let n=document.createElement(e);if(t)for(let o of Object.keys(t))typeof t[o]!="undefined"&&(typeof t[o]!="boolean"?n.setAttribute(o,t[o]):n.setAttribute(o,""));for(let o of r)ao(n,o);return n}function fr(e){if(e>999){let t=+((e-950)%1e3>99);return`${((e+1e-6)/1e3).toFixed(t)}k`}else return e.toString()}function so(){return location.hash.substring(1)}function Dr(e){let t=_("a",{href:e});t.addEventListener("click",r=>r.stopPropagation()),t.click()}function Pa(e){return L(b(window,"hashchange"),e).pipe(l(so),V(so()),A(t=>t.length>0),X(1))}function co(e){return Pa(e).pipe(l(t=>ce(`[id="${t}"]`)),A(t=>typeof t!="undefined"))}function Vr(e){let t=matchMedia(e);return er(r=>t.addListener(()=>r(t.matches))).pipe(V(t.matches))}function fo(){let e=matchMedia("print");return L(b(window,"beforeprint").pipe(l(()=>!0)),b(window,"afterprint").pipe(l(()=>!1))).pipe(V(e.matches))}function zr(e,t){return e.pipe(g(r=>r?t():M))}function ur(e,t={credentials:"same-origin"}){return ue(fetch(`${e}`,t)).pipe(fe(()=>M),g(r=>r.status!==200?Ot(()=>new Error(r.statusText)):k(r)))}function We(e,t){return ur(e,t).pipe(g(r=>r.json()),X(1))}function uo(e,t){let r=new DOMParser;return ur(e,t).pipe(g(n=>n.text()),l(n=>r.parseFromString(n,"text/xml")),X(1))}function pr(e){let t=_("script",{src:e});return $(()=>(document.head.appendChild(t),L(b(t,"load"),b(t,"error").pipe(g(()=>Ot(()=>new ReferenceError(`Invalid script: ${e}`))))).pipe(l(()=>{}),R(()=>document.head.removeChild(t)),ge(1))))}function po(){return{x:Math.max(0,scrollX),y:Math.max(0,scrollY)}}function lo(){return L(b(window,"scroll",{passive:!0}),b(window,"resize",{passive:!0})).pipe(l(po),V(po()))}function mo(){return{width:innerWidth,height:innerHeight}}function ho(){return b(window,"resize",{passive:!0}).pipe(l(mo),V(mo()))}function bo(){return G([lo(),ho()]).pipe(l(([e,t])=>({offset:e,size:t})),X(1))}function lr(e,{viewport$:t,header$:r}){let n=t.pipe(ee("size")),o=G([n,r]).pipe(l(()=>Xe(e)));return G([r,t,o]).pipe(l(([{height:i},{offset:s,size:a},{x:f,y:c}])=>({offset:{x:s.x-f,y:s.y-c+i},size:a})))}(()=>{function e(n,o){parent.postMessage(n,o||"*")}function t(...n){return n.reduce((o,i)=>o.then(()=>new Promise(s=>{let a=document.createElement("script");a.src=i,a.onload=s,document.body.appendChild(a)})),Promise.resolve())}var r=class extends EventTarget{constructor(n){super(),this.url=n,this.m=i=>{i.source===this.w&&(this.dispatchEvent(new MessageEvent("message",{data:i.data})),this.onmessage&&this.onmessage(i))},this.e=(i,s,a,f,c)=>{if(s===`${this.url}`){let u=new ErrorEvent("error",{message:i,filename:s,lineno:a,colno:f,error:c});this.dispatchEvent(u),this.onerror&&this.onerror(u)}};let o=document.createElement("iframe");o.hidden=!0,document.body.appendChild(this.iframe=o),this.w.document.open(),this.w.document.write(` + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

Changelog

+

1.2.2 (2023-09-29)

+
    +
  • #28 Add legacy ssh algorithms to support old OS versions
  • +
+

1.2.1 (2023-09-07)

+
    +
  • #26 Add dark theme for diff
  • +
+

1.2.0 (2023-08-23)

+ +

1.1.1 (2023-08-13)

+
    +
  • #1 Add tests
  • +
+

1.1.0 (2023-08-01)

+
    +
  • #16 Add missing and extra config lines
  • +
+

1.0.0 (2023-07-23)

+
    +
  • Publish on PyPI.
  • +
+

0.1.1 (2023-07-23)

+
    +
  • Add DataSoures as sources for device configurations.
  • +
  • Add docs.
  • +
+

0.1.0 (2023-07-09)

+
    +
  • First release.
  • +
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/contributing/index.html b/contributing/index.html new file mode 100644 index 0000000..4c4cadb --- /dev/null +++ b/contributing/index.html @@ -0,0 +1,714 @@ + + + + + + + + + + + + + + + + + + + + + + + + Contributing - NetBox Config Diff Plugin + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

Contributing

+

Contributions are welcome, and they are greatly appreciated! Every little bit +helps, and credit will always be given.

+

You can contribute in many ways:

+

Types of Contributions

+

Report Bugs

+

Report bugs at https://github.com/miaow2/netbox-config-diff/issues.

+

If you are reporting a bug, please include:

+
    +
  • Your operating system name and version.
  • +
  • Any details about your local setup that might be helpful in troubleshooting.
  • +
  • Detailed steps to reproduce the bug.
  • +
+

Fix Bugs

+

Look through the GitHub issues for bugs. Anything tagged with "bug" and "help +wanted" is open to whoever wants to implement it.

+

Implement Features

+

Look through the GitHub issues for features. Anything tagged with "enhancement" +and "help wanted" is open to whoever wants to implement it.

+

Write Documentation

+

NetBox Config Diff Plugin could always use more documentation, whether as part of the +official NetBox Config Diff Plugin docs, in docstrings, or even on the web in blog posts, +articles, and such.

+

Submit Feedback

+

The best way to send feedback is to file an issue at https://github.com/miaow2/netbox-config-diff/issues.

+

If you are proposing a feature:

+
    +
  • Explain in detail how it would work.
  • +
  • Keep the scope as narrow as possible, to make it easier to implement.
  • +
  • Remember that this is a volunteer-driven project, and that contributions + are welcome :)
  • +
+

Get Started!

+

Ready to contribute? Here's how to set up netbox-config-diff for local development.

+
    +
  1. Fork the netbox-config-diff repo on GitHub.
  2. +
  3. +

    Clone your fork locally

    +

    $ git clone git@github.com:your_name_here/netbox-config-diff.git

    +
  4. +
  5. +

    Install dependencies and start your virtualenv:

    +

    $ poetry install -E test -E doc -E dev

    +
  6. +
  7. +

    Create a branch for local development:

    +

    $ git checkout -b name-of-your-bugfix-or-feature

    +

    Now you can make your changes locally.

    +
  8. +
  9. +

    When you're done making changes, check that your changes pass the + tests, including testing other Python versions, with tox:

    +

    $ poetry run tox

    +
  10. +
  11. +

    Commit your changes and push your branch to GitHub:

    +

    $ git add . +$ git commit -m "Your detailed description of your changes." +$ git push origin name-of-your-bugfix-or-feature

    +
  12. +
  13. +

    Submit a pull request through the GitHub website.

    +
  14. +
+

Pull Request Guidelines

+

Before you submit a pull request, check that it meets these guidelines:

+
    +
  1. The pull request should include tests.
  2. +
  3. If the pull request adds functionality, the docs should be updated. Put + your new functionality into a function with a docstring, and add the + feature to the list in README.md.
  4. +
  5. The pull request should work for Python 3.8, 3.9 and 3.10. Check + https://github.com/miaow2/netbox-config-diff/actions + and make sure that the tests pass for all supported Python versions.
  6. +
+

Deploying

+

A reminder for the maintainers on how to deploy. +Make sure all your changes are committed (including an entry in CHANGELOG.md). +Then run:

+
$ poetry run bump2version patch # possible: major / minor / patch
+$ git push
+$ git push --tags
+
+

GitHub Actions will then deploy to PyPI if tests pass.

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/index.html b/index.html new file mode 100644 index 0000000..1c05cea --- /dev/null +++ b/index.html @@ -0,0 +1,577 @@ + + + + + + + + + + + + + + + + + + + + + + NetBox Config Diff Plugin + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

Home

+ + + +

About

+

With this plugin you can find diff between the rendered configuration for a device to its actual configuration, retrieved from the device itself, or stored in DataSource. +Read about DataSources for further details.

+

Device configuration renders natively in NetBox. This feature was introduced in 3.5 version. + NetBox Labs blog post about it.

+

Plugin supports a wide list of vendors (Cisco, Juniper, Huawei, MicroTik etc.) with the help of Scrapli. Read Scrapli and scrapli-community documentations to find full list of vendors.

+ + + + +

Installing

+

For adding to a NetBox Docker setup see +the general instructions for using netbox-docker with plugins.

+

Install with pip:

+
pip install netbox-config-diff
+
+

Add to local_requirements.txt:

+
echo netbox-config-diff >> local_requirements.txt
+
+

Enable the plugin in /opt/netbox/netbox/netbox/configuration.py, + or if you use netbox-docker, your /configuration/plugins.py file, + and define credentials for devices connection:

+
PLUGINS = [
+    "netbox_config_diff",
+]
+
+PLUGINS_CONFIG = {
+    "netbox_config_diff": {
+        "USERNAME": "foo",
+        "PASSWORD": "bar",
+    },
+}
+
+

Run database migrations:

+
python manage.py migrate
+
+
+

Collect static from the plugin:

+
python manage.py collectstatic --noinput
+
+

Restart NetBox service:

+
systemctl restart netbox
+
+ + +

Usage

+

Read this doc to find out how to use plugin

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/media/screenshots/compliance-diff.png b/media/screenshots/compliance-diff.png new file mode 100644 index 0000000000000000000000000000000000000000..855e176c0f337d97c6da2e887dbdaf38d850559e GIT binary patch literal 31744 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 z

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 Sq2P8dVtU!)Qpp96`~L$jj8Mt| literal 0 HcmV?d00001 diff --git a/media/screenshots/compliance-error.png b/media/screenshots/compliance-error.png new file mode 100644 index 0000000000000000000000000000000000000000..50f8393924d362415c0db1d55abdf2afc02bfdfc GIT binary patch literal 48801 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 z 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 literal 0 HcmV?d00001 diff --git a/media/screenshots/compliance-list.png b/media/screenshots/compliance-list.png new file mode 100644 index 0000000000000000000000000000000000000000..08d22653ddd1364cd1cc8f55ddada9af0492adec GIT binary patch literal 23740 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ⅆ5Ge%1{A5!x);9zIHBVWnbrAXl z)xEqD1@d=uPlOwpUPcXi?(KH?GaQy5| zp@>?9bAaMoz1y4iiopRP>~vNNDmcxI65R zob-m6%30e=E*&50n||ND{;oS*7HMe=V4ZD0%p>&6r{?rocaEot>4tIxd&39%8G~1L zPo@$VMZ5NULpN@u6VK<7@gkFJLwdxjR{vR5{Z_0)9b@8Uj$Tx$Gj?`5-9PIEg1l7p z3t++t5GL#_YOvxU(gbk^Snydh>0ED{0t!oz(BNv|b{ddDvP^cb8gXQ6R!wJt?5{gm2fEj{NPc@Nbz%I20zJp``SV&z2#$&NIg9 z1RrouV^0$jm`8Xo7?S?6Q$ewl%cG~spT4ReHe0)cLU7OKuKJ-ffzbPv$_Gb$e0*ZR zzx^OxFM{KOV%2!3kEG@*R=1wQtJlrof>@~>^ebAD7KN%DYoRV(C z*9NfMCO)n-dh$gQQn*V((l3cg==X@xUXM0*?HT^%GNlJG$CMa*<8^*Jp@A171;9qh zRXM*^Y01>#?+Vt5P`zjvt7C$7qe!6@>sWzVC0_E(*IpzAZtTTi1}MfRl6C?*O}F)f zd1Ej6>OY7L)5?C<6b}3#hi+~~@V`;1%I0N?OoN9A-IP0*z`bNQRk*_L3jJXHppcGSCbDKYDy%w18QTwm-j#>lN|TT=oW?9Q6dE0#LtAWBnl zwI3v$A{aNp?9bG4_zkog@4G*;8yCnmUeeKp)%LYulDsJaU7v5!d}84Ppd8+(k6x#$RYwh#51pyb`v66QDDL!>gy)aH_p+G`sjM@?sSiY^8VE_FnoSKwDs_quOYY# zmy)^+Jjtqv_+vwlpRW$x>dVS!MJ>rPov^Ug#cL2XouQB<>|IP^P?=cpUx>{N9w^Y z;+xBk9Gg4-p*G3UE<)$Nv(pj#Als#;Z3oCCrEIo4}{ z>MmxlgrG2Xwa$K+V!gLjI0dSf!wMi18P=@7hqpM+msyZ1WE-*H^-*vyuk30W^#ZHQmGNKXDYgv7AI<#u>BOFd$ z^mM8(DRaf<3|_iI>{Dnvxymp}cbpRiV7;UxPcJna+7>Y(OrwmEb9gl&S+j5m1j?)%WBTwl@bmhAyA&tMTd(Njzg7trj0==hd+zo=zh zPg0AFzFdH#-)G@P=IPN*6!je~36z(I?wez0mSZZ+HgbjvoxLrrq5!>H48kpMEyrfn z-h1Dw$5Lt6y6Wou8rlBunKuAG$dqc>JyeA!2XC{z?AaX_0RcK9-A;(vfwZJ|R#^OW zNbdHZEwJp5&(d-oU@y?6tj5GkZ2$I`GO{4Q9gF(5*&I zdYa>aCph}kd~6n#g*m$BzcL*BgVA<3Fj|e? zsHdD!npP$qWpM9Na9E91dvgIcFTZ%@*zasuG^+|WJ>n?nC4X_}O)uR!b1}yITr=FA z3HMD4RSi3yjw@o(x}3(go~JS>^1x#F5(;de0XiOM^%){lW{e`aaOzACZv@7B?2qiO z(?x@F0eO;oEw>aWs8T*Sk(KvG1f!7tFYlfWbCsRJnbE^m%3;Pzm6CsM!cMYCvRbpx zvTHgU@D!%OjsW>xy9p|2gHh>DuK$Ni@r)CaIC?8o(|$Bwxhc@4UV7v_Hnv+D@Ge2! zu2819gZxa;s2DLZ6$jVf2@}c{s8C_e#r;-xlo_OxOd_;74b)5GMR)2TJt<1>-zRQ7{Ga^moqrN|>7W#&^P{%e_sr`^mtf7XTVkURdh)d;BME#qJq$YzdxWr+6-6X3P#E5FA52dxSG%K!iX literal 0 HcmV?d00001 diff --git a/media/screenshots/compliance-missing-extra.png b/media/screenshots/compliance-missing-extra.png new file mode 100644 index 0000000000000000000000000000000000000000..456ffb38fc3d8a1a40dba2cc97b48f493fbbeb26 GIT binary patch literal 27108 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 literal 0 HcmV?d00001 diff --git a/media/screenshots/compliance-ok.png b/media/screenshots/compliance-ok.png new file mode 100644 index 0000000000000000000000000000000000000000..4b1206642c9cb9a9241be417ffaf7728f77b321f GIT binary patch literal 17602 zcmdtKcT`hbv^R<(ay$sASg9&U6ckY)AYDa3#DLN}Dm?`d2rU$`fDI67k_f0s?Tmfg?3R_|OF9-cc^hIek62RTwnheFKZ8e|H|w z_u$=H@WaBfV^1TF76$j0YiaiJ3!v_u_+{Ii%1NkyE zr@gZW@BZRWhkLwy)+D(5eeT?8BU8^ritXNdgfVE4CC8ovj#RCRPF2@?H$Qdf#qOlEn9;c!;!?oj$ry@thCgXQOG+ zCoO&6t+Xs{;l>HK{oH$+nz7^xpwdbgyBxYMhSs>ZLcD!c~Th$nMLv0e|> zA%k1L{FI@6kF@GXumysw00fnsnPG39o6$A$#lcHucQECHj{Kf&_f%XhuuTs6uS9TW zx5i@->MX$`&)0AK82$`3cy$!X^8029O>^mi_~!HR=BIKuyi12^ezwbbcDtg%6VtBR zpt>^O_N~yvH2qfaGK_QTupc2mG!A)a_wvny2WayieTdnvOug=r)JgOvOPOq&XVwgJFN}zd7VdvCrr%;F*=bIpkO zlUJPz7{tq6pEaifb#C!qt+}b&eI~b9ew*>}jrKZpb*N~)On>#{{L?>&=KZEmhz1Y0 zgFNZ-JHcPGIfG80N3ueKHiOb8vq3VConA3Le?_D(%Ip#~HilZR^dngV9F*;;Ce$$* zv?mT4H>;#N_(_62{m$!3jSsk*NgY_BoXG#;lb@}{h!r4OzUok|&)j4h5B3{DZhI>{-!p0BIJOqm{t9&6FQyTHMR_wy8;3k%&*@;)K+YGqz zZS$O0WLb&%uPTSULlLro<&h4va9pFP${*7b%i4u;@_mtXRgd4*VyMyqAUpsxmv|jf z?~#L4iSr`Z@L7FoMYIZEo|S~x&m2L4W@0n_LgDn}H0M^rM76TTu7>kGThzL4mJx9& z3^nPMM6!e}rC__P`x|zOQXR1&E*pjQRV$QjZWi#_Si%avW?{ zM_|IOsb3TR%ZaG)AuqCna}FgZ{^EiC^u{9Fp#IZ92il*FsVeXsuKQZq=#aWW%ir%R z$#&;q^7VFlgf)v!d)1a<2JN7QI6*6X=Ma_>jkV5S)*{_0`eLZIOWW_fT3`oMknt7V zJs5qVYCgBIj-ep(O9+$ysm_ocqWOl-4h$+Dl7URH zwO(**!MEjz7$>Z}C7An{2oPm%pSoYGp$)OCNrSbU80gV+ii4iSCmYx%N7zaV5-l-G z`BBgU*C#`JVn5JeOtB#MN(@xO_*dzHg9F&&JQGK_6RS>K$|E+sMqU1pvWAJ3kpyI3 zGFP^0Tzkhn!Km(dP-iS+5tmZj|FDcCagaR3j;ka0=Nrb z@QJ8|r4^9S$sRv!-1AH@E-f&`1ioA%FDbD`j^_13dGSERz{vK`BDrdhY8jlvH|$iI zJmEd`So)&%la`lyPgN85?B%@CxTpH}DgF@&XaMKsJ;%+P!51xxro7;NfvBCLCsdz) zglVCcx<2LJi7ywWO6nahqb`puvbCupM(UIANAjkGF8I)|7T7!@q1;n+J`!zo!(s2P z&MlgRXp{2)@aKSLf1S#E^hZmM{NcMhcdOYoge9df5TKk!1o(HHm-F+5z(Kj5Mb_-Q z#>-QIcW1HNzJN~EbIgJ3Wel=-=Cr)sC8kH!z32F}k-PHHi_kJC(QO8}f?WsSy212m zRkN9(W9%Z@o}7l=8;f0x<%M-R`!SXnyf9PyxXBZ8PMps&!cv9tae6e7lGx<=fLaPM zIR7inWl2(O`#4rWjVs=OX3UzIk%aky+D=_w<5=AiMw zMe@i|li32_gwvVW7H8f3SfaM<@EPb6N!0<<9MJdyn(lKQ?BGK!6R>1xPxo{`8F-2+Xe>~rgyeJI-1~hZ0jljljYW{OK+$80pkRmr(Zdq0!M>>Ej|qi zDng>s*!~Ys`%&MN+j%=Ey%fuur_v>MGaF42K?X2bCcd+z{^1K&{hnRFac!`0JUKwV z(U{i@-U_q{o)58a+}uf-U&BO{c%JfKbC0OKlfZ9c@pO$@Eni1Fw8g=|@aM9?s6SG6 zsPF=*=n2p_D-)}XGJ*Qua#VDREehd!;LqX-A41U94Lrr%rDJ1uCzKk{bEsua|q)6Qe1F5xKZGzkze zO`m8%C&8azJrnkP_{sfW0q{__A)4FnYV#Z^pASSN2bTXni5*D%kuaF)@DF}k7Q0v6gOXdHU$N8VP{?C2V|Nb3k zbNYNHY-|8CmRMV=OkuiCA8$)+pon0*Iu=oV$G{j16V>vo{*O* z(P>bEd9_zXHFY_7o0S2hW-g5WTo%=$8q7~+_oZ0Wuem17skML9!vBd~o&g8X*yjsO z#5RO1F6$7_In)ro6~+;gi6Dky1sR$IMRn#O0H+s=yMtV z%+{GVFaU4KAqXa1Zq-8Lfh2$ewoue+#`+mjoCqqlF zG`jmv4g4Y|n4~nAssT!i*5UvxLGh|UNoKvN&3v|*&8BrJgk8=l0eC6K2Wp<_2*XZ1 zjfID3<7Ai1<~p>(hQBKiK-Xr{E4wOWs}4id+~D^IZB+BF#1by+vTD2B z8hAsrUj5WC@Y|kqltwMpzsf!*wX2Nt4#`|srKmr{B7lan0JVh(76d~dht2z}$L$9c zKw*x}%OhytG^dHWurv;u9prF24+sv-zPebW8)4Vbg1pbNwquE1$`sOq=eKapT+Q4h z-t*Tyx^`)_ZKA6Y2Q9F0L$()&JbmL&Yg(HM{}cBIv=oxc&?t12DAJ16iJlnD$uUP` zbuf2`T@z@A_-O}B%di`Th($x>Cn;DA_2B%E*~Y~(BV6OB#i9Nb;Fho6`4W7Hs|hKz zA=ryl|01R#naI5Fw2(f?*cE2(9#VD2OA|$n=yy7)N_e%?tBU1^WAdhBKVuP`9!)JL zyyJ@yL=y?eagyy3ZXKsfLL3&+V+fGJF;h zhosXd_F)4SFbRI&wgUacRvV9Rpt2QSUjdh#6zlZg*m+A;NP`xn%mdPLzfOOuVq@Ib zwjb|gA6?%_69RT9?=TwFry^hv1ymKzZw%cjNDr~5Gq&QR?!+m*!6@`D_Bkt0ejY;G zRSp#drjO*d;MB_QRm^_NQPetR2;me=rvwaa8pi6dRRTRWBNQxF`=e`Tnm`4k<$57g zer6nbm4!{FU4F!)I{C(HtClLuogHw_PO-EIuBFXfWv&BIM4hfRydi^|v15$vEaJ<^ zWgCRf%SFZmu?Efr;G*s7FNe$mL~eo_<>SdP66{n2RtrR8WNH`0IsW>Ya5jLj$5vh+S$t63ORh0nanmZ z+5u4CBxX1{a#k8T!j>PKNxqp$dM+!#deuDJAGm;W!KEZEhs22+z#GC!E^E*m3?gS_ zf;5*~sT8?~#nPA{{lGijS}SDNA?CMl)Mj5_x?cbsiFJ0b&m*}Zy<4@ej@SML!PNoB ztc1ahY2Hyk7v$w=>g`MRsZ`<&fObPfQY!E;S2A*yh6jDT6$a4(5`$!5Hd+_wwUEc3 zO`;KA!lm4@dILs;tf~ep;u_~cR{}kfY?y9Ui*9zAc8dxNfUb;n+Bl$d8!yHp)KCLlZzUH4e)Qr}$rMGo2 z@w1UUnQm7xqHU)AYhj>S-1$o7km71wueL!ZD8y;?jn*KTbxeyDs7hT=GR3?4oy8fh zTWX0`XBSK5mK#X<5E7+8^`b6;K&=N4^4(vsPeGh=gfj`FsM^vrwdoYdKo2o`W!GfJZ#EW%wNSY9$*R#@d7T1phyCJ=6|{q)P#MDSaPZhPra zH1$2O#7x;?9T9v{WuI!f_dJbXf@t5km3ApBsE~b@rhS-c4%vl!QxseuV2n7D zl;vo}|Kss!5wAuU1H3=t*4ZN?Zd)>U3{n{e2A!2fAq=kqs4Qa2&eKWQqS$+N+uorQ z_zQl}OR1FQRi!Ict58_)*PyD{gv3eIMZoVYS=TE- zyH-E006aRv%w43&fDc>iZ{O$FpW3X_KhSv{O`RCL{EH#M zt}U{IwZ03G3J6C7mJZdkiRoPxg|BEmD(mM|J6qR91Bwn=l!-o4xTKFeXNg3Z|4|!$ zfbS3A5Go&6F2z22hQeB5wY9HY+ow8CX5El+84X1p;wyf23q68dSsH4sI|2pwLvFmj zTyXqY=WjF8%=cPF`-{DPiZe^&>u7a3-DiijGuA`y%d;1n>tZV|Rrvg)Ll8n=>3V80 zgJ_E?`ig4!XrSvQXIR4QTJ)QhfQOaR_1=^i66-KlvFk>~UI5$m4MgOdu|O`0u4h-%XLV{Q!~C! zT%_|>g1Irw(Am_*mhXoYJ$3B$nNFxpaQT<8FWqP;s$9VK^#MPm^$oK zdVle{IrIq?QK28zX7YGgc#&*!Phu7)wTW{Mjme<2+pP$*iw_pd0GkUQ7CWkCZyh^l zQN8rzK}gwZ<;iDgCcT^ZO_)Q1@fwQWfGN@n!l3yxtiiJoC1W68OdvrGzv1=)Bx* z6`9?ua>oEP+m{TC@+}f#@;xlnl;05-sgklP@Qza$c{wb6b-6R;K)958nM^NVyK-NH zsV1*6x(Tf~Jp{anxV~oe4C}+EVy1q1U+RQ1113Ou-LxEqF1km|q z9VuMa{bdr%hF()m=Ua`uUL2gcc{ZGeDxNEGa6|5IB^Ym|UFXvd9TCPmLQS^O>O&a^ zZRH(K7h&JXSD~Ie$`@I!iX85P!XEoaEE6l3{vDxh_cbLm1bNYFCCK;pPz__-hvO{% zTptmg{VAI7@~28nYvwOF4eeLq0kjE0uLFvuFI+4q{hTVBxy~o{84CPtd+9;si3o0BX`?{_)F zhtGbGEJHA7H-Dp%TZ~6Plj4HA2DKPf22h}T)IuxVev47h_7V`co7@(7;`%WN@`muJ z^va^v4~o;~%kosQ%YOF2 zT*-$wM(_60ZK`4V=5J0Uz!H4L&`9O>hYKxsatbA99*Ye= zDLDlv4K3stCdiN(2X;9fV`CY~>UYS11Bg)DDqp{62ylOGR-o1}ad(sE`BK&)=R@a& z#u46&=gO~#l!xtwn>U@4EXL3h--qGo$dM-{7vT=O&HvHr_!OrCN@z%*os!&ZOorun z?)JrV7Jk5M@8tH)e*@sN2mUJ!%0jM5qAKASTfXSwbDZufA_eKC2ys<#d8%#L@hCji z&Qi>>70t>fS`~R=j4eQ%v}yYv_4ZrW{A$=3BP6v94l z9W=J>QI&%Z-gEi{rf=1YiSi4NX*KFc&MJAg^-d;D^9Dhq5)O6=9G9tgP?YuMxP3~@ zl+Qj4iavBu&orLM@ud1Gw{B~EZ?Fq3wQs-` zIK5~h>Na>(ls~_4Ll`kUNa2w9ps>D66>$$+>#_i)6BkH9zhEJZHP-&t(2VYF4-5IQ zS*>gQq2V!>vBi@AXhDA%W>$q@YISBJhL4sMByxZ|&F%^UDsm7@5V zH6Wv2QMFcga5L+E7VY}JzNm4vr?|(lQSaLxLbU|#x>iS~9z_^0{Mq8?df{Ky509dg zH?BfOA3q1*zNzUs5C{7xrt^TP6XK*53t7k(8c@fIGYw#M!@~6IP#7n-0!-Can7{kQ z(7&|Cv(jc}enTd28IZwIk9TDj`d4KBN#O_IlE&Id17EP&GRh~6AvAXu>(L>%a_34wwMBAWHqHduTR~N%TRWukbzBS5W_~J%R0CZvGxCEu-HWnm z0r_i{vKYDO)CZjP(8bL(s3ddEFNv%P_loy@w@i2k=rj&W$9}MgsU4;q7dc(hZBG2` z^Z8Bd$CcUu)Qnlz>?L@pWB>Y3XOn8TQATf%ZHxt4TXHDDsI?L6}M;kEx4E+gS> z7yr{Z_6OVJ9=_Tg2V%Z$u-px_F0+5zrDuLym$BE^`8gsy;Wi3rKy}vDPw_u+8k}ml zf9W0T0ThYWN76sBE2(L?HQTGeF@1h6&#SmhOEnU=)TG|ft-{z#*qH9Nnr zb0UaO6y(%SWrspa*Sf#vL>xYad`MrGKE_N6(gylx%Swq&i~b|#2CsXDS29SzqROvq z*k6#{xr%lRHWg_YAPNTtgj-_gumM#EGTc``K|lkYU4Hqo_ja<C4mNBFrfVCGRPZ7ffrV&$e@6<2|J=fo!;`10}ge=6Q(|9H@!Ff?L|G zjcw|gcU(f#WQOr{(?;%A^epNNZGYgLfh~o77v-1GKKx)7)akbycs(T3@~j_&fW>Wy>T)SQb*Z^^37;*C}C&3aL5 zjZeZ^DlT_!KTNW{CQ|vfE1L1BM^5y_Aqg3K2M^A5smX?479cUKZ$+`-m-K%+p?>SH znppzdNNP>LT%~DknY|tDlJ9B!OH&13 zsAj;1#)Qa|rjOJZKWV05Vvm6r%^V4yHQ?zVH;>TgBF24s?gfS+{oax4Xig#p_bP&+ zE?09PWO!(*Qx0l}%-u?USSqAtXH9|c{^RZGvjStT$Nd~d^+ZglxH{e_Igi6 z7WRTo=(9w8VNmb@(GK*}cK+r{u*~@!{vIE3{P3t} zhZn;Sk+)H@z5!5HyRrpGU{?kX+cHKV(@!p=Si##3SOFKG zeeT#-6hA!~P(6`Vh?&flQgaln{D#$L3s0e^+q|>Sh?UR9t9fob{W`po%oJMxhZ-dZ zERhg<+jRu`T=Y!6TSGhVPrNefn=D;dh-)?y!kTbH5H-6u=WvUi0p<9f#3E&!UD8ZP zNm=M1YUHksCE!uZI$izOdeu4NNL#ugqPEpgL>au?8MooP#OtJ+fMsN)3lft?d>=0& za=n1z^S=3HxQR+h|9t(fhHqH~MiL9!!wh#6fM$~ew@{$mqCDV*W>F_h0xB_N-7wd| zByqa)*%`ZCO|1)~vW>q7qlPJ21yB8e z=1@WS=w@mwX@c6~-60;qakGg(w7)ldkiRJ%vw1Pddj&bY;moX7Jzm`ImE;#NH31+3 zO)ayWs4NJVuLYB{?K5sH&@RX#X{WJ zGrKL&oGrKj&?{cOsxZcRh!MQP44*b)``?3sUMBbg3*B{2fe{T87ua)ps_BVPNgBmZ zA_BJ}q~+v7zs#)K+?F_$mOxtm*iHB2(HV5@c*KpV+?@J%F7Y9MTuiclL01jL*?uf{ zGJ|yYhClqavC02#eWphE4>}W=zGyyp9QM@{qzzAEh;A0h5Q!TQVv@q*1Jc7G)xGXUO>qu&qQ@kxT#8k5WO#&KOb z5yWq2%js6Yn;t$)pSrUy@QWq`ja9+gKp!;DCaGL;>a<~Lj^Nw09OiZ{3nsn58BKgu zB+uMr-Y4=*r5I(Q%_rXJ!o|^py4x^U^y3aZ@zrn@VV_l{Y$fHX!#3{q;O7QmontNy zR7_I;P5O9uC_CpA%U9YoHvf09+m#$pJ<}y5ZDgu>L4Fm^tq7XUz|A z{!)c~*^cc^4>U`rPF`8BushTVrGhF|2CpJZGQ*{2k6;5{s?ghJ)#Gi+ZR_>MSZ&c` zY+1#+(RCNvbz&oXZK@VfswvB|8=c_fGQ9fKccxpFe~10GqG9~*6>+Tm=fo=R@hc8h zA)eL9Hg4AzpO>7#OZ7A25NFi7{k;DccM3i8GcAK4J8I{_XYcZ1r z{N(*J%~>!hF|4o{HR!)j(8wk$D)qr~|6H@s7ayO3_bLs=X$m0Gf?D~UHmCrKp(ntd zp9AAawOI1cXO8szmt()*HIb}0Bc07#KMyd=CccPlx63u&F)T9flwIogDI?GClpBoh9*t`M8)dGu?*051lDssFjHz)x z&Nr!-WLZNodqL1dLItz)?fbo`YGElkx<>X(fX`lh@dw{KHM~?i9 zxB6?}zX-1XvkkYp$qJX{NI`hH%LVKsTx`+gtMZl0vw5S##Ftzp z7cD8=ANY?wF+zvZUG*2NcYk-FVC|ppL|G_o@NpuZC}+3_1<|5$@uf~^xSYg zJgVYCY(BVXqO*A?I2b!n3j@=6brWPp_Y3jdM6c5+bhZ|ofZ=47G;Y~O*I{y0d_-#Z z@py#x9i-hILbr6U_(}u}RjpCIBZ%_cXcvI;n=uYs{w0ZO$Hg7=y3MuEF-9G7AhB}k zop8>k7XXSd;=*3OBv*R&>+c4^oZkm`rnzqPZ)qsfhZRi`a-xwI0MgvZ1C?V@U`eJ7 zwNdQ2)2((nQB7sLaUb#XYyo#9$Tp^W+#}u`5 zXxv_3IE}!orMZgvmv994F^|uEDze(Za_G+4(`buk2()Pk?j4150xV%*cTs+#1P*MsT0Dh~&-<{RFAcneEPRD}NV> zMZN6{tXyhdP%d23#2oJGp_kugyL23ur_e0bUk_UB4Rcf1Od+z)Ww}UH-Q&HC=0=ny zWT?oap5vc`$JE~WMIV-%u6^+J1WuvHO({8Wm}%KG^A2|Um8IIf?9t~tYB*3-$2(z%kFt1dix;oWb~ zHfTxkxhmI;uL#q%*N%?0=9iNd23Jl=_I@Tt<%82PUK<^Zr+GT~8F=d_>(dDl-C-fY zn*s=>t;y<5RLe_hba-LBF!WkHQ`K&n_rceBQe@xr=#Y7Yx2 zXhk|mEAsR2OanKFQj1>&g2%mo=Z{r)gXTV3JHG3lf7)#wqmz@VlNq1CvB0i%qZunD z=Y(TE<*8v#=WC~F$l>@F>jOxGGv!187sn*JI}e|wy#A(!>EYIGR*;79U?O-c-xUq0 zCQ^Dn%Q`Fjf2bp{7T+mD`gV~zPAr>>0A zc`8O}RRF*!;jFD_2(Y0$p^=am0TICvbx_7I?GIeJm*hvHmyaXR9xvo9O-vfYPh^FJ zbB@uCqU-%+Kpnr**uyqMsBtx5hI#Ju3aT37anB>R%e{EZe?}K1G}k|_sID!2Zx$WH zXWU>)P)FP?M=EX!&?RVSSbCH(;_Hb+{E~!2h~e(fvMp@t9X#%jvMQo{dM{~n}{DTO7ecD8=WUUL^ddBmr~=+rai+-!OyhpP@w^jB09c0-Wc{k`#Ep zpcokRIn8#9Cs@r$qvNKJCrxUbZ&HIfD1SXAYc z3LyH~)}n69YapG~>g@&S;yG{pRH|W$Lk-3ee&-@)fAJ3XNnzVmekq&|kDLCqN*e6b z!Ee7!vwf&(pd%}usn)KJU`<{C)~)MfhkakG53gj((_ooXw7 zP&-Hda%FZ5 z8i`mr>^dRoP!3V#%pC*PbO(UABCLbVOUVc}^?N%FA}irMx^c$W`~pE=i^hwN_1r_< zw(=MkaMP*?Uw&Q(=%V@JY_T@zK|AS)CaT-8w=z0KHBUP;VxmZ6=G2QsIxc^n)aw6^ zaJ)VyN^9x8V>(#F2CmFPrTZ*Dl=rYOfZF|O?QOS1Z;yEDCF?fMZK~a%pU+r$15Gbc>NY@#m>Bbkq=ve zn=@0$4YG|utyqraWnomBNuS*@8Qtc~qb%j+oWOf`~SEEtgnX`9t!aiU{pg2^@Goayh*k^xhUpAUJ80i>Hd$^d$RXW~k$75;YUkM3#MJJ&4==ks-mETA=IpO(l&#R7se4p(QWT(QsU4j2xoCe$HpcuyMo7gU!P8mG zGY1fj$Q5x`ej1QhqEV`Xh$_-m)y4!Zj; zCwPSJaK&#sc79%8hjU|`ym0&;dIOb{)_tRy@7J?Y5r5N&h)U2+aHb}~T=Sb*E6uAg z`yOgeD*UimPXQ>7C{J_`RtO-*&QHWZEP~5@>|PDivjXx49=@Z z8>GKzobSboJyp+5D3~+JHj!fWJ1(!NOD$v=cX0|eu7PezexRs@Xz4*VTgAv2E@3tfFCJ@q5H01ac4#(V;@KqjxYwoX{y}_7vK6cI z-0r0Ang>Q|Fze=5cq1x<=E^~Qh-4WE;2(L6#f5dZ5{E#>Qsd#FqE{tWC2H&YsH($p+}ZhLJ6 zP#pFNnaOv8><)MnF!(sfQvxvdyfOSkaB!`R!ae-3P5pM}w(T6F0B$ zUb43~hVx6+RFxQ4dF|3p@s@)Yc~Q09$7WD8Y?tWVVs3_5raWEEQG_+z=J0hYP>4|K zgzHB{&@5jqoTz=mv@EjmkIPnAZwbngI=n*fN9|+JH3@dC=hUPliqFsy%dsi*+h+6M zw98*LQg9fPx=9lyWu2u2mlMcokC7McA!0_wty5JSX|bL;)9)n;GrAnVVTsOy6_?T8 zJu5Y;px6Q)I-|v?;lTpmS{3iUFsHm^oi%>>$_bs*`TK0ppb|7jGh3}W;}L77es(h* zX1p_y)^!18lu_et65A&Hb0p$w&$d6XqoN13^I#{$#_qeFq@Pa2bfQ8=P8QmL5gP_e zwn}Kc(=TOzY)9!483xFV(kj`*gVw7Hj-s9Ojlvmlp!ircjbVc8X}f&YR3}gYidl^U zPo{B^p#Q+pb><=$i6iADp3$E_fsPdj|mzapL0Kp2P;tcu;-dr$dTe4Cm)#3$_sk6Z6RAmI-KgyPt4b`u)B_*KuQHltX7iy@*$xq&fEV5X|Eq)jE&K(K zs!8-mg4Iu=lIho52fgcM4ljWhDpE?kNZT?Lfr~=;2k;#F0JbE$)V~A*W_$WO@$|7BG!yR|7P@h!b}C*6w0&mqech(JM`&*X!jJgi#9A2! zDiNPk+?rN+jzB4T+zUt8&3^CoW2~`T>S4mej`K+^#mQ+FOBq!jw*BQ~6}TK~B}$>&p7{ydfYRBpM|9CTtw=I6+?dgXL;g|ct) z8QFT1%N(W73@u(B^Uh>>y8)S!3l-i27u?fk z)Q|W{K!=4!>){Dd0}n5~-Rn)NqLFpB>IIMb&Zfca1uP&-8doplz?qWnLVbw_=>siR zX^)=#TlDou9OSv#@U35&>)|Va{%?lG|5sw||3;?+;IVM{$ntyuF5rMMs)} znfSzpQl}y}tJ*w70Y0EZ4glE>PiyD{?pYXK!WbekL-A=Ex!S09`QgVC;$moe;lPCi zU-JPnc2CO=7T+SbkkAyht?|NNAw;0jWtjVy;mx*-I_vHjn8~2bY;W-T^+SNE0Gme| zfsIqsIV0NnrNG)c9d~_8%lyHOo2#@zR>NG|HB1*)wH~q9RIZAxPb3;*X%E8NqPooTeXh*zmxiIqGgboB9HI$$mLkCx^>}a z%U%rPv2V&Bv+m8kxx316HS5wYR3;jn$cgdzCitT3E?qp#?e>zO7PeZDsMlxYHqy<4 zBr50UnmSHjEf~N7OJn6b%ls0&_ab)D_^310FUYoqHtd{PiV3WLz9<4?BeSCYTkG{w;7=Uoi`l3+JdXLG&T)h)E#}>L!9nwqK~9Y)qw8V39O}x0 z&IW*@SF#>qkAwP!j}OwIVvNRE{B?=%+yLfYC&U0$CPNAHw#~Lu;q==v5({$f;xO}o z%apRvGJnEr>)hC_9I_MMsa1SVhF1|Pm1+(G=dG>zh4=eJFE8T z!FKgT#@5C5ek10+iXGl%=9fn0wkGy^WbQSh(#h zALb}G8~9R3r#sO9{*G(Nj zi8>m-x(8~%aT-wC#4ekT(RNJ1sOn)P7oS%&n7}O`e|b@H$6&T_HS3Rodx7=LY~gnu zUN^#AiH#LmWZ^ZGn1FDvO686+S!tFfD|46F-IH%EAyrz}vwVh2_A~F-A;P02qXRl4 ziFL#>HiI(+8&SSIG-u-tv{ligJDmZqkmSEIpArjd+_3oT?dnE;BSPVKy+=_GQw-3( z5oMEr>$v)`pWq0`SQ&o!Df(RCvw(n7wT-mm{>pVVTh|}eIv7&{6YLv&sMYWu-d*{; z8XQxY>zfI2b(u`4mAJtyqf=GKxlk0YRYd0kIY&FNSc?Q1U}8eT1Q*XT zHbz*2|C{d_JA3Eah@12&zI%d z5OV`nOC>urCV0b8bg(KDnPuZ;7FI$HgtarbJRy{KBzvAVNleS$aAW!?DEs^U zow70QA~L!i8#!2^tIDPrm6*-osU&fpw)g)@mbutt4K+I%^qz;>blxY^7NX?)BLIYk zK+f##F_BzU3Vm2VBylgb^R6idR3`ELoL0wf+U1!AE|TSp6$`7cl@L2q+*=RzIx6}d z0++^2cNm!aPHYcd8&9eIEid4Z;WY11hl`K`%UtcNKeT>YvbSEF^QSb-3=Y}V|05-m zyv%!~U`RxRPC%MU!%URx%w4HXqd?8zm|CFSoQcag)w2~mnIKgsJCH-!W`&YQHm^ag zweFtl=al7PcE9C5FqGLjwq|JTuk!bb9_?|IkA?+75 zLegfRyPecvDy}B@H%@9NNz!)$ws1zUffB_zv{i#NlYSABTPL=M?tu(U(0z!awA*vb zFht^!awwEBRWbVV`bd#8xPe8k?83%$Rbl&B3%_Rz z;lgGGy6h~uox5TyasCUfXk;iUWpEDTwgK$mPtUa^ujv51e+;U#A5>+uDKb9{aiINv zb&lIAP6_uO8uO?=u{F0Or0AREWlJxsglnU0z8Kn@7`}@ch(C3Vw&7g(sk#!9N9ecE) zRP7uh$aO-8G;~yb${bXsOPD#%s06f5EjT<%`-&OK-Z(1|UgC=}fBP)uc!GrGNVjiD*?Zp=;? zVz%}%^5Q)^sTll|JvZRAsQ%cx_}7YVx>PRAm|HP@@6{_ag-iza3X{Ge%D)o9>EWCw zj0^sRx6zUjrX}55wtE$$*sa z_~GbTE?(<=U`CMPsMd^y>s9Gpq9_L#WTW6ON-HnZe>iut$!#JbC#1A~8~}Na!c}LF zYqT8Lh<8--!=(5UpW2pIt#YB;R(!Zq`f%Ae`k}Cw>8~ODo+mU{1a=J|a4@5*;VU5{ zU7|KGXrqL5oaeiN0#}@r9T}&qpI$>O|L#YWuU%KQh!FK1OAp0ch!UAkRQY)3c1u(q z^`bpmqc=_uo%IC!#DA6-`?2>@{5w%Eb0XfPV@*nc20jAp6gwt{-l1m^^8CQ`C>T%M z-vDkcN!js$*T5&JW8;!kCnHWmYPKNEsjh}{1^uFuj$#*I-E`Ceq4y2^#Vsy9;}+bw z##`$=w+_}5^i=p?r~7{eV3}J%87KcgcByTl-C~VZ8Xp(o_u$08!~OeK+<)n>4*vVE zmHij~KjHssr{zMUTtC9knd^(GELEN0vRA&KDUG{HzkT~RcV&4%FW5xT&hOpglx#s0 z>576$M%a2Pl3STUjrW`Aa7$Nvmt4oX+uPp=MN5v1vQCE2bfae-!dQcXZsNQZN*;MJ=~=-R4sn5yhjUGN8fyB!sGWaW)WHi{jR|WSk<{ zsP)C+36vvw^lH)pvewB@^E+yY>gMB`{3A@tEk2a>x@=C?-8 zbGw-PpexLH9`IyHW=~SS3yvlW;sZvbsCPGtD_^h`=A^kpD5@AC?-q%lDy2T+tr8p# z7y9uiI19r_rgsTj>jdx3hq9D5}5MyQ;NxXM>Xcr@zuW;R7gd3E4)N}cMYd4?( z#eNXvMwhxV{{alXi`x-AwyW1X4+{P_>bn1Ru_{X7=otJptO(KL+l30m)R8W3p-HGuRgy+~ICkq)6KMXHF>Tj+>%1%X7W^iJrA zbO@nH34u_v>^|?=-KTw+nQzWLckaWT`Dd8005A>nzH^?BwktEb&4zh zqdBDLDv)^Ut11GOL+seAgxpC%O923C5~$B@uU+Lg-l&;+0s!sr|1^?r_pkN7Cz&49nsp(;1w`?Z^=sIQcJp8z-+)f zApb6R^4a!KX8PZ3%lY}8zdHvDaHvgN(@azL-^L5a`2i6O%E`y=l93cJ={)0_D-6U- z1Fes_g8`vy%apD9{{y(mKvb=FAKOVdqy$>O-*em_Mt9yFMoYF#JX;`~N^WokKPej{ z0s7-jI*Fs^L`5jvKgF;hBvph{S{aH+@X18S#%hJ&2CY=rNIRG666tAx#{h*2`$YRoUUzfp+*r%dn4&~8e1`E`V^pry$2XemldqF$jVp1uI}@prpt1b zbMY<+G^(LQR1OMcbFR?-I7EK&r27l`kNyaZKP)*A~= z7^Xthf_5eXlnfm=Fru_$v7$MJIW6bZoBSB9*3*il6v45iCZ6YTP0+VWh2f|#-Q*mp zJn&mh%f>9)8MHfml;cQ7E%M*NxF0CD?ct~0J$0batnlU41`QFubQ5Xk8jJ-0%5)cv1CNhYs$iVF-+QT{I89V3FKZ(?kL{18mkOm)-aNGv)Yu}gkg_i(PSAmY^C zIVAGb@FBxHv(2Y%3sTQGGL4=cA)zrID84iEuZkrk^nFc;yz%E-8=+r;Ws@O#7~!fDTI3Wk zYoUL6HvNl}Brkp%B(RII=YydTwGczahJQc5zQDRvqDz<5^d7ruaB+jzAzhhB!{8pP z`sWA)m^&R?yfSwm;HI)5adpXUmcvJ1NAPQ%`#NrDN!c7r#}6kT6fc;aX0eMgEnSv) z=_?uBY9XwbOyQ+ZQ@qLjFP| zp=+90;xyyUZy_~kCdiM-C*$KA-eLITXyN{dMZw=gc2I`<+u?g{n?>UL&ud3~FCAqj zD#j48i_LvzFSllmx&ldJL$6&w>)?<#MoOOX@StO56LC5iCJq@@AFs$1G)=Badn7CUC}l6)Do%hiJRxtaYch#y(G% zJgOR`O=dGhMaqF^$o)bLFDoa%(ribSwaex=wUW5iu-*v%R{rZ1T?z;G?aUj9FS6y= zuPyvuFv7+v=86&l;`-%b*4cWa8^$bq_@6hSa!RTt;+TdzfEbp!Uw6LpVHllcMHd!Q zPK_By8(XU+>^$F6I(xb1!xBH|HdlQ>xmL@#Gp_b~+}|c`eT||yF)I_sRbQ`?)%{}} z{8;d(q;4i*z+Ss-cOW5ad>IaTb61e?;H{egM)oX2@#p@DJrcX$cB3v#Vc#K-k?c*5 z5a4Ou+yy5L?H&MikVm?U7I6nMPE-;?a`GFy2GT_q^~x6Rj`~$$?>lZE#d1MD(7!17 zo}nLL^w{4R27>TRLDe}jLHpQYuM-JYL}o5cecZC+&Kola#!>W}tv2RQ{9Q;#J%&Nh z7=NXNa@n?9nQPu(mwidk&sOOM>YR^~RC-Qyg94o$mXxxr6PV(j`kLN(pt)91tCiwy zY}oIhyYB6Tq%!hp<>B1_k*gR%&-lge+k{(yA?%t#>eGAWMXxh8d7ek_u&dCFeRU;K z_Ns}!CZ=_vvn3Kr*oHAvG$xd!g=iRZF1rWBGJK@o{Q1?+8s6XV*G?c7j$us4^N+H| z_PsfLHdEoDuwFT$@~{21cC@}|HoD4OS>TMN=DYc|j>!Ybe{yOrEHjCF)uLnf+Z*}( zurVSucaY!2#A+voK8&4$m(Q>dD;(3Ap0ntg3H)o3K8wBo(vTr8Sb)Wz92Ej?EI1u~0q@OhT7!SMY2?MNCr3^b%DgoxmO6+@#ZBizS&`C}|D8 zuXpY}wX+(e(&-%>sjpo`_x5H1AzB~abo+_D!sh!uJlqARD%8%BPBYYwE zBdeFsPjR3(A`H|5ubs-dn~W|U9jxnf^ZgSxeBLQ`2n8!NZThaYZ($%sT-_?ISOerR zCR@x@PGDPuEy&=)PYq&+U|Lwow5~lx;RmY}+pF37rE-X}GO81k$fnK2LX_5_M>LmK z#_(#`Dt~PIY6Ilo^H|}wcdCrI^HmwLnh(pJHd!bW`%eD84*z>wGCK9_8YnmDyqy)j zcDm>Z02uSuG_R5YCZ_V|fC*IxU1-t&2CR0kaoYx;TZ@kAgzQT<5x1mH311StU&_t} z4mTYZ4I81SxMs9NE|a07r4dV0fjq&$%@^yFTBk#MQ1l01x6vIGvCQC$?M}upn(Vl$ z;Fj5C#0}1$rIR>#s_(Ovz2+_r|?6Dnqh^PM)+w?wd7@9!|vk9BrwhGgipr`Cc<8pfSn? z>AA=WRag3?SnZwUAMcUVKPQGyGKJYNk2WBRk=kSUN`-*ZucaBWd?_glbu%~nN1DsV zO}7tcy-S$mUg0_%P|g;-|d#@T}e--l-XheCrbg3 z7y_rO9IcJUUZwV*_Hch(u2H#To+&Die4T=x4ueEiX!rIInRB&*3*_T)~TPPqBOON#?QsWOf zLWB%f?)mKZHy%jt=5|@wZm-@>+%ha+_bUve)xij9Nla^-Mi7P!XV9}|h3a2mEQV7? zzvYe|dRuJKYLY>;F2Lp!J|$(`2U04-{k3^Pg~j2`g~v;99AVQ){8)bhCJ{tv$95&J z9d@Z8AiUOJTi`j7QUu;%Vd-heTSuNJBv{J!= zuN~r++|yr`+Bw<4Tg57M|H*Vg(3UtKzy>+00#bk2-5la zA71EJ;Z*1f9K{WVNFH4~TuCnd`i7+~lfGQ@1=n7``^_af)0r44>Ap#Re6H_`#&q=0 z+vd(LR;899F^cKx78?}|iD8@_s6>2wfRk-t^(zKS^4JJm|JM6{%!Z-z~7}GT3R&E&G>Q_eL;uN)hEVmdMZa8Xj&>`Y^&yg}TMUUV7v1 z%)%9%Bdamp;@`Yd?peNl&zx=7h0Pb_7qQ;FQVWWv%KJEZ8{s00VYTi+QR!{mdi|_^ zkOfs-S9kBY&EEb>+J@a$&pQ;2xco)z8l|WpXUo*$xW9u#QCjXw%*8G9EQ<9ft(|3v%n-fbBbc0`286;+nn;dr~PQ#LNH>+(ugjkGl5D6;)A z(2WK6&D!u*BCg7dFgibGI?K_E;SyrW{3us2l@eK>BUL>0HjId|-v8=0-0-uWqMtIy z*6F|Aa!dXmRCvivhX@;+XBE2T_p+jh_vQTcD~14abnO=VPE?49;GChdi_z?B7@X2H zoxEZ-!B4yCiYDTu6Zx*VKylALqttuL;Z>G+7A2#io+9<>f2FV zfW|ulNj1~|0VGX#w6s=(Cr#~|)P<&>DyVPNJ8%0tsC^ z#Wbjq+u**v^7>lI9RIcHx$oYNI&ko0kNb?~T+DXB&kMjGpgLqbD)) zEB8P8YYz_YW;(T8omdl6_QO&LeGV>v|CoW~YkaFW;b<#m@=>3Cp-1PH@SS5;750|JgwHANq0D&C{_^97_?kpu z4%FV&jBdRHXu?MAu#mx>kK?DHr?C=5dvno(SNA|q!FKPAr74#KX6L?_<#!dEu_7MP zWtD6{7}kfL^fyFDKZ1PDd44>XecWHH=<=v^${G876T} zASJgVjd%C>*&|}oLUiQGJ(bfl)qCQ7{5E2Jl^tkI!Whm=r?szGcE6v+Ee(d7){cmE z%xisi-+8{5EIhAzAzO6w`sb1t0wb0WW3EwTHrg&Bz8$suV0XC^N4_W6h<$VIRSDLr z(i0R2HBwKvZK1t|VxgsKq)63w4F>n0Br5T;Gv~dXNvQL>4JVY}f(%DPJgmrchruJe z$$Y16Vel_yc8*9=vRC;In(q87dIb-|;xZ9Eu^`yszh~O-6XQ2OD?d=3(TR_GHSkJo zGbv2bnA^rkKNx`+1mi=~*c4;d4C_4YBz4VgP~xBBdb^PMjj5;XU`?x!^gALW(g(hN zx*~!C!kDb-iw7u`Y)1Fgu+RT~y5-M<$Bh?nC|D_LWFlABI<;jYK(MAhqo7@S2T2xi zPEGZ;jMLKqhHj9=?TUO*{tIVsw7-~ydcQ}teR&d1zi#Y%jn*VlUNv6MmPDYLM VBnDSBTz#4W>MGjGm5Mg+{{sw;(bE6` literal 0 HcmV?d00001 diff --git a/media/screenshots/platformsetting.png b/media/screenshots/platformsetting.png new file mode 100644 index 0000000000000000000000000000000000000000..f18b3558c653f66dd5b1cebb3e22333c74d6d558 GIT binary patch literal 28028 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 a{>F7f-aGv11WY9W literal 0 HcmV?d00001 diff --git a/media/screenshots/script-list.png b/media/screenshots/script-list.png new file mode 100644 index 0000000000000000000000000000000000000000..3d05dd69a8075e2c4373a96d0f651bc9d9cd6684 GIT binary patch literal 14783 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 literal 0 HcmV?d00001 diff --git a/media/screenshots/script.png b/media/screenshots/script.png new file mode 100644 index 0000000000000000000000000000000000000000..77c7b15862e56bbff62cf1b3b43c96b59d4281d7 GIT binary patch literal 37552 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 Q!02P}boFyt=akR{0Eu&JDF6Tf literal 0 HcmV?d00001 diff --git a/screenshots/index.html b/screenshots/index.html new file mode 100644 index 0000000..6e2ac9c --- /dev/null +++ b/screenshots/index.html @@ -0,0 +1,469 @@ + + + + + + + + + + + + + + + + + + + + + + + + Screenshots - NetBox Config Diff Plugin + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+
+ +
+ + + + + + +
+ + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

Screenshots

+

Screenshot of the compliance list

+

Also result is storing rendered and actual configurations from device.

+

Compliance finished with error

+

Screenshot of the compliance error

+

Render diff between configurations

+

Screenshot of diff

+

No diff

+

Screenshot of the compliance ok

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/search/search_index.json b/search/search_index.json new file mode 100644 index 0000000..b51f599 --- /dev/null +++ b/search/search_index.json @@ -0,0 +1 @@ +{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"Home","text":""},{"location":"#about","title":"About","text":"

With this plugin you can find diff between the rendered configuration for a device to its actual configuration, retrieved from the device itself, or stored in DataSource. Read about DataSources for further details.

Device configuration renders natively in NetBox. This feature was introduced in 3.5 version. NetBox Labs blog post about it.

Plugin supports a wide list of vendors (Cisco, Juniper, Huawei, MicroTik etc.) with the help of Scrapli. Read Scrapli and scrapli-community documentations to find full list of vendors.

"},{"location":"#installing","title":"Installing","text":"

For adding to a NetBox Docker setup see the general instructions for using netbox-docker with plugins.

Install with pip:

pip install netbox-config-diff\n

Add to local_requirements.txt:

echo netbox-config-diff >> local_requirements.txt\n

Enable the plugin in /opt/netbox/netbox/netbox/configuration.py, or if you use netbox-docker, your /configuration/plugins.py file, and define credentials for devices connection:

PLUGINS = [\n    \"netbox_config_diff\",\n]\n\nPLUGINS_CONFIG = {\n    \"netbox_config_diff\": {\n        \"USERNAME\": \"foo\",\n        \"PASSWORD\": \"bar\",\n    },\n}\n

Run database migrations:

python manage.py migrate\n\n

Collect static from the plugin:

python manage.py collectstatic --noinput\n

Restart NetBox service:

systemctl restart netbox\n
"},{"location":"#usage","title":"Usage","text":"

Read this doc to find out how to use plugin

"},{"location":"changelog/","title":"Changelog","text":""},{"location":"changelog/#122-2023-09-29","title":"1.2.2 (2023-09-29)","text":"
  • #28 Add legacy ssh algorithms to support old OS versions
"},{"location":"changelog/#121-2023-09-07","title":"1.2.1 (2023-09-07)","text":"
  • #26 Add dark theme for diff
"},{"location":"changelog/#120-2023-08-23","title":"1.2.0 (2023-08-23)","text":"
  • #20 Add integration with netbox-secrets plugin
"},{"location":"changelog/#111-2023-08-13","title":"1.1.1 (2023-08-13)","text":"
  • #1 Add tests
"},{"location":"changelog/#110-2023-08-01","title":"1.1.0 (2023-08-01)","text":"
  • #16 Add missing and extra config lines
"},{"location":"changelog/#100-2023-07-23","title":"1.0.0 (2023-07-23)","text":"
  • Publish on PyPI.
"},{"location":"changelog/#011-2023-07-23","title":"0.1.1 (2023-07-23)","text":"
  • Add DataSoures as sources for device configurations.
  • Add docs.
"},{"location":"changelog/#010-2023-07-09","title":"0.1.0 (2023-07-09)","text":"
  • First release.
"},{"location":"contributing/","title":"Contributing","text":"

Contributions are welcome, and they are greatly appreciated! Every little bit helps, and credit will always be given.

You can contribute in many ways:

"},{"location":"contributing/#types-of-contributions","title":"Types of Contributions","text":""},{"location":"contributing/#report-bugs","title":"Report Bugs","text":"

Report bugs at https://github.com/miaow2/netbox-config-diff/issues.

If you are reporting a bug, please include:

  • Your operating system name and version.
  • Any details about your local setup that might be helpful in troubleshooting.
  • Detailed steps to reproduce the bug.
"},{"location":"contributing/#fix-bugs","title":"Fix Bugs","text":"

Look through the GitHub issues for bugs. Anything tagged with \"bug\" and \"help wanted\" is open to whoever wants to implement it.

"},{"location":"contributing/#implement-features","title":"Implement Features","text":"

Look through the GitHub issues for features. Anything tagged with \"enhancement\" and \"help wanted\" is open to whoever wants to implement it.

"},{"location":"contributing/#write-documentation","title":"Write Documentation","text":"

NetBox Config Diff Plugin could always use more documentation, whether as part of the official NetBox Config Diff Plugin docs, in docstrings, or even on the web in blog posts, articles, and such.

"},{"location":"contributing/#submit-feedback","title":"Submit Feedback","text":"

The best way to send feedback is to file an issue at https://github.com/miaow2/netbox-config-diff/issues.

If you are proposing a feature:

  • Explain in detail how it would work.
  • Keep the scope as narrow as possible, to make it easier to implement.
  • Remember that this is a volunteer-driven project, and that contributions are welcome :)
"},{"location":"contributing/#get-started","title":"Get Started!","text":"

Ready to contribute? Here's how to set up netbox-config-diff for local development.

  1. Fork the netbox-config-diff repo on GitHub.
  2. Clone your fork locally

    $ git clone git@github.com:your_name_here/netbox-config-diff.git

  3. Install dependencies and start your virtualenv:

    $ poetry install -E test -E doc -E dev

  4. Create a branch for local development:

    $ git checkout -b name-of-your-bugfix-or-feature

    Now you can make your changes locally.

  5. When you're done making changes, check that your changes pass the tests, including testing other Python versions, with tox:

    $ poetry run tox

  6. Commit your changes and push your branch to GitHub:

    $ git add . $ git commit -m \"Your detailed description of your changes.\" $ git push origin name-of-your-bugfix-or-feature

  7. Submit a pull request through the GitHub website.

"},{"location":"contributing/#pull-request-guidelines","title":"Pull Request Guidelines","text":"

Before you submit a pull request, check that it meets these guidelines:

  1. The pull request should include tests.
  2. If the pull request adds functionality, the docs should be updated. Put your new functionality into a function with a docstring, and add the feature to the list in README.md.
  3. The pull request should work for Python 3.8, 3.9 and 3.10. Check https://github.com/miaow2/netbox-config-diff/actions and make sure that the tests pass for all supported Python versions.
"},{"location":"contributing/#deploying","title":"Deploying","text":"

A reminder for the maintainers on how to deploy. Make sure all your changes are committed (including an entry in CHANGELOG.md). Then run:

$ poetry run bump2version patch # possible: major / minor / patch\n$ git push\n$ git push --tags\n

GitHub Actions will then deploy to PyPI if tests pass.

"},{"location":"screenshots/","title":"Screenshots","text":"

Also result is storing rendered and actual configurations from device.

Compliance finished with error

Render diff between configurations

No diff

"},{"location":"secrets/","title":"Integration with NetBox secrets plugin","text":"

You can store credentials for devices authentification in NetBox secrets plugin.

Read NetBox secrets docs for more info.

In plugin variables define secrets roles for username (USER_SECRET_ROLE) and password (PASSWORD_SECRET_ROLE).

Default values for this variables are:

PLUGINS_CONFIG = {\n    \"netbox_config_diff\": {\n        \"USER_SECRET_ROLE\": \"Username\",\n        \"PASSWORD_SECRET_ROLE\": \"Password\",\n    },\n}\n

Script will find secrets with these roles attached to the device and use them as credentials.

If something goes wrong, then credentials from PLUGINS_CONFIG will be used.

"},{"location":"usage/","title":"Usage","text":"

Under Plugins navbar menu you can find plugin

"},{"location":"usage/#platformsetting","title":"PlatformSetting","text":"

Add PlatformSetting objects for your platforms in NetBox. This model contains info about how to connect and what to collect from device.

Define:

  • Driver for Scrapli, you can find all drivers in Scrapli and Scrapli community documentation.
  • Command to collect configuration
  • Optional regex patterns to exclude from actual config, specify each pattern on a new line

With regexps you can exclude big parts of the configuration and compare tiny configuration pieces (only ntp configuration).

You can test regexp on the site regex101.com.

"},{"location":"usage/#script","title":"Script","text":"

Plugin adds a custom script ConfigDiffScript that runs all logic about diff calculations and connections to devices. You can find scripts list in navbar Customization -> Scripts.

In the script, you can define a site, on which devices run compliance, or devices. If you define both fields, script will run only on devices from Devices field

Warning

Script runs only on devices with status Active, assigned Primary IP, Platform and PlatformSetting

If you have configs in NetBox DataSource, you can define it, the script instead of connecting to devices will find configs in DataSource by device's names.

Warning

Be sure that DataSource is synced and has the latest data

Note

Only synced DataSources are acceptable

"},{"location":"usage/#results","title":"Results","text":"

After script is done you can find results in Config Compliances menu. Each device has its own result.

Also result is storing rendered and actual configurations from devices.

With the help of netutils library plugin stores missing and extra config lines.

Supported platforms for missing/extra lines:

  • Arista EOS (arista_eos)
  • Aruba AOSCX (aruba_aoscx)
  • Cisco AireOS (cisco_aireos)
  • Cisco ASA (cisco_asa)
  • Cisco IOS-XE (cisco_iosxe)
  • Cisco IOS-XR (cisco_iosxr)
  • Cisco NX-OS (cisco_nxos)
  • Juniper JunOS (juniper_junos)
  • Mikrotik RouterOS (mikrotik_routeros)
  • Nokia SROS (nokia_sros)
  • PaloAlto PanOS (paloalto_panos)
  • Ruckus FastIron (ruckus_fastiron)

Compliance finished with error

Render diff between configurations

No diff

"}]} \ No newline at end of file diff --git a/secrets/index.html b/secrets/index.html new file mode 100644 index 0000000..c61c89f --- /dev/null +++ b/secrets/index.html @@ -0,0 +1,476 @@ + + + + + + + + + + + + + + + + + + + + + + + + Integration with secrets - NetBox Config Diff Plugin + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

Integration with NetBox secrets plugin

+

You can store credentials for devices authentification in NetBox secrets plugin.

+

Read NetBox secrets docs for more info.

+

In plugin variables define secrets roles for username (USER_SECRET_ROLE) and password (PASSWORD_SECRET_ROLE).

+

Default values for this variables are:

+
PLUGINS_CONFIG = {
+    "netbox_config_diff": {
+        "USER_SECRET_ROLE": "Username",
+        "PASSWORD_SECRET_ROLE": "Password",
+    },
+}
+
+

Script will find secrets with these roles attached to the device and use them as credentials.

+

If something goes wrong, then credentials from PLUGINS_CONFIG will be used.

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file diff --git a/sitemap.xml b/sitemap.xml new file mode 100644 index 0000000..7ad710e --- /dev/null +++ b/sitemap.xml @@ -0,0 +1,33 @@ + + + + https://miaow2.github.io/netbox-config-diff/ + 2023-09-29 + daily + + + https://miaow2.github.io/netbox-config-diff/changelog/ + 2023-09-29 + daily + + + https://miaow2.github.io/netbox-config-diff/contributing/ + 2023-09-29 + daily + + + https://miaow2.github.io/netbox-config-diff/screenshots/ + 2023-09-29 + daily + + + https://miaow2.github.io/netbox-config-diff/secrets/ + 2023-09-29 + daily + + + https://miaow2.github.io/netbox-config-diff/usage/ + 2023-09-29 + daily + + \ No newline at end of file diff --git a/sitemap.xml.gz b/sitemap.xml.gz new file mode 100644 index 0000000000000000000000000000000000000000..67a81c8de46742d7d2603877180d323c818d60c6 GIT binary patch literal 261 zcmV+g0s8(QiwFqI3m0Vq|8r?{Wo=<_E_iKh0M(SiZiFBdMfdX+hP`0zrZ&jz`URa2 zKzt$z@}@i-r+;4@Cyo223*QE~xtyGY1bMzszPLdohoNOJykZ3egS`v3WtY#7@{OI< zNzTy|q#~CCwQNl3`Yyz>ESy||NneR$w1Ui-4Wz6I> zE;Y9OExp{tM*sP4eik$L>EJfuA5VS>th&`i2#8{Omq-o$i_#Jok?5xf7Qp5KNIx> L8-)SBd;|ah?8tb+ literal 0 HcmV?d00001 diff --git a/usage/index.html b/usage/index.html new file mode 100644 index 0000000..564573b --- /dev/null +++ b/usage/index.html @@ -0,0 +1,597 @@ + + + + + + + + + + + + + + + + + + + + + + + + Quick Start Guide - NetBox Config Diff Plugin + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + +
+ + + + +
+ +
+ + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

Usage

+

Under Plugins navbar menu you can find plugin

+

Screenshot of navbar

+

PlatformSetting

+

Add PlatformSetting objects for your platforms in NetBox. This model contains info about how to connect and what to collect from device.

+

Define:

+
    +
  • Driver for Scrapli, you can find all drivers in Scrapli and Scrapli community documentation.
  • +
  • Command to collect configuration
  • +
  • Optional regex patterns to exclude from actual config, specify each pattern on a new line
  • +
+

With regexps you can exclude big parts of the configuration and compare tiny configuration pieces (only ntp configuration).

+

You can test regexp on the site regex101.com.

+

Screenshot of PlatformSetting

+

Script

+

Plugin adds a custom script ConfigDiffScript that runs all logic about diff calculations and connections to devices. +You can find scripts list in navbar Customization -> Scripts.

+

Screenshot of the scripts list

+

In the script, you can define a site, on which devices run compliance, or devices. + If you define both fields, script will run only on devices from Devices field

+
+

Warning

+

Script runs only on devices with status Active, assigned Primary IP, Platform and PlatformSetting

+
+

If you have configs in NetBox DataSource, you can define it, the script instead of connecting to devices will find configs in DataSource by device's names.

+
+

Warning

+

Be sure that DataSource is synced and has the latest data

+
+
+

Note

+

Only synced DataSources are acceptable

+
+

Screenshot of the script

+

Results

+

After script is done you can find results in Config Compliances menu. Each device has its own result.

+

Screenshot of the compliance list

+

Also result is storing rendered and actual configurations from devices.

+

With the help of netutils library plugin stores missing and extra config lines.

+

Screenshot of the missing/extra lines

+

Supported platforms for missing/extra lines:

+
    +
  • Arista EOS (arista_eos)
  • +
  • Aruba AOSCX (aruba_aoscx)
  • +
  • Cisco AireOS (cisco_aireos)
  • +
  • Cisco ASA (cisco_asa)
  • +
  • Cisco IOS-XE (cisco_iosxe)
  • +
  • Cisco IOS-XR (cisco_iosxr)
  • +
  • Cisco NX-OS (cisco_nxos)
  • +
  • Juniper JunOS (juniper_junos)
  • +
  • Mikrotik RouterOS (mikrotik_routeros)
  • +
  • Nokia SROS (nokia_sros)
  • +
  • PaloAlto PanOS (paloalto_panos)
  • +
  • Ruckus FastIron (ruckus_fastiron)
  • +
+

Compliance finished with error

+

Screenshot of the compliance error

+

Render diff between configurations

+

Screenshot of diff

+

No diff

+

Screenshot of the compliance ok

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + \ No newline at end of file