Python Library Caching
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925
  1. /*
  2. * basic.css
  3. * ~~~~~~~~~
  4. *
  5. * Sphinx stylesheet -- basic theme.
  6. *
  7. * :copyright: Copyright 2007-2024 by the Sphinx team, see AUTHORS.
  8. * :license: BSD, see LICENSE for details.
  9. *
  10. */
  11. /* -- main layout ----------------------------------------------------------- */
  12. div.clearer {
  13. clear: both;
  14. }
  15. div.section::after {
  16. display: block;
  17. content: '';
  18. clear: left;
  19. }
  20. /* -- relbar ---------------------------------------------------------------- */
  21. div.related {
  22. width: 100%;
  23. font-size: 90%;
  24. }
  25. div.related h3 {
  26. display: none;
  27. }
  28. div.related ul {
  29. margin: 0;
  30. padding: 0 0 0 10px;
  31. list-style: none;
  32. }
  33. div.related li {
  34. display: inline;
  35. }
  36. div.related li.right {
  37. float: right;
  38. margin-right: 5px;
  39. }
  40. /* -- sidebar --------------------------------------------------------------- */
  41. div.sphinxsidebarwrapper {
  42. padding: 10px 5px 0 10px;
  43. }
  44. div.sphinxsidebar {
  45. float: left;
  46. width: 230px;
  47. margin-left: -100%;
  48. font-size: 90%;
  49. word-wrap: break-word;
  50. overflow-wrap : break-word;
  51. }
  52. div.sphinxsidebar ul {
  53. list-style: none;
  54. }
  55. div.sphinxsidebar ul ul,
  56. div.sphinxsidebar ul.want-points {
  57. margin-left: 20px;
  58. list-style: square;
  59. }
  60. div.sphinxsidebar ul ul {
  61. margin-top: 0;
  62. margin-bottom: 0;
  63. }
  64. div.sphinxsidebar form {
  65. margin-top: 10px;
  66. }
  67. div.sphinxsidebar input {
  68. border: 1px solid #98dbcc;
  69. font-family: sans-serif;
  70. font-size: 1em;
  71. }
  72. div.sphinxsidebar #searchbox form.search {
  73. overflow: hidden;
  74. }
  75. div.sphinxsidebar #searchbox input[type="text"] {
  76. float: left;
  77. width: 80%;
  78. padding: 0.25em;
  79. box-sizing: border-box;
  80. }
  81. div.sphinxsidebar #searchbox input[type="submit"] {
  82. float: left;
  83. width: 20%;
  84. border-left: none;
  85. padding: 0.25em;
  86. box-sizing: border-box;
  87. }
  88. img {
  89. border: 0;
  90. max-width: 100%;
  91. }
  92. /* -- search page ----------------------------------------------------------- */
  93. ul.search {
  94. margin: 10px 0 0 20px;
  95. padding: 0;
  96. }
  97. ul.search li {
  98. padding: 5px 0 5px 20px;
  99. background-image: url(file.png);
  100. background-repeat: no-repeat;
  101. background-position: 0 7px;
  102. }
  103. ul.search li a {
  104. font-weight: bold;
  105. }
  106. ul.search li p.context {
  107. color: #888;
  108. margin: 2px 0 0 30px;
  109. text-align: left;
  110. }
  111. ul.keywordmatches li.goodmatch a {
  112. font-weight: bold;
  113. }
  114. /* -- index page ------------------------------------------------------------ */
  115. table.contentstable {
  116. width: 90%;
  117. margin-left: auto;
  118. margin-right: auto;
  119. }
  120. table.contentstable p.biglink {
  121. line-height: 150%;
  122. }
  123. a.biglink {
  124. font-size: 1.3em;
  125. }
  126. span.linkdescr {
  127. font-style: italic;
  128. padding-top: 5px;
  129. font-size: 90%;
  130. }
  131. /* -- general index --------------------------------------------------------- */
  132. table.indextable {
  133. width: 100%;
  134. }
  135. table.indextable td {
  136. text-align: left;
  137. vertical-align: top;
  138. }
  139. table.indextable ul {
  140. margin-top: 0;
  141. margin-bottom: 0;
  142. list-style-type: none;
  143. }
  144. table.indextable > tbody > tr > td > ul {
  145. padding-left: 0em;
  146. }
  147. table.indextable tr.pcap {
  148. height: 10px;
  149. }
  150. table.indextable tr.cap {
  151. margin-top: 10px;
  152. background-color: #f2f2f2;
  153. }
  154. img.toggler {
  155. margin-right: 3px;
  156. margin-top: 3px;
  157. cursor: pointer;
  158. }
  159. div.modindex-jumpbox {
  160. border-top: 1px solid #ddd;
  161. border-bottom: 1px solid #ddd;
  162. margin: 1em 0 1em 0;
  163. padding: 0.4em;
  164. }
  165. div.genindex-jumpbox {
  166. border-top: 1px solid #ddd;
  167. border-bottom: 1px solid #ddd;
  168. margin: 1em 0 1em 0;
  169. padding: 0.4em;
  170. }
  171. /* -- domain module index --------------------------------------------------- */
  172. table.modindextable td {
  173. padding: 2px;
  174. border-collapse: collapse;
  175. }
  176. /* -- general body styles --------------------------------------------------- */
  177. div.body {
  178. min-width: 360px;
  179. max-width: 800px;
  180. }
  181. div.body p, div.body dd, div.body li, div.body blockquote {
  182. -moz-hyphens: auto;
  183. -ms-hyphens: auto;
  184. -webkit-hyphens: auto;
  185. hyphens: auto;
  186. }
  187. a.headerlink {
  188. visibility: hidden;
  189. }
  190. a:visited {
  191. color: #551A8B;
  192. }
  193. h1:hover > a.headerlink,
  194. h2:hover > a.headerlink,
  195. h3:hover > a.headerlink,
  196. h4:hover > a.headerlink,
  197. h5:hover > a.headerlink,
  198. h6:hover > a.headerlink,
  199. dt:hover > a.headerlink,
  200. caption:hover > a.headerlink,
  201. p.caption:hover > a.headerlink,
  202. div.code-block-caption:hover > a.headerlink {
  203. visibility: visible;
  204. }
  205. div.body p.caption {
  206. text-align: inherit;
  207. }
  208. div.body td {
  209. text-align: left;
  210. }
  211. .first {
  212. margin-top: 0 !important;
  213. }
  214. p.rubric {
  215. margin-top: 30px;
  216. font-weight: bold;
  217. }
  218. img.align-left, figure.align-left, .figure.align-left, object.align-left {
  219. clear: left;
  220. float: left;
  221. margin-right: 1em;
  222. }
  223. img.align-right, figure.align-right, .figure.align-right, object.align-right {
  224. clear: right;
  225. float: right;
  226. margin-left: 1em;
  227. }
  228. img.align-center, figure.align-center, .figure.align-center, object.align-center {
  229. display: block;
  230. margin-left: auto;
  231. margin-right: auto;
  232. }
  233. img.align-default, figure.align-default, .figure.align-default {
  234. display: block;
  235. margin-left: auto;
  236. margin-right: auto;
  237. }
  238. .align-left {
  239. text-align: left;
  240. }
  241. .align-center {
  242. text-align: center;
  243. }
  244. .align-default {
  245. text-align: center;
  246. }
  247. .align-right {
  248. text-align: right;
  249. }
  250. /* -- sidebars -------------------------------------------------------------- */
  251. div.sidebar,
  252. aside.sidebar {
  253. margin: 0 0 0.5em 1em;
  254. border: 1px solid #ddb;
  255. padding: 7px;
  256. background-color: #ffe;
  257. width: 40%;
  258. float: right;
  259. clear: right;
  260. overflow-x: auto;
  261. }
  262. p.sidebar-title {
  263. font-weight: bold;
  264. }
  265. nav.contents,
  266. aside.topic,
  267. div.admonition, div.topic, blockquote {
  268. clear: left;
  269. }
  270. /* -- topics ---------------------------------------------------------------- */
  271. nav.contents,
  272. aside.topic,
  273. div.topic {
  274. border: 1px solid #ccc;
  275. padding: 7px;
  276. margin: 10px 0 10px 0;
  277. }
  278. p.topic-title {
  279. font-size: 1.1em;
  280. font-weight: bold;
  281. margin-top: 10px;
  282. }
  283. /* -- admonitions ----------------------------------------------------------- */
  284. div.admonition {
  285. margin-top: 10px;
  286. margin-bottom: 10px;
  287. padding: 7px;
  288. }
  289. div.admonition dt {
  290. font-weight: bold;
  291. }
  292. p.admonition-title {
  293. margin: 0px 10px 5px 0px;
  294. font-weight: bold;
  295. }
  296. div.body p.centered {
  297. text-align: center;
  298. margin-top: 25px;
  299. }
  300. /* -- content of sidebars/topics/admonitions -------------------------------- */
  301. div.sidebar > :last-child,
  302. aside.sidebar > :last-child,
  303. nav.contents > :last-child,
  304. aside.topic > :last-child,
  305. div.topic > :last-child,
  306. div.admonition > :last-child {
  307. margin-bottom: 0;
  308. }
  309. div.sidebar::after,
  310. aside.sidebar::after,
  311. nav.contents::after,
  312. aside.topic::after,
  313. div.topic::after,
  314. div.admonition::after,
  315. blockquote::after {
  316. display: block;
  317. content: '';
  318. clear: both;
  319. }
  320. /* -- tables ---------------------------------------------------------------- */
  321. table.docutils {
  322. margin-top: 10px;
  323. margin-bottom: 10px;
  324. border: 0;
  325. border-collapse: collapse;
  326. }
  327. table.align-center {
  328. margin-left: auto;
  329. margin-right: auto;
  330. }
  331. table.align-default {
  332. margin-left: auto;
  333. margin-right: auto;
  334. }
  335. table caption span.caption-number {
  336. font-style: italic;
  337. }
  338. table caption span.caption-text {
  339. }
  340. table.docutils td, table.docutils th {
  341. padding: 1px 8px 1px 5px;
  342. border-top: 0;
  343. border-left: 0;
  344. border-right: 0;
  345. border-bottom: 1px solid #aaa;
  346. }
  347. th {
  348. text-align: left;
  349. padding-right: 5px;
  350. }
  351. table.citation {
  352. border-left: solid 1px gray;
  353. margin-left: 1px;
  354. }
  355. table.citation td {
  356. border-bottom: none;
  357. }
  358. th > :first-child,
  359. td > :first-child {
  360. margin-top: 0px;
  361. }
  362. th > :last-child,
  363. td > :last-child {
  364. margin-bottom: 0px;
  365. }
  366. /* -- figures --------------------------------------------------------------- */
  367. div.figure, figure {
  368. margin: 0.5em;
  369. padding: 0.5em;
  370. }
  371. div.figure p.caption, figcaption {
  372. padding: 0.3em;
  373. }
  374. div.figure p.caption span.caption-number,
  375. figcaption span.caption-number {
  376. font-style: italic;
  377. }
  378. div.figure p.caption span.caption-text,
  379. figcaption span.caption-text {
  380. }
  381. /* -- field list styles ----------------------------------------------------- */
  382. table.field-list td, table.field-list th {
  383. border: 0 !important;
  384. }
  385. .field-list ul {
  386. margin: 0;
  387. padding-left: 1em;
  388. }
  389. .field-list p {
  390. margin: 0;
  391. }
  392. .field-name {
  393. -moz-hyphens: manual;
  394. -ms-hyphens: manual;
  395. -webkit-hyphens: manual;
  396. hyphens: manual;
  397. }
  398. /* -- hlist styles ---------------------------------------------------------- */
  399. table.hlist {
  400. margin: 1em 0;
  401. }
  402. table.hlist td {
  403. vertical-align: top;
  404. }
  405. /* -- object description styles --------------------------------------------- */
  406. .sig {
  407. font-family: 'Consolas', 'Menlo', 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', monospace;
  408. }
  409. .sig-name, code.descname {
  410. background-color: transparent;
  411. font-weight: bold;
  412. }
  413. .sig-name {
  414. font-size: 1.1em;
  415. }
  416. code.descname {
  417. font-size: 1.2em;
  418. }
  419. .sig-prename, code.descclassname {
  420. background-color: transparent;
  421. }
  422. .optional {
  423. font-size: 1.3em;
  424. }
  425. .sig-paren {
  426. font-size: larger;
  427. }
  428. .sig-param.n {
  429. font-style: italic;
  430. }
  431. /* C++ specific styling */
  432. .sig-inline.c-texpr,
  433. .sig-inline.cpp-texpr {
  434. font-family: unset;
  435. }
  436. .sig.c .k, .sig.c .kt,
  437. .sig.cpp .k, .sig.cpp .kt {
  438. color: #0033B3;
  439. }
  440. .sig.c .m,
  441. .sig.cpp .m {
  442. color: #1750EB;
  443. }
  444. .sig.c .s, .sig.c .sc,
  445. .sig.cpp .s, .sig.cpp .sc {
  446. color: #067D17;
  447. }
  448. /* -- other body styles ----------------------------------------------------- */
  449. ol.arabic {
  450. list-style: decimal;
  451. }
  452. ol.loweralpha {
  453. list-style: lower-alpha;
  454. }
  455. ol.upperalpha {
  456. list-style: upper-alpha;
  457. }
  458. ol.lowerroman {
  459. list-style: lower-roman;
  460. }
  461. ol.upperroman {
  462. list-style: upper-roman;
  463. }
  464. :not(li) > ol > li:first-child > :first-child,
  465. :not(li) > ul > li:first-child > :first-child {
  466. margin-top: 0px;
  467. }
  468. :not(li) > ol > li:last-child > :last-child,
  469. :not(li) > ul > li:last-child > :last-child {
  470. margin-bottom: 0px;
  471. }
  472. ol.simple ol p,
  473. ol.simple ul p,
  474. ul.simple ol p,
  475. ul.simple ul p {
  476. margin-top: 0;
  477. }
  478. ol.simple > li:not(:first-child) > p,
  479. ul.simple > li:not(:first-child) > p {
  480. margin-top: 0;
  481. }
  482. ol.simple p,
  483. ul.simple p {
  484. margin-bottom: 0;
  485. }
  486. aside.footnote > span,
  487. div.citation > span {
  488. float: left;
  489. }
  490. aside.footnote > span:last-of-type,
  491. div.citation > span:last-of-type {
  492. padding-right: 0.5em;
  493. }
  494. aside.footnote > p {
  495. margin-left: 2em;
  496. }
  497. div.citation > p {
  498. margin-left: 4em;
  499. }
  500. aside.footnote > p:last-of-type,
  501. div.citation > p:last-of-type {
  502. margin-bottom: 0em;
  503. }
  504. aside.footnote > p:last-of-type:after,
  505. div.citation > p:last-of-type:after {
  506. content: "";
  507. clear: both;
  508. }
  509. dl.field-list {
  510. display: grid;
  511. grid-template-columns: fit-content(30%) auto;
  512. }
  513. dl.field-list > dt {
  514. font-weight: bold;
  515. word-break: break-word;
  516. padding-left: 0.5em;
  517. padding-right: 5px;
  518. }
  519. dl.field-list > dd {
  520. padding-left: 0.5em;
  521. margin-top: 0em;
  522. margin-left: 0em;
  523. margin-bottom: 0em;
  524. }
  525. dl {
  526. margin-bottom: 15px;
  527. }
  528. dd > :first-child {
  529. margin-top: 0px;
  530. }
  531. dd ul, dd table {
  532. margin-bottom: 10px;
  533. }
  534. dd {
  535. margin-top: 3px;
  536. margin-bottom: 10px;
  537. margin-left: 30px;
  538. }
  539. .sig dd {
  540. margin-top: 0px;
  541. margin-bottom: 0px;
  542. }
  543. .sig dl {
  544. margin-top: 0px;
  545. margin-bottom: 0px;
  546. }
  547. dl > dd:last-child,
  548. dl > dd:last-child > :last-child {
  549. margin-bottom: 0;
  550. }
  551. dt:target, span.highlighted {
  552. background-color: #fbe54e;
  553. }
  554. rect.highlighted {
  555. fill: #fbe54e;
  556. }
  557. dl.glossary dt {
  558. font-weight: bold;
  559. font-size: 1.1em;
  560. }
  561. .versionmodified {
  562. font-style: italic;
  563. }
  564. .system-message {
  565. background-color: #fda;
  566. padding: 5px;
  567. border: 3px solid red;
  568. }
  569. .footnote:target {
  570. background-color: #ffa;
  571. }
  572. .line-block {
  573. display: block;
  574. margin-top: 1em;
  575. margin-bottom: 1em;
  576. }
  577. .line-block .line-block {
  578. margin-top: 0;
  579. margin-bottom: 0;
  580. margin-left: 1.5em;
  581. }
  582. .guilabel, .menuselection {
  583. font-family: sans-serif;
  584. }
  585. .accelerator {
  586. text-decoration: underline;
  587. }
  588. .classifier {
  589. font-style: oblique;
  590. }
  591. .classifier:before {
  592. font-style: normal;
  593. margin: 0 0.5em;
  594. content: ":";
  595. display: inline-block;
  596. }
  597. abbr, acronym {
  598. border-bottom: dotted 1px;
  599. cursor: help;
  600. }
  601. .translated {
  602. background-color: rgba(207, 255, 207, 0.2)
  603. }
  604. .untranslated {
  605. background-color: rgba(255, 207, 207, 0.2)
  606. }
  607. /* -- code displays --------------------------------------------------------- */
  608. pre {
  609. overflow: auto;
  610. overflow-y: hidden; /* fixes display issues on Chrome browsers */
  611. }
  612. pre, div[class*="highlight-"] {
  613. clear: both;
  614. }
  615. span.pre {
  616. -moz-hyphens: none;
  617. -ms-hyphens: none;
  618. -webkit-hyphens: none;
  619. hyphens: none;
  620. white-space: nowrap;
  621. }
  622. div[class*="highlight-"] {
  623. margin: 1em 0;
  624. }
  625. td.linenos pre {
  626. border: 0;
  627. background-color: transparent;
  628. color: #aaa;
  629. }
  630. table.highlighttable {
  631. display: block;
  632. }
  633. table.highlighttable tbody {
  634. display: block;
  635. }
  636. table.highlighttable tr {
  637. display: flex;
  638. }
  639. table.highlighttable td {
  640. margin: 0;
  641. padding: 0;
  642. }
  643. table.highlighttable td.linenos {
  644. padding-right: 0.5em;
  645. }
  646. table.highlighttable td.code {
  647. flex: 1;
  648. overflow: hidden;
  649. }
  650. .highlight .hll {
  651. display: block;
  652. }
  653. div.highlight pre,
  654. table.highlighttable pre {
  655. margin: 0;
  656. }
  657. div.code-block-caption + div {
  658. margin-top: 0;
  659. }
  660. div.code-block-caption {
  661. margin-top: 1em;
  662. padding: 2px 5px;
  663. font-size: small;
  664. }
  665. div.code-block-caption code {
  666. background-color: transparent;
  667. }
  668. table.highlighttable td.linenos,
  669. span.linenos,
  670. div.highlight span.gp { /* gp: Generic.Prompt */
  671. user-select: none;
  672. -webkit-user-select: text; /* Safari fallback only */
  673. -webkit-user-select: none; /* Chrome/Safari */
  674. -moz-user-select: none; /* Firefox */
  675. -ms-user-select: none; /* IE10+ */
  676. }
  677. div.code-block-caption span.caption-number {
  678. padding: 0.1em 0.3em;
  679. font-style: italic;
  680. }
  681. div.code-block-caption span.caption-text {
  682. }
  683. div.literal-block-wrapper {
  684. margin: 1em 0;
  685. }
  686. code.xref, a code {
  687. background-color: transparent;
  688. font-weight: bold;
  689. }
  690. h1 code, h2 code, h3 code, h4 code, h5 code, h6 code {
  691. background-color: transparent;
  692. }
  693. .viewcode-link {
  694. float: right;
  695. }
  696. .viewcode-back {
  697. float: right;
  698. font-family: sans-serif;
  699. }
  700. div.viewcode-block:target {
  701. margin: -1px -10px;
  702. padding: 0 10px;
  703. }
  704. /* -- math display ---------------------------------------------------------- */
  705. img.math {
  706. vertical-align: middle;
  707. }
  708. div.body div.math p {
  709. text-align: center;
  710. }
  711. span.eqno {
  712. float: right;
  713. }
  714. span.eqno a.headerlink {
  715. position: absolute;
  716. z-index: 1;
  717. }
  718. div.math:hover a.headerlink {
  719. visibility: visible;
  720. }
  721. /* -- printout stylesheet --------------------------------------------------- */
  722. @media print {
  723. div.document,
  724. div.documentwrapper,
  725. div.bodywrapper {
  726. margin: 0 !important;
  727. width: 100%;
  728. }
  729. div.sphinxsidebar,
  730. div.related,
  731. div.footer,
  732. #top-link {
  733. display: none;
  734. }
  735. }