From 5186e62707254eda0713b3b6744cb891f5e05d06 Mon Sep 17 00:00:00 2001 From: trag1c Date: Mon, 3 Jun 2024 13:32:22 +0100 Subject: [PATCH] Deployed bb120e0 to v1.3.2 with MkDocs 1.5.2 and mike 2.1.1 --- .nojekyll | 0 latest | 1 + v1.3.2/404.html | 408 + v1.3.2/assets/images/favicon.png | Bin 0 -> 1870 bytes .../assets/javascripts/bundle.220ee61c.min.js | 29 + .../javascripts/bundle.220ee61c.min.js.map | 8 + .../javascripts/lunr/min/lunr.ar.min.js | 1 + .../javascripts/lunr/min/lunr.da.min.js | 18 + .../javascripts/lunr/min/lunr.de.min.js | 18 + .../javascripts/lunr/min/lunr.du.min.js | 18 + .../javascripts/lunr/min/lunr.es.min.js | 18 + .../javascripts/lunr/min/lunr.fi.min.js | 18 + .../javascripts/lunr/min/lunr.fr.min.js | 18 + .../javascripts/lunr/min/lunr.hi.min.js | 1 + .../javascripts/lunr/min/lunr.hu.min.js | 18 + .../javascripts/lunr/min/lunr.hy.min.js | 1 + .../javascripts/lunr/min/lunr.it.min.js | 18 + .../javascripts/lunr/min/lunr.ja.min.js | 1 + .../javascripts/lunr/min/lunr.jp.min.js | 1 + .../javascripts/lunr/min/lunr.kn.min.js | 1 + .../javascripts/lunr/min/lunr.ko.min.js | 1 + .../javascripts/lunr/min/lunr.multi.min.js | 1 + .../javascripts/lunr/min/lunr.nl.min.js | 18 + .../javascripts/lunr/min/lunr.no.min.js | 18 + .../javascripts/lunr/min/lunr.pt.min.js | 18 + .../javascripts/lunr/min/lunr.ro.min.js | 18 + .../javascripts/lunr/min/lunr.ru.min.js | 18 + .../javascripts/lunr/min/lunr.sa.min.js | 1 + .../lunr/min/lunr.stemmer.support.min.js | 1 + .../javascripts/lunr/min/lunr.sv.min.js | 18 + .../javascripts/lunr/min/lunr.ta.min.js | 1 + .../javascripts/lunr/min/lunr.te.min.js | 1 + .../javascripts/lunr/min/lunr.th.min.js | 1 + .../javascripts/lunr/min/lunr.tr.min.js | 18 + .../javascripts/lunr/min/lunr.vi.min.js | 1 + .../javascripts/lunr/min/lunr.zh.min.js | 1 + v1.3.2/assets/javascripts/lunr/tinyseg.js | 206 + v1.3.2/assets/javascripts/lunr/wordcut.js | 6708 +++++++++++++++++ .../workers/search.74e28a9f.min.js | 42 + .../workers/search.74e28a9f.min.js.map | 8 + .../assets/stylesheets/main.eebd395e.min.css | 1 + .../stylesheets/main.eebd395e.min.css.map | 1 + .../stylesheets/palette.ecc896b0.min.css | 1 + .../stylesheets/palette.ecc896b0.min.css.map | 1 + v1.3.2/date_and_time/index.html | 538 ++ v1.3.2/distributions/index.html | 783 ++ v1.3.2/index.html | 528 ++ v1.3.2/integers/index.html | 617 ++ v1.3.2/javascripts/katex.js | 11 + v1.3.2/search/search_index.json | 1 + v1.3.2/sequences/index.html | 653 ++ v1.3.2/sitemap.xml | 3 + v1.3.2/sitemap.xml.gz | Bin 0 -> 127 bytes v1.3.2/strings_and_bytes/index.html | 577 ++ versions.json | 9 + 55 files changed, 11419 insertions(+) create mode 100644 .nojekyll create mode 120000 latest create mode 100644 v1.3.2/404.html create mode 100644 v1.3.2/assets/images/favicon.png create mode 100644 v1.3.2/assets/javascripts/bundle.220ee61c.min.js create mode 100644 v1.3.2/assets/javascripts/bundle.220ee61c.min.js.map create mode 100644 v1.3.2/assets/javascripts/lunr/min/lunr.ar.min.js create mode 100644 v1.3.2/assets/javascripts/lunr/min/lunr.da.min.js create mode 100644 v1.3.2/assets/javascripts/lunr/min/lunr.de.min.js create mode 100644 v1.3.2/assets/javascripts/lunr/min/lunr.du.min.js create mode 100644 v1.3.2/assets/javascripts/lunr/min/lunr.es.min.js create mode 100644 v1.3.2/assets/javascripts/lunr/min/lunr.fi.min.js create mode 100644 v1.3.2/assets/javascripts/lunr/min/lunr.fr.min.js create mode 100644 v1.3.2/assets/javascripts/lunr/min/lunr.hi.min.js create mode 100644 v1.3.2/assets/javascripts/lunr/min/lunr.hu.min.js create mode 100644 v1.3.2/assets/javascripts/lunr/min/lunr.hy.min.js create mode 100644 v1.3.2/assets/javascripts/lunr/min/lunr.it.min.js create mode 100644 v1.3.2/assets/javascripts/lunr/min/lunr.ja.min.js create mode 100644 v1.3.2/assets/javascripts/lunr/min/lunr.jp.min.js create mode 100644 v1.3.2/assets/javascripts/lunr/min/lunr.kn.min.js create mode 100644 v1.3.2/assets/javascripts/lunr/min/lunr.ko.min.js create mode 100644 v1.3.2/assets/javascripts/lunr/min/lunr.multi.min.js create mode 100644 v1.3.2/assets/javascripts/lunr/min/lunr.nl.min.js create mode 100644 v1.3.2/assets/javascripts/lunr/min/lunr.no.min.js create mode 100644 v1.3.2/assets/javascripts/lunr/min/lunr.pt.min.js create mode 100644 v1.3.2/assets/javascripts/lunr/min/lunr.ro.min.js create mode 100644 v1.3.2/assets/javascripts/lunr/min/lunr.ru.min.js create mode 100644 v1.3.2/assets/javascripts/lunr/min/lunr.sa.min.js create mode 100644 v1.3.2/assets/javascripts/lunr/min/lunr.stemmer.support.min.js create mode 100644 v1.3.2/assets/javascripts/lunr/min/lunr.sv.min.js create mode 100644 v1.3.2/assets/javascripts/lunr/min/lunr.ta.min.js create mode 100644 v1.3.2/assets/javascripts/lunr/min/lunr.te.min.js create mode 100644 v1.3.2/assets/javascripts/lunr/min/lunr.th.min.js create mode 100644 v1.3.2/assets/javascripts/lunr/min/lunr.tr.min.js create mode 100644 v1.3.2/assets/javascripts/lunr/min/lunr.vi.min.js create mode 100644 v1.3.2/assets/javascripts/lunr/min/lunr.zh.min.js create mode 100644 v1.3.2/assets/javascripts/lunr/tinyseg.js create mode 100644 v1.3.2/assets/javascripts/lunr/wordcut.js create mode 100644 v1.3.2/assets/javascripts/workers/search.74e28a9f.min.js create mode 100644 v1.3.2/assets/javascripts/workers/search.74e28a9f.min.js.map create mode 100644 v1.3.2/assets/stylesheets/main.eebd395e.min.css create mode 100644 v1.3.2/assets/stylesheets/main.eebd395e.min.css.map create mode 100644 v1.3.2/assets/stylesheets/palette.ecc896b0.min.css create mode 100644 v1.3.2/assets/stylesheets/palette.ecc896b0.min.css.map create mode 100644 v1.3.2/date_and_time/index.html create mode 100644 v1.3.2/distributions/index.html create mode 100644 v1.3.2/index.html create mode 100644 v1.3.2/integers/index.html create mode 100644 v1.3.2/javascripts/katex.js create mode 100644 v1.3.2/search/search_index.json create mode 100644 v1.3.2/sequences/index.html create mode 100644 v1.3.2/sitemap.xml create mode 100644 v1.3.2/sitemap.xml.gz create mode 100644 v1.3.2/strings_and_bytes/index.html create mode 100644 versions.json diff --git a/.nojekyll b/.nojekyll new file mode 100644 index 0000000..e69de29 diff --git a/latest b/latest new file mode 120000 index 0000000..bb8edae --- /dev/null +++ b/latest @@ -0,0 +1 @@ +v1.3.2 \ No newline at end of file diff --git a/v1.3.2/404.html b/v1.3.2/404.html new file mode 100644 index 0000000..050666d --- /dev/null +++ b/v1.3.2/404.html @@ -0,0 +1,408 @@ + + + + + + + + + + + + + + + + + + Ixia Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+
+ +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ +

404 - Not found

+ +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/v1.3.2/assets/images/favicon.png b/v1.3.2/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/v1.3.2/assets/javascripts/bundle.220ee61c.min.js b/v1.3.2/assets/javascripts/bundle.220ee61c.min.js new file mode 100644 index 0000000..116072a --- /dev/null +++ b/v1.3.2/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(` + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

Date & Time

+

ixia.rand_date

+

Datelike = str | int | tuple[int, int, int] | datetime.date | datetime.datetime
+
+def rand_date(start: Datelike, end: Datelike | None = None) -> datetime.date
+
+Returns a random date between start and end (both inclusive).

+

The inputs can be of the following types: +- ISO format string (e.g. "2023-03-12") +- year integer (rand_date(2020, 2022)rand_date("2020-01-01", "2022-12-31")) +- (year, month, day) tuple +- datetime.date object +- datetime.datetime object

+

If end is not specified, it's gonna be set to the end of the start date's year,
+(e.g. rand_date("2023-09-01")rand_date("2023-09-01", "2023-12-31")).

+

ixia.rand_time

+
Timelike = (
+    str
+    | int
+    | tuple[int, int]
+    | tuple[int, int, int]
+    | tuple[int, int, int, int]
+    | datetime.time
+    | datetime.datetime
+)
+
+def rand_time(
+    start: Timelike | None = None, end: Timelike | None = None
+) -> datetime.time
+
+

Returns a random date between start and end (both inclusive).

+

The inputs can be of the following types: +- ISO format string (e.g. "12:34:56.789012") +- hour integer +- 2–4 integer (hour, minute, second, microsecond) tuple (only the first two are required) +- datetime.time object +- datetime.datetime object

+

Both start and end are optional, and default to datetime.time.min +(midnight) and datetime.time.max (23:59:59.999999), respectively.

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/v1.3.2/distributions/index.html b/v1.3.2/distributions/index.html new file mode 100644 index 0000000..4ed7e24 --- /dev/null +++ b/v1.3.2/distributions/index.html @@ -0,0 +1,783 @@ + + + + + + + + + + + + + + + + + + + + Real-valued distributions - Ixia Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + + + + + +
+
+ + + + + + + +

Real-valued distributions

+

ixia.beta_variate

+
+

Link: Original section for random.betavariate

+
+
def beta_variate(alpha: Number, beta: Number) -> float
+
+

Beta distribution.

+

Conditions on the parameters are alpha > 0 and beta > 0. +Returned values range between $0$ and $1$.

+

ixia.binomial_variate

+
+

Link: Original section for random.binomialvariate

+
+

Binomial random variable.

+

Gives the number of successes for n independent trials +with the probability of success in each trial being p.

+

Equivalent to sum(random() < p for _ in range(n)).

+

Returns an integer in the range $[0, n]$.

+

ixia.expo_variate

+
+

Link: Original section for random.expovariate

+
+
def expo_variate(lambda_: float = 1.0) -> float
+
+

Exponential distribution.

+

lambda_ is $1$ divided by the desired mean. It should be nonzero. +Returned values are in range $[0, +\infty)$ for lambda_ > 0, +and $(-\infty, 0]$ for lambda_ < 0.

+

ixia.gamma_variate

+
+

Link: Original section for random.gammavariate

+
+
def gamma_variate(alpha: Number, beta: Number) -> float
+
+

Gamma distribution.

+

Conditions on the parameters are alpha > 0 and beta > 0.

+

The probability distribution function is +$$f(x)=\frac{x^{\alpha-1}\cdot e^{\frac{-x}{\beta}}}{\Gamma(\alpha)\cdot\beta^\alpha}$$

+

ixia.gauss

+
+

Link: Original section for random.gauss

+
+
def gauss(mu: Number, sigma: Number) -> float
+
+

Normal distribution, also called the Gaussian distribution.

+

mu is the mean, and sigma is the standard deviation. This is slightly +faster than the ixia.normal_variate() function.

+
+

Multithreading Note
+When two threads call this function simultaneously, it is possible that they +will receive the same return value. +This can be avoided in two ways: +1. Put locks around all calls +2. Use the slower, but thread-safe ixia.normal_variate() +function instead.

+
+

ixia.log_norm_variate

+
+

Link: Original section for random.lognormvariate

+
+
def log_norm_variate(mu: Number, sigma: Number) -> float
+
+

Log normal distribution.

+

If you take the natural logarithm of this distribution, you'll get a normal +distribution with mean mu and standard deviation sigma. mu can have any +value, and sigma must be greater than $0$.

+

ixia.normal_variate

+
+

Link: Original section for random.normalvariate

+
+
def normal_variate(mu: Number, sigma: Number) -> float
+
+

Normal distribution.

+

mu is the mean, and sigma is the standard deviation.

+

ixia.pareto_variate

+
+

Link: Original section for random.paretovariate

+
+
def pareto_variate(alpha: Number) -> float
+
+

Pareto distribution.

+

alpha is the shape parameter.

+

ixia.random

+
+

Link: Original section for random.random

+
+
def random() -> float
+
+

Generates a random floating point number in the range $[0, 1)$.

+

ixia.triangular

+
+

Link: Original section for random.triangular

+
+
def triangular(
+    low: float = 0.0,
+    high: float = 1.0,
+    mode: float | None = None
+) -> float
+
+

Returns a random floating point number N such that low <= N <= high and +with the specified mode between those bounds. The low and high bounds default +to zero and one. The mode argument defaults to the midpoint between the +bounds, giving a symmetric distribution.

+

ixia.uniform

+
+

Link: Original section for random.uniform

+
+
def uniform(a: Number, b: Number) -> float
+
+

Returns a random floating point number N such that a <= N <= b for a <= b +and b <= N <= a for b < a.

+

The end-point value b may or may not be included in the range depending on +floating-point rounding in the equation a + (b-a) * random().

+

ixia.von_mises_variate

+
+

Link: Original section for random.vonmisesvariate

+
+
def von_mises_variate(mu: Number, kappa: Number) -> float
+
+

mu is the mean angle, expressed in radians between $0$ +and $\tau$, and kappa is the concentration parameter, which must be +greater than or equal to zero. If kappa is equal to zero, this distribution +reduces to a uniform random angle over the range $0$ to $\tau$.

+

ixia.weibull_variate

+
+

Link: Original section for random.weibullvariate

+
+
def weibull_variate(alpha: Number, beta: Number) -> float
+
+

Weibull distribution.

+

alpha is the scale parameter and beta is the shape parameter.

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/v1.3.2/index.html b/v1.3.2/index.html new file mode 100644 index 0000000..9a79dd7 --- /dev/null +++ b/v1.3.2/index.html @@ -0,0 +1,528 @@ + + + + + + + + + + + + + + + + + + + + Ixia Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

Ixia

+

Ixia is a cryptographically secure RNG library. It mainly merges secrets' +security with random's versatility, but also adds some of its own +functions, such as ixia.passphrase(), +ixia.shuffled() or +ixia.universe_rand(). All random +values are generated using urandom (or BCryptGenRandom on Windows).

+

⚠️ Important Notes

+

While supporting Python 3.8+, Ixia is based on the Python 3.12 implementation +of the random module. The following changes have been made to the module +since Python 3.8:

+
    +
  • getrandbits accepts 0 for k
  • +
  • choices raises a ValueError if all weights are zero
  • +
  • sample has a new counts parameter
  • +
  • gauss, expovariate and normalvariate have default parameter values
  • +
  • binomialvariate was added
  • +
+

Additionally, Ixia executes 3.9+ deprecations, thus:

+
    +
  • ixia.rand_range doesn't convert non-integer types to equivalent integers
  • +
  • ixia.sample doesn't support set as a sequence type
  • +
  • ixia.shuffle doesn't support the random parameter
  • +
+

On the following pages of this documentation, function signatures often mention +the Number type—that's simply an alias to Union[int, float].

+

Credits

+ + + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/v1.3.2/integers/index.html b/v1.3.2/integers/index.html new file mode 100644 index 0000000..3b9b2ec --- /dev/null +++ b/v1.3.2/integers/index.html @@ -0,0 +1,617 @@ + + + + + + + + + + + + + + + + + + + + + + Integers - Ixia Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

Integers

+

ixia.rand_below

+
+

Link: Original section for secrets.randbelow

+
+
def rand_below(n: int) -> int
+
+

Returns a random int in the range $[0, n)$.

+

ixia.rand_bits

+
+

Link: Original section for random.getrandbits

+
+
def rand_bits(k: int) -> int
+
+

Returns a non-negative Python integer with k random bits.

+

ixia.rand_bool

+
def rand_bool() -> bool
+
+

Returns a random bool.

+

ixia.rand_int

+
+

Link: Original section for random.randint

+
+
def rand_int(a: int, b: int) -> int
+
+

Returns a random integer N in the range $[a, b]$. +Alias for ixia.rand_range(a, b+1).

+

ixia.rand_ints

+
def rand_ints(a: int, b: int, *, k: int) -> list[int]
+
+

Returns a list of k random integrs in the range $[a, b]$.
+Equivalent to [rand_int(a, b) for _ in range(k)].

+

ixia.rand_range

+
+

Link: Original section for random.randrange

+
+
def rand_range(start: int, stop: int | None = None, step: int = 1) -> int
+
+

Returns a randomly selected element from range(start, stop, step). This is +equivalent to ixia.choice(range(start, stop, step)), but doesn't actually +build a range object.

+

The positional argument pattern matches that of range(). Keyword arguments +should not be used because the function may use them in unexpected ways.

+

ixia.universe_rand

+
def universe_rand() -> int
+
+

Generates a random number based on the universe.

+

Thanks to the work of the recent Nobel Prize laureates, it was possible to code this function that computes a random number by simulating universe dimensions phasing on gamma ray emission using the sum of the spins of the pair positron/electron in a normalized Higgs field. Surprisingly, Taylor series is involved in this beautiful mathematical operation. It may or may not always return 42, we do not know.

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/v1.3.2/javascripts/katex.js b/v1.3.2/javascripts/katex.js new file mode 100644 index 0000000..8debf9f --- /dev/null +++ b/v1.3.2/javascripts/katex.js @@ -0,0 +1,11 @@ +document$.subscribe(({ body }) => { + renderMathInElement(body, { + delimiters: [ + { left: "$$", right: "$$", display: true }, + { left: "$", right: "$", display: false }, + { left: "\\(", right: "\\)", display: false }, + { left: "\\[", right: "\\]", display: true } + ], + }) + }) + \ No newline at end of file diff --git a/v1.3.2/search/search_index.json b/v1.3.2/search/search_index.json new file mode 100644 index 0000000..b89e181 --- /dev/null +++ b/v1.3.2/search/search_index.json @@ -0,0 +1 @@ +{"config":{"lang":["en"],"separator":"[\\s\\-]+","pipeline":["stopWordFilter"]},"docs":[{"location":"","title":"Ixia","text":"

Ixia is a cryptographically secure RNG library. It mainly merges secrets' security with random's versatility, but also adds some of its own functions, such as ixia.passphrase(), ixia.shuffled() or ixia.universe_rand(). All random values are generated using urandom (or BCryptGenRandom on Windows).

"},{"location":"#important-notes","title":"\u26a0\ufe0f Important Notes","text":"

While supporting Python 3.8+, Ixia is based on the Python 3.12 implementation of the random module. The following changes have been made to the module since Python 3.8:

  • getrandbits accepts 0 for k
  • choices raises a ValueError if all weights are zero
  • sample has a new counts parameter
  • gauss, expovariate and normalvariate have default parameter values
  • binomialvariate was added

Additionally, Ixia executes 3.9+ deprecations, thus:

  • ixia.rand_range doesn't convert non-integer types to equivalent integers
  • ixia.sample doesn't support set as a sequence type
  • ixia.shuffle doesn't support the random parameter

On the following pages of this documentation, function signatures often mention the Number type\u2014that's simply an alias to Union[int, float].

"},{"location":"#credits","title":"Credits","text":"
  • The original random module documentation & implementation: Python Software Foundation
  • universe_rand implementation: qexat
"},{"location":"date_and_time/","title":"Date & Time","text":""},{"location":"date_and_time/#ixiarand_date","title":"ixia.rand_date","text":"

Datelike = str | int | tuple[int, int, int] | datetime.date | datetime.datetime\ndef rand_date(start: Datelike, end: Datelike | None = None) -> datetime.date\n
Returns a random date between start and end (both inclusive).

The inputs can be of the following types: - ISO format string (e.g. \"2023-03-12\") - year integer (rand_date(2020, 2022) \u21d4 rand_date(\"2020-01-01\", \"2022-12-31\")) - (year, month, day) tuple - datetime.date object - datetime.datetime object

If end is not specified, it's gonna be set to the end of the start date's year, (e.g. rand_date(\"2023-09-01\") \u2192 rand_date(\"2023-09-01\", \"2023-12-31\")).

"},{"location":"date_and_time/#ixiarand_time","title":"ixia.rand_time","text":"
Timelike = (\nstr\n| int\n| tuple[int, int]\n| tuple[int, int, int]\n| tuple[int, int, int, int]\n| datetime.time\n| datetime.datetime\n)\ndef rand_time(\nstart: Timelike | None = None, end: Timelike | None = None\n) -> datetime.time\n

Returns a random date between start and end (both inclusive).

The inputs can be of the following types: - ISO format string (e.g. \"12:34:56.789012\") - hour integer - 2\u20134 integer (hour, minute, second, microsecond) tuple (only the first two are required) - datetime.time object - datetime.datetime object

Both start and end are optional, and default to datetime.time.min (midnight) and datetime.time.max (23:59:59.999999), respectively.

"},{"location":"distributions/","title":"Real-valued distributions","text":""},{"location":"distributions/#ixiabeta_variate","title":"ixia.beta_variate","text":"

Link: Original section for random.betavariate

def beta_variate(alpha: Number, beta: Number) -> float\n

Beta distribution.

Conditions on the parameters are alpha > 0 and beta > 0. Returned values range between $0$ and $1$.

"},{"location":"distributions/#ixiabinomial_variate","title":"ixia.binomial_variate","text":"

Link: Original section for random.binomialvariate

Binomial random variable.

Gives the number of successes for n independent trials with the probability of success in each trial being p.

Equivalent to sum(random() < p for _ in range(n)).

Returns an integer in the range $[0, n]$.

"},{"location":"distributions/#ixiaexpo_variate","title":"ixia.expo_variate","text":"

Link: Original section for random.expovariate

def expo_variate(lambda_: float = 1.0) -> float\n

Exponential distribution.

lambda_ is $1$ divided by the desired mean. It should be nonzero. Returned values are in range $[0, +\\infty)$ for lambda_ > 0, and $(-\\infty, 0]$ for lambda_ < 0.

"},{"location":"distributions/#ixiagamma_variate","title":"ixia.gamma_variate","text":"

Link: Original section for random.gammavariate

def gamma_variate(alpha: Number, beta: Number) -> float\n

Gamma distribution.

Conditions on the parameters are alpha > 0 and beta > 0.

The probability distribution function is $$f(x)=\\frac{x^{\\alpha-1}\\cdot e^{\\frac{-x}{\\beta}}}{\\Gamma(\\alpha)\\cdot\\beta^\\alpha}$$

"},{"location":"distributions/#ixiagauss","title":"ixia.gauss","text":"

Link: Original section for random.gauss

def gauss(mu: Number, sigma: Number) -> float\n

Normal distribution, also called the Gaussian distribution.

mu is the mean, and sigma is the standard deviation. This is slightly faster than the ixia.normal_variate() function.

Multithreading Note When two threads call this function simultaneously, it is possible that they will receive the same return value. This can be avoided in two ways: 1. Put locks around all calls 2. Use the slower, but thread-safe ixia.normal_variate() function instead.

"},{"location":"distributions/#ixialog_norm_variate","title":"ixia.log_norm_variate","text":"

Link: Original section for random.lognormvariate

def log_norm_variate(mu: Number, sigma: Number) -> float\n

Log normal distribution.

If you take the natural logarithm of this distribution, you'll get a normal distribution with mean mu and standard deviation sigma. mu can have any value, and sigma must be greater than $0$.

"},{"location":"distributions/#ixianormal_variate","title":"ixia.normal_variate","text":"

Link: Original section for random.normalvariate

def normal_variate(mu: Number, sigma: Number) -> float\n

Normal distribution.

mu is the mean, and sigma is the standard deviation.

"},{"location":"distributions/#ixiapareto_variate","title":"ixia.pareto_variate","text":"

Link: Original section for random.paretovariate

def pareto_variate(alpha: Number) -> float\n

Pareto distribution.

alpha is the shape parameter.

"},{"location":"distributions/#ixiarandom","title":"ixia.random","text":"

Link: Original section for random.random

def random() -> float\n

Generates a random floating point number in the range $[0, 1)$.

"},{"location":"distributions/#ixiatriangular","title":"ixia.triangular","text":"

Link: Original section for random.triangular

def triangular(\nlow: float = 0.0,\nhigh: float = 1.0,\nmode: float | None = None\n) -> float\n

Returns a random floating point number N such that low <= N <= high and with the specified mode between those bounds. The low and high bounds default to zero and one. The mode argument defaults to the midpoint between the bounds, giving a symmetric distribution.

"},{"location":"distributions/#ixiauniform","title":"ixia.uniform","text":"

Link: Original section for random.uniform

def uniform(a: Number, b: Number) -> float\n

Returns a random floating point number N such that a <= N <= b for a <= b and b <= N <= a for b < a.

The end-point value b may or may not be included in the range depending on floating-point rounding in the equation a + (b-a) * random().

"},{"location":"distributions/#ixiavon_mises_variate","title":"ixia.von_mises_variate","text":"

Link: Original section for random.vonmisesvariate

def von_mises_variate(mu: Number, kappa: Number) -> float\n

mu is the mean angle, expressed in radians between $0$ and $\\tau$, and kappa is the concentration parameter, which must be greater than or equal to zero. If kappa is equal to zero, this distribution reduces to a uniform random angle over the range $0$ to $\\tau$.

"},{"location":"distributions/#ixiaweibull_variate","title":"ixia.weibull_variate","text":"

Link: Original section for random.weibullvariate

def weibull_variate(alpha: Number, beta: Number) -> float\n

Weibull distribution.

alpha is the scale parameter and beta is the shape parameter.

"},{"location":"integers/","title":"Integers","text":""},{"location":"integers/#ixiarand_below","title":"ixia.rand_below","text":"

Link: Original section for secrets.randbelow

def rand_below(n: int) -> int\n

Returns a random int in the range $[0, n)$.

"},{"location":"integers/#ixiarand_bits","title":"ixia.rand_bits","text":"

Link: Original section for random.getrandbits

def rand_bits(k: int) -> int\n

Returns a non-negative Python integer with k random bits.

"},{"location":"integers/#ixiarand_bool","title":"ixia.rand_bool","text":"
def rand_bool() -> bool\n

Returns a random bool.

"},{"location":"integers/#ixiarand_int","title":"ixia.rand_int","text":"

Link: Original section for random.randint

def rand_int(a: int, b: int) -> int\n

Returns a random integer N in the range $[a, b]$. Alias for ixia.rand_range(a, b+1).

"},{"location":"integers/#ixiarand_ints","title":"ixia.rand_ints","text":"
def rand_ints(a: int, b: int, *, k: int) -> list[int]\n

Returns a list of k random integrs in the range $[a, b]$. Equivalent to [rand_int(a, b) for _ in range(k)].

"},{"location":"integers/#ixiarand_range","title":"ixia.rand_range","text":"

Link: Original section for random.randrange

def rand_range(start: int, stop: int | None = None, step: int = 1) -> int\n

Returns a randomly selected element from range(start, stop, step). This is equivalent to ixia.choice(range(start, stop, step)), but doesn't actually build a range object.

The positional argument pattern matches that of range(). Keyword arguments should not be used because the function may use them in unexpected ways.

"},{"location":"integers/#ixiauniverse_rand","title":"ixia.universe_rand","text":"
def universe_rand() -> int\n

Generates a random number based on the universe.

Thanks to the work of the recent Nobel Prize laureates, it was possible to code this function that computes a random number by simulating universe dimensions phasing on gamma ray emission using the sum of the spins of the pair positron/electron in a normalized Higgs field. Surprisingly, Taylor series is involved in this beautiful mathematical operation. It may or may not always return 42, we do not know.

"},{"location":"sequences/","title":"Sequences","text":""},{"location":"sequences/#ixiachoice","title":"ixia.choice","text":"

Link: Original section for random.choices

def choice(\nseq: Sequence[T],\nweights: Sequence[Number] | None = None,\n*,\ncumulative_weights: Sequence[Number] | None = None\n) -> T\n

Chooses a random element from a non-empty sequence seq.

If the relative weights or cumulative weights are not specified, the selections are made with equal probability.

If seq is empty, IndexError is raised.

"},{"location":"sequences/#ixiachoices","title":"ixia.choices","text":"

Link: Original section for random.choices

def choices(\nseq: Sequence[T],\nweights: Sequence[Number] | None = None,\n*,\ncumulative_weights: Sequence[Number] | None = None,\nk: int = 1,\n) -> list[T]\n

Returns a k sized list of elements chosen from the sequence seq with replacement. If the sequence is empty, IndexError is raised.

If a weights sequence is specified, selections are made according to the relative weights. Alternatively, if a cumulative_weights sequence is given, the selections are made according to the cumulative weights (perhaps computed using itertools.accumulate()). For example, the relative weights [10, 5, 30, 5] are equivalent to the cumulative weights [10, 15, 45, 50]. Internally, the relative weights are converted to cumulative weights before making selections, so supplying the cumulative weights saves work.

If neither weights nor cumulative_weights are specified, selections are made with equal probability. If a weights sequence is supplied, it must be the same length as the seq sequence. Specifying both weights and cumulative_weights will raise a TypeError.

The weights or cumulative_weights can use any numeric type that interoperates with the float values returned by ixia.random() (that includes integers, floats, and fractions but excludes decimals). Weights are assumed to be non-negative and finite. If all weights are zero, a ValueError is raised.

"},{"location":"sequences/#ixiarand_ints","title":"ixia.rand_ints","text":"

Link: See the Integers section.

"},{"location":"sequences/#ixiasample","title":"ixia.sample","text":"

Link: Original section for random.sample

def sample(\nseq: Sequence[T],\nk: int,\n*,\ncounts: Iterable[int] | None = None\n) -> list[T]\n

Returns a k length list of unique elements chosen from the sequence seq, while keeping the original sequence unchanged. Used for random sampling without replacement.

The resulting list is in selection order so that all sub-slices will also be valid random samples. This allows raffle winners (the sample) to be partitioned into grand prize and second place winners (the subslices).

Members of the sequence don't need to be hashable nor unique. If the sequence contains repeats, then each occurrence is a possible selection in the sample.

Repeated elements can be specified one at a time or with the optional keyword-only counts parameter. For example,

sample([\"red\", \"blue\"], counts=[4, 2], k=5)\n
is equivalent to
sample([\"red\", \"red\", \"red\", \"red\", \"blue\", \"blue\", k=5])\n
To choose a sample from a range of integers, use a range() object as an argument. This is especially fast and space efficient for sampling from a large population:
sample(range(10 ** 7), k=60)\n

If the sample size is larger than the population size, a ValueError is raised.

"},{"location":"sequences/#ixiashuffle","title":"ixia.shuffle","text":"

Link: Original section for random.shuffle

def shuffle(seq: MutableSequence[Any]) -> None\n

Shuffles the sequence seq in place.

For out of place shuffling, use ixia.shuffled().

"},{"location":"sequences/#ixiashuffled","title":"ixia.shuffled","text":"
def shuffled(seq: Sequence[T]) -> MutableSequence[T]\n

Shuffles the sequence seq out of place.

If seq is a mutable type M[T], the function will return M[T]. If seq is an immutable type IM[T], the function will return list[T].

For in place shuffling, use ixia.shuffle().

"},{"location":"strings_and_bytes/","title":"Strings and bytes","text":""},{"location":"strings_and_bytes/#ixiapassphrase","title":"ixia.passphrase","text":"
def passphrase(\nn: int, *, sep: str = \"-\", words_path: str = \"/usr/share/dict/words\"\n) -> str\n

Generates an XKCD-style passphrase made up from n words (based on the file specified by words_path), separated by sep (- by default).

\u26a0\ufe0f The default word list is not available on Windows.

"},{"location":"strings_and_bytes/#ixiarand_bytes","title":"ixia.rand_bytes","text":"

Link: Original section for random.randbytes

def rand_bytes(n: int = 32) -> bytes\n

Generates n random bytes. Defaults to 32.

"},{"location":"strings_and_bytes/#ixiarand_hex","title":"ixia.rand_hex","text":"

Link: Original section for secrets.token_hex

def rand_hex(n: int) -> str\n

Returns a hex string composed of n random bytes.

"},{"location":"strings_and_bytes/#ixiarand_line","title":"ixia.rand_line","text":"

def rand_line(file: TextIOBase | str) -> str\n
Returns a random line from a file. Given a string, assumes it is a path, reads it, and returns a random line from the read content. Given a readable IO object, reads it, and returns a random line from the read content.

"},{"location":"strings_and_bytes/#ixiarand_urlsafe","title":"ixia.rand_urlsafe","text":"

Original section for secrets.token_urlsafe

def rand_urlsafe(n: int = 32) -> str\n

Returns a random URL-safe text string, composed of n bytes, in Base64 encoding. Defaults to 32.

"}]} \ No newline at end of file diff --git a/v1.3.2/sequences/index.html b/v1.3.2/sequences/index.html new file mode 100644 index 0000000..bcdfe35 --- /dev/null +++ b/v1.3.2/sequences/index.html @@ -0,0 +1,653 @@ + + + + + + + + + + + + + + + + + + + + + + Sequences - Ixia Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

Sequences

+

ixia.choice

+
+

Link: Original section for random.choices

+
+
def choice(
+    seq: Sequence[T],
+    weights: Sequence[Number] | None = None,
+    *,
+    cumulative_weights: Sequence[Number] | None = None
+) -> T
+
+

Chooses a random element from a non-empty sequence seq.

+

If the relative weights or cumulative weights are not specified, +the selections are made with equal probability.

+

If seq is empty, IndexError is raised.

+

ixia.choices

+
+

Link: Original section for random.choices

+
+
def choices(
+    seq: Sequence[T],
+    weights: Sequence[Number] | None = None,
+    *,
+    cumulative_weights: Sequence[Number] | None = None,
+    k: int = 1,
+) -> list[T]
+
+

Returns a k sized list of elements chosen from the sequence seq with +replacement. If the sequence is empty, IndexError is raised.

+

If a weights sequence is specified, selections are made according to the +relative weights. Alternatively, if a cumulative_weights sequence is given, +the selections are made according to the cumulative weights (perhaps computed +using itertools.accumulate()). For example, the relative weights +[10, 5, 30, 5] are equivalent to the cumulative weights [10, 15, 45, 50]. +Internally, the relative weights are converted to cumulative weights before +making selections, so supplying the cumulative weights saves work.

+

If neither weights nor cumulative_weights are specified, selections are +made with equal probability. If a weights sequence is supplied, it must be the +same length as the seq sequence. Specifying both weights and +cumulative_weights will raise a TypeError.

+

The weights or cumulative_weights can use any numeric type that +interoperates with the float values returned by ixia.random() (that +includes integers, floats, and fractions but excludes decimals). Weights are +assumed to be non-negative and finite. If all weights are zero, a ValueError is raised.

+

ixia.rand_ints

+
+

Link: See the Integers section.

+
+

ixia.sample

+
+

Link: Original section for random.sample

+
+
def sample(
+    seq: Sequence[T],
+    k: int,
+    *,
+    counts: Iterable[int] | None = None
+) -> list[T]
+
+

Returns a k length list of unique elements chosen from the sequence seq, +while keeping the original sequence unchanged. Used for random sampling without +replacement.

+

The resulting list is in selection order so that all sub-slices will also be +valid random samples. This allows raffle winners (the sample) to be partitioned +into grand prize and second place winners (the subslices).

+

Members of the sequence don't need to be hashable nor unique. If the sequence +contains repeats, then each occurrence is a possible selection in the sample.

+

Repeated elements can be specified one at a time or with the optional +keyword-only counts parameter. For example, +

sample(["red", "blue"], counts=[4, 2], k=5)
+
+is equivalent to +
sample(["red", "red", "red", "red", "blue", "blue", k=5])
+
+To choose a sample from a range of integers, use a range() object as an argument. This is especially fast and space efficient for sampling from a large population: +
sample(range(10 ** 7), k=60)
+

+

If the sample size is larger than the population size, a ValueError is raised.

+

ixia.shuffle

+
+

Link: Original section for random.shuffle

+
+
def shuffle(seq: MutableSequence[Any]) -> None
+
+

Shuffles the sequence seq in place.

+
+

For out of place shuffling, use ixia.shuffled().

+
+

ixia.shuffled

+
def shuffled(seq: Sequence[T]) -> MutableSequence[T]
+
+

Shuffles the sequence seq out of place.

+

If seq is a mutable type M[T], the function will return M[T].
+If seq is an immutable type IM[T], the function will return list[T].

+
+

For in place shuffling, use ixia.shuffle().

+
+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/v1.3.2/sitemap.xml b/v1.3.2/sitemap.xml new file mode 100644 index 0000000..0f8724e --- /dev/null +++ b/v1.3.2/sitemap.xml @@ -0,0 +1,3 @@ + + + \ No newline at end of file diff --git a/v1.3.2/sitemap.xml.gz b/v1.3.2/sitemap.xml.gz new file mode 100644 index 0000000000000000000000000000000000000000..db050000a09a7be7f9c51e1faa04fe68151b3c77 GIT binary patch literal 127 zcmV-_0D%7=iwFqTw_Roe|8r?{Wo=<_E_iKh04<9_3V)_WXo8&M?ytk3HC}0~zlG)Vu + + + + + + + + + + + + + + + + + + + + Strings and bytes - Ixia Documentation + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ +
+ + + + + + + + +
+ + +
+ +
+ + + + + + +
+
+ + + +
+
+
+ + + + +
+
+
+ + + +
+
+
+ + + +
+
+
+ + + +
+
+ + + + + + + +

Strings and bytes

+

ixia.passphrase

+
def passphrase(
+    n: int, *, sep: str = "-", words_path: str = "/usr/share/dict/words"
+) -> str
+
+

Generates an XKCD-style passphrase made up from n words (based on the file specified by words_path), separated by sep (- by default).

+

⚠️ The default word list is not available on Windows.

+

ixia.rand_bytes

+
+

Link: Original section for random.randbytes

+
+
def rand_bytes(n: int = 32) -> bytes
+
+

Generates n random bytes. Defaults to 32.

+

ixia.rand_hex

+
+

Link: Original section for secrets.token_hex

+
+
def rand_hex(n: int) -> str
+
+

Returns a hex string composed of n random bytes.

+

ixia.rand_line

+

def rand_line(file: TextIOBase | str) -> str
+
+Returns a random line from a file. Given a string, assumes it is +a path, reads it, and returns a random line from the read content. +Given a readable IO object, reads it, +and returns a random line from the read content.

+

ixia.rand_urlsafe

+
+

Original section for secrets.token_urlsafe

+
+
def rand_urlsafe(n: int = 32) -> str
+
+

Returns a random URL-safe text string, composed of n bytes, in Base64 encoding. Defaults to 32.

+ + + + + + +
+
+ + +
+ +
+ + + +
+
+
+
+ + + + + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/versions.json b/versions.json new file mode 100644 index 0000000..65a90b0 --- /dev/null +++ b/versions.json @@ -0,0 +1,9 @@ +[ + { + "version": "v1.3.2", + "title": "v1.3.2", + "aliases": [ + "latest" + ] + } +]