[{"data":1,"prerenderedAt":6886},["ShallowReactive",2],{"navigation":3,"page-\u002Fdocs\u002Flearn\u002Fquadratic":3716,"surround-\u002Fdocs\u002Flearn\u002Fquadratic":6881},[4,30,34,38,43,3692,3696,3700,3704,3708,3712],{"title":5,"path":6,"stem":7,"children":8,"page":29},"Blog","\u002Fblog","blog",[9,13,17,21,25],{"title":10,"path":11,"stem":12},"Rux 0.3.0 — Laying the Cross-Platform Groundwork","\u002Fblog\u002Frelease-v0.3.0","blog\u002F1.release-v0.3.0",{"title":14,"path":15,"stem":16},"Programming Language Without LLVM","\u002Fblog\u002Flanguage-without-llvm","blog\u002F2.language-without-llvm",{"title":18,"path":19,"stem":20},"Rux 0.2.0 — A Real Language","\u002Fblog\u002Frelease-v0.2.0","blog\u002F3.release-v0.2.0",{"title":22,"path":23,"stem":24},"Rux 0.1.0 — It Compiles!","\u002Fblog\u002Frelease-v0.1.0","blog\u002F4.release-v0.1.0",{"title":26,"path":27,"stem":28},"Getting Started","\u002Fblog\u002Fgetting-started","blog\u002F5.getting-started",false,{"title":31,"path":32,"stem":33},"Code of Conduct","\u002Fcode-of-conduct","code-of-conduct",{"title":35,"path":36,"stem":37},"Community","\u002Fcommunity","community",{"title":39,"path":40,"stem":41,"icon":42},"Design Kit","\u002Fdesign-kit","design-kit","i-lucide-palette",{"title":44,"path":45,"stem":46,"children":47},"Documentation","\u002Fdocs","docs",[48,51,1365,1910,2012,2058],{"title":49,"path":45,"stem":50},"Overview","docs\u002Findex",{"title":52,"path":53,"stem":54,"children":55},"Learn Rux","\u002Fdocs\u002Flearn","docs\u002F1.learn\u002F00.index",[56,57,78,82,98,102,106,110,117,121,125,129,133,137,141,145,149,153,157,161,165,172,176,180,184,188,192,199,203,207,211,215,219,223,227,231,235,239,243,247,251,258,262,266,270,274,278,282,286,293,297,301,305,309,313,317,321,325,332,336,340,344,348,352,356,360,364,368,372,376,380,384,391,395,399,403,407,411,415,422,426,430,434,438,442,446,453,457,461,465,469,473,477,481,485,489,493,497,501,505,509,513,517,524,528,532,536,540,544,551,555,559,563,567,571,575,579,583,587,591,598,602,606,610,614,618,622,626,630,634,640,644,648,655,659,663,667,671,675,679,686,690,694,698,702,706,710,714,718,722,726,730,734,738,742,746,750,757,761,765,769,773,777,781,785,789,793,797,801,805,809,813,817,824,828,832,836,840,844,848,852,856,860,864,868,872,879,883,887,891,895,899,903,907,911,915,919,923,930,934,938,942,946,950,954,958,965,969,973,977,981,985,989,993,997,1001,1005,1009,1016,1020,1024,1028,1032,1036,1040,1044,1048,1052,1056,1060,1067,1071,1075,1079,1083,1087,1091,1095,1099,1106,1110,1114,1118,1122,1126,1130,1134,1138,1142,1146,1150,1154,1161,1165,1169,1173,1177,1181,1185,1189,1196,1200,1204,1208,1212,1216,1223,1227,1231,1235,1239,1243,1247,1251,1255,1262,1266,1270,1274,1278,1282,1286,1290,1297,1301,1305,1309,1313,1317,1321,1325,1329,1333,1337,1341,1345,1349,1353,1357,1361],{"title":49,"path":53,"stem":54},{"title":58,"path":59,"stem":60,"children":61,"page":29},"Install","\u002Fdocs\u002Flearn\u002Finstall","docs\u002F1.learn\u002F00.start",[62,66,70,74],{"title":63,"path":64,"stem":65},"FreeBSD","\u002Fdocs\u002Flearn\u002Finstall\u002Ffreebsd","docs\u002F1.learn\u002F00.start\u002F1.install\u002F1.freebsd",{"title":67,"path":68,"stem":69},"Linux","\u002Fdocs\u002Flearn\u002Finstall\u002Flinux","docs\u002F1.learn\u002F00.start\u002F1.install\u002F2.linux",{"title":71,"path":72,"stem":73},"macOS","\u002Fdocs\u002Flearn\u002Finstall\u002Fmacos","docs\u002F1.learn\u002F00.start\u002F1.install\u002F3.macos",{"title":75,"path":76,"stem":77},"Windows","\u002Fdocs\u002Flearn\u002Finstall\u002Fwindows","docs\u002F1.learn\u002F00.start\u002F1.install\u002F4.windows",{"title":79,"path":80,"stem":81},"Build From Source","\u002Fdocs\u002Flearn\u002Fbuild","docs\u002F1.learn\u002F00.start\u002F2.build",{"title":83,"path":84,"stem":60,"children":85,"page":29},"Editors","\u002Fdocs\u002Flearn\u002Feditors",[86,90,94],{"title":87,"path":88,"stem":89},"Visual Studio Code","\u002Fdocs\u002Flearn\u002Feditors\u002Fvscode","docs\u002F1.learn\u002F00.start\u002F3.editors\u002F1.vscode",{"title":91,"path":92,"stem":93},"Sublime Text","\u002Fdocs\u002Flearn\u002Feditors\u002Fsublime","docs\u002F1.learn\u002F00.start\u002F3.editors\u002F2.sublime",{"title":95,"path":96,"stem":97},"Zed","\u002Fdocs\u002Flearn\u002Feditors\u002Fzed","docs\u002F1.learn\u002F00.start\u002F3.editors\u002F3.zed",{"title":99,"path":100,"stem":101},"First project","\u002Fdocs\u002Flearn\u002Ffirst-project","docs\u002F1.learn\u002F00.start\u002F4.first-project",{"title":103,"path":104,"stem":105},"Learn with AI","\u002Fdocs\u002Flearn\u002Fai","docs\u002F1.learn\u002F00.start\u002F5.ai",{"title":107,"path":108,"stem":109},"Cheat sheet","\u002Fdocs\u002Flearn\u002Fcheatsheet","docs\u002F1.learn\u002F00.start\u002F6.cheatsheet",{"title":111,"path":112,"stem":113,"children":114,"icon":116},"Basics","\u002Fdocs\u002Flearn\u002Fbasics","docs\u002F1.learn\u002F01.basics\u002F00.index",[115],{"title":49,"path":112,"stem":113},"i-lucide-sprout",{"title":118,"path":119,"stem":120},"1.1 Hello, World","\u002Fdocs\u002Flearn\u002Fhello","docs\u002F1.learn\u002F01.basics\u002F01.hello",{"title":122,"path":123,"stem":124},"1.2 Comment","\u002Fdocs\u002Flearn\u002Fcomment","docs\u002F1.learn\u002F01.basics\u002F02.comment",{"title":126,"path":127,"stem":128},"1.3 Variable","\u002Fdocs\u002Flearn\u002Fvariable","docs\u002F1.learn\u002F01.basics\u002F03.variable",{"title":130,"path":131,"stem":132},"1.4 Mutable","\u002Fdocs\u002Flearn\u002Fmutable","docs\u002F1.learn\u002F01.basics\u002F04.mutable",{"title":134,"path":135,"stem":136},"1.5 Integer","\u002Fdocs\u002Flearn\u002Finteger","docs\u002F1.learn\u002F01.basics\u002F05.integer",{"title":138,"path":139,"stem":140},"1.6 Float","\u002Fdocs\u002Flearn\u002Ffloat","docs\u002F1.learn\u002F01.basics\u002F06.float",{"title":142,"path":143,"stem":144},"1.7 Boolean","\u002Fdocs\u002Flearn\u002Fboolean","docs\u002F1.learn\u002F01.basics\u002F07.boolean",{"title":146,"path":147,"stem":148},"1.8 Character","\u002Fdocs\u002Flearn\u002Fcharacter","docs\u002F1.learn\u002F01.basics\u002F08.character",{"title":150,"path":151,"stem":152},"1.9 Literal","\u002Fdocs\u002Flearn\u002Fliteral","docs\u002F1.learn\u002F01.basics\u002F09.literal",{"title":154,"path":155,"stem":156},"1.10 Console","\u002Fdocs\u002Flearn\u002Fconsole","docs\u002F1.learn\u002F01.basics\u002F10.console",{"title":158,"path":159,"stem":160},"1.11 Const","\u002Fdocs\u002Flearn\u002Fconst","docs\u002F1.learn\u002F01.basics\u002F11.const",{"title":162,"path":163,"stem":164},"1.12 Convert","\u002Fdocs\u002Flearn\u002Fconvert","docs\u002F1.learn\u002F01.basics\u002F12.convert",{"title":166,"path":167,"stem":168,"children":169,"icon":171},"Operators","\u002Fdocs\u002Flearn\u002Foperators","docs\u002F1.learn\u002F02.operators\u002F00.index",[170],{"title":49,"path":167,"stem":168},"i-lucide-plus",{"title":173,"path":174,"stem":175},"2.1 Arithmetic","\u002Fdocs\u002Flearn\u002Farithmetic","docs\u002F1.learn\u002F02.operators\u002F01.arithmetic",{"title":177,"path":178,"stem":179},"2.2 Comparison","\u002Fdocs\u002Flearn\u002Fcomparison","docs\u002F1.learn\u002F02.operators\u002F02.comparison",{"title":181,"path":182,"stem":183},"2.3 Logical","\u002Fdocs\u002Flearn\u002Flogical","docs\u002F1.learn\u002F02.operators\u002F03.logical",{"title":185,"path":186,"stem":187},"2.4 Assignment","\u002Fdocs\u002Flearn\u002Fassignment","docs\u002F1.learn\u002F02.operators\u002F04.assignment",{"title":189,"path":190,"stem":191},"2.5 Precedence","\u002Fdocs\u002Flearn\u002Fprecedence","docs\u002F1.learn\u002F02.operators\u002F05.precedence",{"title":193,"path":194,"stem":195,"children":196,"icon":198},"Control flow","\u002Fdocs\u002Flearn\u002Fcontrol-flow","docs\u002F1.learn\u002F03.control-flow\u002F00.index",[197],{"title":49,"path":194,"stem":195},"i-lucide-git-branch",{"title":200,"path":201,"stem":202},"3.1 If","\u002Fdocs\u002Flearn\u002Fif","docs\u002F1.learn\u002F03.control-flow\u002F01.if",{"title":204,"path":205,"stem":206},"3.2 Else if","\u002Fdocs\u002Flearn\u002Felse-if","docs\u002F1.learn\u002F03.control-flow\u002F02.else-if",{"title":208,"path":209,"stem":210},"3.3 Ternary","\u002Fdocs\u002Flearn\u002Fternary","docs\u002F1.learn\u002F03.control-flow\u002F03.ternary",{"title":212,"path":213,"stem":214},"3.4 While","\u002Fdocs\u002Flearn\u002Fwhile","docs\u002F1.learn\u002F03.control-flow\u002F04.while",{"title":216,"path":217,"stem":218},"3.5 Do-while","\u002Fdocs\u002Flearn\u002Fdo-while","docs\u002F1.learn\u002F03.control-flow\u002F05.do-while",{"title":220,"path":221,"stem":222},"3.6 Loop","\u002Fdocs\u002Flearn\u002Floop","docs\u002F1.learn\u002F03.control-flow\u002F06.loop",{"title":224,"path":225,"stem":226},"3.7 Break","\u002Fdocs\u002Flearn\u002Fbreak","docs\u002F1.learn\u002F03.control-flow\u002F07.break",{"title":228,"path":229,"stem":230},"3.8 Continue","\u002Fdocs\u002Flearn\u002Fcontinue","docs\u002F1.learn\u002F03.control-flow\u002F08.continue",{"title":232,"path":233,"stem":234},"3.9 Range","\u002Fdocs\u002Flearn\u002Frange","docs\u002F1.learn\u002F03.control-flow\u002F09.range",{"title":236,"path":237,"stem":238},"3.10 For","\u002Fdocs\u002Flearn\u002Ffor","docs\u002F1.learn\u002F03.control-flow\u002F10.for",{"title":240,"path":241,"stem":242},"3.11 Label","\u002Fdocs\u002Flearn\u002Flabel","docs\u002F1.learn\u002F03.control-flow\u002F11.label",{"title":244,"path":245,"stem":246},"3.12 Match","\u002Fdocs\u002Flearn\u002Fmatch","docs\u002F1.learn\u002F03.control-flow\u002F12.match",{"title":248,"path":249,"stem":250},"3.13 Match expression","\u002Fdocs\u002Flearn\u002Fmatch-expression","docs\u002F1.learn\u002F03.control-flow\u002F13.match-expression",{"title":252,"path":253,"stem":254,"children":255,"icon":257},"Functions","\u002Fdocs\u002Flearn\u002Ffunctions","docs\u002F1.learn\u002F04.functions\u002F00.index",[256],{"title":49,"path":253,"stem":254},"i-lucide-square-function",{"title":259,"path":260,"stem":261},"4.1 Function","\u002Fdocs\u002Flearn\u002Ffunction","docs\u002F1.learn\u002F04.functions\u002F01.function",{"title":263,"path":264,"stem":265},"4.2 Return","\u002Fdocs\u002Flearn\u002Freturn","docs\u002F1.learn\u002F04.functions\u002F02.return",{"title":267,"path":268,"stem":269},"4.3 Recursion","\u002Fdocs\u002Flearn\u002Frecursion","docs\u002F1.learn\u002F04.functions\u002F03.recursion",{"title":271,"path":272,"stem":273},"4.4 Overload","\u002Fdocs\u002Flearn\u002Foverload","docs\u002F1.learn\u002F04.functions\u002F04.overload",{"title":275,"path":276,"stem":277},"4.5 Default argument","\u002Fdocs\u002Flearn\u002Fdefault-argument","docs\u002F1.learn\u002F04.functions\u002F05.default-argument",{"title":279,"path":280,"stem":281},"4.6 Generic","\u002Fdocs\u002Flearn\u002Fgeneric","docs\u002F1.learn\u002F04.functions\u002F06.generic",{"title":283,"path":284,"stem":285},"4.7 Callback","\u002Fdocs\u002Flearn\u002Fcallback","docs\u002F1.learn\u002F04.functions\u002F07.callback",{"title":287,"path":288,"stem":289,"children":290,"icon":292},"Sequences","\u002Fdocs\u002Flearn\u002Fsequences","docs\u002F1.learn\u002F05.sequences\u002F00.index",[291],{"title":49,"path":288,"stem":289},"i-lucide-brackets",{"title":294,"path":295,"stem":296},"5.1 Array","\u002Fdocs\u002Flearn\u002Farray","docs\u002F1.learn\u002F05.sequences\u002F01.array",{"title":298,"path":299,"stem":300},"5.2 Array repeat","\u002Fdocs\u002Flearn\u002Farray-repeat","docs\u002F1.learn\u002F05.sequences\u002F02.array-repeat",{"title":302,"path":303,"stem":304},"5.3 Array nested","\u002Fdocs\u002Flearn\u002Farray-nested","docs\u002F1.learn\u002F05.sequences\u002F03.array-nested",{"title":306,"path":307,"stem":308},"5.4 Slice","\u002Fdocs\u002Flearn\u002Fslice","docs\u002F1.learn\u002F05.sequences\u002F04.slice",{"title":310,"path":311,"stem":312},"5.5 Writable slice","\u002Fdocs\u002Flearn\u002Fwritable-slice","docs\u002F1.learn\u002F05.sequences\u002F05.writable-slice",{"title":314,"path":315,"stem":316},"5.6 Variadic","\u002Fdocs\u002Flearn\u002Fvariadic","docs\u002F1.learn\u002F05.sequences\u002F06.variadic",{"title":318,"path":319,"stem":320},"5.7 Tuple","\u002Fdocs\u002Flearn\u002Ftuple","docs\u002F1.learn\u002F05.sequences\u002F07.tuple",{"title":322,"path":323,"stem":324},"5.8 Destructure","\u002Fdocs\u002Flearn\u002Fdestructure","docs\u002F1.learn\u002F05.sequences\u002F08.destructure",{"title":326,"path":327,"stem":328,"children":329,"icon":331},"Types","\u002Fdocs\u002Flearn\u002Ftypes","docs\u002F1.learn\u002F06.types\u002F00.index",[330],{"title":49,"path":327,"stem":328},"i-lucide-shapes",{"title":333,"path":334,"stem":335},"6.1 Struct","\u002Fdocs\u002Flearn\u002Fstruct","docs\u002F1.learn\u002F06.types\u002F01.struct",{"title":337,"path":338,"stem":339},"6.2 Reference","\u002Fdocs\u002Flearn\u002Freference","docs\u002F1.learn\u002F06.types\u002F02.reference",{"title":341,"path":342,"stem":343},"6.3 Mutable reference","\u002Fdocs\u002Flearn\u002Fmutable-reference","docs\u002F1.learn\u002F06.types\u002F03.mutable-reference",{"title":345,"path":346,"stem":347},"6.4 Method","\u002Fdocs\u002Flearn\u002Fmethod","docs\u002F1.learn\u002F06.types\u002F04.method",{"title":349,"path":350,"stem":351},"6.5 Mutating method","\u002Fdocs\u002Flearn\u002Fmutating-method","docs\u002F1.learn\u002F06.types\u002F05.mutating-method",{"title":353,"path":354,"stem":355},"6.6 Constructor","\u002Fdocs\u002Flearn\u002Fconstructor","docs\u002F1.learn\u002F06.types\u002F06.constructor",{"title":357,"path":358,"stem":359},"6.7 Extension","\u002Fdocs\u002Flearn\u002Fextension","docs\u002F1.learn\u002F06.types\u002F07.extension",{"title":361,"path":362,"stem":363},"6.8 Enum","\u002Fdocs\u002Flearn\u002Fenum","docs\u002F1.learn\u002F06.types\u002F08.enum",{"title":365,"path":366,"stem":367},"6.9 Enum value","\u002Fdocs\u002Flearn\u002Fenum-value","docs\u002F1.learn\u002F06.types\u002F09.enum-value",{"title":369,"path":370,"stem":371},"6.10 Variant","\u002Fdocs\u002Flearn\u002Fvariant","docs\u002F1.learn\u002F06.types\u002F10.variant",{"title":373,"path":374,"stem":375},"6.11 Variant match","\u002Fdocs\u002Flearn\u002Fvariant-match","docs\u002F1.learn\u002F06.types\u002F11.variant-match",{"title":377,"path":378,"stem":379},"6.12 Type alias","\u002Fdocs\u002Flearn\u002Ftype-alias","docs\u002F1.learn\u002F06.types\u002F12.type-alias",{"title":381,"path":382,"stem":383},"6.13 Function field","\u002Fdocs\u002Flearn\u002Ffunction-field","docs\u002F1.learn\u002F06.types\u002F13.function-field",{"title":385,"path":386,"stem":387,"children":388,"icon":390},"Patterns","\u002Fdocs\u002Flearn\u002Fpatterns","docs\u002F1.learn\u002F07.patterns\u002F00.index",[389],{"title":49,"path":386,"stem":387},"i-lucide-scan-search",{"title":392,"path":393,"stem":394},"7.1 Guard","\u002Fdocs\u002Flearn\u002Fguard","docs\u002F1.learn\u002F07.patterns\u002F01.guard",{"title":396,"path":397,"stem":398},"7.2 Range pattern","\u002Fdocs\u002Flearn\u002Frange-pattern","docs\u002F1.learn\u002F07.patterns\u002F02.range-pattern",{"title":400,"path":401,"stem":402},"7.3 Tuple pattern","\u002Fdocs\u002Flearn\u002Ftuple-pattern","docs\u002F1.learn\u002F07.patterns\u002F03.tuple-pattern",{"title":404,"path":405,"stem":406},"7.4 Struct pattern","\u002Fdocs\u002Flearn\u002Fstruct-pattern","docs\u002F1.learn\u002F07.patterns\u002F04.struct-pattern",{"title":408,"path":409,"stem":410},"7.5 Character pattern","\u002Fdocs\u002Flearn\u002Fcharacter-pattern","docs\u002F1.learn\u002F07.patterns\u002F05.character-pattern",{"title":412,"path":413,"stem":414},"7.6 Exhaustive","\u002Fdocs\u002Flearn\u002Fexhaustive","docs\u002F1.learn\u002F07.patterns\u002F06.exhaustive",{"title":416,"path":417,"stem":418,"children":419,"icon":421},"Optionals","\u002Fdocs\u002Flearn\u002Foptionals","docs\u002F1.learn\u002F08.optionals\u002F00.index",[420],{"title":49,"path":417,"stem":418},"i-lucide-circle-dashed",{"title":423,"path":424,"stem":425},"8.1 Optional","\u002Fdocs\u002Flearn\u002Foptional","docs\u002F1.learn\u002F08.optionals\u002F01.optional",{"title":427,"path":428,"stem":429},"8.2 Presence","\u002Fdocs\u002Flearn\u002Fpresence","docs\u002F1.learn\u002F08.optionals\u002F02.presence",{"title":431,"path":432,"stem":433},"8.3 Coalesce","\u002Fdocs\u002Flearn\u002Fcoalesce","docs\u002F1.learn\u002F08.optionals\u002F03.coalesce",{"title":435,"path":436,"stem":437},"8.4 Coalesce exit","\u002Fdocs\u002Flearn\u002Fcoalesce-exit","docs\u002F1.learn\u002F08.optionals\u002F04.coalesce-exit",{"title":439,"path":440,"stem":441},"8.5 Optional propagate","\u002Fdocs\u002Flearn\u002Foptional-propagate","docs\u002F1.learn\u002F08.optionals\u002F05.optional-propagate",{"title":443,"path":444,"stem":445},"8.6 Nested optional","\u002Fdocs\u002Flearn\u002Fnested-optional","docs\u002F1.learn\u002F08.optionals\u002F06.nested-optional",{"title":447,"path":448,"stem":449,"children":450,"icon":452},"Errors","\u002Fdocs\u002Flearn\u002Ferrors","docs\u002F1.learn\u002F09.errors\u002F00.index",[451],{"title":49,"path":448,"stem":449},"i-lucide-triangle-alert",{"title":454,"path":455,"stem":456},"9.1 Fallible","\u002Fdocs\u002Flearn\u002Ffallible","docs\u002F1.learn\u002F09.errors\u002F01.fallible",{"title":458,"path":459,"stem":460},"9.2 Fail","\u002Fdocs\u002Flearn\u002Ffail","docs\u002F1.learn\u002F09.errors\u002F02.fail",{"title":462,"path":463,"stem":464},"9.3 Unit fallible","\u002Fdocs\u002Flearn\u002Funit-fallible","docs\u002F1.learn\u002F09.errors\u002F03.unit-fallible",{"title":466,"path":467,"stem":468},"9.4 Outcome","\u002Fdocs\u002Flearn\u002Foutcome","docs\u002F1.learn\u002F09.errors\u002F04.outcome",{"title":470,"path":471,"stem":472},"9.5 Discard","\u002Fdocs\u002Flearn\u002Fdiscard","docs\u002F1.learn\u002F09.errors\u002F05.discard",{"title":474,"path":475,"stem":476},"9.6 Catch","\u002Fdocs\u002Flearn\u002Fcatch","docs\u002F1.learn\u002F09.errors\u002F06.catch",{"title":478,"path":479,"stem":480},"9.7 Catch fallback","\u002Fdocs\u002Flearn\u002Fcatch-fallback","docs\u002F1.learn\u002F09.errors\u002F07.catch-fallback",{"title":482,"path":483,"stem":484},"9.8 Propagate","\u002Fdocs\u002Flearn\u002Fpropagate","docs\u002F1.learn\u002F09.errors\u002F08.propagate",{"title":486,"path":487,"stem":488},"9.9 Error variant","\u002Fdocs\u002Flearn\u002Ferror-variant","docs\u002F1.learn\u002F09.errors\u002F09.error-variant",{"title":490,"path":491,"stem":492},"9.10 Error mapping","\u002Fdocs\u002Flearn\u002Ferror-mapping","docs\u002F1.learn\u002F09.errors\u002F10.error-mapping",{"title":494,"path":495,"stem":496},"9.11 Error sum","\u002Fdocs\u002Flearn\u002Ferror-sum","docs\u002F1.learn\u002F09.errors\u002F11.error-sum",{"title":498,"path":499,"stem":500},"9.12 Fallible main","\u002Fdocs\u002Flearn\u002Ffallible-main","docs\u002F1.learn\u002F09.errors\u002F12.fallible-main",{"title":502,"path":503,"stem":504},"9.13 Absence to error","\u002Fdocs\u002Flearn\u002Fabsence-to-error","docs\u002F1.learn\u002F09.errors\u002F13.absence-to-error",{"title":506,"path":507,"stem":508},"9.14 Nested fallible","\u002Fdocs\u002Flearn\u002Fnested-fallible","docs\u002F1.learn\u002F09.errors\u002F14.nested-fallible",{"title":510,"path":511,"stem":512},"9.15 Panic","\u002Fdocs\u002Flearn\u002Fpanic","docs\u002F1.learn\u002F09.errors\u002F15.panic",{"title":514,"path":515,"stem":516},"9.16 Assert","\u002Fdocs\u002Flearn\u002Fassert","docs\u002F1.learn\u002F09.errors\u002F16.assert",{"title":518,"path":519,"stem":520,"children":521,"icon":523},"Sum types","\u002Fdocs\u002Flearn\u002Fsum-types","docs\u002F1.learn\u002F10.sum-types\u002F00.index",[522],{"title":49,"path":519,"stem":520},"i-lucide-combine",{"title":525,"path":526,"stem":527},"10.1 Sum type","\u002Fdocs\u002Flearn\u002Fsum-type","docs\u002F1.learn\u002F10.sum-types\u002F01.sum-type",{"title":529,"path":530,"stem":531},"10.2 Typed pattern","\u002Fdocs\u002Flearn\u002Ftyped-pattern","docs\u002F1.learn\u002F10.sum-types\u002F02.typed-pattern",{"title":533,"path":534,"stem":535},"10.3 Subset pattern","\u002Fdocs\u002Flearn\u002Fsubset-pattern","docs\u002F1.learn\u002F10.sum-types\u002F03.subset-pattern",{"title":537,"path":538,"stem":539},"10.4 The is operator","\u002Fdocs\u002Flearn\u002Fis","docs\u002F1.learn\u002F10.sum-types\u002F04.is",{"title":541,"path":542,"stem":543},"10.5 Sum widening","\u002Fdocs\u002Flearn\u002Fsum-widening","docs\u002F1.learn\u002F10.sum-types\u002F05.sum-widening",{"title":545,"path":546,"stem":547,"children":548,"icon":550},"Ownership","\u002Fdocs\u002Flearn\u002Fownership","docs\u002F1.learn\u002F11.ownership\u002F00.index",[549],{"title":49,"path":546,"stem":547},"i-lucide-key-round",{"title":552,"path":553,"stem":554},"11.1 Exclusivity","\u002Fdocs\u002Flearn\u002Fexclusivity","docs\u002F1.learn\u002F11.ownership\u002F01.exclusivity",{"title":556,"path":557,"stem":558},"11.2 Copy","\u002Fdocs\u002Flearn\u002Fcopy","docs\u002F1.learn\u002F11.ownership\u002F02.copy",{"title":560,"path":561,"stem":562},"11.3 Move","\u002Fdocs\u002Flearn\u002Fmove","docs\u002F1.learn\u002F11.ownership\u002F03.move",{"title":564,"path":565,"stem":566},"11.4 Destructor","\u002Fdocs\u002Flearn\u002Fdestructor","docs\u002F1.learn\u002F11.ownership\u002F04.destructor",{"title":568,"path":569,"stem":570},"11.5 Non-copyable types","\u002Fdocs\u002Flearn\u002Fno-copy","docs\u002F1.learn\u002F11.ownership\u002F05.no-copy",{"title":572,"path":573,"stem":574},"11.6 Custom copy","\u002Fdocs\u002Flearn\u002Fcustom-copy","docs\u002F1.learn\u002F11.ownership\u002F06.custom-copy",{"title":576,"path":577,"stem":578},"11.7 Partial move","\u002Fdocs\u002Flearn\u002Fpartial-move","docs\u002F1.learn\u002F11.ownership\u002F07.partial-move",{"title":580,"path":581,"stem":582},"11.8 Defer","\u002Fdocs\u002Flearn\u002Fdefer","docs\u002F1.learn\u002F11.ownership\u002F08.defer",{"title":584,"path":585,"stem":586},"11.9 Defer return","\u002Fdocs\u002Flearn\u002Fdefer-return","docs\u002F1.learn\u002F11.ownership\u002F09.defer-return",{"title":588,"path":589,"stem":590},"11.10 Initialization","\u002Fdocs\u002Flearn\u002Finitialization","docs\u002F1.learn\u002F11.ownership\u002F10.initialization",{"title":592,"path":593,"stem":594,"children":595,"icon":597},"Interfaces","\u002Fdocs\u002Flearn\u002Finterfaces","docs\u002F1.learn\u002F12.interfaces\u002F00.index",[596],{"title":49,"path":593,"stem":594},"i-lucide-plug",{"title":599,"path":600,"stem":601},"12.1 Interface","\u002Fdocs\u002Flearn\u002Finterface","docs\u002F1.learn\u002F12.interfaces\u002F01.interface",{"title":603,"path":604,"stem":605},"12.2 Interface value","\u002Fdocs\u002Flearn\u002Finterface-value","docs\u002F1.learn\u002F12.interfaces\u002F02.interface-value",{"title":607,"path":608,"stem":609},"12.3 Interface parameter","\u002Fdocs\u002Flearn\u002Finterface-parameter","docs\u002F1.learn\u002F12.interfaces\u002F03.interface-parameter",{"title":611,"path":612,"stem":613},"12.4 Display","\u002Fdocs\u002Flearn\u002Fdisplay","docs\u002F1.learn\u002F12.interfaces\u002F04.display",{"title":615,"path":616,"stem":617},"12.5 Equatable","\u002Fdocs\u002Flearn\u002Fequatable","docs\u002F1.learn\u002F12.interfaces\u002F05.equatable",{"title":619,"path":620,"stem":621},"12.6 Comparable","\u002Fdocs\u002Flearn\u002Fcomparable","docs\u002F1.learn\u002F12.interfaces\u002F06.comparable",{"title":623,"path":624,"stem":625},"12.7 Structural equality","\u002Fdocs\u002Flearn\u002Fstructural-equality","docs\u002F1.learn\u002F12.interfaces\u002F07.structural-equality",{"title":627,"path":628,"stem":629},"12.8 Operator overload","\u002Fdocs\u002Flearn\u002Foperator-overload","docs\u002F1.learn\u002F12.interfaces\u002F08.operator-overload",{"title":631,"path":632,"stem":633},"12.9 Derived operator","\u002Fdocs\u002Flearn\u002Fderived-operator","docs\u002F1.learn\u002F12.interfaces\u002F09.derived-operator",{"title":635,"path":636,"stem":637,"children":638},"12.10 Indexer","\u002Fdocs\u002Flearn\u002Findexer","docs\u002F1.learn\u002F12.interfaces\u002F10.indexer",[639],{"title":635,"path":636,"stem":637},{"title":641,"path":642,"stem":643},"12.11 Iterator","\u002Fdocs\u002Flearn\u002Fiterator","docs\u002F1.learn\u002F12.interfaces\u002F11.iterator",{"title":645,"path":646,"stem":647},"12.12 Iterable","\u002Fdocs\u002Flearn\u002Fiterable","docs\u002F1.learn\u002F12.interfaces\u002F12.iterable",{"title":649,"path":650,"stem":651,"children":652,"icon":654},"Generics","\u002Fdocs\u002Flearn\u002Fgenerics","docs\u002F1.learn\u002F13.generics\u002F00.index",[653],{"title":49,"path":650,"stem":651},"i-lucide-boxes",{"title":656,"path":657,"stem":658},"13.1 Generic type","\u002Fdocs\u002Flearn\u002Fgeneric-type","docs\u002F1.learn\u002F13.generics\u002F01.generic-type",{"title":660,"path":661,"stem":662},"13.2 Generic method","\u002Fdocs\u002Flearn\u002Fgeneric-method","docs\u002F1.learn\u002F13.generics\u002F02.generic-method",{"title":664,"path":665,"stem":666},"13.3 Generic bound","\u002Fdocs\u002Flearn\u002Fgeneric-bound","docs\u002F1.learn\u002F13.generics\u002F03.generic-bound",{"title":668,"path":669,"stem":670},"13.4 Multiple bounds","\u002Fdocs\u002Flearn\u002Fmultiple-bounds","docs\u002F1.learn\u002F13.generics\u002F04.multiple-bounds",{"title":672,"path":673,"stem":674},"13.5 Generic outcome","\u002Fdocs\u002Flearn\u002Fgeneric-outcome","docs\u002F1.learn\u002F13.generics\u002F05.generic-outcome",{"title":676,"path":677,"stem":678},"13.6 Generic sum","\u002Fdocs\u002Flearn\u002Fgeneric-sum","docs\u002F1.learn\u002F13.generics\u002F06.generic-sum",{"title":680,"path":681,"stem":682,"children":683,"icon":685},"Text","\u002Fdocs\u002Flearn\u002Ftext","docs\u002F1.learn\u002F14.text\u002F00.index",[684],{"title":49,"path":681,"stem":682},"i-lucide-type",{"title":687,"path":688,"stem":689},"14.1 String literal","\u002Fdocs\u002Flearn\u002Fstring-literal","docs\u002F1.learn\u002F14.text\u002F01.string-literal",{"title":691,"path":692,"stem":693},"14.2 Encoding","\u002Fdocs\u002Flearn\u002Fencoding","docs\u002F1.learn\u002F14.text\u002F02.encoding",{"title":695,"path":696,"stem":697},"14.3 String view","\u002Fdocs\u002Flearn\u002Fstring-view","docs\u002F1.learn\u002F14.text\u002F03.string-view",{"title":699,"path":700,"stem":701},"14.4 String","\u002Fdocs\u002Flearn\u002Fstring","docs\u002F1.learn\u002F14.text\u002F04.string",{"title":703,"path":704,"stem":705},"14.5 String builder","\u002Fdocs\u002Flearn\u002Fstring-builder","docs\u002F1.learn\u002F14.text\u002F05.string-builder",{"title":707,"path":708,"stem":709},"14.6 UTF-8","\u002Fdocs\u002Flearn\u002Futf8","docs\u002F1.learn\u002F14.text\u002F06.utf8",{"title":711,"path":712,"stem":713},"14.7 Unicode","\u002Fdocs\u002Flearn\u002Funicode","docs\u002F1.learn\u002F14.text\u002F07.unicode",{"title":715,"path":716,"stem":717},"14.8 Unicode case","\u002Fdocs\u002Flearn\u002Funicode-case","docs\u002F1.learn\u002F14.text\u002F08.unicode-case",{"title":719,"path":720,"stem":721},"14.9 Format","\u002Fdocs\u002Flearn\u002Fformat","docs\u002F1.learn\u002F14.text\u002F09.format",{"title":723,"path":724,"stem":725},"14.10 Format number","\u002Fdocs\u002Flearn\u002Fformat-number","docs\u002F1.learn\u002F14.text\u002F10.format-number",{"title":727,"path":728,"stem":729},"14.11 Render","\u002Fdocs\u002Flearn\u002Frender","docs\u002F1.learn\u002F14.text\u002F11.render",{"title":731,"path":732,"stem":733},"14.12 Parse","\u002Fdocs\u002Flearn\u002Fparse","docs\u002F1.learn\u002F14.text\u002F12.parse",{"title":735,"path":736,"stem":737},"14.13 Input","\u002Fdocs\u002Flearn\u002Finput","docs\u002F1.learn\u002F14.text\u002F13.input",{"title":739,"path":740,"stem":741},"14.14 Lines and joining","\u002Fdocs\u002Flearn\u002Fjoin-lines","docs\u002F1.learn\u002F14.text\u002F14.join-lines",{"title":743,"path":744,"stem":745},"14.15 Regular expressions","\u002Fdocs\u002Flearn\u002Fregex","docs\u002F1.learn\u002F14.text\u002F15.regex",{"title":747,"path":748,"stem":749},"14.16 Regex captures","\u002Fdocs\u002Flearn\u002Fregex-capture","docs\u002F1.learn\u002F14.text\u002F16.regex-capture",{"title":751,"path":752,"stem":753,"children":754,"icon":756},"Memory","\u002Fdocs\u002Flearn\u002Fmemory","docs\u002F1.learn\u002F15.memory\u002F00.index",[755],{"title":49,"path":752,"stem":753},"i-lucide-memory-stick",{"title":758,"path":759,"stem":760},"15.1 Pointer","\u002Fdocs\u002Flearn\u002Fpointer","docs\u002F1.learn\u002F15.memory\u002F01.pointer",{"title":762,"path":763,"stem":764},"15.2 Out parameter","\u002Fdocs\u002Flearn\u002Fout-parameter","docs\u002F1.learn\u002F15.memory\u002F02.out-parameter",{"title":766,"path":767,"stem":768},"15.3 Raw memory","\u002Fdocs\u002Flearn\u002Fraw-memory","docs\u002F1.learn\u002F15.memory\u002F03.raw-memory",{"title":770,"path":771,"stem":772},"15.4 Pointer arithmetic","\u002Fdocs\u002Flearn\u002Fpointer-arithmetic","docs\u002F1.learn\u002F15.memory\u002F04.pointer-arithmetic",{"title":774,"path":775,"stem":776},"15.5 Pointer slice","\u002Fdocs\u002Flearn\u002Fpointer-slice","docs\u002F1.learn\u002F15.memory\u002F05.pointer-slice",{"title":778,"path":779,"stem":780},"15.6 Optional pointer","\u002Fdocs\u002Flearn\u002Foptional-pointer","docs\u002F1.learn\u002F15.memory\u002F06.optional-pointer",{"title":782,"path":783,"stem":784},"15.7 Layout","\u002Fdocs\u002Flearn\u002Flayout","docs\u002F1.learn\u002F15.memory\u002F07.layout",{"title":786,"path":787,"stem":788},"15.8 Union","\u002Fdocs\u002Flearn\u002Funion","docs\u002F1.learn\u002F15.memory\u002F08.union",{"title":790,"path":791,"stem":792},"15.9 Allocator","\u002Fdocs\u002Flearn\u002Fallocator","docs\u002F1.learn\u002F15.memory\u002F09.allocator",{"title":794,"path":795,"stem":796},"15.10 Box","\u002Fdocs\u002Flearn\u002Fbox","docs\u002F1.learn\u002F15.memory\u002F10.box",{"title":798,"path":799,"stem":800},"15.11 Arena","\u002Fdocs\u002Flearn\u002Farena","docs\u002F1.learn\u002F15.memory\u002F11.arena",{"title":802,"path":803,"stem":804},"15.12 Fixed buffer","\u002Fdocs\u002Flearn\u002Ffixed-buffer","docs\u002F1.learn\u002F15.memory\u002F12.fixed-buffer",{"title":806,"path":807,"stem":808},"15.13 Pool","\u002Fdocs\u002Flearn\u002Fpool","docs\u002F1.learn\u002F15.memory\u002F13.pool",{"title":810,"path":811,"stem":812},"15.14 Zeroize","\u002Fdocs\u002Flearn\u002Fzeroize","docs\u002F1.learn\u002F15.memory\u002F14.zeroize",{"title":814,"path":815,"stem":816},"15.15 Rc","\u002Fdocs\u002Flearn\u002Frc","docs\u002F1.learn\u002F15.memory\u002F15.rc",{"title":818,"path":819,"stem":820,"children":821,"icon":823},"Numbers","\u002Fdocs\u002Flearn\u002Fnumbers","docs\u002F1.learn\u002F16.numbers\u002F00.index",[822],{"title":49,"path":819,"stem":820},"i-lucide-binary",{"title":825,"path":826,"stem":827},"16.1 Wide integer","\u002Fdocs\u002Flearn\u002Fwide-integer","docs\u002F1.learn\u002F16.numbers\u002F01.wide-integer",{"title":829,"path":830,"stem":831},"16.2 Number limit","\u002Fdocs\u002Flearn\u002Fnumber-limit","docs\u002F1.learn\u002F16.numbers\u002F02.number-limit",{"title":833,"path":834,"stem":835},"16.3 Float special","\u002Fdocs\u002Flearn\u002Ffloat-special","docs\u002F1.learn\u002F16.numbers\u002F03.float-special",{"title":837,"path":838,"stem":839},"16.4 Bitwise","\u002Fdocs\u002Flearn\u002Fbitwise","docs\u002F1.learn\u002F16.numbers\u002F04.bitwise",{"title":841,"path":842,"stem":843},"16.5 Shift","\u002Fdocs\u002Flearn\u002Fshift","docs\u002F1.learn\u002F16.numbers\u002F05.shift",{"title":845,"path":846,"stem":847},"16.6 Checked arithmetic","\u002Fdocs\u002Flearn\u002Fchecked-arithmetic","docs\u002F1.learn\u002F16.numbers\u002F06.checked-arithmetic",{"title":849,"path":850,"stem":851},"16.7 Wrapping arithmetic","\u002Fdocs\u002Flearn\u002Fwrapping-arithmetic","docs\u002F1.learn\u002F16.numbers\u002F07.wrapping-arithmetic",{"title":853,"path":854,"stem":855},"16.8 Checked convert","\u002Fdocs\u002Flearn\u002Fchecked-convert","docs\u002F1.learn\u002F16.numbers\u002F08.checked-convert",{"title":857,"path":858,"stem":859},"16.9 Bit operation","\u002Fdocs\u002Flearn\u002Fbit-operation","docs\u002F1.learn\u002F16.numbers\u002F09.bit-operation",{"title":861,"path":862,"stem":863},"16.10 Endian","\u002Fdocs\u002Flearn\u002Fendian","docs\u002F1.learn\u002F16.numbers\u002F10.endian",{"title":865,"path":866,"stem":867},"16.11 Math","\u002Fdocs\u002Flearn\u002Fmath","docs\u002F1.learn\u002F16.numbers\u002F11.math",{"title":869,"path":870,"stem":871},"16.12 Complex","\u002Fdocs\u002Flearn\u002Fcomplex","docs\u002F1.learn\u002F16.numbers\u002F12.complex",{"title":873,"path":874,"stem":875,"children":876,"icon":878},"Collections","\u002Fdocs\u002Flearn\u002Fcollections","docs\u002F1.learn\u002F17.collections\u002F00.index",[877],{"title":49,"path":874,"stem":875},"i-lucide-layers",{"title":880,"path":881,"stem":882},"17.1 Vector","\u002Fdocs\u002Flearn\u002Fvector","docs\u002F1.learn\u002F17.collections\u002F01.vector",{"title":884,"path":885,"stem":886},"17.2 Dynamic array","\u002Fdocs\u002Flearn\u002Fdynamic-array","docs\u002F1.learn\u002F17.collections\u002F02.dynamic-array",{"title":888,"path":889,"stem":890},"17.3 Deque","\u002Fdocs\u002Flearn\u002Fdeque","docs\u002F1.learn\u002F17.collections\u002F03.deque",{"title":892,"path":893,"stem":894},"17.4 Hash map","\u002Fdocs\u002Flearn\u002Fhash-map","docs\u002F1.learn\u002F17.collections\u002F04.hash-map",{"title":896,"path":897,"stem":898},"17.5 Hash set","\u002Fdocs\u002Flearn\u002Fhash-set","docs\u002F1.learn\u002F17.collections\u002F05.hash-set",{"title":900,"path":901,"stem":902},"17.6 Tree map","\u002Fdocs\u002Flearn\u002Ftree-map","docs\u002F1.learn\u002F17.collections\u002F06.tree-map",{"title":904,"path":905,"stem":906},"17.7 Tree set","\u002Fdocs\u002Flearn\u002Ftree-set","docs\u002F1.learn\u002F17.collections\u002F07.tree-set",{"title":908,"path":909,"stem":910},"17.8 Priority queue","\u002Fdocs\u002Flearn\u002Fpriority-queue","docs\u002F1.learn\u002F17.collections\u002F08.priority-queue",{"title":912,"path":913,"stem":914},"17.9 Bit set","\u002Fdocs\u002Flearn\u002Fbit-set","docs\u002F1.learn\u002F17.collections\u002F09.bit-set",{"title":916,"path":917,"stem":918},"17.10 Small vector","\u002Fdocs\u002Flearn\u002Fsmall-vector","docs\u002F1.learn\u002F17.collections\u002F10.small-vector",{"title":920,"path":921,"stem":922},"17.11 LRU cache","\u002Fdocs\u002Flearn\u002Flru-cache","docs\u002F1.learn\u002F17.collections\u002F11.lru-cache",{"title":924,"path":925,"stem":926,"children":927,"icon":929},"Algorithms","\u002Fdocs\u002Flearn\u002Falgorithms","docs\u002F1.learn\u002F18.algorithms\u002F00.index",[928],{"title":49,"path":925,"stem":926},"i-lucide-arrow-down-wide-narrow",{"title":931,"path":932,"stem":933},"18.1 Sort","\u002Fdocs\u002Flearn\u002Fsort","docs\u002F1.learn\u002F18.algorithms\u002F01.sort",{"title":935,"path":936,"stem":937},"18.2 Search","\u002Fdocs\u002Flearn\u002Fsearch","docs\u002F1.learn\u002F18.algorithms\u002F02.search",{"title":939,"path":940,"stem":941},"18.3 Binary search","\u002Fdocs\u002Flearn\u002Fbinary-search","docs\u002F1.learn\u002F18.algorithms\u002F03.binary-search",{"title":943,"path":944,"stem":945},"18.4 Min and max","\u002Fdocs\u002Flearn\u002Fmin-max","docs\u002F1.learn\u002F18.algorithms\u002F04.min-max",{"title":947,"path":948,"stem":949},"18.5 Fold","\u002Fdocs\u002Flearn\u002Ffold","docs\u002F1.learn\u002F18.algorithms\u002F05.fold",{"title":951,"path":952,"stem":953},"18.6 Iterator adaptors","\u002Fdocs\u002Flearn\u002Fiterator-adaptor","docs\u002F1.learn\u002F18.algorithms\u002F06.iterator-adaptor",{"title":955,"path":956,"stem":957},"18.7 Scan","\u002Fdocs\u002Flearn\u002Fscan","docs\u002F1.learn\u002F18.algorithms\u002F07.scan",{"title":959,"path":960,"stem":961,"children":962,"icon":964},"Files","\u002Fdocs\u002Flearn\u002Ffiles","docs\u002F1.learn\u002F19.files\u002F00.index",[963],{"title":49,"path":960,"stem":961},"i-lucide-folder-open",{"title":966,"path":967,"stem":968},"19.1 Path","\u002Fdocs\u002Flearn\u002Fpath","docs\u002F1.learn\u002F19.files\u002F01.path",{"title":970,"path":971,"stem":972},"19.2 Path join","\u002Fdocs\u002Flearn\u002Fpath-join","docs\u002F1.learn\u002F19.files\u002F02.path-join",{"title":974,"path":975,"stem":976},"19.3 Path normalize","\u002Fdocs\u002Flearn\u002Fpath-normalize","docs\u002F1.learn\u002F19.files\u002F03.path-normalize",{"title":978,"path":979,"stem":980},"19.4 File","\u002Fdocs\u002Flearn\u002Ffile","docs\u002F1.learn\u002F19.files\u002F04.file",{"title":982,"path":983,"stem":984},"19.5 Directory","\u002Fdocs\u002Flearn\u002Fdirectory","docs\u002F1.learn\u002F19.files\u002F05.directory",{"title":986,"path":987,"stem":988},"19.6 Metadata","\u002Fdocs\u002Flearn\u002Fmetadata","docs\u002F1.learn\u002F19.files\u002F06.metadata",{"title":990,"path":991,"stem":992},"19.7 Binary","\u002Fdocs\u002Flearn\u002Fbinary","docs\u002F1.learn\u002F19.files\u002F07.binary",{"title":994,"path":995,"stem":996},"19.8 Buffered I\u002FO","\u002Fdocs\u002Flearn\u002Fbuffered-io","docs\u002F1.learn\u002F19.files\u002F08.buffered-io",{"title":998,"path":999,"stem":1000},"19.9 Atomic file","\u002Fdocs\u002Flearn\u002Fatomic-file","docs\u002F1.learn\u002F19.files\u002F09.atomic-file",{"title":1002,"path":1003,"stem":1004},"19.10 Temporary file","\u002Fdocs\u002Flearn\u002Ftemporary-file","docs\u002F1.learn\u002F19.files\u002F10.temporary-file",{"title":1006,"path":1007,"stem":1008},"19.11 Memory streams","\u002Fdocs\u002Flearn\u002Fmemory-stream","docs\u002F1.learn\u002F19.files\u002F11.memory-stream",{"title":1010,"path":1011,"stem":1012,"children":1013,"icon":1015},"Utilities","\u002Fdocs\u002Flearn\u002Futilities","docs\u002F1.learn\u002F20.utilities\u002F00.index",[1014],{"title":49,"path":1011,"stem":1012},"i-lucide-wrench",{"title":1017,"path":1018,"stem":1019},"20.1 Duration","\u002Fdocs\u002Flearn\u002Fduration","docs\u002F1.learn\u002F20.utilities\u002F01.duration",{"title":1021,"path":1022,"stem":1023},"20.2 Stopwatch","\u002Fdocs\u002Flearn\u002Fstopwatch","docs\u002F1.learn\u002F20.utilities\u002F02.stopwatch",{"title":1025,"path":1026,"stem":1027},"20.3 Date","\u002Fdocs\u002Flearn\u002Fdate","docs\u002F1.learn\u002F20.utilities\u002F03.date",{"title":1029,"path":1030,"stem":1031},"20.4 Date and time","\u002Fdocs\u002Flearn\u002Fdate-time","docs\u002F1.learn\u002F20.utilities\u002F04.date-time",{"title":1033,"path":1034,"stem":1035},"20.5 Random","\u002Fdocs\u002Flearn\u002Frandom","docs\u002F1.learn\u002F20.utilities\u002F05.random",{"title":1037,"path":1038,"stem":1039},"20.6 Distribution","\u002Fdocs\u002Flearn\u002Fdistribution","docs\u002F1.learn\u002F20.utilities\u002F06.distribution",{"title":1041,"path":1042,"stem":1043},"20.7 Entropy","\u002Fdocs\u002Flearn\u002Fentropy","docs\u002F1.learn\u002F20.utilities\u002F07.entropy",{"title":1045,"path":1046,"stem":1047},"20.8 Hash","\u002Fdocs\u002Flearn\u002Fhash","docs\u002F1.learn\u002F20.utilities\u002F08.hash",{"title":1049,"path":1050,"stem":1051},"20.9 UUID","\u002Fdocs\u002Flearn\u002Fuuid","docs\u002F1.learn\u002F20.utilities\u002F09.uuid",{"title":1053,"path":1054,"stem":1055},"20.10 Nano ID","\u002Fdocs\u002Flearn\u002Fnano-id","docs\u002F1.learn\u002F20.utilities\u002F10.nano-id",{"title":1057,"path":1058,"stem":1059},"20.11 Time zone","\u002Fdocs\u002Flearn\u002Ftime-zone","docs\u002F1.learn\u002F20.utilities\u002F11.time-zone",{"title":1061,"path":1062,"stem":1063,"children":1064,"icon":1066},"Data formats","\u002Fdocs\u002Flearn\u002Fdata-formats","docs\u002F1.learn\u002F21.data-formats\u002F00.index",[1065],{"title":49,"path":1062,"stem":1063},"i-lucide-file-json",{"title":1068,"path":1069,"stem":1070},"21.1 JSON","\u002Fdocs\u002Flearn\u002Fjson","docs\u002F1.learn\u002F21.data-formats\u002F01.json",{"title":1072,"path":1073,"stem":1074},"21.2 Writing JSON","\u002Fdocs\u002Flearn\u002Fjson-write","docs\u002F1.learn\u002F21.data-formats\u002F02.json-write",{"title":1076,"path":1077,"stem":1078},"21.3 Streaming JSON","\u002Fdocs\u002Flearn\u002Fjson-stream","docs\u002F1.learn\u002F21.data-formats\u002F03.json-stream",{"title":1080,"path":1081,"stem":1082},"21.4 TOML","\u002Fdocs\u002Flearn\u002Ftoml","docs\u002F1.learn\u002F21.data-formats\u002F04.toml",{"title":1084,"path":1085,"stem":1086},"21.5 Writing TOML","\u002Fdocs\u002Flearn\u002Ftoml-write","docs\u002F1.learn\u002F21.data-formats\u002F05.toml-write",{"title":1088,"path":1089,"stem":1090},"21.6 Base64 and friends","\u002Fdocs\u002Flearn\u002Fbase-encoding","docs\u002F1.learn\u002F21.data-formats\u002F06.base-encoding",{"title":1092,"path":1093,"stem":1094},"21.7 URL","\u002Fdocs\u002Flearn\u002Furl","docs\u002F1.learn\u002F21.data-formats\u002F07.url",{"title":1096,"path":1097,"stem":1098},"21.8 Compress","\u002Fdocs\u002Flearn\u002Fcompress","docs\u002F1.learn\u002F21.data-formats\u002F08.compress",{"title":1100,"path":1101,"stem":1102,"children":1103,"icon":1105},"Packages","\u002Fdocs\u002Flearn\u002Fpackages","docs\u002F1.learn\u002F22.packages\u002F00.index",[1104],{"title":49,"path":1101,"stem":1102},"i-lucide-package",{"title":1107,"path":1108,"stem":1109},"22.1 Module","\u002Fdocs\u002Flearn\u002Fmodule","docs\u002F1.learn\u002F22.packages\u002F01.module",{"title":1111,"path":1112,"stem":1113},"22.2 Visibility","\u002Fdocs\u002Flearn\u002Fvisibility","docs\u002F1.learn\u002F22.packages\u002F02.visibility",{"title":1115,"path":1116,"stem":1117},"22.3 Package","\u002Fdocs\u002Flearn\u002Fpackage","docs\u002F1.learn\u002F22.packages\u002F03.package",{"title":1119,"path":1120,"stem":1121},"22.4 Dependency","\u002Fdocs\u002Flearn\u002Fdependency","docs\u002F1.learn\u002F22.packages\u002F04.dependency",{"title":1123,"path":1124,"stem":1125},"22.5 Workspace","\u002Fdocs\u002Flearn\u002Fworkspace","docs\u002F1.learn\u002F22.packages\u002F05.workspace",{"title":1127,"path":1128,"stem":1129},"22.6 Source library","\u002Fdocs\u002Flearn\u002Fsource-library","docs\u002F1.learn\u002F22.packages\u002F06.source-library",{"title":1131,"path":1132,"stem":1133},"22.7 Static library","\u002Fdocs\u002Flearn\u002Fstatic-library","docs\u002F1.learn\u002F22.packages\u002F07.static-library",{"title":1135,"path":1136,"stem":1137},"22.8 Shared library","\u002Fdocs\u002Flearn\u002Fshared-library","docs\u002F1.learn\u002F22.packages\u002F08.shared-library",{"title":1139,"path":1140,"stem":1141},"22.9 Documentation","\u002Fdocs\u002Flearn\u002Fdocumentation","docs\u002F1.learn\u002F22.packages\u002F09.documentation",{"title":1143,"path":1144,"stem":1145},"22.10 Tooling","\u002Fdocs\u002Flearn\u002Ftooling","docs\u002F1.learn\u002F22.packages\u002F10.tooling",{"title":1147,"path":1148,"stem":1149},"22.11 Unit tests","\u002Fdocs\u002Flearn\u002Funit-test","docs\u002F1.learn\u002F22.packages\u002F11.unit-test",{"title":1151,"path":1152,"stem":1153},"22.12 Benchmark","\u002Fdocs\u002Flearn\u002Fbenchmark","docs\u002F1.learn\u002F22.packages\u002F12.benchmark",{"title":1155,"path":1156,"stem":1157,"children":1158,"icon":1160},"Compile time","\u002Fdocs\u002Flearn\u002Fcompile-time","docs\u002F1.learn\u002F23.compile-time\u002F00.index",[1159],{"title":49,"path":1156,"stem":1157},"i-lucide-cpu",{"title":1162,"path":1163,"stem":1164},"23.1 When","\u002Fdocs\u002Flearn\u002Fwhen","docs\u002F1.learn\u002F23.compile-time\u002F01.when",{"title":1166,"path":1167,"stem":1168},"23.2 Target","\u002Fdocs\u002Flearn\u002Ftarget","docs\u002F1.learn\u002F23.compile-time\u002F02.target",{"title":1170,"path":1171,"stem":1172},"23.3 Build mode","\u002Fdocs\u002Flearn\u002Fbuild-mode","docs\u002F1.learn\u002F23.compile-time\u002F03.build-mode",{"title":1174,"path":1175,"stem":1176},"23.4 Source location","\u002Fdocs\u002Flearn\u002Fsource-location","docs\u002F1.learn\u002F23.compile-time\u002F04.source-location",{"title":1178,"path":1179,"stem":1180},"23.5 Compile error","\u002Fdocs\u002Flearn\u002Fcompile-error","docs\u002F1.learn\u002F23.compile-time\u002F05.compile-error",{"title":1182,"path":1183,"stem":1184},"23.6 Define","\u002Fdocs\u002Flearn\u002Fdefine","docs\u002F1.learn\u002F23.compile-time\u002F06.define",{"title":1186,"path":1187,"stem":1188},"23.7 Intrinsic","\u002Fdocs\u002Flearn\u002Fintrinsic","docs\u002F1.learn\u002F23.compile-time\u002F07.intrinsic",{"title":1190,"path":1191,"stem":1192,"children":1193,"icon":1195},"Platform","\u002Fdocs\u002Flearn\u002Fplatform","docs\u002F1.learn\u002F24.platform\u002F00.index",[1194],{"title":49,"path":1191,"stem":1192},"i-lucide-monitor-cog",{"title":1197,"path":1198,"stem":1199},"24.1 Extern","\u002Fdocs\u002Flearn\u002Fextern","docs\u002F1.learn\u002F24.platform\u002F01.extern",{"title":1201,"path":1202,"stem":1203},"24.2 C interop","\u002Fdocs\u002Flearn\u002Fc-interop","docs\u002F1.learn\u002F24.platform\u002F02.c-interop",{"title":1205,"path":1206,"stem":1207},"24.3 ABI","\u002Fdocs\u002Flearn\u002Fabi","docs\u002F1.learn\u002F24.platform\u002F03.abi",{"title":1209,"path":1210,"stem":1211},"24.4 Assembly","\u002Fdocs\u002Flearn\u002Fasm","docs\u002F1.learn\u002F24.platform\u002F04.asm",{"title":1213,"path":1214,"stem":1215},"24.5 ARM assembly","\u002Fdocs\u002Flearn\u002Fasm-arm","docs\u002F1.learn\u002F24.platform\u002F05.asm-arm",{"title":1217,"path":1218,"stem":1219,"children":1220,"icon":1222},"Concurrency","\u002Fdocs\u002Flearn\u002Fconcurrency","docs\u002F1.learn\u002F25.concurrency\u002F00.index",[1221],{"title":49,"path":1218,"stem":1219},"i-lucide-git-fork",{"title":1224,"path":1225,"stem":1226},"25.1 Thread","\u002Fdocs\u002Flearn\u002Fthread","docs\u002F1.learn\u002F25.concurrency\u002F01.thread",{"title":1228,"path":1229,"stem":1230},"25.2 Atomic","\u002Fdocs\u002Flearn\u002Fatomic","docs\u002F1.learn\u002F25.concurrency\u002F02.atomic",{"title":1232,"path":1233,"stem":1234},"25.3 Mutex","\u002Fdocs\u002Flearn\u002Fmutex","docs\u002F1.learn\u002F25.concurrency\u002F03.mutex",{"title":1236,"path":1237,"stem":1238},"25.4 Arc","\u002Fdocs\u002Flearn\u002Farc","docs\u002F1.learn\u002F25.concurrency\u002F04.arc",{"title":1240,"path":1241,"stem":1242},"25.5 Channel","\u002Fdocs\u002Flearn\u002Fchannel","docs\u002F1.learn\u002F25.concurrency\u002F05.channel",{"title":1244,"path":1245,"stem":1246},"25.6 Wait group","\u002Fdocs\u002Flearn\u002Fwait-group","docs\u002F1.learn\u002F25.concurrency\u002F06.wait-group",{"title":1248,"path":1249,"stem":1250},"25.7 Once","\u002Fdocs\u002Flearn\u002Fonce","docs\u002F1.learn\u002F25.concurrency\u002F07.once",{"title":1252,"path":1253,"stem":1254},"25.8 Read-write lock","\u002Fdocs\u002Flearn\u002Frw-lock","docs\u002F1.learn\u002F25.concurrency\u002F08.rw-lock",{"title":1256,"path":1257,"stem":1258,"children":1259,"icon":1261},"Systems","\u002Fdocs\u002Flearn\u002Fsystems","docs\u002F1.learn\u002F26.systems\u002F00.index",[1260],{"title":49,"path":1257,"stem":1258},"i-lucide-terminal",{"title":1263,"path":1264,"stem":1265},"26.1 Environment","\u002Fdocs\u002Flearn\u002Fenvironment","docs\u002F1.learn\u002F26.systems\u002F01.environment",{"title":1267,"path":1268,"stem":1269},"26.2 Child process","\u002Fdocs\u002Flearn\u002Fchild-process","docs\u002F1.learn\u002F26.systems\u002F02.child-process",{"title":1271,"path":1272,"stem":1273},"26.3 Command line","\u002Fdocs\u002Flearn\u002Fcommand-line","docs\u002F1.learn\u002F26.systems\u002F03.command-line",{"title":1275,"path":1276,"stem":1277},"26.4 Log","\u002Fdocs\u002Flearn\u002Flog","docs\u002F1.learn\u002F26.systems\u002F04.log",{"title":1279,"path":1280,"stem":1281},"26.5 IP addresses","\u002Fdocs\u002Flearn\u002Fip-address","docs\u002F1.learn\u002F26.systems\u002F05.ip-address",{"title":1283,"path":1284,"stem":1285},"26.6 TCP","\u002Fdocs\u002Flearn\u002Ftcp","docs\u002F1.learn\u002F26.systems\u002F06.tcp",{"title":1287,"path":1288,"stem":1289},"26.7 UDP","\u002Fdocs\u002Flearn\u002Fudp","docs\u002F1.learn\u002F26.systems\u002F07.udp",{"title":1291,"path":1292,"stem":1293,"children":1294,"icon":1296},"Projects","\u002Fdocs\u002Flearn\u002Fprojects","docs\u002F1.learn\u002F27.projects\u002F00.index",[1295],{"title":49,"path":1292,"stem":1293},"i-lucide-hammer",{"title":1298,"path":1299,"stem":1300},"27.1 Thanks","\u002Fdocs\u002Flearn\u002Fthanks","docs\u002F1.learn\u002F27.projects\u002F01.thanks",{"title":1302,"path":1303,"stem":1304},"27.2 FizzBuzz","\u002Fdocs\u002Flearn\u002Ffizz-buzz","docs\u002F1.learn\u002F27.projects\u002F02.fizz-buzz",{"title":1306,"path":1307,"stem":1308},"27.3 Temperature","\u002Fdocs\u002Flearn\u002Ftemperature","docs\u002F1.learn\u002F27.projects\u002F03.temperature",{"title":1310,"path":1311,"stem":1312},"27.4 Prime","\u002Fdocs\u002Flearn\u002Fprime","docs\u002F1.learn\u002F27.projects\u002F04.prime",{"title":1314,"path":1315,"stem":1316},"27.5 Calculator","\u002Fdocs\u002Flearn\u002Fcalculator","docs\u002F1.learn\u002F27.projects\u002F05.calculator",{"title":1318,"path":1319,"stem":1320},"27.6 Circle","\u002Fdocs\u002Flearn\u002Fcircle","docs\u002F1.learn\u002F27.projects\u002F06.circle",{"title":1322,"path":1323,"stem":1324},"27.7 Quadratic","\u002Fdocs\u002Flearn\u002Fquadratic","docs\u002F1.learn\u002F27.projects\u002F07.quadratic",{"title":1326,"path":1327,"stem":1328},"27.8 Word count","\u002Fdocs\u002Flearn\u002Fword-count","docs\u002F1.learn\u002F27.projects\u002F08.word-count",{"title":1330,"path":1331,"stem":1332},"27.9 Inventory","\u002Fdocs\u002Flearn\u002Finventory","docs\u002F1.learn\u002F27.projects\u002F09.inventory",{"title":1334,"path":1335,"stem":1336},"27.10 Statistics","\u002Fdocs\u002Flearn\u002Fstatistics","docs\u002F1.learn\u002F27.projects\u002F10.statistics",{"title":1338,"path":1339,"stem":1340},"27.11 Guess","\u002Fdocs\u002Flearn\u002Fguess","docs\u002F1.learn\u002F27.projects\u002F11.guess",{"title":1342,"path":1343,"stem":1344},"27.12 Age","\u002Fdocs\u002Flearn\u002Fage","docs\u002F1.learn\u002F27.projects\u002F12.age",{"title":1346,"path":1347,"stem":1348},"27.13 Password","\u002Fdocs\u002Flearn\u002Fpassword","docs\u002F1.learn\u002F27.projects\u002F13.password",{"title":1350,"path":1351,"stem":1352},"27.14 Launch","\u002Fdocs\u002Flearn\u002Flaunch","docs\u002F1.learn\u002F27.projects\u002F14.launch",{"title":1354,"path":1355,"stem":1356},"27.15 Notes","\u002Fdocs\u002Flearn\u002Fnotes","docs\u002F1.learn\u002F27.projects\u002F15.notes",{"title":1358,"path":1359,"stem":1360},"27.16 Melody","\u002Fdocs\u002Flearn\u002Fmelody","docs\u002F1.learn\u002F27.projects\u002F16.melody",{"title":1362,"path":1363,"stem":1364},"27.17 Grep","\u002Fdocs\u002Flearn\u002Fgrep","docs\u002F1.learn\u002F27.projects\u002F17.grep",{"title":1366,"path":1367,"stem":1368,"children":1369},"Rux Reference","\u002Fdocs\u002Flang","docs\u002F2.lang\u002Findex",[1370,1371,1375,1403,1433,1457,1497,1521,1532,1556,1576,1584,1596,1604,1612,1620,1628,1636,1648,1663,1678,1696,1711,1730,1758,1777,1793,1821,1865,1881,1893],{"title":49,"path":1367,"stem":1368},{"title":1372,"path":1373,"stem":1374},"Introduction","\u002Fdocs\u002Flang\u002Fintroduction","docs\u002F2.lang\u002F01.introduction",{"title":1376,"path":1377,"stem":1378,"children":1379,"page":29},"Lexical Structure","\u002Fdocs\u002Flang\u002Flexical","docs\u002F2.lang\u002F02.lexical",[1380,1384,1388,1392,1396,1400],{"title":1381,"path":1382,"stem":1383},"Source Files","\u002Fdocs\u002Flang\u002Flexical\u002Fsource-files","docs\u002F2.lang\u002F02.lexical\u002F1.source-files",{"title":1385,"path":1386,"stem":1387},"Comments","\u002Fdocs\u002Flang\u002Flexical\u002Fcomments","docs\u002F2.lang\u002F02.lexical\u002F2.comments",{"title":1389,"path":1390,"stem":1391},"Identifiers","\u002Fdocs\u002Flang\u002Flexical\u002Fidentifiers","docs\u002F2.lang\u002F02.lexical\u002F3.identifiers",{"title":1393,"path":1394,"stem":1395},"Keywords","\u002Fdocs\u002Flang\u002Flexical\u002Fkeywords","docs\u002F2.lang\u002F02.lexical\u002F4.keywords",{"title":1397,"path":1398,"stem":1399},"Literals","\u002Fdocs\u002Flang\u002Flexical\u002Fliterals","docs\u002F2.lang\u002F02.lexical\u002F5.literals",{"title":166,"path":1401,"stem":1402},"\u002Fdocs\u002Flang\u002Flexical\u002Foperators","docs\u002F2.lang\u002F02.lexical\u002F6.operators",{"title":326,"path":1404,"stem":1405,"children":1406,"page":29},"\u002Fdocs\u002Flang\u002Ftypes","docs\u002F2.lang\u002F03.types",[1407,1410,1414,1418,1422,1426,1429],{"title":49,"path":1408,"stem":1409},"\u002Fdocs\u002Flang\u002Ftypes\u002Foverview","docs\u002F2.lang\u002F03.types\u002F1.overview",{"title":1411,"path":1412,"stem":1413},"Integers","\u002Fdocs\u002Flang\u002Ftypes\u002Fintegers","docs\u002F2.lang\u002F03.types\u002F2.integers",{"title":1415,"path":1416,"stem":1417},"Floating-Point","\u002Fdocs\u002Flang\u002Ftypes\u002Ffloating-point","docs\u002F2.lang\u002F03.types\u002F3.floating-point",{"title":1419,"path":1420,"stem":1421},"Booleans","\u002Fdocs\u002Flang\u002Ftypes\u002Fbooleans","docs\u002F2.lang\u002F03.types\u002F4.booleans",{"title":1423,"path":1424,"stem":1425},"Characters","\u002Fdocs\u002Flang\u002Ftypes\u002Fcharacters","docs\u002F2.lang\u002F03.types\u002F5.characters",{"title":680,"path":1427,"stem":1428},"\u002Fdocs\u002Flang\u002Ftypes\u002Ftext","docs\u002F2.lang\u002F03.types\u002F6.text",{"title":1430,"path":1431,"stem":1432},"Aliases","\u002Fdocs\u002Flang\u002Ftypes\u002Faliases","docs\u002F2.lang\u002F03.types\u002F7.aliases",{"title":1434,"path":1435,"stem":1436,"children":1437,"page":29},"Bindings","\u002Fdocs\u002Flang\u002Fbindings","docs\u002F2.lang\u002F04.bindings",[1438,1441,1445,1449,1453],{"title":49,"path":1439,"stem":1440},"\u002Fdocs\u002Flang\u002Fbindings\u002Foverview","docs\u002F2.lang\u002F04.bindings\u002F1.overview",{"title":1442,"path":1443,"stem":1444},"Constants","\u002Fdocs\u002Flang\u002Fbindings\u002Fconstants","docs\u002F2.lang\u002F04.bindings\u002F2.constants",{"title":1446,"path":1447,"stem":1448},"Initialization","\u002Fdocs\u002Flang\u002Fbindings\u002Finitialization","docs\u002F2.lang\u002F04.bindings\u002F3.initialization",{"title":1450,"path":1451,"stem":1452},"Destructuring","\u002Fdocs\u002Flang\u002Fbindings\u002Fdestructuring","docs\u002F2.lang\u002F04.bindings\u002F4.destructuring",{"title":1454,"path":1455,"stem":1456},"Module variables","\u002Fdocs\u002Flang\u002Fbindings\u002Fmodule-variables","docs\u002F2.lang\u002F04.bindings\u002F5.module-variables",{"title":1458,"path":1459,"stem":1460,"children":1461,"page":29},"Expressions","\u002Fdocs\u002Flang\u002Fexpressions","docs\u002F2.lang\u002F05.expressions",[1462,1465,1469,1473,1477,1481,1485,1489,1493],{"title":49,"path":1463,"stem":1464},"\u002Fdocs\u002Flang\u002Fexpressions\u002Foverview","docs\u002F2.lang\u002F05.expressions\u002F1.overview",{"title":1466,"path":1467,"stem":1468},"Arithmetic","\u002Fdocs\u002Flang\u002Fexpressions\u002Farithmetic","docs\u002F2.lang\u002F05.expressions\u002F2.arithmetic",{"title":1470,"path":1471,"stem":1472},"Comparison","\u002Fdocs\u002Flang\u002Fexpressions\u002Fcomparison","docs\u002F2.lang\u002F05.expressions\u002F3.comparison",{"title":1474,"path":1475,"stem":1476},"Logical","\u002Fdocs\u002Flang\u002Fexpressions\u002Flogical","docs\u002F2.lang\u002F05.expressions\u002F4.logical",{"title":1478,"path":1479,"stem":1480},"Bitwise","\u002Fdocs\u002Flang\u002Fexpressions\u002Fbitwise","docs\u002F2.lang\u002F05.expressions\u002F5.bitwise",{"title":1482,"path":1483,"stem":1484},"Shift","\u002Fdocs\u002Flang\u002Fexpressions\u002Fshift","docs\u002F2.lang\u002F05.expressions\u002F6.shift",{"title":1486,"path":1487,"stem":1488},"Assignment","\u002Fdocs\u002Flang\u002Fexpressions\u002Fassignment","docs\u002F2.lang\u002F05.expressions\u002F7.assignment",{"title":1490,"path":1491,"stem":1492},"Conditional","\u002Fdocs\u002Flang\u002Fexpressions\u002Fconditional","docs\u002F2.lang\u002F05.expressions\u002F8.conditional",{"title":1494,"path":1495,"stem":1496},"Casts","\u002Fdocs\u002Flang\u002Fexpressions\u002Fcasts","docs\u002F2.lang\u002F05.expressions\u002F9.casts",{"title":1498,"path":1499,"stem":1500,"children":1501,"page":29},"Statements","\u002Fdocs\u002Flang\u002Fstatements","docs\u002F2.lang\u002F06.statements",[1502,1505,1509,1513,1517],{"title":49,"path":1503,"stem":1504},"\u002Fdocs\u002Flang\u002Fstatements\u002Foverview","docs\u002F2.lang\u002F06.statements\u002F1.overview",{"title":1506,"path":1507,"stem":1508},"if","\u002Fdocs\u002Flang\u002Fstatements\u002Fif","docs\u002F2.lang\u002F06.statements\u002F2.if",{"title":1510,"path":1511,"stem":1512},"Loops","\u002Fdocs\u002Flang\u002Fstatements\u002Floops","docs\u002F2.lang\u002F06.statements\u002F3.loops",{"title":1514,"path":1515,"stem":1516},"break \u002F continue","\u002Fdocs\u002Flang\u002Fstatements\u002Fbreak-continue","docs\u002F2.lang\u002F06.statements\u002F4.break-continue",{"title":1518,"path":1519,"stem":1520},"return","\u002Fdocs\u002Flang\u002Fstatements\u002Freturn","docs\u002F2.lang\u002F06.statements\u002F5.return",{"title":385,"path":1522,"stem":1523,"children":1524,"page":29},"\u002Fdocs\u002Flang\u002Fpatterns","docs\u002F2.lang\u002F07.patterns",[1525,1529],{"title":1526,"path":1527,"stem":1528},"match","\u002Fdocs\u002Flang\u002Fpatterns\u002Fmatch","docs\u002F2.lang\u002F07.patterns\u002F1.match",{"title":385,"path":1530,"stem":1531},"\u002Fdocs\u002Flang\u002Fpatterns\u002Fpatterns","docs\u002F2.lang\u002F07.patterns\u002F2.patterns",{"title":252,"path":1533,"stem":1534,"children":1535,"page":29},"\u002Fdocs\u002Flang\u002Ffunctions","docs\u002F2.lang\u002F08.functions",[1536,1540,1544,1548,1552],{"title":1537,"path":1538,"stem":1539},"Declaration","\u002Fdocs\u002Flang\u002Ffunctions\u002Fdeclaration","docs\u002F2.lang\u002F08.functions\u002F1.declaration",{"title":1541,"path":1542,"stem":1543},"Parameters","\u002Fdocs\u002Flang\u002Ffunctions\u002Fparameters","docs\u002F2.lang\u002F08.functions\u002F2.parameters",{"title":1545,"path":1546,"stem":1547},"Overloading","\u002Fdocs\u002Flang\u002Ffunctions\u002Foverloading","docs\u002F2.lang\u002F08.functions\u002F3.overloading",{"title":1549,"path":1550,"stem":1551},"Function types","\u002Fdocs\u002Flang\u002Ffunctions\u002Ffunction-types","docs\u002F2.lang\u002F08.functions\u002F4.function-types",{"title":1553,"path":1554,"stem":1555},"Main","\u002Fdocs\u002Flang\u002Ffunctions\u002Fmain","docs\u002F2.lang\u002F08.functions\u002F5.main",{"title":1557,"path":1558,"stem":1559,"children":1560,"page":29},"Structures","\u002Fdocs\u002Flang\u002Fstructs","docs\u002F2.lang\u002F09.structs",[1561,1564,1568,1572],{"title":49,"path":1562,"stem":1563},"\u002Fdocs\u002Flang\u002Fstructs\u002Foverview","docs\u002F2.lang\u002F09.structs\u002F1.overview",{"title":1565,"path":1566,"stem":1567},"Methods","\u002Fdocs\u002Flang\u002Fstructs\u002Fmethods","docs\u002F2.lang\u002F09.structs\u002F2.methods",{"title":1569,"path":1570,"stem":1571},"Constructors","\u002Fdocs\u002Flang\u002Fstructs\u002Fconstructors","docs\u002F2.lang\u002F09.structs\u002F3.constructors",{"title":1573,"path":1574,"stem":1575},"Extensions","\u002Fdocs\u002Flang\u002Fstructs\u002Fextensions","docs\u002F2.lang\u002F09.structs\u002F4.extensions",{"title":1577,"path":1578,"stem":1579,"children":1580,"page":29},"Enumerations","\u002Fdocs\u002Flang\u002Fenums","docs\u002F2.lang\u002F10.enums",[1581],{"title":49,"path":1582,"stem":1583},"\u002Fdocs\u002Flang\u002Fenums\u002Foverview","docs\u002F2.lang\u002F10.enums\u002F1.overview",{"title":1585,"path":1586,"stem":1587,"children":1588,"page":29},"Variants","\u002Fdocs\u002Flang\u002Fvariants","docs\u002F2.lang\u002F11.variants",[1589,1592],{"title":49,"path":1590,"stem":1591},"\u002Fdocs\u002Flang\u002Fvariants\u002Foverview","docs\u002F2.lang\u002F11.variants\u002F1.overview",{"title":1593,"path":1594,"stem":1595},"Matching","\u002Fdocs\u002Flang\u002Fvariants\u002Fmatching","docs\u002F2.lang\u002F11.variants\u002F2.matching",{"title":1597,"path":1598,"stem":1599,"children":1600,"page":29},"Unions","\u002Fdocs\u002Flang\u002Funions","docs\u002F2.lang\u002F12.unions",[1601],{"title":49,"path":1602,"stem":1603},"\u002Fdocs\u002Flang\u002Funions\u002Foverview","docs\u002F2.lang\u002F12.unions\u002F1.overview",{"title":1605,"path":1606,"stem":1607,"children":1608,"page":29},"Tuples","\u002Fdocs\u002Flang\u002Ftuples","docs\u002F2.lang\u002F13.tuples",[1609],{"title":49,"path":1610,"stem":1611},"\u002Fdocs\u002Flang\u002Ftuples\u002Foverview","docs\u002F2.lang\u002F13.tuples\u002F1.overview",{"title":1613,"path":1614,"stem":1615,"children":1616,"page":29},"Arrays","\u002Fdocs\u002Flang\u002Farrays","docs\u002F2.lang\u002F14.arrays",[1617],{"title":49,"path":1618,"stem":1619},"\u002Fdocs\u002Flang\u002Farrays\u002Foverview","docs\u002F2.lang\u002F14.arrays\u002F1.overview",{"title":1621,"path":1622,"stem":1623,"children":1624,"page":29},"Slices","\u002Fdocs\u002Flang\u002Fslices","docs\u002F2.lang\u002F15.slices",[1625],{"title":49,"path":1626,"stem":1627},"\u002Fdocs\u002Flang\u002Fslices\u002Foverview","docs\u002F2.lang\u002F15.slices\u002F1.overview",{"title":1629,"path":1630,"stem":1631,"children":1632,"page":29},"Ranges","\u002Fdocs\u002Flang\u002Franges","docs\u002F2.lang\u002F16.ranges",[1633],{"title":49,"path":1634,"stem":1635},"\u002Fdocs\u002Flang\u002Franges\u002Foverview","docs\u002F2.lang\u002F16.ranges\u002F1.overview",{"title":1637,"path":1638,"stem":1639,"children":1640,"page":29},"References","\u002Fdocs\u002Flang\u002Freferences","docs\u002F2.lang\u002F17.references",[1641,1644],{"title":49,"path":1642,"stem":1643},"\u002Fdocs\u002Flang\u002Freferences\u002Foverview","docs\u002F2.lang\u002F17.references\u002F1.overview",{"title":1645,"path":1646,"stem":1647},"Exclusivity","\u002Fdocs\u002Flang\u002Freferences\u002Fexclusivity","docs\u002F2.lang\u002F17.references\u002F2.exclusivity",{"title":1649,"path":1650,"stem":1651,"children":1652,"page":29},"Pointers","\u002Fdocs\u002Flang\u002Fpointers","docs\u002F2.lang\u002F18.pointers",[1653,1656,1659],{"title":49,"path":1654,"stem":1655},"\u002Fdocs\u002Flang\u002Fpointers\u002Foverview","docs\u002F2.lang\u002F18.pointers\u002F1.overview",{"title":1466,"path":1657,"stem":1658},"\u002Fdocs\u002Flang\u002Fpointers\u002Farithmetic","docs\u002F2.lang\u002F18.pointers\u002F2.arithmetic",{"title":1660,"path":1661,"stem":1662},"Slicing","\u002Fdocs\u002Flang\u002Fpointers\u002Fslicing","docs\u002F2.lang\u002F18.pointers\u002F3.slicing",{"title":416,"path":1664,"stem":1665,"children":1666,"page":29},"\u002Fdocs\u002Flang\u002Foptionals","docs\u002F2.lang\u002F19.optionals",[1667,1670,1674],{"title":49,"path":1668,"stem":1669},"\u002Fdocs\u002Flang\u002Foptionals\u002Foverview","docs\u002F2.lang\u002F19.optionals\u002F1.overview",{"title":1671,"path":1672,"stem":1673},"Coalescing","\u002Fdocs\u002Flang\u002Foptionals\u002Fcoalescing","docs\u002F2.lang\u002F19.optionals\u002F2.coalescing",{"title":1675,"path":1676,"stem":1677},"Propagation","\u002Fdocs\u002Flang\u002Foptionals\u002Fpropagation","docs\u002F2.lang\u002F19.optionals\u002F3.propagation",{"title":447,"path":1679,"stem":1680,"children":1681,"page":29},"\u002Fdocs\u002Flang\u002Ferrors","docs\u002F2.lang\u002F20.errors",[1682,1685,1689,1692],{"title":49,"path":1683,"stem":1684},"\u002Fdocs\u002Flang\u002Ferrors\u002Foverview","docs\u002F2.lang\u002F20.errors\u002F1.overview",{"title":1686,"path":1687,"stem":1688},"Handling","\u002Fdocs\u002Flang\u002Ferrors\u002Fhandling","docs\u002F2.lang\u002F20.errors\u002F2.handling",{"title":1675,"path":1690,"stem":1691},"\u002Fdocs\u002Flang\u002Ferrors\u002Fpropagation","docs\u002F2.lang\u002F20.errors\u002F3.propagation",{"title":1693,"path":1694,"stem":1695},"Panics","\u002Fdocs\u002Flang\u002Ferrors\u002Fpanics","docs\u002F2.lang\u002F20.errors\u002F4.panics",{"title":1697,"path":1698,"stem":1699,"children":1700,"page":29},"Sum Types","\u002Fdocs\u002Flang\u002Fsums","docs\u002F2.lang\u002F21.sums",[1701,1704,1707],{"title":49,"path":1702,"stem":1703},"\u002Fdocs\u002Flang\u002Fsums\u002Foverview","docs\u002F2.lang\u002F21.sums\u002F1.overview",{"title":385,"path":1705,"stem":1706},"\u002Fdocs\u002Flang\u002Fsums\u002Fpatterns","docs\u002F2.lang\u002F21.sums\u002F2.patterns",{"title":1708,"path":1709,"stem":1710},"Type Tests","\u002Fdocs\u002Flang\u002Fsums\u002Ftype-tests","docs\u002F2.lang\u002F21.sums\u002F3.type-tests",{"title":545,"path":1712,"stem":1713,"children":1714,"page":29},"\u002Fdocs\u002Flang\u002Fownership","docs\u002F2.lang\u002F22.ownership",[1715,1718,1722,1726],{"title":49,"path":1716,"stem":1717},"\u002Fdocs\u002Flang\u002Fownership\u002Foverview","docs\u002F2.lang\u002F22.ownership\u002F1.overview",{"title":1719,"path":1720,"stem":1721},"Copy and Move","\u002Fdocs\u002Flang\u002Fownership\u002Fcopy-and-move","docs\u002F2.lang\u002F22.ownership\u002F2.copy-and-move",{"title":1723,"path":1724,"stem":1725},"Destructors","\u002Fdocs\u002Flang\u002Fownership\u002Fdestructors","docs\u002F2.lang\u002F22.ownership\u002F3.destructors",{"title":1727,"path":1728,"stem":1729},"Defer","\u002Fdocs\u002Flang\u002Fownership\u002Fdefer","docs\u002F2.lang\u002F22.ownership\u002F4.defer",{"title":592,"path":1731,"stem":1732,"children":1733,"page":29},"\u002Fdocs\u002Flang\u002Finterfaces","docs\u002F2.lang\u002F23.interfaces",[1734,1737,1741,1745,1748,1754],{"title":49,"path":1735,"stem":1736},"\u002Fdocs\u002Flang\u002Finterfaces\u002Foverview","docs\u002F2.lang\u002F23.interfaces\u002F1.overview",{"title":1738,"path":1739,"stem":1740},"Interface Values","\u002Fdocs\u002Flang\u002Finterfaces\u002Finterface-values","docs\u002F2.lang\u002F23.interfaces\u002F2.interface-values",{"title":1742,"path":1743,"stem":1744},"Core Interfaces","\u002Fdocs\u002Flang\u002Finterfaces\u002Fcore-interfaces","docs\u002F2.lang\u002F23.interfaces\u002F3.core-interfaces",{"title":166,"path":1746,"stem":1747},"\u002Fdocs\u002Flang\u002Finterfaces\u002Foperators","docs\u002F2.lang\u002F23.interfaces\u002F4.operators",{"title":1749,"path":1750,"stem":1751,"children":1752},"Indexers","\u002Fdocs\u002Flang\u002Finterfaces\u002Findexers","docs\u002F2.lang\u002F23.interfaces\u002F5.indexers",[1753],{"title":1749,"path":1750,"stem":1751},{"title":1755,"path":1756,"stem":1757},"Iteration","\u002Fdocs\u002Flang\u002Finterfaces\u002Fiteration","docs\u002F2.lang\u002F23.interfaces\u002F6.iteration",{"title":649,"path":1759,"stem":1760,"children":1761,"page":29},"\u002Fdocs\u002Flang\u002Fgenerics","docs\u002F2.lang\u002F24.generics",[1762,1765,1769,1773],{"title":49,"path":1763,"stem":1764},"\u002Fdocs\u002Flang\u002Fgenerics\u002Foverview","docs\u002F2.lang\u002F24.generics\u002F1.overview",{"title":1766,"path":1767,"stem":1768},"Generic Types","\u002Fdocs\u002Flang\u002Fgenerics\u002Ftypes","docs\u002F2.lang\u002F24.generics\u002F2.types",{"title":1770,"path":1771,"stem":1772},"Generic Methods","\u002Fdocs\u002Flang\u002Fgenerics\u002Fmethods","docs\u002F2.lang\u002F24.generics\u002F3.methods",{"title":1774,"path":1775,"stem":1776},"Bounds","\u002Fdocs\u002Flang\u002Fgenerics\u002Fbounds","docs\u002F2.lang\u002F24.generics\u002F4.bounds",{"title":1778,"path":1779,"stem":1780,"children":1781,"page":29},"Modules","\u002Fdocs\u002Flang\u002Fmodules","docs\u002F2.lang\u002F25.modules",[1782,1785,1789],{"title":49,"path":1783,"stem":1784},"\u002Fdocs\u002Flang\u002Fmodules\u002Foverview","docs\u002F2.lang\u002F25.modules\u002F1.overview",{"title":1786,"path":1787,"stem":1788},"Imports","\u002Fdocs\u002Flang\u002Fmodules\u002Fimports","docs\u002F2.lang\u002F25.modules\u002F2.imports",{"title":1790,"path":1791,"stem":1792},"Visibility","\u002Fdocs\u002Flang\u002Fmodules\u002Fvisibility","docs\u002F2.lang\u002F25.modules\u002F3.visibility",{"title":1794,"path":1795,"stem":1796,"children":1797,"page":29},"Compile-Time","\u002Fdocs\u002Flang\u002Fcomptime","docs\u002F2.lang\u002F26.comptime",[1798,1801,1805,1809,1813,1817],{"title":49,"path":1799,"stem":1800},"\u002Fdocs\u002Flang\u002Fcomptime\u002Foverview","docs\u002F2.lang\u002F26.comptime\u002F1.overview",{"title":1802,"path":1803,"stem":1804},"Conditional Compilation","\u002Fdocs\u002Flang\u002Fcomptime\u002Fconditional","docs\u002F2.lang\u002F26.comptime\u002F2.conditional",{"title":1806,"path":1807,"stem":1808},"Context","\u002Fdocs\u002Flang\u002Fcomptime\u002Fcontext","docs\u002F2.lang\u002F26.comptime\u002F3.context",{"title":1810,"path":1811,"stem":1812},"Config","\u002Fdocs\u002Flang\u002Fcomptime\u002Fconfig","docs\u002F2.lang\u002F26.comptime\u002F4.config",{"title":1814,"path":1815,"stem":1816},"Intrinsics","\u002Fdocs\u002Flang\u002Fcomptime\u002Fintrinsics","docs\u002F2.lang\u002F26.comptime\u002F5.intrinsics",{"title":1818,"path":1819,"stem":1820},"Diagnostics","\u002Fdocs\u002Flang\u002Fcomptime\u002Fdiagnostics","docs\u002F2.lang\u002F26.comptime\u002F6.diagnostics",{"title":1822,"path":1823,"stem":1824,"children":1825,"page":29},"Attributes","\u002Fdocs\u002Flang\u002Fattributes","docs\u002F2.lang\u002F27.attributes",[1826,1829,1833,1837,1841,1845,1849,1853,1857,1861],{"title":49,"path":1827,"stem":1828},"\u002Fdocs\u002Flang\u002Fattributes\u002Foverview","docs\u002F2.lang\u002F27.attributes\u002F1.overview",{"title":1830,"path":1831,"stem":1832},"#Unsendable","\u002Fdocs\u002Flang\u002Fattributes\u002Funsendable","docs\u002F2.lang\u002F27.attributes\u002F10.unsendable",{"title":1834,"path":1835,"stem":1836},"#Link","\u002Fdocs\u002Flang\u002Fattributes\u002Flink","docs\u002F2.lang\u002F27.attributes\u002F2.link",{"title":1838,"path":1839,"stem":1840},"#Abi","\u002Fdocs\u002Flang\u002Fattributes\u002Fabi","docs\u002F2.lang\u002F27.attributes\u002F3.abi",{"title":1842,"path":1843,"stem":1844},"#NoReturn","\u002Fdocs\u002Flang\u002Fattributes\u002Fnoreturn","docs\u002F2.lang\u002F27.attributes\u002F4.noreturn",{"title":1846,"path":1847,"stem":1848},"#Warn","\u002Fdocs\u002Flang\u002Fattributes\u002Fwarn","docs\u002F2.lang\u002F27.attributes\u002F5.warn",{"title":1850,"path":1851,"stem":1852},"#Error","\u002Fdocs\u002Flang\u002Fattributes\u002Ferror","docs\u002F2.lang\u002F27.attributes\u002F6.error",{"title":1854,"path":1855,"stem":1856},"#Allow","\u002Fdocs\u002Flang\u002Fattributes\u002Fallow","docs\u002F2.lang\u002F27.attributes\u002F7.allow",{"title":1858,"path":1859,"stem":1860},"#Format","\u002Fdocs\u002Flang\u002Fattributes\u002Fformat","docs\u002F2.lang\u002F27.attributes\u002F8.format",{"title":1862,"path":1863,"stem":1864},"#Test","\u002Fdocs\u002Flang\u002Fattributes\u002Ftest","docs\u002F2.lang\u002F27.attributes\u002F9.test",{"title":1866,"path":1867,"stem":1868,"children":1869,"page":29},"Foreign Function Interface","\u002Fdocs\u002Flang\u002Fffi","docs\u002F2.lang\u002F28.ffi",[1870,1873,1877],{"title":49,"path":1871,"stem":1872},"\u002Fdocs\u002Flang\u002Fffi\u002Foverview","docs\u002F2.lang\u002F28.ffi\u002F1.overview",{"title":1874,"path":1875,"stem":1876},"Linking","\u002Fdocs\u002Flang\u002Fffi\u002Flinking","docs\u002F2.lang\u002F28.ffi\u002F2.linking",{"title":1878,"path":1879,"stem":1880},"Assembly","\u002Fdocs\u002Flang\u002Fffi\u002Fassembly","docs\u002F2.lang\u002F28.ffi\u002F3.assembly",{"title":751,"path":1882,"stem":1883,"children":1884,"page":29},"\u002Fdocs\u002Flang\u002Fmemory","docs\u002F2.lang\u002F29.memory",[1885,1889],{"title":1886,"path":1887,"stem":1888},"Layout","\u002Fdocs\u002Flang\u002Fmemory\u002Flayout","docs\u002F2.lang\u002F29.memory\u002F1.layout",{"title":1890,"path":1891,"stem":1892},"Atomics","\u002Fdocs\u002Flang\u002Fmemory\u002Fatomics","docs\u002F2.lang\u002F29.memory\u002F2.atomics",{"title":1894,"path":1895,"stem":1896,"children":1897,"page":29},"Appendix","\u002Fdocs\u002Flang\u002Fappendix","docs\u002F2.lang\u002F30.appendix",[1898,1902,1906],{"title":1899,"path":1900,"stem":1901},"Primitive Types","\u002Fdocs\u002Flang\u002Fappendix\u002Fprimitives","docs\u002F2.lang\u002F30.appendix\u002F1.primitives",{"title":1903,"path":1904,"stem":1905},"Tokens","\u002Fdocs\u002Flang\u002Fappendix\u002Ftokens","docs\u002F2.lang\u002F30.appendix\u002F2.tokens",{"title":1907,"path":1908,"stem":1909},"RCU Format","\u002Fdocs\u002Flang\u002Fappendix\u002Frcu","docs\u002F2.lang\u002F30.appendix\u002F3.rcu",{"title":1911,"path":1912,"stem":1913,"children":1914},"CLI Reference","\u002Fdocs\u002Fcli","docs\u002F3.cli\u002Findex",[1915,1916,1920,1924,1928,1932,1936,1940,1944,1948,1952,1956,1960,1964,1968,1972,1976,1980,1984,1988,1992,1996,2000,2004,2008],{"title":49,"path":1912,"stem":1913},{"title":1917,"path":1918,"stem":1919},"Global Options","\u002Fdocs\u002Fcli\u002Fglobal","docs\u002F3.cli\u002F01.global",{"title":1921,"path":1922,"stem":1923},"add","\u002Fdocs\u002Fcli\u002Fadd","docs\u002F3.cli\u002F02.add",{"title":1925,"path":1926,"stem":1927},"build","\u002Fdocs\u002Fcli\u002Fbuild","docs\u002F3.cli\u002F03.build",{"title":1929,"path":1930,"stem":1931},"check","\u002Fdocs\u002Fcli\u002Fcheck","docs\u002F3.cli\u002F04.check",{"title":1933,"path":1934,"stem":1935},"clean","\u002Fdocs\u002Fcli\u002Fclean","docs\u002F3.cli\u002F05.clean",{"title":1937,"path":1938,"stem":1939},"doc","\u002Fdocs\u002Fcli\u002Fdoc","docs\u002F3.cli\u002F06.doc",{"title":1941,"path":1942,"stem":1943},"fmt","\u002Fdocs\u002Fcli\u002Ffmt","docs\u002F3.cli\u002F07.fmt",{"title":1945,"path":1946,"stem":1947},"help","\u002Fdocs\u002Fcli\u002Fhelp","docs\u002F3.cli\u002F08.help",{"title":1949,"path":1950,"stem":1951},"info","\u002Fdocs\u002Fcli\u002Finfo","docs\u002F3.cli\u002F09.info",{"title":1953,"path":1954,"stem":1955},"init","\u002Fdocs\u002Fcli\u002Finit","docs\u002F3.cli\u002F10.init",{"title":1957,"path":1958,"stem":1959},"install","\u002Fdocs\u002Fcli\u002Finstall","docs\u002F3.cli\u002F11.install",{"title":1961,"path":1962,"stem":1963},"lint","\u002Fdocs\u002Fcli\u002Flint","docs\u002F3.cli\u002F12.lint",{"title":1965,"path":1966,"stem":1967},"list","\u002Fdocs\u002Fcli\u002Flist","docs\u002F3.cli\u002F13.list",{"title":1969,"path":1970,"stem":1971},"login","\u002Fdocs\u002Fcli\u002Flogin","docs\u002F3.cli\u002F14.login",{"title":1973,"path":1974,"stem":1975},"logout","\u002Fdocs\u002Fcli\u002Flogout","docs\u002F3.cli\u002F15.logout",{"title":1977,"path":1978,"stem":1979},"new","\u002Fdocs\u002Fcli\u002Fnew","docs\u002F3.cli\u002F16.new",{"title":1981,"path":1982,"stem":1983},"pack","\u002Fdocs\u002Fcli\u002Fpack","docs\u002F3.cli\u002F17.pack",{"title":1985,"path":1986,"stem":1987},"publish","\u002Fdocs\u002Fcli\u002Fpublish","docs\u002F3.cli\u002F18.publish",{"title":1989,"path":1990,"stem":1991},"remove","\u002Fdocs\u002Fcli\u002Fremove","docs\u002F3.cli\u002F19.remove",{"title":1993,"path":1994,"stem":1995},"run","\u002Fdocs\u002Fcli\u002Frun","docs\u002F3.cli\u002F20.run",{"title":1997,"path":1998,"stem":1999},"test","\u002Fdocs\u002Fcli\u002Ftest","docs\u002F3.cli\u002F21.test",{"title":2001,"path":2002,"stem":2003},"uninstall","\u002Fdocs\u002Fcli\u002Funinstall","docs\u002F3.cli\u002F22.uninstall",{"title":2005,"path":2006,"stem":2007},"update","\u002Fdocs\u002Fcli\u002Fupdate","docs\u002F3.cli\u002F23.update",{"title":2009,"path":2010,"stem":2011},"version","\u002Fdocs\u002Fcli\u002Fversion","docs\u002F3.cli\u002F24.version",{"title":2013,"path":2014,"stem":2015,"children":2016},"Packaging","\u002Fdocs\u002Fpackaging","docs\u002F4.packaging\u002Findex",[2017,2018,2022,2026,2030,2034,2038,2042,2046,2050,2054],{"title":49,"path":2014,"stem":2015},{"title":2019,"path":2020,"stem":2021},"Package Types","\u002Fdocs\u002Fpackaging\u002Ftypes","docs\u002F4.packaging\u002F1.types",{"title":2023,"path":2024,"stem":2025},"Yanking","\u002Fdocs\u002Fpackaging\u002Fyanking","docs\u002F4.packaging\u002F10.yanking",{"title":2027,"path":2028,"stem":2029},"Directory Layout","\u002Fdocs\u002Fpackaging\u002Flayout","docs\u002F4.packaging\u002F2.layout",{"title":2031,"path":2032,"stem":2033},"Package Manifest","\u002Fdocs\u002Fpackaging\u002Fmanifest","docs\u002F4.packaging\u002F3.manifest",{"title":2035,"path":2036,"stem":2037},"Dependencies","\u002Fdocs\u002Fpackaging\u002Fdependencies","docs\u002F4.packaging\u002F4.dependencies",{"title":2039,"path":2040,"stem":2041},"The Registry","\u002Fdocs\u002Fpackaging\u002Fregistry","docs\u002F4.packaging\u002F5.registry",{"title":2043,"path":2044,"stem":2045},"Namespaces","\u002Fdocs\u002Fpackaging\u002Fnamespaces","docs\u002F4.packaging\u002F6.namespaces",{"title":2047,"path":2048,"stem":2049},"API Tokens","\u002Fdocs\u002Fpackaging\u002Ftokens","docs\u002F4.packaging\u002F7.tokens",{"title":2051,"path":2052,"stem":2053},"Publishing","\u002Fdocs\u002Fpackaging\u002Fpublishing","docs\u002F4.packaging\u002F8.publishing",{"title":2055,"path":2056,"stem":2057},"Versioning","\u002Fdocs\u002Fpackaging\u002Fversioning","docs\u002F4.packaging\u002F9.versioning",{"title":2059,"path":2060,"stem":2061,"children":2062},"API Reference","\u002Fdocs\u002Fapi","docs\u002F5.api\u002Findex",[2063,2065,2179,2204,2244,2293,2358,2429,2468,2549,2590,2629,2668,2738,2793,2819,2874,2901,2944,2987,3012,3063,3104,3174,3232,3290,3369,3382,3416,3439,3474,3488,3518,3541,3558,3569,3596,3630,3648,3671],{"title":2064,"path":2060,"stem":2061},"Table of Contents",{"title":2066,"path":2067,"stem":2068,"children":2069,"icon":2178},"Core","\u002Fdocs\u002Fapi\u002Fcore","docs\u002F5.api\u002F01.core\u002F0.index",[2070,2071,2075,2079,2083,2087,2091,2095,2099,2102,2106,2109,2113,2116,2120,2123,2127,2131,2135,2139,2143,2147,2151,2155,2159,2162,2166,2170,2174],{"title":49,"path":2067,"stem":2068},{"title":2072,"path":2073,"stem":2074},"Comparable","\u002Fdocs\u002Fapi\u002Fcore\u002Fcomparable","docs\u002F5.api\u002F01.core\u002F1.interfaces\u002Fcomparable",{"title":2076,"path":2077,"stem":2078},"Equatable","\u002Fdocs\u002Fapi\u002Fcore\u002Fequatable","docs\u002F5.api\u002F01.core\u002F1.interfaces\u002Fequatable",{"title":2080,"path":2081,"stem":2082},"Hashable","\u002Fdocs\u002Fapi\u002Fcore\u002Fhashable","docs\u002F5.api\u002F01.core\u002F1.interfaces\u002Fhashable",{"title":2084,"path":2085,"stem":2086},"Iterable","\u002Fdocs\u002Fapi\u002Fcore\u002Fiterable","docs\u002F5.api\u002F01.core\u002F1.interfaces\u002Fiterable",{"title":2088,"path":2089,"stem":2090},"Iterator","\u002Fdocs\u002Fapi\u002Fcore\u002Fiterator","docs\u002F5.api\u002F01.core\u002F1.interfaces\u002Fiterator",{"title":2092,"path":2093,"stem":2094},"Sendable","\u002Fdocs\u002Fapi\u002Fcore\u002Fsendable","docs\u002F5.api\u002F01.core\u002F1.interfaces\u002Fsendable",{"title":2096,"path":2097,"stem":2098},"Iterator adaptors","\u002Fdocs\u002Fapi\u002Fcore\u002Fadaptors","docs\u002F5.api\u002F01.core\u002F2.types\u002Fadaptors",{"title":1419,"path":2100,"stem":2101},"\u002Fdocs\u002Fapi\u002Fcore\u002Fbooleans","docs\u002F5.api\u002F01.core\u002F2.types\u002Fbooleans",{"title":2103,"path":2104,"stem":2105},"Build","\u002Fdocs\u002Fapi\u002Fcore\u002Fbuild","docs\u002F5.api\u002F01.core\u002F2.types\u002Fbuild",{"title":1423,"path":2107,"stem":2108},"\u002Fdocs\u002Fapi\u002Fcore\u002Fcharacters","docs\u002F5.api\u002F01.core\u002F2.types\u002Fcharacters",{"title":2110,"path":2111,"stem":2112},"Compiler","\u002Fdocs\u002Fapi\u002Fcore\u002Fcompiler","docs\u002F5.api\u002F01.core\u002F2.types\u002Fcompiler",{"title":1810,"path":2114,"stem":2115},"\u002Fdocs\u002Fapi\u002Fcore\u002Fconfig","docs\u002F5.api\u002F01.core\u002F2.types\u002Fconfig",{"title":2117,"path":2118,"stem":2119},"Floating-point types","\u002Fdocs\u002Fapi\u002Fcore\u002Ffloating-point","docs\u002F5.api\u002F01.core\u002F2.types\u002Ffloating-point",{"title":1411,"path":2121,"stem":2122},"\u002Fdocs\u002Fapi\u002Fcore\u002Fintegers","docs\u002F5.api\u002F01.core\u002F2.types\u002Fintegers",{"title":2124,"path":2125,"stem":2126},"Ordering","\u002Fdocs\u002Fapi\u002Fcore\u002Fordering","docs\u002F5.api\u002F01.core\u002F2.types\u002Fordering",{"title":2128,"path":2129,"stem":2130},"SemanticVersion","\u002Fdocs\u002Fapi\u002Fcore\u002Fsemantic-version","docs\u002F5.api\u002F01.core\u002F2.types\u002Fsemantic-version",{"title":2132,"path":2133,"stem":2134},"Source","\u002Fdocs\u002Fapi\u002Fcore\u002Fsource","docs\u002F5.api\u002F01.core\u002F2.types\u002Fsource",{"title":2136,"path":2137,"stem":2138},"Target","\u002Fdocs\u002Fapi\u002Fcore\u002Ftarget","docs\u002F5.api\u002F01.core\u002F2.types\u002Ftarget",{"title":2140,"path":2141,"stem":2142},"Integer arithmetic","\u002Fdocs\u002Fapi\u002Fcore\u002Farithmetic","docs\u002F5.api\u002F01.core\u002F3.functions\u002Farithmetic",{"title":2144,"path":2145,"stem":2146},"Atomic intrinsics","\u002Fdocs\u002Fapi\u002Fcore\u002Fatomic","docs\u002F5.api\u002F01.core\u002F3.functions\u002Fatomic",{"title":2148,"path":2149,"stem":2150},"Bit operations","\u002Fdocs\u002Fapi\u002Fcore\u002Fbits","docs\u002F5.api\u002F01.core\u002F3.functions\u002Fbits",{"title":2152,"path":2153,"stem":2154},"Byte order","\u002Fdocs\u002Fapi\u002Fcore\u002Fbyte-order","docs\u002F5.api\u002F01.core\u002F3.functions\u002Fbyte-order",{"title":2156,"path":2157,"stem":2158},"Checked conversion","\u002Fdocs\u002Fapi\u002Fcore\u002Fconversion","docs\u002F5.api\u002F01.core\u002F3.functions\u002Fconversion",{"title":1818,"path":2160,"stem":2161},"\u002Fdocs\u002Fapi\u002Fcore\u002Fdiagnostics","docs\u002F5.api\u002F01.core\u002F3.functions\u002Fdiagnostics",{"title":2163,"path":2164,"stem":2165},"Float classification","\u002Fdocs\u002Fapi\u002Fcore\u002Ffloat-classification","docs\u002F5.api\u002F01.core\u002F3.functions\u002Ffloat-classification",{"title":2167,"path":2168,"stem":2169},"Outcomes","\u002Fdocs\u002Fapi\u002Fcore\u002Foutcomes","docs\u002F5.api\u002F01.core\u002F3.functions\u002Foutcomes",{"title":2171,"path":2172,"stem":2173},"Process start","\u002Fdocs\u002Fapi\u002Fcore\u002Fstartup","docs\u002F5.api\u002F01.core\u002F3.functions\u002Fstartup",{"title":2175,"path":2176,"stem":2177},"Zeroize","\u002Fdocs\u002Fapi\u002Fcore\u002Fzeroize","docs\u002F5.api\u002F01.core\u002F3.functions\u002Fzeroize","i-lucide-atom",{"title":751,"path":2180,"stem":2181,"children":2182,"icon":756},"\u002Fdocs\u002Fapi\u002Fmemory","docs\u002F5.api\u002F02.memory\u002F0.index",[2183,2184,2188,2192,2196,2200],{"title":49,"path":2180,"stem":2181},{"title":2185,"path":2186,"stem":2187},"Alignment","\u002Fdocs\u002Fapi\u002Fmemory\u002Falignment","docs\u002F5.api\u002F02.memory\u002F3.functions\u002Falignment",{"title":2189,"path":2190,"stem":2191},"Heap allocation","\u002Fdocs\u002Fapi\u002Fmemory\u002Fallocation","docs\u002F5.api\u002F02.memory\u002F3.functions\u002Fallocation",{"title":2193,"path":2194,"stem":2195},"Block operations","\u002Fdocs\u002Fapi\u002Fmemory\u002Fblocks","docs\u002F5.api\u002F02.memory\u002F3.functions\u002Fblocks",{"title":2197,"path":2198,"stem":2199},"Unaligned and byte-order access","\u002Fdocs\u002Fapi\u002Fmemory\u002Funaligned-access","docs\u002F5.api\u002F02.memory\u002F3.functions\u002Funaligned-access",{"title":2201,"path":2202,"stem":2203},"Pages","\u002Fdocs\u002Fapi\u002Fmemory\u002Fpages","docs\u002F5.api\u002F02.memory\u002F4.constants\u002Fpages",{"title":2205,"path":2206,"stem":2207,"children":2208,"icon":654},"Allocator","\u002Fdocs\u002Fapi\u002Fallocator","docs\u002F5.api\u002F03.allocator\u002F0.index",[2209,2210,2213,2217,2221,2225,2229,2232,2236,2240],{"title":49,"path":2206,"stem":2207},{"title":2205,"path":2211,"stem":2212},"\u002Fdocs\u002Fapi\u002Fallocator\u002Fallocator","docs\u002F5.api\u002F03.allocator\u002F1.interfaces\u002Fallocator",{"title":2214,"path":2215,"stem":2216},"AllocError","\u002Fdocs\u002Fapi\u002Fallocator\u002Falloc-error","docs\u002F5.api\u002F03.allocator\u002F2.types\u002Falloc-error",{"title":2218,"path":2219,"stem":2220},"Arena","\u002Fdocs\u002Fapi\u002Fallocator\u002Farena","docs\u002F5.api\u002F03.allocator\u002F2.types\u002Farena",{"title":2222,"path":2223,"stem":2224},"Box\u003CT>","\u002Fdocs\u002Fapi\u002Fallocator\u002Fbox","docs\u002F5.api\u002F03.allocator\u002F2.types\u002Fbox",{"title":2226,"path":2227,"stem":2228},"FixedBuffer","\u002Fdocs\u002Fapi\u002Fallocator\u002Ffixed-buffer","docs\u002F5.api\u002F03.allocator\u002F2.types\u002Ffixed-buffer",{"title":1886,"path":2230,"stem":2231},"\u002Fdocs\u002Fapi\u002Fallocator\u002Flayout","docs\u002F5.api\u002F03.allocator\u002F2.types\u002Flayout",{"title":2233,"path":2234,"stem":2235},"Pool","\u002Fdocs\u002Fapi\u002Fallocator\u002Fpool","docs\u002F5.api\u002F03.allocator\u002F2.types\u002Fpool",{"title":2237,"path":2238,"stem":2239},"Shared ownership","\u002Fdocs\u002Fapi\u002Fallocator\u002Fshared","docs\u002F5.api\u002F03.allocator\u002F2.types\u002Fshared",{"title":2241,"path":2242,"stem":2243},"SystemAllocator","\u002Fdocs\u002Fapi\u002Fallocator\u002Fsystem-allocator","docs\u002F5.api\u002F03.allocator\u002F2.types\u002Fsystem-allocator",{"title":2245,"path":2246,"stem":2247,"children":2248,"icon":2292},"Math","\u002Fdocs\u002Fapi\u002Fmath","docs\u002F5.api\u002F04.math\u002F0.index",[2249,2250,2254,2258,2262,2266,2270,2274,2277,2281,2285,2289],{"title":49,"path":2246,"stem":2247},{"title":2251,"path":2252,"stem":2253},"Complex numbers","\u002Fdocs\u002Fapi\u002Fmath\u002Fcomplex","docs\u002F5.api\u002F04.math\u002F2.types\u002Fcomplex",{"title":2255,"path":2256,"stem":2257},"Absolute value, minimum and maximum","\u002Fdocs\u002Fapi\u002Fmath\u002Fabs-min-max","docs\u002F5.api\u002F04.math\u002F3.functions\u002Fabs-min-max",{"title":2259,"path":2260,"stem":2261},"Classification and special values","\u002Fdocs\u002Fapi\u002Fmath\u002Fclassification","docs\u002F5.api\u002F04.math\u002F3.functions\u002Fclassification",{"title":2263,"path":2264,"stem":2265},"Exponentials and logarithms","\u002Fdocs\u002Fapi\u002Fmath\u002Fexponential","docs\u002F5.api\u002F04.math\u002F3.functions\u002Fexponential",{"title":2267,"path":2268,"stem":2269},"Floating-point representation","\u002Fdocs\u002Fapi\u002Fmath\u002Ffloat-representation","docs\u002F5.api\u002F04.math\u002F3.functions\u002Ffloat-representation",{"title":2271,"path":2272,"stem":2273},"Hyperbolic functions","\u002Fdocs\u002Fapi\u002Fmath\u002Fhyperbolic","docs\u002F5.api\u002F04.math\u002F3.functions\u002Fhyperbolic",{"title":2140,"path":2275,"stem":2276},"\u002Fdocs\u002Fapi\u002Fmath\u002Finteger","docs\u002F5.api\u002F04.math\u002F3.functions\u002Finteger",{"title":2278,"path":2279,"stem":2280},"Powers and roots","\u002Fdocs\u002Fapi\u002Fmath\u002Fpowers","docs\u002F5.api\u002F04.math\u002F3.functions\u002Fpowers",{"title":2282,"path":2283,"stem":2284},"Rounding and remainders","\u002Fdocs\u002Fapi\u002Fmath\u002Frounding","docs\u002F5.api\u002F04.math\u002F3.functions\u002Frounding",{"title":2286,"path":2287,"stem":2288},"Trigonometry","\u002Fdocs\u002Fapi\u002Fmath\u002Ftrigonometry","docs\u002F5.api\u002F04.math\u002F3.functions\u002Ftrigonometry",{"title":1442,"path":2290,"stem":2291},"\u002Fdocs\u002Fapi\u002Fmath\u002Fconstants","docs\u002F5.api\u002F04.math\u002F4.constants\u002Fconstants","i-lucide-sigma",{"title":680,"path":2294,"stem":2295,"children":2296,"icon":685},"\u002Fdocs\u002Fapi\u002Ftext","docs\u002F5.api\u002F05.text\u002F0.index",[2297,2298,2302,2306,2310,2314,2318,2322,2326,2330,2334,2338,2342,2346,2350,2354],{"title":49,"path":2294,"stem":2295},{"title":2299,"path":2300,"stem":2301},"Debug","\u002Fdocs\u002Fapi\u002Ftext\u002Fdebug","docs\u002F5.api\u002F05.text\u002F1.interfaces\u002Fdebug",{"title":2303,"path":2304,"stem":2305},"Display","\u002Fdocs\u002Fapi\u002Ftext\u002Fdisplay","docs\u002F5.api\u002F05.text\u002F1.interfaces\u002Fdisplay",{"title":2307,"path":2308,"stem":2309},"ParseFailure","\u002Fdocs\u002Fapi\u002Ftext\u002Fparse-failure","docs\u002F5.api\u002F05.text\u002F1.interfaces\u002Fparse-failure",{"title":2311,"path":2312,"stem":2313},"TextWriter","\u002Fdocs\u002Fapi\u002Ftext\u002Ftext-writer","docs\u002F5.api\u002F05.text\u002F1.interfaces\u002Ftext-writer",{"title":2315,"path":2316,"stem":2317},"BufferWriter","\u002Fdocs\u002Fapi\u002Ftext\u002Fbuffer-writer","docs\u002F5.api\u002F05.text\u002F2.types\u002Fbuffer-writer",{"title":2319,"path":2320,"stem":2321},"CString","\u002Fdocs\u002Fapi\u002Ftext\u002Fc-string","docs\u002F5.api\u002F05.text\u002F2.types\u002Fc-string",{"title":2323,"path":2324,"stem":2325},"FormatError","\u002Fdocs\u002Fapi\u002Ftext\u002Fformat-error","docs\u002F5.api\u002F05.text\u002F2.types\u002Fformat-error",{"title":2327,"path":2328,"stem":2329},"FormatSpec","\u002Fdocs\u002Fapi\u002Ftext\u002Fformat-spec","docs\u002F5.api\u002F05.text\u002F2.types\u002Fformat-spec",{"title":2331,"path":2332,"stem":2333},"String","\u002Fdocs\u002Fapi\u002Ftext\u002Fstring","docs\u002F5.api\u002F05.text\u002F2.types\u002Fstring",{"title":2335,"path":2336,"stem":2337},"StringBuilder","\u002Fdocs\u002Fapi\u002Ftext\u002Fstring-builder","docs\u002F5.api\u002F05.text\u002F2.types\u002Fstring-builder",{"title":2339,"path":2340,"stem":2341},"StringView","\u002Fdocs\u002Fapi\u002Ftext\u002Fstring-view","docs\u002F5.api\u002F05.text\u002F2.types\u002Fstring-view",{"title":2343,"path":2344,"stem":2345},"TextError","\u002Fdocs\u002Fapi\u002Ftext\u002Ftext-error","docs\u002F5.api\u002F05.text\u002F2.types\u002Ftext-error",{"title":2347,"path":2348,"stem":2349},"Utf8Error","\u002Fdocs\u002Fapi\u002Ftext\u002Futf8-error","docs\u002F5.api\u002F05.text\u002F2.types\u002Futf8-error",{"title":2351,"path":2352,"stem":2353},"Transforming text","\u002Fdocs\u002Fapi\u002Ftext\u002Ftransform","docs\u002F5.api\u002F05.text\u002F3.functions\u002Ftransform",{"title":2355,"path":2356,"stem":2357},"UTF-8","\u002Fdocs\u002Fapi\u002Ftext\u002Futf8","docs\u002F5.api\u002F05.text\u002F3.functions\u002Futf8",{"title":2359,"path":2360,"stem":2361,"children":2362,"icon":2428},"Format","\u002Fdocs\u002Fapi\u002Fformat","docs\u002F5.api\u002F06.format\u002F0.index",[2363,2364,2368,2372,2376,2380,2384,2388,2392,2396,2400,2404,2408,2412,2416,2420,2424],{"title":49,"path":2360,"stem":2361},{"title":2365,"path":2366,"stem":2367},"ByteCursor","\u002Fdocs\u002Fapi\u002Fformat\u002Fbyte-cursor","docs\u002F5.api\u002F06.format\u002F2.types\u002Fbyte-cursor",{"title":2369,"path":2370,"stem":2371},"FixedNat","\u002Fdocs\u002Fapi\u002Fformat\u002Ffixed-nat","docs\u002F5.api\u002F06.format\u002F2.types\u002Ffixed-nat",{"title":2373,"path":2374,"stem":2375},"FloatLayout","\u002Fdocs\u002Fapi\u002Fformat\u002Ffloat-layout","docs\u002F5.api\u002F06.format\u002F2.types\u002Ffloat-layout",{"title":2377,"path":2378,"stem":2379},"Float128","\u002Fdocs\u002Fapi\u002Fformat\u002Ffloat128","docs\u002F5.api\u002F06.format\u002F2.types\u002Ffloat128",{"title":2381,"path":2382,"stem":2383},"Float256","\u002Fdocs\u002Fapi\u002Fformat\u002Ffloat256","docs\u002F5.api\u002F06.format\u002F2.types\u002Ffloat256",{"title":2385,"path":2386,"stem":2387},"Float512","\u002Fdocs\u002Fapi\u002Fformat\u002Ffloat512","docs\u002F5.api\u002F06.format\u002F2.types\u002Ffloat512",{"title":2389,"path":2390,"stem":2391},"Float80","\u002Fdocs\u002Fapi\u002Fformat\u002Ffloat80","docs\u002F5.api\u002F06.format\u002F2.types\u002Ffloat80",{"title":2393,"path":2394,"stem":2395},"ParseError","\u002Fdocs\u002Fapi\u002Fformat\u002Fparse-error","docs\u002F5.api\u002F06.format\u002F2.types\u002Fparse-error",{"title":2397,"path":2398,"stem":2399},"Writing characters and booleans","\u002Fdocs\u002Fapi\u002Fformat\u002Fcharacter-text","docs\u002F5.api\u002F06.format\u002F3.functions\u002Fcharacter-text",{"title":2401,"path":2402,"stem":2403},"Float classification and bits","\u002Fdocs\u002Fapi\u002Fformat\u002Ffloat-bits","docs\u002F5.api\u002F06.format\u002F3.functions\u002Ffloat-bits",{"title":2405,"path":2406,"stem":2407},"Writing floats","\u002Fdocs\u002Fapi\u002Fformat\u002Ffloat-text","docs\u002F5.api\u002F06.format\u002F3.functions\u002Ffloat-text",{"title":2409,"path":2410,"stem":2411},"Writing integers","\u002Fdocs\u002Fapi\u002Fformat\u002Finteger-text","docs\u002F5.api\u002F06.format\u002F3.functions\u002Finteger-text",{"title":2413,"path":2414,"stem":2415},"Parsing integers, booleans and characters","\u002Fdocs\u002Fapi\u002Fformat\u002Fparse","docs\u002F5.api\u002F06.format\u002F3.functions\u002Fparse",{"title":2417,"path":2418,"stem":2419},"Parsing floats","\u002Fdocs\u002Fapi\u002Fformat\u002Fparse-float","docs\u002F5.api\u002F06.format\u002F3.functions\u002Fparse-float",{"title":2421,"path":2422,"stem":2423},"Render","\u002Fdocs\u002Fapi\u002Fformat\u002Frender","docs\u002F5.api\u002F06.format\u002F3.functions\u002Frender",{"title":2425,"path":2426,"stem":2427},"WriteFormat","\u002Fdocs\u002Fapi\u002Fformat\u002Fwrite-format","docs\u002F5.api\u002F06.format\u002F3.functions\u002Fwrite-format","i-lucide-whole-word",{"title":2430,"path":2431,"stem":2432,"children":2433,"icon":2467},"Unicode","\u002Fdocs\u002Fapi\u002Funicode","docs\u002F5.api\u002F07.unicode\u002F0.index",[2434,2435,2439,2443,2447,2451,2455,2459,2463],{"title":49,"path":2431,"stem":2432},{"title":2436,"path":2437,"stem":2438},"GeneralCategory","\u002Fdocs\u002Fapi\u002Funicode\u002Fgeneral-category","docs\u002F5.api\u002F07.unicode\u002F2.types\u002Fgeneral-category",{"title":2440,"path":2441,"stem":2442},"GraphemeBreak","\u002Fdocs\u002Fapi\u002Funicode\u002Fgrapheme-break","docs\u002F5.api\u002F07.unicode\u002F2.types\u002Fgrapheme-break",{"title":2444,"path":2445,"stem":2446},"Case mapping","\u002Fdocs\u002Fapi\u002Funicode\u002Fcase","docs\u002F5.api\u002F07.unicode\u002F3.functions\u002Fcase",{"title":2448,"path":2449,"stem":2450},"Grapheme clusters","\u002Fdocs\u002Fapi\u002Funicode\u002Fgraphemes","docs\u002F5.api\u002F07.unicode\u002F3.functions\u002Fgraphemes",{"title":2452,"path":2453,"stem":2454},"Normalization","\u002Fdocs\u002Fapi\u002Funicode\u002Fnormalization","docs\u002F5.api\u002F07.unicode\u002F3.functions\u002Fnormalization",{"title":2456,"path":2457,"stem":2458},"Character properties","\u002Fdocs\u002Fapi\u002Funicode\u002Fproperties","docs\u002F5.api\u002F07.unicode\u002F3.functions\u002Fproperties",{"title":2460,"path":2461,"stem":2462},"Scripts","\u002Fdocs\u002Fapi\u002Funicode\u002Fscripts","docs\u002F5.api\u002F07.unicode\u002F3.functions\u002Fscripts",{"title":2464,"path":2465,"stem":2466},"Generated tables","\u002Fdocs\u002Fapi\u002Funicode\u002Ftables","docs\u002F5.api\u002F07.unicode\u002F4.constants\u002Ftables","i-lucide-languages",{"title":873,"path":2469,"stem":2470,"children":2471,"icon":878},"\u002Fdocs\u002Fapi\u002Fcollections","docs\u002F5.api\u002F08.collections\u002F0.index",[2472,2473,2477,2481,2485,2489,2493,2497,2501,2505,2509,2513,2517,2521,2525,2529,2533,2537,2541,2545],{"title":49,"path":2469,"stem":2470},{"title":2474,"path":2475,"stem":2476},"Array\u003CT>","\u002Fdocs\u002Fapi\u002Fcollections\u002Farray","docs\u002F5.api\u002F08.collections\u002F2.types\u002Farray",{"title":2478,"path":2479,"stem":2480},"BitSet","\u002Fdocs\u002Fapi\u002Fcollections\u002Fbit-set","docs\u002F5.api\u002F08.collections\u002F2.types\u002Fbit-set",{"title":2482,"path":2483,"stem":2484},"CollectionError","\u002Fdocs\u002Fapi\u002Fcollections\u002Fcollection-error","docs\u002F5.api\u002F08.collections\u002F2.types\u002Fcollection-error",{"title":2486,"path":2487,"stem":2488},"Deque\u003CT>","\u002Fdocs\u002Fapi\u002Fcollections\u002Fdeque","docs\u002F5.api\u002F08.collections\u002F2.types\u002Fdeque",{"title":2490,"path":2491,"stem":2492},"HashMap\u003CK, V>","\u002Fdocs\u002Fapi\u002Fcollections\u002Fhash-map","docs\u002F5.api\u002F08.collections\u002F2.types\u002Fhash-map",{"title":2494,"path":2495,"stem":2496},"HashSet\u003CT>","\u002Fdocs\u002Fapi\u002Fcollections\u002Fhash-set","docs\u002F5.api\u002F08.collections\u002F2.types\u002Fhash-set",{"title":2498,"path":2499,"stem":2500},"Slice iterators","\u002Fdocs\u002Fapi\u002Fcollections\u002Fiterators","docs\u002F5.api\u002F08.collections\u002F2.types\u002Fiterators",{"title":2502,"path":2503,"stem":2504},"KeyValue\u003CK, V>","\u002Fdocs\u002Fapi\u002Fcollections\u002Fkey-value","docs\u002F5.api\u002F08.collections\u002F2.types\u002Fkey-value",{"title":2506,"path":2507,"stem":2508},"LruCache\u003CK, V>","\u002Fdocs\u002Fapi\u002Fcollections\u002Flru-cache","docs\u002F5.api\u002F08.collections\u002F2.types\u002Flru-cache",{"title":2510,"path":2511,"stem":2512},"PriorityQueue\u003CT>","\u002Fdocs\u002Fapi\u002Fcollections\u002Fpriority-queue","docs\u002F5.api\u002F08.collections\u002F2.types\u002Fpriority-queue",{"title":2514,"path":2515,"stem":2516},"SmallVector\u003CT>","\u002Fdocs\u002Fapi\u002Fcollections\u002Fsmall-vector","docs\u002F5.api\u002F08.collections\u002F2.types\u002Fsmall-vector",{"title":2518,"path":2519,"stem":2520},"Table\u003CK, V>","\u002Fdocs\u002Fapi\u002Fcollections\u002Ftable","docs\u002F5.api\u002F08.collections\u002F2.types\u002Ftable",{"title":2522,"path":2523,"stem":2524},"TableSeed","\u002Fdocs\u002Fapi\u002Fcollections\u002Ftable-seed","docs\u002F5.api\u002F08.collections\u002F2.types\u002Ftable-seed",{"title":2526,"path":2527,"stem":2528},"Tree\u003CK, V>","\u002Fdocs\u002Fapi\u002Fcollections\u002Ftree","docs\u002F5.api\u002F08.collections\u002F2.types\u002Ftree",{"title":2530,"path":2531,"stem":2532},"TreeMap\u003CK, V>","\u002Fdocs\u002Fapi\u002Fcollections\u002Ftree-map","docs\u002F5.api\u002F08.collections\u002F2.types\u002Ftree-map",{"title":2534,"path":2535,"stem":2536},"TreeSet\u003CT>","\u002Fdocs\u002Fapi\u002Fcollections\u002Ftree-set","docs\u002F5.api\u002F08.collections\u002F2.types\u002Ftree-set",{"title":2538,"path":2539,"stem":2540},"Vector\u003CT>","\u002Fdocs\u002Fapi\u002Fcollections\u002Fvector","docs\u002F5.api\u002F08.collections\u002F2.types\u002Fvector",{"title":2542,"path":2543,"stem":2544},"Comparing","\u002Fdocs\u002Fapi\u002Fcollections\u002Fcomparing","docs\u002F5.api\u002F08.collections\u002F3.functions\u002Fcomparing",{"title":2546,"path":2547,"stem":2548},"Hashing","\u002Fdocs\u002Fapi\u002Fcollections\u002Fhashing","docs\u002F5.api\u002F08.collections\u002F3.functions\u002Fhashing",{"title":924,"path":2550,"stem":2551,"children":2552,"icon":929},"\u002Fdocs\u002Fapi\u002Falgorithms","docs\u002F5.api\u002F09.algorithms\u002F0.index",[2553,2554,2558,2562,2566,2570,2574,2578,2582,2586],{"title":49,"path":2550,"stem":2551},{"title":2555,"path":2556,"stem":2557},"Comparing slices","\u002Fdocs\u002Fapi\u002Falgorithms\u002Fcomparing","docs\u002F5.api\u002F09.algorithms\u002F3.functions\u002Fcomparing",{"title":2559,"path":2560,"stem":2561},"Folding","\u002Fdocs\u002Fapi\u002Falgorithms\u002Ffolding","docs\u002F5.api\u002F09.algorithms\u002F3.functions\u002Ffolding",{"title":2563,"path":2564,"stem":2565},"Heaps","\u002Fdocs\u002Fapi\u002Falgorithms\u002Fheaps","docs\u002F5.api\u002F09.algorithms\u002F3.functions\u002Fheaps",{"title":2567,"path":2568,"stem":2569},"Minimum and maximum","\u002Fdocs\u002Fapi\u002Falgorithms\u002Fmin-max","docs\u002F5.api\u002F09.algorithms\u002F3.functions\u002Fmin-max",{"title":2571,"path":2572,"stem":2573},"Modifying","\u002Fdocs\u002Fapi\u002Falgorithms\u002Fmodifying","docs\u002F5.api\u002F09.algorithms\u002F3.functions\u002Fmodifying",{"title":2575,"path":2576,"stem":2577},"Numeric sequences","\u002Fdocs\u002Fapi\u002Falgorithms\u002Fnumeric","docs\u002F5.api\u002F09.algorithms\u002F3.functions\u002Fnumeric",{"title":2579,"path":2580,"stem":2581},"Searching","\u002Fdocs\u002Fapi\u002Falgorithms\u002Fsearching","docs\u002F5.api\u002F09.algorithms\u002F3.functions\u002Fsearching",{"title":2583,"path":2584,"stem":2585},"Sorted slices","\u002Fdocs\u002Fapi\u002Falgorithms\u002Fsorted-slices","docs\u002F5.api\u002F09.algorithms\u002F3.functions\u002Fsorted-slices",{"title":2587,"path":2588,"stem":2589},"Sorting","\u002Fdocs\u002Fapi\u002Falgorithms\u002Fsorting","docs\u002F5.api\u002F09.algorithms\u002F3.functions\u002Fsorting",{"title":2591,"path":2592,"stem":2593,"children":2594,"icon":2628},"Hash","\u002Fdocs\u002Fapi\u002Fhash","docs\u002F5.api\u002F10.hash\u002F0.index",[2595,2596,2600,2604,2608,2612,2616,2620,2624],{"title":49,"path":2592,"stem":2593},{"title":2597,"path":2598,"stem":2599},"Hasher","\u002Fdocs\u002Fapi\u002Fhash\u002Fhasher","docs\u002F5.api\u002F10.hash\u002F1.interfaces\u002Fhasher",{"title":2601,"path":2602,"stem":2603},"Adler32","\u002Fdocs\u002Fapi\u002Fhash\u002Fadler32","docs\u002F5.api\u002F10.hash\u002F2.types\u002Fadler32",{"title":2605,"path":2606,"stem":2607},"Crc32","\u002Fdocs\u002Fapi\u002Fhash\u002Fcrc32","docs\u002F5.api\u002F10.hash\u002F2.types\u002Fcrc32",{"title":2609,"path":2610,"stem":2611},"Crc32c","\u002Fdocs\u002Fapi\u002Fhash\u002Fcrc32c","docs\u002F5.api\u002F10.hash\u002F2.types\u002Fcrc32c",{"title":2613,"path":2614,"stem":2615},"Fnv1a32","\u002Fdocs\u002Fapi\u002Fhash\u002Ffnv1a32","docs\u002F5.api\u002F10.hash\u002F2.types\u002Ffnv1a32",{"title":2617,"path":2618,"stem":2619},"Fnv1a64","\u002Fdocs\u002Fapi\u002Fhash\u002Ffnv1a64","docs\u002F5.api\u002F10.hash\u002F2.types\u002Ffnv1a64",{"title":2621,"path":2622,"stem":2623},"SipHash24","\u002Fdocs\u002Fapi\u002Fhash\u002Fsip-hash24","docs\u002F5.api\u002F10.hash\u002F2.types\u002Fsip-hash24",{"title":2625,"path":2626,"stem":2627},"XxHash64","\u002Fdocs\u002Fapi\u002Fhash\u002Fxx-hash64","docs\u002F5.api\u002F10.hash\u002F2.types\u002Fxx-hash64","i-lucide-hash",{"title":2630,"path":2631,"stem":2632,"children":2633,"icon":2667},"Random","\u002Fdocs\u002Fapi\u002Frandom","docs\u002F5.api\u002F11.random\u002F0.index",[2634,2635,2639,2643,2647,2651,2655,2659,2663],{"title":49,"path":2631,"stem":2632},{"title":2636,"path":2637,"stem":2638},"RandomGenerator","\u002Fdocs\u002Fapi\u002Frandom\u002Frandom-generator","docs\u002F5.api\u002F11.random\u002F1.interfaces\u002Frandom-generator",{"title":2640,"path":2641,"stem":2642},"Pcg64Dxsm","\u002Fdocs\u002Fapi\u002Frandom\u002Fpcg64-dxsm","docs\u002F5.api\u002F11.random\u002F2.types\u002Fpcg64-dxsm",{"title":2644,"path":2645,"stem":2646},"Reservoir\u003CT>","\u002Fdocs\u002Fapi\u002Frandom\u002Freservoir","docs\u002F5.api\u002F11.random\u002F2.types\u002Freservoir",{"title":2648,"path":2649,"stem":2650},"SplitMix64","\u002Fdocs\u002Fapi\u002Frandom\u002Fsplit-mix64","docs\u002F5.api\u002F11.random\u002F2.types\u002Fsplit-mix64",{"title":2652,"path":2653,"stem":2654},"Xoshiro256","\u002Fdocs\u002Fapi\u002Frandom\u002Fxoshiro256","docs\u002F5.api\u002F11.random\u002F2.types\u002Fxoshiro256",{"title":2656,"path":2657,"stem":2658},"Distributions","\u002Fdocs\u002Fapi\u002Frandom\u002Fdistributions","docs\u002F5.api\u002F11.random\u002F3.functions\u002Fdistributions",{"title":2660,"path":2661,"stem":2662},"Sampling and shuffling","\u002Fdocs\u002Fapi\u002Frandom\u002Fsampling","docs\u002F5.api\u002F11.random\u002F3.functions\u002Fsampling",{"title":2664,"path":2665,"stem":2666},"Uniform ranges","\u002Fdocs\u002Fapi\u002Frandom\u002Funiform","docs\u002F5.api\u002F11.random\u002F3.functions\u002Funiform","i-lucide-dices",{"title":2669,"path":2670,"stem":2671,"children":2672,"icon":1261},"Io","\u002Fdocs\u002Fapi\u002Fio","docs\u002F5.api\u002F12.io\u002F0.index",[2673,2674,2678,2682,2686,2690,2694,2698,2702,2706,2710,2714,2718,2722,2726,2730,2734],{"title":49,"path":2670,"stem":2671},{"title":2675,"path":2676,"stem":2677},"Reader","\u002Fdocs\u002Fapi\u002Fio\u002Freader","docs\u002F5.api\u002F12.io\u002F1.interfaces\u002Freader",{"title":2679,"path":2680,"stem":2681},"Seeker","\u002Fdocs\u002Fapi\u002Fio\u002Fseeker","docs\u002F5.api\u002F12.io\u002F1.interfaces\u002Fseeker",{"title":2683,"path":2684,"stem":2685},"Writer","\u002Fdocs\u002Fapi\u002Fio\u002Fwriter","docs\u002F5.api\u002F12.io\u002F1.interfaces\u002Fwriter",{"title":2687,"path":2688,"stem":2689},"BufferedReader","\u002Fdocs\u002Fapi\u002Fio\u002Fbuffered-reader","docs\u002F5.api\u002F12.io\u002F2.types\u002Fbuffered-reader",{"title":2691,"path":2692,"stem":2693},"BufferedWriter","\u002Fdocs\u002Fapi\u002Fio\u002Fbuffered-writer","docs\u002F5.api\u002F12.io\u002F2.types\u002Fbuffered-writer",{"title":2695,"path":2696,"stem":2697},"ConsoleWriter","\u002Fdocs\u002Fapi\u002Fio\u002Fconsole-writer","docs\u002F5.api\u002F12.io\u002F2.types\u002Fconsole-writer",{"title":2699,"path":2700,"stem":2701},"IoError","\u002Fdocs\u002Fapi\u002Fio\u002Fio-error","docs\u002F5.api\u002F12.io\u002F2.types\u002Fio-error",{"title":2703,"path":2704,"stem":2705},"Memory streams","\u002Fdocs\u002Fapi\u002Fio\u002Fmemory-stream","docs\u002F5.api\u002F12.io\u002F2.types\u002Fmemory-stream",{"title":2707,"path":2708,"stem":2709},"StandardError","\u002Fdocs\u002Fapi\u002Fio\u002Fstandard-error","docs\u002F5.api\u002F12.io\u002F2.types\u002Fstandard-error",{"title":2711,"path":2712,"stem":2713},"StandardIn","\u002Fdocs\u002Fapi\u002Fio\u002Fstandard-in","docs\u002F5.api\u002F12.io\u002F2.types\u002Fstandard-in",{"title":2715,"path":2716,"stem":2717},"StandardOut","\u002Fdocs\u002Fapi\u002Fio\u002Fstandard-out","docs\u002F5.api\u002F12.io\u002F2.types\u002Fstandard-out",{"title":2719,"path":2720,"stem":2721},"StreamWriter","\u002Fdocs\u002Fapi\u002Fio\u002Fstream-writer","docs\u002F5.api\u002F12.io\u002F2.types\u002Fstream-writer",{"title":2723,"path":2724,"stem":2725},"Binary encoding","\u002Fdocs\u002Fapi\u002Fio\u002Fbinary","docs\u002F5.api\u002F12.io\u002F3.functions\u002Fbinary",{"title":2727,"path":2728,"stem":2729},"Print","\u002Fdocs\u002Fapi\u002Fio\u002Fprint","docs\u002F5.api\u002F12.io\u002F3.functions\u002Fprint",{"title":2731,"path":2732,"stem":2733},"PrintLine","\u002Fdocs\u002Fapi\u002Fio\u002Fprint-line","docs\u002F5.api\u002F12.io\u002F3.functions\u002Fprint-line",{"title":2735,"path":2736,"stem":2737},"ReadLine","\u002Fdocs\u002Fapi\u002Fio\u002Fread-line","docs\u002F5.api\u002F12.io\u002F3.functions\u002Fread-line",{"title":2739,"path":2740,"stem":2741,"children":2742,"icon":2792},"FileSystem","\u002Fdocs\u002Fapi\u002Ffilesystem","docs\u002F5.api\u002F13.filesystem\u002F0.index",[2743,2744,2748,2752,2756,2760,2764,2768,2772,2776,2780,2784,2788],{"title":49,"path":2740,"stem":2741},{"title":2745,"path":2746,"stem":2747},"AtomicWrite","\u002Fdocs\u002Fapi\u002Ffilesystem\u002Fatomic-write","docs\u002F5.api\u002F13.filesystem\u002F2.types\u002Fatomic-write",{"title":2749,"path":2750,"stem":2751},"Capabilities","\u002Fdocs\u002Fapi\u002Ffilesystem\u002Fcapabilities","docs\u002F5.api\u002F13.filesystem\u002F2.types\u002Fcapabilities",{"title":2753,"path":2754,"stem":2755},"File","\u002Fdocs\u002Fapi\u002Ffilesystem\u002Ffile","docs\u002F5.api\u002F13.filesystem\u002F2.types\u002Ffile",{"title":2757,"path":2758,"stem":2759},"FileStream","\u002Fdocs\u002Fapi\u002Ffilesystem\u002Ffile-stream","docs\u002F5.api\u002F13.filesystem\u002F2.types\u002Ffile-stream",{"title":2761,"path":2762,"stem":2763},"Metadata","\u002Fdocs\u002Fapi\u002Ffilesystem\u002Fmetadata","docs\u002F5.api\u002F13.filesystem\u002F2.types\u002Fmetadata",{"title":2765,"path":2766,"stem":2767},"Permissions","\u002Fdocs\u002Fapi\u002Ffilesystem\u002Fpermissions","docs\u002F5.api\u002F13.filesystem\u002F2.types\u002Fpermissions",{"title":2769,"path":2770,"stem":2771},"TemporaryDirectoryHandle","\u002Fdocs\u002Fapi\u002Ffilesystem\u002Ftemporary-directory-handle","docs\u002F5.api\u002F13.filesystem\u002F2.types\u002Ftemporary-directory-handle",{"title":2773,"path":2774,"stem":2775},"TemporaryFile","\u002Fdocs\u002Fapi\u002Ffilesystem\u002Ftemporary-file","docs\u002F5.api\u002F13.filesystem\u002F2.types\u002Ftemporary-file",{"title":2777,"path":2778,"stem":2779},"Directories","\u002Fdocs\u002Fapi\u002Ffilesystem\u002Fdirectories","docs\u002F5.api\u002F13.filesystem\u002F3.functions\u002Fdirectories",{"title":2781,"path":2782,"stem":2783},"File operations","\u002Fdocs\u002Fapi\u002Ffilesystem\u002Ffile-operations","docs\u002F5.api\u002F13.filesystem\u002F3.functions\u002Ffile-operations",{"title":2785,"path":2786,"stem":2787},"Working directory","\u002Fdocs\u002Fapi\u002Ffilesystem\u002Flocation","docs\u002F5.api\u002F13.filesystem\u002F3.functions\u002Flocation",{"title":2789,"path":2790,"stem":2791},"Native error codes","\u002Fdocs\u002Fapi\u002Ffilesystem\u002Fnative-errors","docs\u002F5.api\u002F13.filesystem\u002F3.functions\u002Fnative-errors","i-lucide-folder-tree",{"title":2794,"path":2795,"stem":2796,"children":2797,"icon":2818},"Path","\u002Fdocs\u002Fapi\u002Fpath","docs\u002F5.api\u002F14.path\u002F0.index",[2798,2799,2803,2807,2810,2814],{"title":49,"path":2795,"stem":2796},{"title":2800,"path":2801,"stem":2802},"OsString","\u002Fdocs\u002Fapi\u002Fpath\u002Fos-string","docs\u002F5.api\u002F14.path\u002F2.types\u002Fos-string",{"title":2804,"path":2805,"stem":2806},"OsStringView","\u002Fdocs\u002Fapi\u002Fpath\u002Fos-string-view","docs\u002F5.api\u002F14.path\u002F2.types\u002Fos-string-view",{"title":2794,"path":2808,"stem":2809},"\u002Fdocs\u002Fapi\u002Fpath\u002Fpath","docs\u002F5.api\u002F14.path\u002F2.types\u002Fpath",{"title":2811,"path":2812,"stem":2813},"PathBuffer","\u002Fdocs\u002Fapi\u002Fpath\u002Fpath-buffer","docs\u002F5.api\u002F14.path\u002F2.types\u002Fpath-buffer",{"title":2815,"path":2816,"stem":2817},"Path syntax","\u002Fdocs\u002Fapi\u002Fpath\u002Fsyntax","docs\u002F5.api\u002F14.path\u002F3.functions\u002Fsyntax","i-lucide-route",{"title":2820,"path":2821,"stem":2822,"children":2823,"icon":2873},"Time","\u002Fdocs\u002Fapi\u002Ftime","docs\u002F5.api\u002F15.time\u002F0.index",[2824,2825,2829,2833,2837,2841,2845,2849,2853,2857,2861,2865,2869],{"title":49,"path":2821,"stem":2822},{"title":2826,"path":2827,"stem":2828},"Waiter","\u002Fdocs\u002Fapi\u002Ftime\u002Fwaiter","docs\u002F5.api\u002F15.time\u002F1.interfaces\u002Fwaiter",{"title":2830,"path":2831,"stem":2832},"Date","\u002Fdocs\u002Fapi\u002Ftime\u002Fdate","docs\u002F5.api\u002F15.time\u002F2.types\u002Fdate",{"title":2834,"path":2835,"stem":2836},"DateTime","\u002Fdocs\u002Fapi\u002Ftime\u002Fdate-time","docs\u002F5.api\u002F15.time\u002F2.types\u002Fdate-time",{"title":2838,"path":2839,"stem":2840},"Duration","\u002Fdocs\u002Fapi\u002Ftime\u002Fduration","docs\u002F5.api\u002F15.time\u002F2.types\u002Fduration",{"title":2842,"path":2843,"stem":2844},"Instant","\u002Fdocs\u002Fapi\u002Ftime\u002Finstant","docs\u002F5.api\u002F15.time\u002F2.types\u002Finstant",{"title":2846,"path":2847,"stem":2848},"OffsetDateTime","\u002Fdocs\u002Fapi\u002Ftime\u002Foffset-date-time","docs\u002F5.api\u002F15.time\u002F2.types\u002Foffset-date-time",{"title":2850,"path":2851,"stem":2852},"Stopwatch","\u002Fdocs\u002Fapi\u002Ftime\u002Fstopwatch","docs\u002F5.api\u002F15.time\u002F2.types\u002Fstopwatch",{"title":2854,"path":2855,"stem":2856},"TimeOfDay","\u002Fdocs\u002Fapi\u002Ftime\u002Ftime-of-day","docs\u002F5.api\u002F15.time\u002F2.types\u002Ftime-of-day",{"title":2858,"path":2859,"stem":2860},"TimeParseError","\u002Fdocs\u002Fapi\u002Ftime\u002Ftime-parse-error","docs\u002F5.api\u002F15.time\u002F2.types\u002Ftime-parse-error",{"title":2862,"path":2863,"stem":2864},"Timestamp","\u002Fdocs\u002Fapi\u002Ftime\u002Ftimestamp","docs\u002F5.api\u002F15.time\u002F2.types\u002Ftimestamp",{"title":2866,"path":2867,"stem":2868},"UtcOffset","\u002Fdocs\u002Fapi\u002Ftime\u002Futc-offset","docs\u002F5.api\u002F15.time\u002F2.types\u002Futc-offset",{"title":2870,"path":2871,"stem":2872},"SleepFor","\u002Fdocs\u002Fapi\u002Ftime\u002Fsleep","docs\u002F5.api\u002F15.time\u002F3.functions\u002Fsleep","i-lucide-clock",{"title":2875,"path":2876,"stem":2877,"children":2878,"icon":2900},"Entropy","\u002Fdocs\u002Fapi\u002Fentropy","docs\u002F5.api\u002F16.entropy\u002F0.index",[2879,2880,2884,2888,2892,2896],{"title":49,"path":2876,"stem":2877},{"title":2881,"path":2882,"stem":2883},"EntropySource","\u002Fdocs\u002Fapi\u002Fentropy\u002Fentropy-source","docs\u002F5.api\u002F16.entropy\u002F1.interfaces\u002Fentropy-source",{"title":2885,"path":2886,"stem":2887},"EntropyError","\u002Fdocs\u002Fapi\u002Fentropy\u002Fentropy-error","docs\u002F5.api\u002F16.entropy\u002F2.types\u002Fentropy-error",{"title":2889,"path":2890,"stem":2891},"SystemEntropy","\u002Fdocs\u002Fapi\u002Fentropy\u002Fsystem-entropy","docs\u002F5.api\u002F16.entropy\u002F2.types\u002Fsystem-entropy",{"title":2893,"path":2894,"stem":2895},"Fill","\u002Fdocs\u002Fapi\u002Fentropy\u002Ffill","docs\u002F5.api\u002F16.entropy\u002F3.functions\u002Ffill",{"title":2897,"path":2898,"stem":2899},"NextUint64","\u002Fdocs\u002Fapi\u002Fentropy\u002Fnext-uint64","docs\u002F5.api\u002F16.entropy\u002F3.functions\u002Fnext-uint64","i-lucide-sparkles",{"title":2902,"path":2903,"stem":2904,"children":2905,"icon":2943},"Json","\u002Fdocs\u002Fapi\u002Fjson","docs\u002F5.api\u002F17.json\u002F0.index",[2906,2907,2911,2915,2919,2923,2927,2931,2935,2939],{"title":49,"path":2903,"stem":2904},{"title":2908,"path":2909,"stem":2910},"JsonEventReader","\u002Fdocs\u002Fapi\u002Fjson\u002Fjson-event-reader","docs\u002F5.api\u002F17.json\u002F2.types\u002Fjson-event-reader",{"title":2912,"path":2913,"stem":2914},"JsonLexer","\u002Fdocs\u002Fapi\u002Fjson\u002Fjson-lexer","docs\u002F5.api\u002F17.json\u002F2.types\u002Fjson-lexer",{"title":2916,"path":2917,"stem":2918},"JsonLimits","\u002Fdocs\u002Fapi\u002Fjson\u002Fjson-limits","docs\u002F5.api\u002F17.json\u002F2.types\u002Fjson-limits",{"title":2920,"path":2921,"stem":2922},"JsonNumber","\u002Fdocs\u002Fapi\u002Fjson\u002Fjson-number","docs\u002F5.api\u002F17.json\u002F2.types\u002Fjson-number",{"title":2924,"path":2925,"stem":2926},"JsonParseError","\u002Fdocs\u002Fapi\u002Fjson\u002Fjson-parse-error","docs\u002F5.api\u002F17.json\u002F2.types\u002Fjson-parse-error",{"title":2928,"path":2929,"stem":2930},"JsonParser","\u002Fdocs\u002Fapi\u002Fjson\u002Fjson-parser","docs\u002F5.api\u002F17.json\u002F2.types\u002Fjson-parser",{"title":2932,"path":2933,"stem":2934},"JsonValue","\u002Fdocs\u002Fapi\u002Fjson\u002Fjson-value","docs\u002F5.api\u002F17.json\u002F2.types\u002Fjson-value",{"title":2936,"path":2937,"stem":2938},"Parse","\u002Fdocs\u002Fapi\u002Fjson\u002Fparse","docs\u002F5.api\u002F17.json\u002F3.functions\u002Fparse",{"title":2940,"path":2941,"stem":2942},"WriteValue","\u002Fdocs\u002Fapi\u002Fjson\u002Fwrite-value","docs\u002F5.api\u002F17.json\u002F3.functions\u002Fwrite-value","i-lucide-braces",{"title":2945,"path":2946,"stem":2947,"children":2948,"icon":2986},"Toml","\u002Fdocs\u002Fapi\u002Ftoml","docs\u002F5.api\u002F18.toml\u002F0.index",[2949,2950,2954,2958,2962,2966,2970,2974,2978,2982],{"title":49,"path":2946,"stem":2947},{"title":2951,"path":2952,"stem":2953},"TomlEventReader","\u002Fdocs\u002Fapi\u002Ftoml\u002Ftoml-event-reader","docs\u002F5.api\u002F18.toml\u002F2.types\u002Ftoml-event-reader",{"title":2955,"path":2956,"stem":2957},"TomlLexer","\u002Fdocs\u002Fapi\u002Ftoml\u002Ftoml-lexer","docs\u002F5.api\u002F18.toml\u002F2.types\u002Ftoml-lexer",{"title":2959,"path":2960,"stem":2961},"TomlParseFailure","\u002Fdocs\u002Fapi\u002Ftoml\u002Ftoml-parse-failure","docs\u002F5.api\u002F18.toml\u002F2.types\u002Ftoml-parse-failure",{"title":2963,"path":2964,"stem":2965},"TomlParser","\u002Fdocs\u002Fapi\u002Ftoml\u002Ftoml-parser","docs\u002F5.api\u002F18.toml\u002F2.types\u002Ftoml-parser",{"title":2967,"path":2968,"stem":2969},"TomlScalarError","\u002Fdocs\u002Fapi\u002Ftoml\u002Ftoml-scalar-error","docs\u002F5.api\u002F18.toml\u002F2.types\u002Ftoml-scalar-error",{"title":2971,"path":2972,"stem":2973},"TomlValue","\u002Fdocs\u002Fapi\u002Ftoml\u002Ftoml-value","docs\u002F5.api\u002F18.toml\u002F2.types\u002Ftoml-value",{"title":2975,"path":2976,"stem":2977},"Scalars","\u002Fdocs\u002Fapi\u002Ftoml\u002Fscalars","docs\u002F5.api\u002F18.toml\u002F3.functions\u002Fscalars",{"title":2979,"path":2980,"stem":2981},"TomlParse","\u002Fdocs\u002Fapi\u002Ftoml\u002Ftoml-parse","docs\u002F5.api\u002F18.toml\u002F3.functions\u002Ftoml-parse",{"title":2983,"path":2984,"stem":2985},"TomlWriteDocument","\u002Fdocs\u002Fapi\u002Ftoml\u002Ftoml-write-document","docs\u002F5.api\u002F18.toml\u002F3.functions\u002Ftoml-write-document","i-lucide-file-cog",{"title":2988,"path":2989,"stem":2990,"children":2991,"icon":3011},"Uuid","\u002Fdocs\u002Fapi\u002Fuuid","docs\u002F5.api\u002F19.uuid\u002F0.index",[2992,2993,2997,3000,3003,3007],{"title":49,"path":2989,"stem":2990},{"title":2994,"path":2995,"stem":2996},"MonotonicUuid","\u002Fdocs\u002Fapi\u002Fuuid\u002Fmonotonic-uuid","docs\u002F5.api\u002F19.uuid\u002F2.types\u002Fmonotonic-uuid",{"title":2988,"path":2998,"stem":2999},"\u002Fdocs\u002Fapi\u002Fuuid\u002Fuuid","docs\u002F5.api\u002F19.uuid\u002F2.types\u002Fuuid",{"title":2630,"path":3001,"stem":3002},"\u002Fdocs\u002Fapi\u002Fuuid\u002Frandom","docs\u002F5.api\u002F19.uuid\u002F3.functions\u002Frandom",{"title":3004,"path":3005,"stem":3006},"Text form","\u002Fdocs\u002Fapi\u002Fuuid\u002Ftext","docs\u002F5.api\u002F19.uuid\u002F3.functions\u002Ftext",{"title":3008,"path":3009,"stem":3010},"TimeOrdered","\u002Fdocs\u002Fapi\u002Fuuid\u002Ftime-ordered","docs\u002F5.api\u002F19.uuid\u002F3.functions\u002Ftime-ordered","i-lucide-fingerprint-pattern",{"title":3013,"path":3014,"stem":3015,"children":3016,"icon":3062},"Crypto","\u002Fdocs\u002Fapi\u002Fcrypto","docs\u002F5.api\u002F20.crypto\u002F0.index",[3017,3018,3022,3026,3030,3034,3038,3042,3046,3050,3054,3058],{"title":49,"path":3014,"stem":3015},{"title":3019,"path":3020,"stem":3021},"Digest","\u002Fdocs\u002Fapi\u002Fcrypto\u002Fdigest","docs\u002F5.api\u002F20.crypto\u002F1.interfaces\u002Fdigest",{"title":3023,"path":3024,"stem":3025},"Blake3","\u002Fdocs\u002Fapi\u002Fcrypto\u002Fblake3","docs\u002F5.api\u002F20.crypto\u002F2.types\u002Fblake3",{"title":3027,"path":3028,"stem":3029},"Hmac\u003CD>","\u002Fdocs\u002Fapi\u002Fcrypto\u002Fhmac","docs\u002F5.api\u002F20.crypto\u002F2.types\u002Fhmac",{"title":3031,"path":3032,"stem":3033},"LegacyMd5","\u002Fdocs\u002Fapi\u002Fcrypto\u002Flegacy-md5","docs\u002F5.api\u002F20.crypto\u002F2.types\u002Flegacy-md5",{"title":3035,"path":3036,"stem":3037},"LegacySha1","\u002Fdocs\u002Fapi\u002Fcrypto\u002Flegacy-sha1","docs\u002F5.api\u002F20.crypto\u002F2.types\u002Flegacy-sha1",{"title":3039,"path":3040,"stem":3041},"Sha256","\u002Fdocs\u002Fapi\u002Fcrypto\u002Fsha256","docs\u002F5.api\u002F20.crypto\u002F2.types\u002Fsha256",{"title":3043,"path":3044,"stem":3045},"Sha3","\u002Fdocs\u002Fapi\u002Fcrypto\u002Fsha3","docs\u002F5.api\u002F20.crypto\u002F2.types\u002Fsha3",{"title":3047,"path":3048,"stem":3049},"Sha512","\u002Fdocs\u002Fapi\u002Fcrypto\u002Fsha512","docs\u002F5.api\u002F20.crypto\u002F2.types\u002Fsha512",{"title":3051,"path":3052,"stem":3053},"Shake","\u002Fdocs\u002Fapi\u002Fcrypto\u002Fshake","docs\u002F5.api\u002F20.crypto\u002F2.types\u002Fshake",{"title":3055,"path":3056,"stem":3057},"Hkdf\u003CD>","\u002Fdocs\u002Fapi\u002Fcrypto\u002Fhkdf","docs\u002F5.api\u002F20.crypto\u002F3.functions\u002Fhkdf",{"title":3059,"path":3060,"stem":3061},"Secrets","\u002Fdocs\u002Fapi\u002Fcrypto\u002Fsecrets","docs\u002F5.api\u002F20.crypto\u002F3.functions\u002Fsecrets","i-lucide-lock",{"title":3064,"path":3065,"stem":3066,"children":3067,"icon":3103},"C","\u002Fdocs\u002Fapi\u002Fc","docs\u002F5.api\u002F21.c\u002F0.index",[3068,3069,3073,3077,3080,3084,3088,3092,3095,3099],{"title":49,"path":3065,"stem":3066},{"title":3070,"path":3071,"stem":3072},"timespec","\u002Fdocs\u002Fapi\u002Fc\u002Ftimespec","docs\u002F5.api\u002F21.c\u002F2.types\u002Ftimespec",{"title":3074,"path":3075,"stem":3076},"tm","\u002Fdocs\u002Fapi\u002Fc\u002Ftm","docs\u002F5.api\u002F21.c\u002F2.types\u002Ftm",{"title":326,"path":3078,"stem":3079},"\u002Fdocs\u002Fapi\u002Fc\u002Ftypes","docs\u002F5.api\u002F21.c\u002F2.types\u002Ftypes",{"title":3081,"path":3082,"stem":3083},"Mathematics","\u002Fdocs\u002Fapi\u002Fc\u002Fmath","docs\u002F5.api\u002F21.c\u002F3.functions\u002Fmath",{"title":3085,"path":3086,"stem":3087},"General utilities","\u002Fdocs\u002Fapi\u002Fc\u002Fstdlib","docs\u002F5.api\u002F21.c\u002F3.functions\u002Fstdlib",{"title":3089,"path":3090,"stem":3091},"Strings and memory","\u002Fdocs\u002Fapi\u002Fc\u002Fstring","docs\u002F5.api\u002F21.c\u002F3.functions\u002Fstring",{"title":2820,"path":3093,"stem":3094},"\u002Fdocs\u002Fapi\u002Fc\u002Ftime","docs\u002F5.api\u002F21.c\u002F3.functions\u002Ftime",{"title":3096,"path":3097,"stem":3098},"errno","\u002Fdocs\u002Fapi\u002Fc\u002Ferrno","docs\u002F5.api\u002F21.c\u002F4.constants\u002Ferrno",{"title":3100,"path":3101,"stem":3102},"Standard I\u002FO","\u002Fdocs\u002Fapi\u002Fc\u002Fstdio","docs\u002F5.api\u002F21.c\u002F4.constants\u002Fstdio","i-simple-icons-c",{"title":67,"path":3105,"stem":3106,"children":3107,"icon":3173},"\u002Fdocs\u002Fapi\u002Flinux","docs\u002F5.api\u002F22.linux\u002F0.index",[3108,3109,3113,3116,3120,3124,3128,3132,3136,3140,3144,3148,3152,3155,3158,3162,3165,3169],{"title":49,"path":3105,"stem":3106},{"title":3110,"path":3111,"stem":3112},"Timespec","\u002Fdocs\u002Fapi\u002Flinux\u002Ftimespec","docs\u002F5.api\u002F22.linux\u002F2.types\u002Ftimespec",{"title":326,"path":3114,"stem":3115},"\u002Fdocs\u002Fapi\u002Flinux\u002Ftypes","docs\u002F5.api\u002F22.linux\u002F2.types\u002Ftypes",{"title":3117,"path":3118,"stem":3119},"Directories and links","\u002Fdocs\u002Fapi\u002Flinux\u002Fdirectories","docs\u002F5.api\u002F22.linux\u002F3.functions\u002Fdirectories",{"title":3121,"path":3122,"stem":3123},"GetRandom","\u002Fdocs\u002Fapi\u002Flinux\u002Fget-random","docs\u002F5.api\u002F22.linux\u002F3.functions\u002Fget-random",{"title":3125,"path":3126,"stem":3127},"Process","\u002Fdocs\u002Fapi\u002Flinux\u002Fprocess","docs\u002F5.api\u002F22.linux\u002F3.functions\u002Fprocess",{"title":3129,"path":3130,"stem":3131},"Name resolution","\u002Fdocs\u002Fapi\u002Flinux\u002Fresolve","docs\u002F5.api\u002F22.linux\u002F3.functions\u002Fresolve",{"title":3133,"path":3134,"stem":3135},"Starting processes","\u002Fdocs\u002Fapi\u002Flinux\u002Fspawn","docs\u002F5.api\u002F22.linux\u002F3.functions\u002Fspawn",{"title":3137,"path":3138,"stem":3139},"System calls","\u002Fdocs\u002Fapi\u002Flinux\u002Fsyscalls","docs\u002F5.api\u002F22.linux\u002F3.functions\u002Fsyscalls",{"title":3141,"path":3142,"stem":3143},"Threads","\u002Fdocs\u002Fapi\u002Flinux\u002Fthread","docs\u002F5.api\u002F22.linux\u002F3.functions\u002Fthread",{"title":3145,"path":3146,"stem":3147},"Clocks","\u002Fdocs\u002Fapi\u002Flinux\u002Fclock","docs\u002F5.api\u002F22.linux\u002F4.constants\u002Fclock",{"title":3149,"path":3150,"stem":3151},"Dynamic loading","\u002Fdocs\u002Fapi\u002Flinux\u002Fdynamic","docs\u002F5.api\u002F22.linux\u002F4.constants\u002Fdynamic",{"title":447,"path":3153,"stem":3154},"\u002Fdocs\u002Fapi\u002Flinux\u002Ferrors","docs\u002F5.api\u002F22.linux\u002F4.constants\u002Ferrors",{"title":959,"path":3156,"stem":3157},"\u002Fdocs\u002Fapi\u002Flinux\u002Ffiles","docs\u002F5.api\u002F22.linux\u002F4.constants\u002Ffiles",{"title":3159,"path":3160,"stem":3161},"Futexes","\u002Fdocs\u002Fapi\u002Flinux\u002Ffutex","docs\u002F5.api\u002F22.linux\u002F4.constants\u002Ffutex",{"title":751,"path":3163,"stem":3164},"\u002Fdocs\u002Fapi\u002Flinux\u002Fmemory","docs\u002F5.api\u002F22.linux\u002F4.constants\u002Fmemory",{"title":3166,"path":3167,"stem":3168},"Polling","\u002Fdocs\u002Fapi\u002Flinux\u002Fpoll","docs\u002F5.api\u002F22.linux\u002F4.constants\u002Fpoll",{"title":3170,"path":3171,"stem":3172},"Sockets","\u002Fdocs\u002Fapi\u002Flinux\u002Fsocket","docs\u002F5.api\u002F22.linux\u002F4.constants\u002Fsocket","i-simple-icons-linux",{"title":63,"path":3175,"stem":3176,"children":3177,"icon":3231},"\u002Fdocs\u002Fapi\u002Ffreebsd","docs\u002F5.api\u002F23.freebsd\u002F0.index",[3178,3179,3182,3185,3188,3191,3194,3197,3200,3203,3206,3209,3212,3215,3218,3221,3224,3227],{"title":49,"path":3175,"stem":3176},{"title":3110,"path":3180,"stem":3181},"\u002Fdocs\u002Fapi\u002Ffreebsd\u002Ftimespec","docs\u002F5.api\u002F23.freebsd\u002F2.types\u002Ftimespec",{"title":326,"path":3183,"stem":3184},"\u002Fdocs\u002Fapi\u002Ffreebsd\u002Ftypes","docs\u002F5.api\u002F23.freebsd\u002F2.types\u002Ftypes",{"title":3117,"path":3186,"stem":3187},"\u002Fdocs\u002Fapi\u002Ffreebsd\u002Fdirectories","docs\u002F5.api\u002F23.freebsd\u002F3.functions\u002Fdirectories",{"title":3121,"path":3189,"stem":3190},"\u002Fdocs\u002Fapi\u002Ffreebsd\u002Fget-random","docs\u002F5.api\u002F23.freebsd\u002F3.functions\u002Fget-random",{"title":3125,"path":3192,"stem":3193},"\u002Fdocs\u002Fapi\u002Ffreebsd\u002Fprocess","docs\u002F5.api\u002F23.freebsd\u002F3.functions\u002Fprocess",{"title":3129,"path":3195,"stem":3196},"\u002Fdocs\u002Fapi\u002Ffreebsd\u002Fresolve","docs\u002F5.api\u002F23.freebsd\u002F3.functions\u002Fresolve",{"title":3133,"path":3198,"stem":3199},"\u002Fdocs\u002Fapi\u002Ffreebsd\u002Fspawn","docs\u002F5.api\u002F23.freebsd\u002F3.functions\u002Fspawn",{"title":3137,"path":3201,"stem":3202},"\u002Fdocs\u002Fapi\u002Ffreebsd\u002Fsyscalls","docs\u002F5.api\u002F23.freebsd\u002F3.functions\u002Fsyscalls",{"title":3141,"path":3204,"stem":3205},"\u002Fdocs\u002Fapi\u002Ffreebsd\u002Fthread","docs\u002F5.api\u002F23.freebsd\u002F3.functions\u002Fthread",{"title":3145,"path":3207,"stem":3208},"\u002Fdocs\u002Fapi\u002Ffreebsd\u002Fclock","docs\u002F5.api\u002F23.freebsd\u002F4.constants\u002Fclock",{"title":3149,"path":3210,"stem":3211},"\u002Fdocs\u002Fapi\u002Ffreebsd\u002Fdynamic","docs\u002F5.api\u002F23.freebsd\u002F4.constants\u002Fdynamic",{"title":447,"path":3213,"stem":3214},"\u002Fdocs\u002Fapi\u002Ffreebsd\u002Ferrors","docs\u002F5.api\u002F23.freebsd\u002F4.constants\u002Ferrors",{"title":959,"path":3216,"stem":3217},"\u002Fdocs\u002Fapi\u002Ffreebsd\u002Ffiles","docs\u002F5.api\u002F23.freebsd\u002F4.constants\u002Ffiles",{"title":751,"path":3219,"stem":3220},"\u002Fdocs\u002Fapi\u002Ffreebsd\u002Fmemory","docs\u002F5.api\u002F23.freebsd\u002F4.constants\u002Fmemory",{"title":3166,"path":3222,"stem":3223},"\u002Fdocs\u002Fapi\u002Ffreebsd\u002Fpoll","docs\u002F5.api\u002F23.freebsd\u002F4.constants\u002Fpoll",{"title":3170,"path":3225,"stem":3226},"\u002Fdocs\u002Fapi\u002Ffreebsd\u002Fsocket","docs\u002F5.api\u002F23.freebsd\u002F4.constants\u002Fsocket",{"title":3228,"path":3229,"stem":3230},"Address waits","\u002Fdocs\u002Fapi\u002Ffreebsd\u002Fumtx","docs\u002F5.api\u002F23.freebsd\u002F4.constants\u002Fumtx","i-simple-icons-freebsd",{"title":71,"path":3233,"stem":3234,"children":3235,"icon":3289},"\u002Fdocs\u002Fapi\u002Fmacos","docs\u002F5.api\u002F24.macos\u002F0.index",[3236,3237,3240,3244,3247,3250,3253,3256,3259,3262,3265,3268,3271,3274,3277,3280,3283,3286],{"title":49,"path":3233,"stem":3234},{"title":3110,"path":3238,"stem":3239},"\u002Fdocs\u002Fapi\u002Fmacos\u002Ftimespec","docs\u002F5.api\u002F24.macos\u002F2.types\u002Ftimespec",{"title":3241,"path":3242,"stem":3243},"Timeval","\u002Fdocs\u002Fapi\u002Fmacos\u002Ftimeval","docs\u002F5.api\u002F24.macos\u002F2.types\u002Ftimeval",{"title":326,"path":3245,"stem":3246},"\u002Fdocs\u002Fapi\u002Fmacos\u002Ftypes","docs\u002F5.api\u002F24.macos\u002F2.types\u002Ftypes",{"title":3145,"path":3248,"stem":3249},"\u002Fdocs\u002Fapi\u002Fmacos\u002Fclock","docs\u002F5.api\u002F24.macos\u002F3.functions\u002Fclock",{"title":3117,"path":3251,"stem":3252},"\u002Fdocs\u002Fapi\u002Fmacos\u002Fdirectories","docs\u002F5.api\u002F24.macos\u002F3.functions\u002Fdirectories",{"title":3121,"path":3254,"stem":3255},"\u002Fdocs\u002Fapi\u002Fmacos\u002Fget-random","docs\u002F5.api\u002F24.macos\u002F3.functions\u002Fget-random",{"title":3125,"path":3257,"stem":3258},"\u002Fdocs\u002Fapi\u002Fmacos\u002Fprocess","docs\u002F5.api\u002F24.macos\u002F3.functions\u002Fprocess",{"title":3129,"path":3260,"stem":3261},"\u002Fdocs\u002Fapi\u002Fmacos\u002Fresolve","docs\u002F5.api\u002F24.macos\u002F3.functions\u002Fresolve",{"title":3133,"path":3263,"stem":3264},"\u002Fdocs\u002Fapi\u002Fmacos\u002Fspawn","docs\u002F5.api\u002F24.macos\u002F3.functions\u002Fspawn",{"title":3141,"path":3266,"stem":3267},"\u002Fdocs\u002Fapi\u002Fmacos\u002Fthread","docs\u002F5.api\u002F24.macos\u002F3.functions\u002Fthread",{"title":3149,"path":3269,"stem":3270},"\u002Fdocs\u002Fapi\u002Fmacos\u002Fdynamic","docs\u002F5.api\u002F24.macos\u002F4.constants\u002Fdynamic",{"title":447,"path":3272,"stem":3273},"\u002Fdocs\u002Fapi\u002Fmacos\u002Ferrors","docs\u002F5.api\u002F24.macos\u002F4.constants\u002Ferrors",{"title":959,"path":3275,"stem":3276},"\u002Fdocs\u002Fapi\u002Fmacos\u002Ffiles","docs\u002F5.api\u002F24.macos\u002F4.constants\u002Ffiles",{"title":751,"path":3278,"stem":3279},"\u002Fdocs\u002Fapi\u002Fmacos\u002Fmemory","docs\u002F5.api\u002F24.macos\u002F4.constants\u002Fmemory",{"title":3166,"path":3281,"stem":3282},"\u002Fdocs\u002Fapi\u002Fmacos\u002Fpoll","docs\u002F5.api\u002F24.macos\u002F4.constants\u002Fpoll",{"title":3170,"path":3284,"stem":3285},"\u002Fdocs\u002Fapi\u002Fmacos\u002Fsocket","docs\u002F5.api\u002F24.macos\u002F4.constants\u002Fsocket",{"title":3228,"path":3287,"stem":3288},"\u002Fdocs\u002Fapi\u002Fmacos\u002Fulock","docs\u002F5.api\u002F24.macos\u002F4.constants\u002Fulock","i-simple-icons-apple",{"title":75,"path":3291,"stem":3292,"children":3293,"icon":3368},"\u002Fdocs\u002Fapi\u002Fwindows","docs\u002F5.api\u002F25.windows\u002F0.index",[3294,3295,3299,3303,3307,3311,3315,3319,3322,3326,3329,3333,3337,3340,3343,3346,3350,3354,3357,3361,3364],{"title":49,"path":3291,"stem":3292},{"title":3296,"path":3297,"stem":3298},"CodePage","\u002Fdocs\u002Fapi\u002Fwindows\u002Fcode-page","docs\u002F5.api\u002F25.windows\u002F2.types\u002Fcode-page",{"title":3300,"path":3301,"stem":3302},"CreationDisposition","\u002Fdocs\u002Fapi\u002Fwindows\u002Fcreation-disposition","docs\u002F5.api\u002F25.windows\u002F2.types\u002Fcreation-disposition",{"title":3304,"path":3305,"stem":3306},"FileTime","\u002Fdocs\u002Fapi\u002Fwindows\u002Ffile-time","docs\u002F5.api\u002F25.windows\u002F2.types\u002Ffile-time",{"title":3308,"path":3309,"stem":3310},"SystemInfo","\u002Fdocs\u002Fapi\u002Fwindows\u002Fsystem-info","docs\u002F5.api\u002F25.windows\u002F2.types\u002Fsystem-info",{"title":3312,"path":3313,"stem":3314},"SystemTime","\u002Fdocs\u002Fapi\u002Fwindows\u002Fsystem-time","docs\u002F5.api\u002F25.windows\u002F2.types\u002Fsystem-time",{"title":3316,"path":3317,"stem":3318},"Time zone","\u002Fdocs\u002Fapi\u002Fwindows\u002Ftime-zone","docs\u002F5.api\u002F25.windows\u002F2.types\u002Ftime-zone",{"title":326,"path":3320,"stem":3321},"\u002Fdocs\u002Fapi\u002Fwindows\u002Ftypes","docs\u002F5.api\u002F25.windows\u002F2.types\u002Ftypes",{"title":3323,"path":3324,"stem":3325},"Win32FindDataA","\u002Fdocs\u002Fapi\u002Fwindows\u002Fwin32-find-data-a","docs\u002F5.api\u002F25.windows\u002F2.types\u002Fwin32-find-data-a",{"title":3145,"path":3327,"stem":3328},"\u002Fdocs\u002Fapi\u002Fwindows\u002Fclock","docs\u002F5.api\u002F25.windows\u002F3.functions\u002Fclock",{"title":3330,"path":3331,"stem":3332},"Console","\u002Fdocs\u002Fapi\u002Fwindows\u002Fconsole","docs\u002F5.api\u002F25.windows\u002F3.functions\u002Fconsole",{"title":3334,"path":3335,"stem":3336},"File system","\u002Fdocs\u002Fapi\u002Fwindows\u002Ffile-system","docs\u002F5.api\u002F25.windows\u002F3.functions\u002Ffile-system",{"title":959,"path":3338,"stem":3339},"\u002Fdocs\u002Fapi\u002Fwindows\u002Ffiles","docs\u002F5.api\u002F25.windows\u002F3.functions\u002Ffiles",{"title":3121,"path":3341,"stem":3342},"\u002Fdocs\u002Fapi\u002Fwindows\u002Fget-random","docs\u002F5.api\u002F25.windows\u002F3.functions\u002Fget-random",{"title":751,"path":3344,"stem":3345},"\u002Fdocs\u002Fapi\u002Fwindows\u002Fmemory","docs\u002F5.api\u002F25.windows\u002F3.functions\u002Fmemory",{"title":3347,"path":3348,"stem":3349},"Processes and threads","\u002Fdocs\u002Fapi\u002Fwindows\u002Fprocess","docs\u002F5.api\u002F25.windows\u002F3.functions\u002Fprocess",{"title":3351,"path":3352,"stem":3353},"Process control","\u002Fdocs\u002Fapi\u002Fwindows\u002Fprocess-control","docs\u002F5.api\u002F25.windows\u002F3.functions\u002Fprocess-control",{"title":3228,"path":3355,"stem":3356},"\u002Fdocs\u002Fapi\u002Fwindows\u002Fsynch","docs\u002F5.api\u002F25.windows\u002F3.functions\u002Fsynch",{"title":3358,"path":3359,"stem":3360},"Text conversion","\u002Fdocs\u002Fapi\u002Fwindows\u002Ftext","docs\u002F5.api\u002F25.windows\u002F3.functions\u002Ftext",{"title":447,"path":3362,"stem":3363},"\u002Fdocs\u002Fapi\u002Fwindows\u002Ferrors","docs\u002F5.api\u002F25.windows\u002F4.constants\u002Ferrors",{"title":3365,"path":3366,"stem":3367},"Winsock","\u002Fdocs\u002Fapi\u002Fwindows\u002Fwinsock","docs\u002F5.api\u002F25.windows\u002F4.constants\u002Fwinsock","i-simple-icons-windows",{"title":3370,"path":3371,"stem":3372,"children":3373,"icon":3381},"Regex","\u002Fdocs\u002Fapi\u002Fregex","docs\u002F5.api\u002F26.regex\u002F0.index",[3374,3375,3378],{"title":49,"path":3371,"stem":3372},{"title":447,"path":3376,"stem":3377},"\u002Fdocs\u002Fapi\u002Fregex\u002Ferror","docs\u002F5.api\u002F26.regex\u002F2.types\u002Ferror",{"title":3370,"path":3379,"stem":3380},"\u002Fdocs\u002Fapi\u002Fregex\u002Fregex","docs\u002F5.api\u002F26.regex\u002F2.types\u002Fregex","i-lucide-regex",{"title":3125,"path":3383,"stem":3384,"children":3385,"icon":3415},"\u002Fdocs\u002Fapi\u002Fprocess","docs\u002F5.api\u002F27.process\u002F0.index",[3386,3387,3391,3395,3399,3403,3407,3411],{"title":49,"path":3383,"stem":3384},{"title":3388,"path":3389,"stem":3390},"Captured output","\u002Fdocs\u002Fapi\u002Fprocess\u002Fcapture","docs\u002F5.api\u002F27.process\u002F2.types\u002Fcapture",{"title":3392,"path":3393,"stem":3394},"Child processes","\u002Fdocs\u002Fapi\u002Fprocess\u002Fchild","docs\u002F5.api\u002F27.process\u002F2.types\u002Fchild",{"title":3396,"path":3397,"stem":3398},"Commands","\u002Fdocs\u002Fapi\u002Fprocess\u002Fcommand","docs\u002F5.api\u002F27.process\u002F2.types\u002Fcommand",{"title":3400,"path":3401,"stem":3402},"Arguments","\u002Fdocs\u002Fapi\u002Fprocess\u002Farguments","docs\u002F5.api\u002F27.process\u002F3.functions\u002Farguments",{"title":3404,"path":3405,"stem":3406},"Environment","\u002Fdocs\u002Fapi\u002Fprocess\u002Fenvironment","docs\u002F5.api\u002F27.process\u002F3.functions\u002Fenvironment",{"title":3408,"path":3409,"stem":3410},"Executable","\u002Fdocs\u002Fapi\u002Fprocess\u002Fexecutable","docs\u002F5.api\u002F27.process\u002F3.functions\u002Fexecutable",{"title":3412,"path":3413,"stem":3414},"Exit","\u002Fdocs\u002Fapi\u002Fprocess\u002Fexit","docs\u002F5.api\u002F27.process\u002F3.functions\u002Fexit","i-lucide-square-terminal",{"title":3417,"path":3418,"stem":3419,"children":3420,"icon":3438},"CommandLine","\u002Fdocs\u002Fapi\u002Fcommandline","docs\u002F5.api\u002F28.commandline\u002F0.index",[3421,3422,3426,3430,3434],{"title":49,"path":3418,"stem":3419},{"title":3423,"path":3424,"stem":3425},"CommandLineError","\u002Fdocs\u002Fapi\u002Fcommandline\u002Fcommand-line-error","docs\u002F5.api\u002F28.commandline\u002F2.types\u002Fcommand-line-error",{"title":3427,"path":3428,"stem":3429},"Parsed","\u002Fdocs\u002Fapi\u002Fcommandline\u002Fparsed","docs\u002F5.api\u002F28.commandline\u002F2.types\u002Fparsed",{"title":3431,"path":3432,"stem":3433},"Help","\u002Fdocs\u002Fapi\u002Fcommandline\u002Fhelp","docs\u002F5.api\u002F28.commandline\u002F3.functions\u002Fhelp",{"title":3435,"path":3436,"stem":3437},"Specification","\u002Fdocs\u002Fapi\u002Fcommandline\u002Fspec","docs\u002F5.api\u002F28.commandline\u002F3.functions\u002Fspec","i-lucide-square-chevron-right",{"title":3440,"path":3441,"stem":3442,"children":3443,"icon":3473},"Log","\u002Fdocs\u002Fapi\u002Flog","docs\u002F5.api\u002F29.log\u002F0.index",[3444,3445,3449,3453,3457,3461,3465,3469],{"title":49,"path":3441,"stem":3442},{"title":3446,"path":3447,"stem":3448},"Fields","\u002Fdocs\u002Fapi\u002Flog\u002Ffield","docs\u002F5.api\u002F29.log\u002F2.types\u002Ffield",{"title":3450,"path":3451,"stem":3452},"Levels","\u002Fdocs\u002Fapi\u002Flog\u002Flevel","docs\u002F5.api\u002F29.log\u002F2.types\u002Flevel",{"title":3454,"path":3455,"stem":3456},"Logger","\u002Fdocs\u002Fapi\u002Flog\u002Flogger","docs\u002F5.api\u002F29.log\u002F2.types\u002Flogger",{"title":3458,"path":3459,"stem":3460},"Records","\u002Fdocs\u002Fapi\u002Flog\u002Frecord","docs\u002F5.api\u002F29.log\u002F2.types\u002Frecord",{"title":3462,"path":3463,"stem":3464},"RotatingFile","\u002Fdocs\u002Fapi\u002Flog\u002Frotating-file","docs\u002F5.api\u002F29.log\u002F2.types\u002Frotating-file",{"title":3466,"path":3467,"stem":3468},"RotatingStream","\u002Fdocs\u002Fapi\u002Flog\u002Frotating-stream","docs\u002F5.api\u002F29.log\u002F2.types\u002Frotating-stream",{"title":3470,"path":3471,"stem":3472},"Process-wide log","\u002Fdocs\u002Fapi\u002Flog\u002Fglobal","docs\u002F5.api\u002F29.log\u002F3.functions\u002Fglobal","i-lucide-scroll-text",{"title":3475,"path":3476,"stem":3477,"children":3478,"icon":3487},"TimeZone","\u002Fdocs\u002Fapi\u002Ftimezone","docs\u002F5.api\u002F30.timezone\u002F0.index",[3479,3480,3483],{"title":49,"path":3476,"stem":3477},{"title":447,"path":3481,"stem":3482},"\u002Fdocs\u002Fapi\u002Ftimezone\u002Ferror","docs\u002F5.api\u002F30.timezone\u002F2.types\u002Ferror",{"title":3484,"path":3485,"stem":3486},"Time zones","\u002Fdocs\u002Fapi\u002Ftimezone\u002Fzone","docs\u002F5.api\u002F30.timezone\u002F2.types\u002Fzone","i-lucide-globe",{"title":3489,"path":3490,"stem":3491,"children":3492,"icon":3517},"Net","\u002Fdocs\u002Fapi\u002Fnet","docs\u002F5.api\u002F31.net\u002F0.index",[3493,3494,3498,3502,3506,3510,3514],{"title":49,"path":3490,"stem":3491},{"title":3495,"path":3496,"stem":3497},"Addresses","\u002Fdocs\u002Fapi\u002Fnet\u002Faddress","docs\u002F5.api\u002F31.net\u002F2.types\u002Faddress",{"title":3499,"path":3500,"stem":3501},"Poller","\u002Fdocs\u002Fapi\u002Fnet\u002Fpoller","docs\u002F5.api\u002F31.net\u002F2.types\u002Fpoller",{"title":3503,"path":3504,"stem":3505},"Resolver","\u002Fdocs\u002Fapi\u002Fnet\u002Fresolver","docs\u002F5.api\u002F31.net\u002F2.types\u002Fresolver",{"title":3507,"path":3508,"stem":3509},"TCP","\u002Fdocs\u002Fapi\u002Fnet\u002Ftcp","docs\u002F5.api\u002F31.net\u002F2.types\u002Ftcp",{"title":3511,"path":3512,"stem":3513},"UDP","\u002Fdocs\u002Fapi\u002Fnet\u002Fudp","docs\u002F5.api\u002F31.net\u002F2.types\u002Fudp",{"title":3129,"path":3515,"stem":3516},"\u002Fdocs\u002Fapi\u002Fnet\u002Fresolve","docs\u002F5.api\u002F31.net\u002F3.functions\u002Fresolve","i-lucide-network",{"title":3519,"path":3520,"stem":3521,"children":3522,"icon":3540},"Test","\u002Fdocs\u002Fapi\u002Ftest","docs\u002F5.api\u002F32.test\u002F0.index",[3523,3524,3528,3532,3536],{"title":49,"path":3520,"stem":3521},{"title":3525,"path":3526,"stem":3527},"Failures","\u002Fdocs\u002Fapi\u002Ftest\u002Ffailure","docs\u002F5.api\u002F32.test\u002F2.types\u002Ffailure",{"title":3529,"path":3530,"stem":3531},"Runner","\u002Fdocs\u002Fapi\u002Ftest\u002Frunner","docs\u002F5.api\u002F32.test\u002F2.types\u002Frunner",{"title":3533,"path":3534,"stem":3535},"Benchmarks","\u002Fdocs\u002Fapi\u002Ftest\u002Fbenchmark","docs\u002F5.api\u002F32.test\u002F3.functions\u002Fbenchmark",{"title":3537,"path":3538,"stem":3539},"Checks","\u002Fdocs\u002Fapi\u002Ftest\u002Fexpect","docs\u002F5.api\u002F32.test\u002F3.functions\u002Fexpect","i-lucide-flask-conical",{"title":3542,"path":3543,"stem":3544,"children":3545,"icon":1222},"Thread","\u002Fdocs\u002Fapi\u002Fthread","docs\u002F5.api\u002F33.thread\u002F0.index",[3546,3547,3550,3554],{"title":49,"path":3543,"stem":3544},{"title":447,"path":3548,"stem":3549},"\u002Fdocs\u002Fapi\u002Fthread\u002Ferror","docs\u002F5.api\u002F33.thread\u002F2.types\u002Ferror",{"title":3551,"path":3552,"stem":3553},"Starting threads","\u002Fdocs\u002Fapi\u002Fthread\u002Fspawn","docs\u002F5.api\u002F33.thread\u002F2.types\u002Fspawn",{"title":3555,"path":3556,"stem":3557},"The current thread","\u002Fdocs\u002Fapi\u002Fthread\u002Fcurrent","docs\u002F5.api\u002F33.thread\u002F3.functions\u002Fcurrent",{"title":3559,"path":3560,"stem":3561,"children":3562,"icon":3568},"Atomic","\u002Fdocs\u002Fapi\u002Fatomic","docs\u002F5.api\u002F34.atomic\u002F0.index",[3563,3564],{"title":49,"path":3560,"stem":3561},{"title":3565,"path":3566,"stem":3567},"Atomic\u003CT>","\u002Fdocs\u002Fapi\u002Fatomic\u002Fatomic","docs\u002F5.api\u002F34.atomic\u002F2.types\u002Fatomic","i-lucide-zap",{"title":3570,"path":3571,"stem":3572,"children":3573,"icon":3595},"Sync","\u002Fdocs\u002Fapi\u002Fsync","docs\u002F5.api\u002F35.sync\u002F0.index",[3574,3575,3579,3583,3587,3591],{"title":49,"path":3571,"stem":3572},{"title":3576,"path":3577,"stem":3578},"Channels","\u002Fdocs\u002Fapi\u002Fsync\u002Fchannel","docs\u002F5.api\u002F35.sync\u002F2.types\u002Fchannel",{"title":3580,"path":3581,"stem":3582},"Counters","\u002Fdocs\u002Fapi\u002Fsync\u002Fcounters","docs\u002F5.api\u002F35.sync\u002F2.types\u002Fcounters",{"title":3584,"path":3585,"stem":3586},"Locks","\u002Fdocs\u002Fapi\u002Fsync\u002Flock","docs\u002F5.api\u002F35.sync\u002F2.types\u002Flock",{"title":3588,"path":3589,"stem":3590},"Mutexes","\u002Fdocs\u002Fapi\u002Fsync\u002Fmutex","docs\u002F5.api\u002F35.sync\u002F2.types\u002Fmutex",{"title":3592,"path":3593,"stem":3594},"Reader-writer locks","\u002Fdocs\u002Fapi\u002Fsync\u002Frw-lock","docs\u002F5.api\u002F35.sync\u002F2.types\u002Frw-lock","i-lucide-lock-keyhole",{"title":3597,"path":3598,"stem":3599,"children":3600,"icon":823},"Encoding","\u002Fdocs\u002Fapi\u002Fencoding","docs\u002F5.api\u002F36.encoding\u002F0.index",[3601,3602,3606,3610,3614,3618,3622,3626],{"title":49,"path":3598,"stem":3599},{"title":3603,"path":3604,"stem":3605},"DecodeError","\u002Fdocs\u002Fapi\u002Fencoding\u002Fdecode-error","docs\u002F5.api\u002F36.encoding\u002F2.types\u002Fdecode-error",{"title":3607,"path":3608,"stem":3609},"Streams","\u002Fdocs\u002Fapi\u002Fencoding\u002Fstream","docs\u002F5.api\u002F36.encoding\u002F2.types\u002Fstream",{"title":3611,"path":3612,"stem":3613},"Base32","\u002Fdocs\u002Fapi\u002Fencoding\u002Fbase32","docs\u002F5.api\u002F36.encoding\u002F3.functions\u002Fbase32",{"title":3615,"path":3616,"stem":3617},"Base58","\u002Fdocs\u002Fapi\u002Fencoding\u002Fbase58","docs\u002F5.api\u002F36.encoding\u002F3.functions\u002Fbase58",{"title":3619,"path":3620,"stem":3621},"Base64","\u002Fdocs\u002Fapi\u002Fencoding\u002Fbase64","docs\u002F5.api\u002F36.encoding\u002F3.functions\u002Fbase64",{"title":3623,"path":3624,"stem":3625},"Hexadecimal","\u002Fdocs\u002Fapi\u002Fencoding\u002Fhex","docs\u002F5.api\u002F36.encoding\u002F3.functions\u002Fhex",{"title":3627,"path":3628,"stem":3629},"Percent-encoding","\u002Fdocs\u002Fapi\u002Fencoding\u002Fpercent","docs\u002F5.api\u002F36.encoding\u002F3.functions\u002Fpercent",{"title":3631,"path":3632,"stem":3633,"children":3634,"icon":3647},"Url","\u002Fdocs\u002Fapi\u002Furl","docs\u002F5.api\u002F37.url\u002F0.index",[3635,3636,3639,3643],{"title":49,"path":3632,"stem":3633},{"title":447,"path":3637,"stem":3638},"\u002Fdocs\u002Fapi\u002Furl\u002Ferror","docs\u002F5.api\u002F37.url\u002F2.types\u002Ferror",{"title":3640,"path":3641,"stem":3642},"Query strings","\u002Fdocs\u002Fapi\u002Furl\u002Fquery","docs\u002F5.api\u002F37.url\u002F2.types\u002Fquery",{"title":3644,"path":3645,"stem":3646},"URLs","\u002Fdocs\u002Fapi\u002Furl\u002Furl","docs\u002F5.api\u002F37.url\u002F2.types\u002Furl","i-lucide-link",{"title":3649,"path":3650,"stem":3651,"children":3652,"icon":3670},"Compress","\u002Fdocs\u002Fapi\u002Fcompress","docs\u002F5.api\u002F38.compress\u002F0.index",[3653,3654,3658,3662,3666],{"title":49,"path":3650,"stem":3651},{"title":3655,"path":3656,"stem":3657},"Compressing","\u002Fdocs\u002Fapi\u002Fcompress\u002Fdeflate","docs\u002F5.api\u002F38.compress\u002F2.types\u002Fdeflate",{"title":3659,"path":3660,"stem":3661},"Formats and levels","\u002Fdocs\u002Fapi\u002Fcompress\u002Fformat","docs\u002F5.api\u002F38.compress\u002F2.types\u002Fformat",{"title":3663,"path":3664,"stem":3665},"Decompressing","\u002Fdocs\u002Fapi\u002Fcompress\u002Finflate","docs\u002F5.api\u002F38.compress\u002F2.types\u002Finflate",{"title":3667,"path":3668,"stem":3669},"Whole buffers","\u002Fdocs\u002Fapi\u002Fcompress\u002Fbuffers","docs\u002F5.api\u002F38.compress\u002F3.functions\u002Fbuffers","i-lucide-file-archive",{"title":3672,"path":3673,"stem":3674,"children":3675,"icon":2628},"NanoId","\u002Fdocs\u002Fapi\u002Fnanoid","docs\u002F5.api\u002F39.nanoid\u002F0.index",[3676,3677,3680,3684,3688],{"title":49,"path":3673,"stem":3674},{"title":3672,"path":3678,"stem":3679},"\u002Fdocs\u002Fapi\u002Fnanoid\u002Fnano-id","docs\u002F5.api\u002F39.nanoid\u002F2.types\u002Fnano-id",{"title":3681,"path":3682,"stem":3683},"NanoIdError","\u002Fdocs\u002Fapi\u002Fnanoid\u002Fnano-id-error","docs\u002F5.api\u002F39.nanoid\u002F2.types\u002Fnano-id-error",{"title":3685,"path":3686,"stem":3687},"Generating","\u002Fdocs\u002Fapi\u002Fnanoid\u002Fgenerate","docs\u002F5.api\u002F39.nanoid\u002F3.functions\u002Fgenerate",{"title":3689,"path":3690,"stem":3691},"Alphabets","\u002Fdocs\u002Fapi\u002Fnanoid\u002Falphabet","docs\u002F5.api\u002F39.nanoid\u002F4.constants\u002Falphabet",{"title":3693,"path":3694,"stem":3695},"Download","\u002Fdownload","download",{"title":3697,"path":3698,"stem":3699},"Frequently Asked Questions","\u002Ffaq","faq",{"title":3701,"path":3702,"stem":3703},"Privacy Policy","\u002Fprivacy","privacy",{"title":3705,"path":3706,"stem":3707},"Security Policy","\u002Fsecurity","security",{"title":3709,"path":3710,"stem":3711},"Support","\u002Fsupport","support",{"title":3713,"path":3714,"stem":3715},"Terms of Use","\u002Fterms","terms",{"id":3717,"title":3718,"api":3719,"authors":3719,"body":3720,"category":3719,"date":3719,"description":6865,"extension":6866,"hideToc":29,"image":3719,"lesson":6867,"meta":6877,"navigation":6878,"path":1323,"seo":6879,"stem":1324,"__hash__":6880},"docs\u002Fdocs\u002F1.learn\u002F27.projects\u002F07.quadratic.md","Quadratic",null,{"type":3721,"value":3722,"toc":6853},"minimark",[3723,3727,3759,3770,3781,3786,3789,3909,3912,3989,3993,3998,4092,4105,4276,4286,4290,4299,4421,4435,4439,4442,4449,4583,4594,4598,4606,4728,4734,4738,4748,6566,6590,6594,6617,6625,6628,6700,6706,6709,6739,6743,6768,6781,6791,6795,6811,6815,6849],[3724,3725,3718],"h1",{"id":3726},"quadratic",[3728,3729,3730],"note",{},[3731,3732,3733,3737,3738,3742,3743,3742,3745,3748,3749,3752,3753,3748,3756,3758],"p",{},[3734,3735,3736],"strong",{},"You'll need",": Parts 1–14 — this project is the checkpoint for Text, and leans on ",[3739,3740,3741],"a",{"href":736},"Input",", ",[3739,3744,2936],{"href":732},[3739,3746,3747],{"href":696},"String view"," and ",[3739,3750,3751],{"href":487},"Error variant"," — plus ",[3739,3754,3755],{"href":834},"Float special",[3739,3757,2245],{"href":866}," from Part 16.",[3731,3760,3761,3762,3765,3766,3769],{},"This program reads three numbers, a, b and c, and solves the equation a x² + b x + c = 0. It is the classic calculation whose ",[3734,3763,3764],{},"shape"," depends on its input: depending on the numbers there are two answers, one, a pair of complex ones, or — when ",[3767,3768,3739],"code",{}," is zero and the equation is not really quadratic at all — one answer, none, or infinitely many.",[3731,3771,3772,3773,3776,3777,3780],{},"Like ",[3739,3774,3775],{"href":1319},"Circle",", it is a checkpoint for ",[3739,3778,3779],{"href":681},"Part 14: Text",", and it reads its input with the same care. What it adds is a decision tree with six leaves, and a lesson in floating-point arithmetic that the textbook formula gets wrong.",[3782,3783,3785],"h2",{"id":3784},"how-it-is-put-together","How it is put together",[3731,3787,3788],{},"The program splits cleanly into reading and solving:",[3790,3791,3792,3808],"table",{},[3793,3794,3795],"thead",{},[3796,3797,3798,3802,3805],"tr",{},[3799,3800,3801],"th",{},"Function",[3799,3803,3804],{},"Its job",[3799,3806,3807],{},"Lessons it uses",[3809,3810,3811,3833,3850,3868,3892],"tbody",{},[3796,3812,3813,3819,3822],{},[3814,3815,3816],"td",{},[3767,3817,3818],{},"ReadCoefficient",[3814,3820,3821],{},"Prompt, read one line, parse it, check it is finite",[3814,3823,3824,3742,3826,3742,3828,3742,3830],{},[3739,3825,3741],{"href":736},[3739,3827,2936],{"href":732},[3739,3829,3747],{"href":696},[3739,3831,3832],{"href":459},"Fail",[3796,3834,3835,3840,3846],{},[3814,3836,3837],{},[3767,3838,3839],{},"Explain",[3814,3841,3842,3843],{},"One sentence for each ",[3767,3844,3845],{},"EntryError",[3814,3847,3848],{},[3739,3849,3751],{"href":487},[3796,3851,3852,3857,3863],{},[3814,3853,3854],{},[3767,3855,3856],{},"SolveLinear",[3814,3858,3859,3860,3862],{},"The three cases where ",[3767,3861,3739],{}," is zero",[3814,3864,3865],{},[3739,3866,3867],{"href":205},"Else if",[3796,3869,3870,3875,3878],{},[3814,3871,3872],{},[3767,3873,3874],{},"SolveQuadratic",[3814,3876,3877],{},"The discriminant and the three quadratic cases",[3814,3879,3880,3882,3883,3886,3887,3742,3889],{},[3739,3881,2245],{"href":866}," (",[3767,3884,3885],{},"Sqrt","), ",[3739,3888,3755],{"href":834},[3739,3890,3891],{"href":209},"Ternary",[3796,3893,3894,3898,3901],{},[3814,3895,3896],{},[3767,3897,1553],{},[3814,3899,3900],{},"Reads a, b and c, stopping at the first bad one, then picks a solver",[3814,3902,3903,3742,3906],{},[3739,3904,3905],{"href":475},"Catch",[3739,3907,3908],{"href":565},"Destructor",[3731,3910,3911],{},"Once the three numbers are in, the cases fall out like this:",[3913,3914,3919],"pre",{"className":3915,"code":3916,"language":3917,"meta":3918,"style":3918},"language-mermaid shiki shiki-themes catppuccin-latte catppuccin-latte catppuccin-mocha","flowchart LR\n    start([\"a, b, c\"]) --> qa{\"a = 0?\"}\n    qa -- \"no\" --> d{\"discriminant\u003Cbr\u002F>b² − 4ac\"}\n    d -- \"positive\" --> two[\"two real roots\"]\n    d -- \"zero\" --> one[\"one repeated root\"]\n    d -- \"negative\" --> cx[\"a complex pair\"]\n    qa -- \"yes\" --> qb{\"b = 0?\"}\n    qb -- \"no\" --> lin[\"linear: x = −c \u002F b\"]\n    qb -- \"yes\" --> qc{\"c = 0?\"}\n    qc -- \"no\" --> none[\"no solution\"]\n    qc -- \"yes\" --> all[\"every x\"]\n","mermaid","",[3767,3920,3921,3929,3935,3941,3947,3953,3959,3965,3971,3977,3983],{"__ignoreMap":3918},[3922,3923,3926],"span",{"class":3924,"line":3925},"line",1,[3922,3927,3928],{},"flowchart LR\n",[3922,3930,3932],{"class":3924,"line":3931},2,[3922,3933,3934],{},"    start([\"a, b, c\"]) --> qa{\"a = 0?\"}\n",[3922,3936,3938],{"class":3924,"line":3937},3,[3922,3939,3940],{},"    qa -- \"no\" --> d{\"discriminant\u003Cbr\u002F>b² − 4ac\"}\n",[3922,3942,3944],{"class":3924,"line":3943},4,[3922,3945,3946],{},"    d -- \"positive\" --> two[\"two real roots\"]\n",[3922,3948,3950],{"class":3924,"line":3949},5,[3922,3951,3952],{},"    d -- \"zero\" --> one[\"one repeated root\"]\n",[3922,3954,3956],{"class":3924,"line":3955},6,[3922,3957,3958],{},"    d -- \"negative\" --> cx[\"a complex pair\"]\n",[3922,3960,3962],{"class":3924,"line":3961},7,[3922,3963,3964],{},"    qa -- \"yes\" --> qb{\"b = 0?\"}\n",[3922,3966,3968],{"class":3924,"line":3967},8,[3922,3969,3970],{},"    qb -- \"no\" --> lin[\"linear: x = −c \u002F b\"]\n",[3922,3972,3974],{"class":3924,"line":3973},9,[3922,3975,3976],{},"    qb -- \"yes\" --> qc{\"c = 0?\"}\n",[3922,3978,3980],{"class":3924,"line":3979},10,[3922,3981,3982],{},"    qc -- \"no\" --> none[\"no solution\"]\n",[3922,3984,3986],{"class":3924,"line":3985},11,[3922,3987,3988],{},"    qc -- \"yes\" --> all[\"every x\"]\n",[3782,3990,3992],{"id":3991},"one-reader-three-times","One reader, three times",[3731,3994,3995,3997],{},[3767,3996,3818],{}," prints its own prompt and reuses one builder for every line, so it clears the builder first. Otherwise the second line would be appended to the first:",[3913,3999,4003],{"className":4000,"code":4001,"language":4002,"meta":3918,"style":3918},"language-rux shiki shiki-themes catppuccin-latte catppuccin-latte catppuccin-mocha","func ReadCoefficient(name: char8[..], builder: &var StringBuilder) -> float64 ! EntryError {\n    Print(\"{} = \", name);\n    builder.Clear();\n","rux",[3767,4004,4005,4058,4077],{"__ignoreMap":3918},[3922,4006,4007,4011,4015,4019,4023,4026,4030,4034,4037,4040,4043,4046,4049,4052,4055],{"class":3924,"line":3925},[3922,4008,4010],{"class":4009},"smXKV","func",[3922,4012,4014],{"class":4013},"sptzg"," ReadCoefficient",[3922,4016,4018],{"class":4017},"sDi1i","(",[3922,4020,4022],{"class":4021},"sYR1E","name",[3922,4024,4025],{"class":4017},": ",[3922,4027,4029],{"class":4028},"sqZDx","char8",[3922,4031,4033],{"class":4032},"sJT_S","[..]",[3922,4035,4036],{"class":4017},",",[3922,4038,4039],{"class":4021}," builder",[3922,4041,4042],{"class":4032},": &var StringBuilder",[3922,4044,4045],{"class":4017},")",[3922,4047,4048],{"class":4017}," ->",[3922,4050,4051],{"class":4009}," float64",[3922,4053,4054],{"class":4032}," ! EntryError ",[3922,4056,4057],{"class":4017},"{\n",[3922,4059,4060,4063,4065,4069,4071,4074],{"class":3924,"line":3931},[3922,4061,4062],{"class":4032},"    Print",[3922,4064,4018],{"class":4017},[3922,4066,4068],{"class":4067},"sXpww","\"{} = \"",[3922,4070,4036],{"class":4017},[3922,4072,4073],{"class":4032}," name",[3922,4075,4076],{"class":4017},");\n",[3922,4078,4079,4082,4086,4089],{"class":3924,"line":3937},[3922,4080,4081],{"class":4032},"    builder",[3922,4083,4085],{"class":4084},"sCFbw",".",[3922,4087,4088],{"class":4032},"Clear",[3922,4090,4091],{"class":4017},"();\n",[3731,4093,4094,4095,4097,4098,4100,4101,4104],{},"The rest is ",[3739,4096,3775],{"href":1319},"'s reader: end of input, read failure, not a number, not finite. In ",[3767,4099,1553],{}," each call handles its failure on the spot with a ",[3767,4102,4103],{},"catch"," arm that explains and leaves:",[3913,4106,4108],{"className":4000,"code":4107,"language":4002,"meta":3918,"style":3918},"let a = ReadCoefficient(\"a\", builder) catch { error => { Explain(error); return 1; } };\nlet b = ReadCoefficient(\"b\", builder) catch { error => { Explain(error); return 1; } };\nlet c = ReadCoefficient(\"c\", builder) catch { error => { Explain(error); return 1; } };\n",[3767,4109,4110,4176,4226],{"__ignoreMap":3918},[3922,4111,4112,4115,4118,4121,4123,4125,4128,4130,4132,4134,4137,4140,4143,4146,4149,4152,4154,4157,4160,4163,4167,4170,4173],{"class":3924,"line":3925},[3922,4113,4114],{"class":4009},"let",[3922,4116,4117],{"class":4032}," a ",[3922,4119,4120],{"class":4084},"=",[3922,4122,4014],{"class":4032},[3922,4124,4018],{"class":4017},[3922,4126,4127],{"class":4067},"\"a\"",[3922,4129,4036],{"class":4017},[3922,4131,4039],{"class":4032},[3922,4133,4045],{"class":4017},[3922,4135,4136],{"class":4032}," catch ",[3922,4138,4139],{"class":4017},"{",[3922,4141,4142],{"class":4032}," error ",[3922,4144,4145],{"class":4084},"=>",[3922,4147,4148],{"class":4017}," {",[3922,4150,4151],{"class":4032}," Explain",[3922,4153,4018],{"class":4017},[3922,4155,4156],{"class":4032},"error",[3922,4158,4159],{"class":4017},");",[3922,4161,4162],{"class":4009}," return",[3922,4164,4166],{"class":4165},"snhBn"," 1",[3922,4168,4169],{"class":4017},";",[3922,4171,4172],{"class":4017}," }",[3922,4174,4175],{"class":4017}," };\n",[3922,4177,4178,4180,4183,4185,4187,4189,4192,4194,4196,4198,4200,4202,4204,4206,4208,4210,4212,4214,4216,4218,4220,4222,4224],{"class":3924,"line":3931},[3922,4179,4114],{"class":4009},[3922,4181,4182],{"class":4032}," b ",[3922,4184,4120],{"class":4084},[3922,4186,4014],{"class":4032},[3922,4188,4018],{"class":4017},[3922,4190,4191],{"class":4067},"\"b\"",[3922,4193,4036],{"class":4017},[3922,4195,4039],{"class":4032},[3922,4197,4045],{"class":4017},[3922,4199,4136],{"class":4032},[3922,4201,4139],{"class":4017},[3922,4203,4142],{"class":4032},[3922,4205,4145],{"class":4084},[3922,4207,4148],{"class":4017},[3922,4209,4151],{"class":4032},[3922,4211,4018],{"class":4017},[3922,4213,4156],{"class":4032},[3922,4215,4159],{"class":4017},[3922,4217,4162],{"class":4009},[3922,4219,4166],{"class":4165},[3922,4221,4169],{"class":4017},[3922,4223,4172],{"class":4017},[3922,4225,4175],{"class":4017},[3922,4227,4228,4230,4233,4235,4237,4239,4242,4244,4246,4248,4250,4252,4254,4256,4258,4260,4262,4264,4266,4268,4270,4272,4274],{"class":3924,"line":3937},[3922,4229,4114],{"class":4009},[3922,4231,4232],{"class":4032}," c ",[3922,4234,4120],{"class":4084},[3922,4236,4014],{"class":4032},[3922,4238,4018],{"class":4017},[3922,4240,4241],{"class":4067},"\"c\"",[3922,4243,4036],{"class":4017},[3922,4245,4039],{"class":4032},[3922,4247,4045],{"class":4017},[3922,4249,4136],{"class":4032},[3922,4251,4139],{"class":4017},[3922,4253,4142],{"class":4032},[3922,4255,4145],{"class":4084},[3922,4257,4148],{"class":4017},[3922,4259,4151],{"class":4032},[3922,4261,4018],{"class":4017},[3922,4263,4156],{"class":4032},[3922,4265,4159],{"class":4017},[3922,4267,4162],{"class":4009},[3922,4269,4166],{"class":4165},[3922,4271,4169],{"class":4017},[3922,4273,4172],{"class":4017},[3922,4275,4175],{"class":4017},[3731,4277,4278,4279,4282,4283,4285],{},"The arm ",[3767,4280,4281],{},"error =>"," binds whichever case it was, so a single ",[3767,4284,3839],{}," covers them all.",[3782,4287,4289],{"id":4288},"the-degenerate-cases","The degenerate cases",[3731,4291,4292,4293,4295,4296,4298],{},"When ",[3767,4294,3739],{}," is zero the quadratic formula would divide by zero, so those inputs never reach it. ",[3767,4297,3856],{}," handles them with a three-way chain:",[3913,4300,4302],{"className":4000,"code":4301,"language":4002,"meta":3918,"style":3918},"if b != 0.0 {\n    PrintLine(\"linear, not quadratic: x = {}\", -c \u002F b + 0.0);\n} else if c != 0.0 {\n    PrintLine(\"inconsistent: {} = 0 is never true, so there is no solution\", c);\n} else {\n    PrintLine(\"an identity: 0 = 0 holds for every x\");\n}\n",[3767,4303,4304,4324,4358,4381,4397,4405,4416],{"__ignoreMap":3918},[3922,4305,4306,4308,4310,4313,4316,4318,4321],{"class":3924,"line":3925},[3922,4307,1506],{"class":4009},[3922,4309,4182],{"class":4032},[3922,4311,4312],{"class":4084},"!=",[3922,4314,4315],{"class":4165}," 0",[3922,4317,4085],{"class":4017},[3922,4319,4320],{"class":4165},"0",[3922,4322,4323],{"class":4017}," {\n",[3922,4325,4326,4329,4331,4334,4336,4339,4342,4345,4347,4350,4352,4354,4356],{"class":3924,"line":3931},[3922,4327,4328],{"class":4032},"    PrintLine",[3922,4330,4018],{"class":4017},[3922,4332,4333],{"class":4067},"\"linear, not quadratic: x = {}\"",[3922,4335,4036],{"class":4017},[3922,4337,4338],{"class":4084}," -",[3922,4340,4341],{"class":4032},"c ",[3922,4343,4344],{"class":4084},"\u002F",[3922,4346,4182],{"class":4032},[3922,4348,4349],{"class":4084},"+",[3922,4351,4315],{"class":4165},[3922,4353,4085],{"class":4017},[3922,4355,4320],{"class":4165},[3922,4357,4076],{"class":4017},[3922,4359,4360,4363,4366,4369,4371,4373,4375,4377,4379],{"class":3924,"line":3937},[3922,4361,4362],{"class":4017},"}",[3922,4364,4365],{"class":4009}," else",[3922,4367,4368],{"class":4009}," if",[3922,4370,4232],{"class":4032},[3922,4372,4312],{"class":4084},[3922,4374,4315],{"class":4165},[3922,4376,4085],{"class":4017},[3922,4378,4320],{"class":4165},[3922,4380,4323],{"class":4017},[3922,4382,4383,4385,4387,4390,4392,4395],{"class":3924,"line":3943},[3922,4384,4328],{"class":4032},[3922,4386,4018],{"class":4017},[3922,4388,4389],{"class":4067},"\"inconsistent: {} = 0 is never true, so there is no solution\"",[3922,4391,4036],{"class":4017},[3922,4393,4394],{"class":4032}," c",[3922,4396,4076],{"class":4017},[3922,4398,4399,4401,4403],{"class":3924,"line":3949},[3922,4400,4362],{"class":4017},[3922,4402,4365],{"class":4009},[3922,4404,4323],{"class":4017},[3922,4406,4407,4409,4411,4414],{"class":3924,"line":3955},[3922,4408,4328],{"class":4032},[3922,4410,4018],{"class":4017},[3922,4412,4413],{"class":4067},"\"an identity: 0 = 0 holds for every x\"",[3922,4415,4076],{"class":4017},[3922,4417,4418],{"class":3924,"line":3961},[3922,4419,4420],{"class":4017},"}\n",[3731,4422,4423,4424,4427,4428,4431,4432,4085],{},"The ",[3767,4425,4426],{},"+ 0.0"," is the negative-zero fix from Circle: with c = 0, ",[3767,4429,4430],{},"-c \u002F b"," is −0.0, and adding zero makes it print as ",[3767,4433,4434],{},"0.0",[3782,4436,4438],{"id":4437},"two-real-roots-without-losing-one","Two real roots without losing one",[3731,4440,4441],{},"The textbook formula is (−b ± √disc) \u002F 2a. When b is large and 4ac is small, √disc is almost exactly |b|, and one of the two roots comes from subtracting two nearly equal numbers. Most of their digits cancel, and the rounding error that is left becomes most of the answer.",[3731,4443,4444,4445,4448],{},"The program avoids the subtraction. It computes the larger root by ",[3734,4446,4447],{},"adding"," two numbers of the same sign — which never cancels — and gets the other from Vieta's rule, x₁ · x₂ = c \u002F a:",[3913,4450,4452],{"className":4000,"code":4451,"language":4002,"meta":3918,"style":3918},"let root = Sqrt(discriminant);\nlet q = b >= 0.0 ? -(b + root) \u002F 2.0 : (root - b) \u002F 2.0;\nlet first = q \u002F a;\nlet second = c \u002F q;\n",[3767,4453,4454,4473,4547,4565],{"__ignoreMap":3918},[3922,4455,4456,4458,4461,4463,4466,4468,4471],{"class":3924,"line":3925},[3922,4457,4114],{"class":4009},[3922,4459,4460],{"class":4032}," root ",[3922,4462,4120],{"class":4084},[3922,4464,4465],{"class":4032}," Sqrt",[3922,4467,4018],{"class":4017},[3922,4469,4470],{"class":4032},"discriminant",[3922,4472,4076],{"class":4017},[3922,4474,4475,4477,4480,4482,4484,4487,4489,4491,4493,4496,4498,4500,4503,4505,4508,4510,4513,4516,4518,4520,4523,4525,4528,4531,4534,4536,4538,4540,4542,4544],{"class":3924,"line":3931},[3922,4476,4114],{"class":4009},[3922,4478,4479],{"class":4032}," q ",[3922,4481,4120],{"class":4084},[3922,4483,4182],{"class":4032},[3922,4485,4486],{"class":4084},">=",[3922,4488,4315],{"class":4165},[3922,4490,4085],{"class":4017},[3922,4492,4320],{"class":4165},[3922,4494,4495],{"class":4084}," ?",[3922,4497,4338],{"class":4084},[3922,4499,4018],{"class":4017},[3922,4501,4502],{"class":4032},"b ",[3922,4504,4349],{"class":4084},[3922,4506,4507],{"class":4032}," root",[3922,4509,4045],{"class":4017},[3922,4511,4512],{"class":4084}," \u002F",[3922,4514,4515],{"class":4165}," 2",[3922,4517,4085],{"class":4017},[3922,4519,4320],{"class":4165},[3922,4521,4522],{"class":4017}," :",[3922,4524,3882],{"class":4017},[3922,4526,4527],{"class":4032},"root ",[3922,4529,4530],{"class":4084},"-",[3922,4532,4533],{"class":4032}," b",[3922,4535,4045],{"class":4017},[3922,4537,4512],{"class":4084},[3922,4539,4515],{"class":4165},[3922,4541,4085],{"class":4017},[3922,4543,4320],{"class":4165},[3922,4545,4546],{"class":4017},";\n",[3922,4548,4549,4551,4554,4556,4558,4560,4563],{"class":3924,"line":3937},[3922,4550,4114],{"class":4009},[3922,4552,4553],{"class":4032}," first ",[3922,4555,4120],{"class":4084},[3922,4557,4479],{"class":4032},[3922,4559,4344],{"class":4084},[3922,4561,4562],{"class":4032}," a",[3922,4564,4546],{"class":4017},[3922,4566,4567,4569,4572,4574,4576,4578,4581],{"class":3924,"line":3943},[3922,4568,4114],{"class":4009},[3922,4570,4571],{"class":4032}," second ",[3922,4573,4120],{"class":4084},[3922,4575,4232],{"class":4032},[3922,4577,4344],{"class":4084},[3922,4579,4580],{"class":4032}," q",[3922,4582,4546],{"class":4017},[3731,4584,4585,4586,4589,4590,4593],{},"The difference is real. For a = 1, b = 1e8, c = 1 the program prints the small root as ",[3767,4587,4588],{},"-1.0e-08",", which is right to every digit shown. The textbook formula, written the obvious way, gives ",[3767,4591,4592],{},"-7.450580596923828e-09"," — wrong by a quarter.",[3782,4595,4597],{"id":4596},"complex-roots","Complex roots",[3731,4599,4600,4601,3748,4603,4605],{},"A negative discriminant has no real square root, but the roots still exist as a complex pair: a real part plus or minus an imaginary part. The program prints them as text, dividing by |2a| so that the imaginary part is always positive and the ",[3767,4602,4349],{},[3767,4604,4530],{}," it prints are the signs it means:",[3913,4607,4609],{"className":4000,"code":4608,"language":4002,"meta":3918,"style":3918},"let real = -b \u002F (2.0 * a) + 0.0;\nlet twiceA = a \u003C 0.0 ? -2.0 * a : 2.0 * a;\nlet imaginary = Sqrt(-discriminant) \u002F twiceA;\n",[3767,4610,4611,4653,4702],{"__ignoreMap":3918},[3922,4612,4613,4615,4618,4620,4622,4624,4626,4628,4631,4633,4635,4638,4640,4642,4645,4647,4649,4651],{"class":3924,"line":3925},[3922,4614,4114],{"class":4009},[3922,4616,4617],{"class":4032}," real ",[3922,4619,4120],{"class":4084},[3922,4621,4338],{"class":4084},[3922,4623,4502],{"class":4032},[3922,4625,4344],{"class":4084},[3922,4627,3882],{"class":4017},[3922,4629,4630],{"class":4165},"2",[3922,4632,4085],{"class":4017},[3922,4634,4320],{"class":4165},[3922,4636,4637],{"class":4084}," *",[3922,4639,4562],{"class":4032},[3922,4641,4045],{"class":4017},[3922,4643,4644],{"class":4084}," +",[3922,4646,4315],{"class":4165},[3922,4648,4085],{"class":4017},[3922,4650,4320],{"class":4165},[3922,4652,4546],{"class":4017},[3922,4654,4655,4657,4660,4662,4664,4667,4669,4671,4673,4675,4677,4679,4681,4683,4685,4687,4690,4692,4694,4696,4698,4700],{"class":3924,"line":3931},[3922,4656,4114],{"class":4009},[3922,4658,4659],{"class":4032}," twiceA ",[3922,4661,4120],{"class":4084},[3922,4663,4117],{"class":4032},[3922,4665,4666],{"class":4084},"\u003C",[3922,4668,4315],{"class":4165},[3922,4670,4085],{"class":4017},[3922,4672,4320],{"class":4165},[3922,4674,4495],{"class":4084},[3922,4676,4338],{"class":4084},[3922,4678,4630],{"class":4165},[3922,4680,4085],{"class":4017},[3922,4682,4320],{"class":4165},[3922,4684,4637],{"class":4084},[3922,4686,4117],{"class":4032},[3922,4688,4689],{"class":4017},":",[3922,4691,4515],{"class":4165},[3922,4693,4085],{"class":4017},[3922,4695,4320],{"class":4165},[3922,4697,4637],{"class":4084},[3922,4699,4562],{"class":4032},[3922,4701,4546],{"class":4017},[3922,4703,4704,4706,4709,4711,4713,4715,4717,4719,4721,4723,4726],{"class":3924,"line":3937},[3922,4705,4114],{"class":4009},[3922,4707,4708],{"class":4032}," imaginary ",[3922,4710,4120],{"class":4084},[3922,4712,4465],{"class":4032},[3922,4714,4018],{"class":4017},[3922,4716,4530],{"class":4084},[3922,4718,4470],{"class":4032},[3922,4720,4045],{"class":4017},[3922,4722,4512],{"class":4084},[3922,4724,4725],{"class":4032}," twiceA",[3922,4727,4546],{"class":4017},[3731,4729,4730,4731,4733],{},"Before any of this, ",[3767,4732,3874],{}," checks that the discriminant itself is finite: b = 1e200 is a perfectly finite coefficient, but b² is not.",[3782,4735,4737],{"id":4736},"the-program","The program",[3731,4739,4740,4741,4747],{},"The whole lesson is one package in the ",[3739,4742,4746],{"href":4743,"rel":4744},"https:\u002F\u002Fgithub.com\u002Frux-lang\u002FExamples\u002Ftree\u002Fmain\u002FProjects\u002FQuadratic",[4745],"nofollow","Examples repository",". Its comments explain every step.",[3913,4749,4752],{"className":4000,"code":4750,"filename":4751,"language":4002,"meta":3918,"style":3918},"\u002F\u002F Solving a x^2 + b x + c = 0, the classic calculation whose *shape* depends on its input.\n\u002F\u002F\n\u002F\u002F With `a` not zero it is a quadratic, and the discriminant b^2 - 4ac decides the answer: two\n\u002F\u002F real roots when it is positive, one repeated root when it is zero, and a complex pair when it\n\u002F\u002F is negative. With `a` zero it is not a quadratic at all, and the formula would divide by zero:\n\u002F\u002F\n\u002F\u002F     a = 0, b != 0           linear, one root x = -c \u002F b\n\u002F\u002F     a = 0, b = 0, c != 0    inconsistent, no x makes c equal 0\n\u002F\u002F     a = 0, b = 0, c = 0     an identity, every x is a solution\n\u002F\u002F\n\u002F\u002F Reading comes first, and every way it can go wrong is a case of one error variant: the input\n\u002F\u002F may end early, fail to read, not spell a number, or spell one that is not finite. The parser\n\u002F\u002F accepts \"Inf\" and \"NaN\", because that is how such values print, so finiteness is checked\n\u002F\u002F separately.\nimport Allocator::{ Allocator, SystemAllocator };\nimport Core::IsFinite;\nimport Format::ParseFloat64;\nimport Io::{ IoErrorKind, Print, PrintLine, ReadLine };\nimport Math::Sqrt;\nimport Text::StringBuilder;\n\nvariant EntryError {\n    Ended,\n    Unreadable,\n    NotANumber,\n    NotFinite\n}\n\n\u002F\u002F Reads one coefficient. The builder is reused for every line, so it is cleared first, and the\n\u002F\u002F view is trimmed so that \" 2 \" reads as 2.\nfunc ReadCoefficient(name: char8[..], builder: &var StringBuilder) -> float64 ! EntryError {\n    Print(\"{} = \", name);\n    builder.Clear();\n    match ReadLine(builder) {\n        .Success(_) => {},\n        .Failure(error) if error.kind == IoErrorKind::EndOfStream => fail EntryError::Ended,\n        .Failure(_) => fail EntryError::Unreadable\n    }\n    \u002F\u002F A number past the largest float64 is an `Overflow`, not a malformed one: it is a number,\n    \u002F\u002F just not a finite float64, so it joins Inf and NaN.\n    let value = ParseFloat64(builder.View().Trim()) catch {\n        .Overflow(_) => fail EntryError::NotFinite,\n        else => fail EntryError::NotANumber\n    };\n    if !IsFinite(value) {\n        fail EntryError::NotFinite;\n    }\n    return value;\n}\n\n\u002F\u002F Each report starts on a fresh line, since piped input leaves the cursor after the prompt.\nfunc Explain(error: EntryError) {\n    PrintLine();\n    match error {\n        .Ended => PrintLine(\"the input ended before all three coefficients were given\"),\n        .Unreadable => PrintLine(\"the input could not be read\"),\n        .NotANumber => PrintLine(\"that is not a number\"),\n        .NotFinite => PrintLine(\n            \"a coefficient must be finite: Inf, NaN and numbers past float64 are refused\")\n    }\n}\n\nfunc SolveLinear(b: float64, c: float64) {\n    if b != 0.0 {\n        \u002F\u002F Adding zero turns -0 into 0, so c = 0 prints \"x = 0.0\" rather than \"x = -0.0\".\n        PrintLine(\"linear, not quadratic: x = {}\", -c \u002F b + 0.0);\n    } else if c != 0.0 {\n        PrintLine(\"inconsistent: {} = 0 is never true, so there is no solution\", c);\n    } else {\n        PrintLine(\"an identity: 0 = 0 holds for every x\");\n    }\n}\n\nfunc SolveQuadratic(a: float64, b: float64, c: float64) {\n    \u002F\u002F Finite coefficients can still overflow: b = 1e200 makes b^2 infinite.\n    let discriminant = b * b - 4.0 * a * c;\n    if !IsFinite(discriminant) {\n        PrintLine(\"the coefficients are too large to solve in float64\");\n        return;\n    }\n\n    if discriminant > 0.0 {\n        \u002F\u002F The textbook formula subtracts two nearly equal numbers when 4ac is small, and loses\n        \u002F\u002F the smaller root to rounding. Adding numbers of the same sign never cancels, so find\n        \u002F\u002F the larger root that way, then the other from x1 * x2 = c \u002F a.\n        let root = Sqrt(discriminant);\n        let q = b >= 0.0 ? -(b + root) \u002F 2.0 : (root - b) \u002F 2.0;\n        let first = q \u002F a;\n        let second = c \u002F q;\n        let low = first \u003C second ? first : second;\n        let high = first \u003C second ? second : first;\n        PrintLine(\"two real roots: x1 = {}, x2 = {}\", low, high);\n    } else if discriminant == 0.0 {\n        PrintLine(\"one repeated root: x = {}\", -b \u002F (2.0 * a) + 0.0);\n    } else {\n        \u002F\u002F No real root, but the complex pair is real part +\u002F- imaginary part. Dividing by |2a|\n        \u002F\u002F keeps the imaginary part positive, so the signs printed are the signs meant.\n        let real = -b \u002F (2.0 * a) + 0.0;\n        let twiceA = a \u003C 0.0 ? -2.0 * a : 2.0 * a;\n        let imaginary = Sqrt(-discriminant) \u002F twiceA;\n        PrintLine(\"complex roots: x = {} + {}i and x = {} - {}i\",\n            real, imaginary, real, imaginary);\n    }\n}\n\nfunc Main() -> int {\n    var system = SystemAllocator();\n    let allocator: Allocator = system;\n\n    \u002F\u002F The builder's destructor returns its memory on every path out of `Main`.\n    var builder = StringBuilder(allocator);\n\n    PrintLine(\"Solving a x^2 + b x + c = 0\");\n    let a = ReadCoefficient(\"a\", builder) catch { error => { Explain(error); return 1; } };\n    let b = ReadCoefficient(\"b\", builder) catch { error => { Explain(error); return 1; } };\n    let c = ReadCoefficient(\"c\", builder) catch { error => { Explain(error); return 1; } };\n    PrintLine();\n\n    if a == 0.0 {\n        SolveLinear(b, c);\n    } else {\n        SolveQuadratic(a, b, c);\n    }\n    return 0;\n}\n","Src\u002FMain.rux",[3767,4753,4754,4760,4765,4770,4775,4780,4784,4789,4794,4799,4803,4808,4814,4820,4826,4850,4865,4880,4912,4926,4940,4947,4955,4964,4972,4980,4986,4991,4996,5002,5008,5041,5056,5067,5085,5107,5153,5175,5181,5187,5193,5231,5256,5271,5277,5297,5309,5314,5325,5330,5335,5341,5360,5367,5376,5396,5415,5434,5449,5458,5463,5468,5473,5503,5520,5526,5556,5578,5593,5602,5613,5618,5623,5628,5664,5670,5706,5723,5735,5743,5748,5753,5771,5777,5783,5789,5807,5870,5887,5904,5932,5959,5981,6002,6044,6053,6059,6065,6104,6151,6176,6188,6210,6215,6220,6225,6242,6258,6278,6283,6289,6309,6314,6326,6375,6424,6473,6480,6485,6502,6518,6527,6547,6552,6561],{"__ignoreMap":3918},[3922,4755,4756],{"class":3924,"line":3925},[3922,4757,4759],{"class":4758},"sY9YT","\u002F\u002F Solving a x^2 + b x + c = 0, the classic calculation whose *shape* depends on its input.\n",[3922,4761,4762],{"class":3924,"line":3931},[3922,4763,4764],{"class":4758},"\u002F\u002F\n",[3922,4766,4767],{"class":3924,"line":3937},[3922,4768,4769],{"class":4758},"\u002F\u002F With `a` not zero it is a quadratic, and the discriminant b^2 - 4ac decides the answer: two\n",[3922,4771,4772],{"class":3924,"line":3943},[3922,4773,4774],{"class":4758},"\u002F\u002F real roots when it is positive, one repeated root when it is zero, and a complex pair when it\n",[3922,4776,4777],{"class":3924,"line":3949},[3922,4778,4779],{"class":4758},"\u002F\u002F is negative. With `a` zero it is not a quadratic at all, and the formula would divide by zero:\n",[3922,4781,4782],{"class":3924,"line":3955},[3922,4783,4764],{"class":4758},[3922,4785,4786],{"class":3924,"line":3961},[3922,4787,4788],{"class":4758},"\u002F\u002F     a = 0, b != 0           linear, one root x = -c \u002F b\n",[3922,4790,4791],{"class":3924,"line":3967},[3922,4792,4793],{"class":4758},"\u002F\u002F     a = 0, b = 0, c != 0    inconsistent, no x makes c equal 0\n",[3922,4795,4796],{"class":3924,"line":3973},[3922,4797,4798],{"class":4758},"\u002F\u002F     a = 0, b = 0, c = 0     an identity, every x is a solution\n",[3922,4800,4801],{"class":3924,"line":3979},[3922,4802,4764],{"class":4758},[3922,4804,4805],{"class":3924,"line":3985},[3922,4806,4807],{"class":4758},"\u002F\u002F Reading comes first, and every way it can go wrong is a case of one error variant: the input\n",[3922,4809,4811],{"class":3924,"line":4810},12,[3922,4812,4813],{"class":4758},"\u002F\u002F may end early, fail to read, not spell a number, or spell one that is not finite. The parser\n",[3922,4815,4817],{"class":3924,"line":4816},13,[3922,4818,4819],{"class":4758},"\u002F\u002F accepts \"Inf\" and \"NaN\", because that is how such values print, so finiteness is checked\n",[3922,4821,4823],{"class":3924,"line":4822},14,[3922,4824,4825],{"class":4758},"\u002F\u002F separately.\n",[3922,4827,4829,4832,4835,4838,4840,4842,4844,4847],{"class":3924,"line":4828},15,[3922,4830,4831],{"class":4009},"import",[3922,4833,4834],{"class":4032}," Allocator",[3922,4836,4837],{"class":4084},"::",[3922,4839,4139],{"class":4017},[3922,4841,4834],{"class":4032},[3922,4843,4036],{"class":4017},[3922,4845,4846],{"class":4032}," SystemAllocator ",[3922,4848,4849],{"class":4017},"};\n",[3922,4851,4853,4855,4858,4860,4863],{"class":3924,"line":4852},16,[3922,4854,4831],{"class":4009},[3922,4856,4857],{"class":4032}," Core",[3922,4859,4837],{"class":4084},[3922,4861,4862],{"class":4032},"IsFinite",[3922,4864,4546],{"class":4017},[3922,4866,4868,4870,4873,4875,4878],{"class":3924,"line":4867},17,[3922,4869,4831],{"class":4009},[3922,4871,4872],{"class":4032}," Format",[3922,4874,4837],{"class":4084},[3922,4876,4877],{"class":4032},"ParseFloat64",[3922,4879,4546],{"class":4017},[3922,4881,4883,4885,4888,4890,4892,4895,4897,4900,4902,4905,4907,4910],{"class":3924,"line":4882},18,[3922,4884,4831],{"class":4009},[3922,4886,4887],{"class":4032}," Io",[3922,4889,4837],{"class":4084},[3922,4891,4139],{"class":4017},[3922,4893,4894],{"class":4032}," IoErrorKind",[3922,4896,4036],{"class":4017},[3922,4898,4899],{"class":4032}," Print",[3922,4901,4036],{"class":4017},[3922,4903,4904],{"class":4032}," PrintLine",[3922,4906,4036],{"class":4017},[3922,4908,4909],{"class":4032}," ReadLine ",[3922,4911,4849],{"class":4017},[3922,4913,4915,4917,4920,4922,4924],{"class":3924,"line":4914},19,[3922,4916,4831],{"class":4009},[3922,4918,4919],{"class":4032}," Math",[3922,4921,4837],{"class":4084},[3922,4923,3885],{"class":4032},[3922,4925,4546],{"class":4017},[3922,4927,4929,4931,4934,4936,4938],{"class":3924,"line":4928},20,[3922,4930,4831],{"class":4009},[3922,4932,4933],{"class":4032}," Text",[3922,4935,4837],{"class":4084},[3922,4937,2335],{"class":4032},[3922,4939,4546],{"class":4017},[3922,4941,4943],{"class":3924,"line":4942},21,[3922,4944,4946],{"emptyLinePlaceholder":4945},true,"\n",[3922,4948,4950,4953],{"class":3924,"line":4949},22,[3922,4951,4952],{"class":4032},"variant EntryError ",[3922,4954,4057],{"class":4017},[3922,4956,4958,4961],{"class":3924,"line":4957},23,[3922,4959,4960],{"class":4032},"    Ended",[3922,4962,4963],{"class":4017},",\n",[3922,4965,4967,4970],{"class":3924,"line":4966},24,[3922,4968,4969],{"class":4032},"    Unreadable",[3922,4971,4963],{"class":4017},[3922,4973,4975,4978],{"class":3924,"line":4974},25,[3922,4976,4977],{"class":4032},"    NotANumber",[3922,4979,4963],{"class":4017},[3922,4981,4983],{"class":3924,"line":4982},26,[3922,4984,4985],{"class":4032},"    NotFinite\n",[3922,4987,4989],{"class":3924,"line":4988},27,[3922,4990,4420],{"class":4017},[3922,4992,4994],{"class":3924,"line":4993},28,[3922,4995,4946],{"emptyLinePlaceholder":4945},[3922,4997,4999],{"class":3924,"line":4998},29,[3922,5000,5001],{"class":4758},"\u002F\u002F Reads one coefficient. The builder is reused for every line, so it is cleared first, and the\n",[3922,5003,5005],{"class":3924,"line":5004},30,[3922,5006,5007],{"class":4758},"\u002F\u002F view is trimmed so that \" 2 \" reads as 2.\n",[3922,5009,5011,5013,5015,5017,5019,5021,5023,5025,5027,5029,5031,5033,5035,5037,5039],{"class":3924,"line":5010},31,[3922,5012,4010],{"class":4009},[3922,5014,4014],{"class":4013},[3922,5016,4018],{"class":4017},[3922,5018,4022],{"class":4021},[3922,5020,4025],{"class":4017},[3922,5022,4029],{"class":4028},[3922,5024,4033],{"class":4032},[3922,5026,4036],{"class":4017},[3922,5028,4039],{"class":4021},[3922,5030,4042],{"class":4032},[3922,5032,4045],{"class":4017},[3922,5034,4048],{"class":4017},[3922,5036,4051],{"class":4009},[3922,5038,4054],{"class":4032},[3922,5040,4057],{"class":4017},[3922,5042,5044,5046,5048,5050,5052,5054],{"class":3924,"line":5043},32,[3922,5045,4062],{"class":4032},[3922,5047,4018],{"class":4017},[3922,5049,4068],{"class":4067},[3922,5051,4036],{"class":4017},[3922,5053,4073],{"class":4032},[3922,5055,4076],{"class":4017},[3922,5057,5059,5061,5063,5065],{"class":3924,"line":5058},33,[3922,5060,4081],{"class":4032},[3922,5062,4085],{"class":4084},[3922,5064,4088],{"class":4032},[3922,5066,4091],{"class":4017},[3922,5068,5070,5073,5076,5078,5081,5083],{"class":3924,"line":5069},34,[3922,5071,5072],{"class":4009},"    match",[3922,5074,5075],{"class":4032}," ReadLine",[3922,5077,4018],{"class":4017},[3922,5079,5080],{"class":4032},"builder",[3922,5082,4045],{"class":4017},[3922,5084,4323],{"class":4017},[3922,5086,5088,5091,5094,5096,5099,5101,5104],{"class":3924,"line":5087},35,[3922,5089,5090],{"class":4084},"        .",[3922,5092,5093],{"class":4032},"Success",[3922,5095,4018],{"class":4017},[3922,5097,5098],{"class":4032},"_",[3922,5100,4045],{"class":4017},[3922,5102,5103],{"class":4084}," =>",[3922,5105,5106],{"class":4017}," {},\n",[3922,5108,5110,5112,5115,5117,5119,5121,5123,5126,5128,5131,5134,5136,5138,5141,5143,5146,5148,5151],{"class":3924,"line":5109},36,[3922,5111,5090],{"class":4084},[3922,5113,5114],{"class":4032},"Failure",[3922,5116,4018],{"class":4017},[3922,5118,4156],{"class":4032},[3922,5120,4045],{"class":4017},[3922,5122,4368],{"class":4009},[3922,5124,5125],{"class":4032}," error",[3922,5127,4085],{"class":4084},[3922,5129,5130],{"class":4032},"kind ",[3922,5132,5133],{"class":4084},"==",[3922,5135,4894],{"class":4032},[3922,5137,4837],{"class":4084},[3922,5139,5140],{"class":4032},"EndOfStream ",[3922,5142,4145],{"class":4084},[3922,5144,5145],{"class":4032}," fail EntryError",[3922,5147,4837],{"class":4084},[3922,5149,5150],{"class":4032},"Ended",[3922,5152,4963],{"class":4017},[3922,5154,5156,5158,5160,5162,5164,5166,5168,5170,5172],{"class":3924,"line":5155},37,[3922,5157,5090],{"class":4084},[3922,5159,5114],{"class":4032},[3922,5161,4018],{"class":4017},[3922,5163,5098],{"class":4032},[3922,5165,4045],{"class":4017},[3922,5167,5103],{"class":4084},[3922,5169,5145],{"class":4032},[3922,5171,4837],{"class":4084},[3922,5173,5174],{"class":4032},"Unreadable\n",[3922,5176,5178],{"class":3924,"line":5177},38,[3922,5179,5180],{"class":4017},"    }\n",[3922,5182,5184],{"class":3924,"line":5183},39,[3922,5185,5186],{"class":4758},"    \u002F\u002F A number past the largest float64 is an `Overflow`, not a malformed one: it is a number,\n",[3922,5188,5190],{"class":3924,"line":5189},40,[3922,5191,5192],{"class":4758},"    \u002F\u002F just not a finite float64, so it joins Inf and NaN.\n",[3922,5194,5196,5199,5202,5204,5207,5209,5211,5213,5216,5219,5221,5224,5227,5229],{"class":3924,"line":5195},41,[3922,5197,5198],{"class":4009},"    let",[3922,5200,5201],{"class":4032}," value ",[3922,5203,4120],{"class":4084},[3922,5205,5206],{"class":4032}," ParseFloat64",[3922,5208,4018],{"class":4017},[3922,5210,5080],{"class":4032},[3922,5212,4085],{"class":4084},[3922,5214,5215],{"class":4032},"View",[3922,5217,5218],{"class":4017},"()",[3922,5220,4085],{"class":4084},[3922,5222,5223],{"class":4032},"Trim",[3922,5225,5226],{"class":4017},"())",[3922,5228,4136],{"class":4032},[3922,5230,4057],{"class":4017},[3922,5232,5234,5236,5239,5241,5243,5245,5247,5249,5251,5254],{"class":3924,"line":5233},42,[3922,5235,5090],{"class":4084},[3922,5237,5238],{"class":4032},"Overflow",[3922,5240,4018],{"class":4017},[3922,5242,5098],{"class":4032},[3922,5244,4045],{"class":4017},[3922,5246,5103],{"class":4084},[3922,5248,5145],{"class":4032},[3922,5250,4837],{"class":4084},[3922,5252,5253],{"class":4032},"NotFinite",[3922,5255,4963],{"class":4017},[3922,5257,5259,5262,5264,5266,5268],{"class":3924,"line":5258},43,[3922,5260,5261],{"class":4009},"        else",[3922,5263,5103],{"class":4084},[3922,5265,5145],{"class":4032},[3922,5267,4837],{"class":4084},[3922,5269,5270],{"class":4032},"NotANumber\n",[3922,5272,5274],{"class":3924,"line":5273},44,[3922,5275,5276],{"class":4017},"    };\n",[3922,5278,5280,5283,5286,5288,5290,5293,5295],{"class":3924,"line":5279},45,[3922,5281,5282],{"class":4009},"    if",[3922,5284,5285],{"class":4084}," !",[3922,5287,4862],{"class":4032},[3922,5289,4018],{"class":4017},[3922,5291,5292],{"class":4032},"value",[3922,5294,4045],{"class":4017},[3922,5296,4323],{"class":4017},[3922,5298,5300,5303,5305,5307],{"class":3924,"line":5299},46,[3922,5301,5302],{"class":4032},"        fail EntryError",[3922,5304,4837],{"class":4084},[3922,5306,5253],{"class":4032},[3922,5308,4546],{"class":4017},[3922,5310,5312],{"class":3924,"line":5311},47,[3922,5313,5180],{"class":4017},[3922,5315,5317,5320,5323],{"class":3924,"line":5316},48,[3922,5318,5319],{"class":4009},"    return",[3922,5321,5322],{"class":4032}," value",[3922,5324,4546],{"class":4017},[3922,5326,5328],{"class":3924,"line":5327},49,[3922,5329,4420],{"class":4017},[3922,5331,5333],{"class":3924,"line":5332},50,[3922,5334,4946],{"emptyLinePlaceholder":4945},[3922,5336,5338],{"class":3924,"line":5337},51,[3922,5339,5340],{"class":4758},"\u002F\u002F Each report starts on a fresh line, since piped input leaves the cursor after the prompt.\n",[3922,5342,5344,5346,5348,5350,5352,5354,5356,5358],{"class":3924,"line":5343},52,[3922,5345,4010],{"class":4009},[3922,5347,4151],{"class":4013},[3922,5349,4018],{"class":4017},[3922,5351,4156],{"class":4021},[3922,5353,4025],{"class":4017},[3922,5355,3845],{"class":4028},[3922,5357,4045],{"class":4017},[3922,5359,4323],{"class":4017},[3922,5361,5363,5365],{"class":3924,"line":5362},53,[3922,5364,4328],{"class":4032},[3922,5366,4091],{"class":4017},[3922,5368,5370,5372,5374],{"class":3924,"line":5369},54,[3922,5371,5072],{"class":4009},[3922,5373,4142],{"class":4032},[3922,5375,4057],{"class":4017},[3922,5377,5379,5381,5384,5386,5388,5390,5393],{"class":3924,"line":5378},55,[3922,5380,5090],{"class":4084},[3922,5382,5383],{"class":4032},"Ended ",[3922,5385,4145],{"class":4084},[3922,5387,4904],{"class":4032},[3922,5389,4018],{"class":4017},[3922,5391,5392],{"class":4067},"\"the input ended before all three coefficients were given\"",[3922,5394,5395],{"class":4017},"),\n",[3922,5397,5399,5401,5404,5406,5408,5410,5413],{"class":3924,"line":5398},56,[3922,5400,5090],{"class":4084},[3922,5402,5403],{"class":4032},"Unreadable ",[3922,5405,4145],{"class":4084},[3922,5407,4904],{"class":4032},[3922,5409,4018],{"class":4017},[3922,5411,5412],{"class":4067},"\"the input could not be read\"",[3922,5414,5395],{"class":4017},[3922,5416,5418,5420,5423,5425,5427,5429,5432],{"class":3924,"line":5417},57,[3922,5419,5090],{"class":4084},[3922,5421,5422],{"class":4032},"NotANumber ",[3922,5424,4145],{"class":4084},[3922,5426,4904],{"class":4032},[3922,5428,4018],{"class":4017},[3922,5430,5431],{"class":4067},"\"that is not a number\"",[3922,5433,5395],{"class":4017},[3922,5435,5437,5439,5442,5444,5446],{"class":3924,"line":5436},58,[3922,5438,5090],{"class":4084},[3922,5440,5441],{"class":4032},"NotFinite ",[3922,5443,4145],{"class":4084},[3922,5445,4904],{"class":4032},[3922,5447,5448],{"class":4017},"(\n",[3922,5450,5452,5455],{"class":3924,"line":5451},59,[3922,5453,5454],{"class":4067},"            \"a coefficient must be finite: Inf, NaN and numbers past float64 are refused\"",[3922,5456,5457],{"class":4017},")\n",[3922,5459,5461],{"class":3924,"line":5460},60,[3922,5462,5180],{"class":4017},[3922,5464,5466],{"class":3924,"line":5465},61,[3922,5467,4420],{"class":4017},[3922,5469,5471],{"class":3924,"line":5470},62,[3922,5472,4946],{"emptyLinePlaceholder":4945},[3922,5474,5476,5478,5481,5483,5486,5488,5491,5493,5495,5497,5499,5501],{"class":3924,"line":5475},63,[3922,5477,4010],{"class":4009},[3922,5479,5480],{"class":4013}," SolveLinear",[3922,5482,4018],{"class":4017},[3922,5484,5485],{"class":4021},"b",[3922,5487,4025],{"class":4017},[3922,5489,5490],{"class":4028},"float64",[3922,5492,4036],{"class":4017},[3922,5494,4394],{"class":4021},[3922,5496,4025],{"class":4017},[3922,5498,5490],{"class":4028},[3922,5500,4045],{"class":4017},[3922,5502,4323],{"class":4017},[3922,5504,5506,5508,5510,5512,5514,5516,5518],{"class":3924,"line":5505},64,[3922,5507,5282],{"class":4009},[3922,5509,4182],{"class":4032},[3922,5511,4312],{"class":4084},[3922,5513,4315],{"class":4165},[3922,5515,4085],{"class":4017},[3922,5517,4320],{"class":4165},[3922,5519,4323],{"class":4017},[3922,5521,5523],{"class":3924,"line":5522},65,[3922,5524,5525],{"class":4758},"        \u002F\u002F Adding zero turns -0 into 0, so c = 0 prints \"x = 0.0\" rather than \"x = -0.0\".\n",[3922,5527,5529,5532,5534,5536,5538,5540,5542,5544,5546,5548,5550,5552,5554],{"class":3924,"line":5528},66,[3922,5530,5531],{"class":4032},"        PrintLine",[3922,5533,4018],{"class":4017},[3922,5535,4333],{"class":4067},[3922,5537,4036],{"class":4017},[3922,5539,4338],{"class":4084},[3922,5541,4341],{"class":4032},[3922,5543,4344],{"class":4084},[3922,5545,4182],{"class":4032},[3922,5547,4349],{"class":4084},[3922,5549,4315],{"class":4165},[3922,5551,4085],{"class":4017},[3922,5553,4320],{"class":4165},[3922,5555,4076],{"class":4017},[3922,5557,5559,5562,5564,5566,5568,5570,5572,5574,5576],{"class":3924,"line":5558},67,[3922,5560,5561],{"class":4017},"    }",[3922,5563,4365],{"class":4009},[3922,5565,4368],{"class":4009},[3922,5567,4232],{"class":4032},[3922,5569,4312],{"class":4084},[3922,5571,4315],{"class":4165},[3922,5573,4085],{"class":4017},[3922,5575,4320],{"class":4165},[3922,5577,4323],{"class":4017},[3922,5579,5581,5583,5585,5587,5589,5591],{"class":3924,"line":5580},68,[3922,5582,5531],{"class":4032},[3922,5584,4018],{"class":4017},[3922,5586,4389],{"class":4067},[3922,5588,4036],{"class":4017},[3922,5590,4394],{"class":4032},[3922,5592,4076],{"class":4017},[3922,5594,5596,5598,5600],{"class":3924,"line":5595},69,[3922,5597,5561],{"class":4017},[3922,5599,4365],{"class":4009},[3922,5601,4323],{"class":4017},[3922,5603,5605,5607,5609,5611],{"class":3924,"line":5604},70,[3922,5606,5531],{"class":4032},[3922,5608,4018],{"class":4017},[3922,5610,4413],{"class":4067},[3922,5612,4076],{"class":4017},[3922,5614,5616],{"class":3924,"line":5615},71,[3922,5617,5180],{"class":4017},[3922,5619,5621],{"class":3924,"line":5620},72,[3922,5622,4420],{"class":4017},[3922,5624,5626],{"class":3924,"line":5625},73,[3922,5627,4946],{"emptyLinePlaceholder":4945},[3922,5629,5631,5633,5636,5638,5640,5642,5644,5646,5648,5650,5652,5654,5656,5658,5660,5662],{"class":3924,"line":5630},74,[3922,5632,4010],{"class":4009},[3922,5634,5635],{"class":4013}," SolveQuadratic",[3922,5637,4018],{"class":4017},[3922,5639,3739],{"class":4021},[3922,5641,4025],{"class":4017},[3922,5643,5490],{"class":4028},[3922,5645,4036],{"class":4017},[3922,5647,4533],{"class":4021},[3922,5649,4025],{"class":4017},[3922,5651,5490],{"class":4028},[3922,5653,4036],{"class":4017},[3922,5655,4394],{"class":4021},[3922,5657,4025],{"class":4017},[3922,5659,5490],{"class":4028},[3922,5661,4045],{"class":4017},[3922,5663,4323],{"class":4017},[3922,5665,5667],{"class":3924,"line":5666},75,[3922,5668,5669],{"class":4758},"    \u002F\u002F Finite coefficients can still overflow: b = 1e200 makes b^2 infinite.\n",[3922,5671,5673,5675,5678,5680,5682,5685,5687,5689,5692,5694,5696,5698,5700,5702,5704],{"class":3924,"line":5672},76,[3922,5674,5198],{"class":4009},[3922,5676,5677],{"class":4032}," discriminant ",[3922,5679,4120],{"class":4084},[3922,5681,4182],{"class":4032},[3922,5683,5684],{"class":4084},"*",[3922,5686,4182],{"class":4032},[3922,5688,4530],{"class":4084},[3922,5690,5691],{"class":4165}," 4",[3922,5693,4085],{"class":4017},[3922,5695,4320],{"class":4165},[3922,5697,4637],{"class":4084},[3922,5699,4117],{"class":4032},[3922,5701,5684],{"class":4084},[3922,5703,4394],{"class":4032},[3922,5705,4546],{"class":4017},[3922,5707,5709,5711,5713,5715,5717,5719,5721],{"class":3924,"line":5708},77,[3922,5710,5282],{"class":4009},[3922,5712,5285],{"class":4084},[3922,5714,4862],{"class":4032},[3922,5716,4018],{"class":4017},[3922,5718,4470],{"class":4032},[3922,5720,4045],{"class":4017},[3922,5722,4323],{"class":4017},[3922,5724,5726,5728,5730,5733],{"class":3924,"line":5725},78,[3922,5727,5531],{"class":4032},[3922,5729,4018],{"class":4017},[3922,5731,5732],{"class":4067},"\"the coefficients are too large to solve in float64\"",[3922,5734,4076],{"class":4017},[3922,5736,5738,5741],{"class":3924,"line":5737},79,[3922,5739,5740],{"class":4009},"        return",[3922,5742,4546],{"class":4017},[3922,5744,5746],{"class":3924,"line":5745},80,[3922,5747,5180],{"class":4017},[3922,5749,5751],{"class":3924,"line":5750},81,[3922,5752,4946],{"emptyLinePlaceholder":4945},[3922,5754,5756,5758,5760,5763,5765,5767,5769],{"class":3924,"line":5755},82,[3922,5757,5282],{"class":4009},[3922,5759,5677],{"class":4032},[3922,5761,5762],{"class":4084},">",[3922,5764,4315],{"class":4165},[3922,5766,4085],{"class":4017},[3922,5768,4320],{"class":4165},[3922,5770,4323],{"class":4017},[3922,5772,5774],{"class":3924,"line":5773},83,[3922,5775,5776],{"class":4758},"        \u002F\u002F The textbook formula subtracts two nearly equal numbers when 4ac is small, and loses\n",[3922,5778,5780],{"class":3924,"line":5779},84,[3922,5781,5782],{"class":4758},"        \u002F\u002F the smaller root to rounding. Adding numbers of the same sign never cancels, so find\n",[3922,5784,5786],{"class":3924,"line":5785},85,[3922,5787,5788],{"class":4758},"        \u002F\u002F the larger root that way, then the other from x1 * x2 = c \u002F a.\n",[3922,5790,5792,5795,5797,5799,5801,5803,5805],{"class":3924,"line":5791},86,[3922,5793,5794],{"class":4009},"        let",[3922,5796,4460],{"class":4032},[3922,5798,4120],{"class":4084},[3922,5800,4465],{"class":4032},[3922,5802,4018],{"class":4017},[3922,5804,4470],{"class":4032},[3922,5806,4076],{"class":4017},[3922,5808,5810,5812,5814,5816,5818,5820,5822,5824,5826,5828,5830,5832,5834,5836,5838,5840,5842,5844,5846,5848,5850,5852,5854,5856,5858,5860,5862,5864,5866,5868],{"class":3924,"line":5809},87,[3922,5811,5794],{"class":4009},[3922,5813,4479],{"class":4032},[3922,5815,4120],{"class":4084},[3922,5817,4182],{"class":4032},[3922,5819,4486],{"class":4084},[3922,5821,4315],{"class":4165},[3922,5823,4085],{"class":4017},[3922,5825,4320],{"class":4165},[3922,5827,4495],{"class":4084},[3922,5829,4338],{"class":4084},[3922,5831,4018],{"class":4017},[3922,5833,4502],{"class":4032},[3922,5835,4349],{"class":4084},[3922,5837,4507],{"class":4032},[3922,5839,4045],{"class":4017},[3922,5841,4512],{"class":4084},[3922,5843,4515],{"class":4165},[3922,5845,4085],{"class":4017},[3922,5847,4320],{"class":4165},[3922,5849,4522],{"class":4017},[3922,5851,3882],{"class":4017},[3922,5853,4527],{"class":4032},[3922,5855,4530],{"class":4084},[3922,5857,4533],{"class":4032},[3922,5859,4045],{"class":4017},[3922,5861,4512],{"class":4084},[3922,5863,4515],{"class":4165},[3922,5865,4085],{"class":4017},[3922,5867,4320],{"class":4165},[3922,5869,4546],{"class":4017},[3922,5871,5873,5875,5877,5879,5881,5883,5885],{"class":3924,"line":5872},88,[3922,5874,5794],{"class":4009},[3922,5876,4553],{"class":4032},[3922,5878,4120],{"class":4084},[3922,5880,4479],{"class":4032},[3922,5882,4344],{"class":4084},[3922,5884,4562],{"class":4032},[3922,5886,4546],{"class":4017},[3922,5888,5890,5892,5894,5896,5898,5900,5902],{"class":3924,"line":5889},89,[3922,5891,5794],{"class":4009},[3922,5893,4571],{"class":4032},[3922,5895,4120],{"class":4084},[3922,5897,4232],{"class":4032},[3922,5899,4344],{"class":4084},[3922,5901,4580],{"class":4032},[3922,5903,4546],{"class":4017},[3922,5905,5907,5909,5912,5914,5916,5918,5920,5923,5925,5927,5930],{"class":3924,"line":5906},90,[3922,5908,5794],{"class":4009},[3922,5910,5911],{"class":4032}," low ",[3922,5913,4120],{"class":4084},[3922,5915,4553],{"class":4032},[3922,5917,4666],{"class":4084},[3922,5919,4571],{"class":4032},[3922,5921,5922],{"class":4084},"?",[3922,5924,4553],{"class":4032},[3922,5926,4689],{"class":4017},[3922,5928,5929],{"class":4032}," second",[3922,5931,4546],{"class":4017},[3922,5933,5935,5937,5940,5942,5944,5946,5948,5950,5952,5954,5957],{"class":3924,"line":5934},91,[3922,5936,5794],{"class":4009},[3922,5938,5939],{"class":4032}," high ",[3922,5941,4120],{"class":4084},[3922,5943,4553],{"class":4032},[3922,5945,4666],{"class":4084},[3922,5947,4571],{"class":4032},[3922,5949,5922],{"class":4084},[3922,5951,4571],{"class":4032},[3922,5953,4689],{"class":4017},[3922,5955,5956],{"class":4032}," first",[3922,5958,4546],{"class":4017},[3922,5960,5962,5964,5966,5969,5971,5974,5976,5979],{"class":3924,"line":5961},92,[3922,5963,5531],{"class":4032},[3922,5965,4018],{"class":4017},[3922,5967,5968],{"class":4067},"\"two real roots: x1 = {}, x2 = {}\"",[3922,5970,4036],{"class":4017},[3922,5972,5973],{"class":4032}," low",[3922,5975,4036],{"class":4017},[3922,5977,5978],{"class":4032}," high",[3922,5980,4076],{"class":4017},[3922,5982,5984,5986,5988,5990,5992,5994,5996,5998,6000],{"class":3924,"line":5983},93,[3922,5985,5561],{"class":4017},[3922,5987,4365],{"class":4009},[3922,5989,4368],{"class":4009},[3922,5991,5677],{"class":4032},[3922,5993,5133],{"class":4084},[3922,5995,4315],{"class":4165},[3922,5997,4085],{"class":4017},[3922,5999,4320],{"class":4165},[3922,6001,4323],{"class":4017},[3922,6003,6005,6007,6009,6012,6014,6016,6018,6020,6022,6024,6026,6028,6030,6032,6034,6036,6038,6040,6042],{"class":3924,"line":6004},94,[3922,6006,5531],{"class":4032},[3922,6008,4018],{"class":4017},[3922,6010,6011],{"class":4067},"\"one repeated root: x = {}\"",[3922,6013,4036],{"class":4017},[3922,6015,4338],{"class":4084},[3922,6017,4502],{"class":4032},[3922,6019,4344],{"class":4084},[3922,6021,3882],{"class":4017},[3922,6023,4630],{"class":4165},[3922,6025,4085],{"class":4017},[3922,6027,4320],{"class":4165},[3922,6029,4637],{"class":4084},[3922,6031,4562],{"class":4032},[3922,6033,4045],{"class":4017},[3922,6035,4644],{"class":4084},[3922,6037,4315],{"class":4165},[3922,6039,4085],{"class":4017},[3922,6041,4320],{"class":4165},[3922,6043,4076],{"class":4017},[3922,6045,6047,6049,6051],{"class":3924,"line":6046},95,[3922,6048,5561],{"class":4017},[3922,6050,4365],{"class":4009},[3922,6052,4323],{"class":4017},[3922,6054,6056],{"class":3924,"line":6055},96,[3922,6057,6058],{"class":4758},"        \u002F\u002F No real root, but the complex pair is real part +\u002F- imaginary part. Dividing by |2a|\n",[3922,6060,6062],{"class":3924,"line":6061},97,[3922,6063,6064],{"class":4758},"        \u002F\u002F keeps the imaginary part positive, so the signs printed are the signs meant.\n",[3922,6066,6068,6070,6072,6074,6076,6078,6080,6082,6084,6086,6088,6090,6092,6094,6096,6098,6100,6102],{"class":3924,"line":6067},98,[3922,6069,5794],{"class":4009},[3922,6071,4617],{"class":4032},[3922,6073,4120],{"class":4084},[3922,6075,4338],{"class":4084},[3922,6077,4502],{"class":4032},[3922,6079,4344],{"class":4084},[3922,6081,3882],{"class":4017},[3922,6083,4630],{"class":4165},[3922,6085,4085],{"class":4017},[3922,6087,4320],{"class":4165},[3922,6089,4637],{"class":4084},[3922,6091,4562],{"class":4032},[3922,6093,4045],{"class":4017},[3922,6095,4644],{"class":4084},[3922,6097,4315],{"class":4165},[3922,6099,4085],{"class":4017},[3922,6101,4320],{"class":4165},[3922,6103,4546],{"class":4017},[3922,6105,6107,6109,6111,6113,6115,6117,6119,6121,6123,6125,6127,6129,6131,6133,6135,6137,6139,6141,6143,6145,6147,6149],{"class":3924,"line":6106},99,[3922,6108,5794],{"class":4009},[3922,6110,4659],{"class":4032},[3922,6112,4120],{"class":4084},[3922,6114,4117],{"class":4032},[3922,6116,4666],{"class":4084},[3922,6118,4315],{"class":4165},[3922,6120,4085],{"class":4017},[3922,6122,4320],{"class":4165},[3922,6124,4495],{"class":4084},[3922,6126,4338],{"class":4084},[3922,6128,4630],{"class":4165},[3922,6130,4085],{"class":4017},[3922,6132,4320],{"class":4165},[3922,6134,4637],{"class":4084},[3922,6136,4117],{"class":4032},[3922,6138,4689],{"class":4017},[3922,6140,4515],{"class":4165},[3922,6142,4085],{"class":4017},[3922,6144,4320],{"class":4165},[3922,6146,4637],{"class":4084},[3922,6148,4562],{"class":4032},[3922,6150,4546],{"class":4017},[3922,6152,6154,6156,6158,6160,6162,6164,6166,6168,6170,6172,6174],{"class":3924,"line":6153},100,[3922,6155,5794],{"class":4009},[3922,6157,4708],{"class":4032},[3922,6159,4120],{"class":4084},[3922,6161,4465],{"class":4032},[3922,6163,4018],{"class":4017},[3922,6165,4530],{"class":4084},[3922,6167,4470],{"class":4032},[3922,6169,4045],{"class":4017},[3922,6171,4512],{"class":4084},[3922,6173,4725],{"class":4032},[3922,6175,4546],{"class":4017},[3922,6177,6179,6181,6183,6186],{"class":3924,"line":6178},101,[3922,6180,5531],{"class":4032},[3922,6182,4018],{"class":4017},[3922,6184,6185],{"class":4067},"\"complex roots: x = {} + {}i and x = {} - {}i\"",[3922,6187,4963],{"class":4017},[3922,6189,6191,6194,6196,6199,6201,6204,6206,6208],{"class":3924,"line":6190},102,[3922,6192,6193],{"class":4032},"            real",[3922,6195,4036],{"class":4017},[3922,6197,6198],{"class":4032}," imaginary",[3922,6200,4036],{"class":4017},[3922,6202,6203],{"class":4032}," real",[3922,6205,4036],{"class":4017},[3922,6207,6198],{"class":4032},[3922,6209,4076],{"class":4017},[3922,6211,6213],{"class":3924,"line":6212},103,[3922,6214,5180],{"class":4017},[3922,6216,6218],{"class":3924,"line":6217},104,[3922,6219,4420],{"class":4017},[3922,6221,6223],{"class":3924,"line":6222},105,[3922,6224,4946],{"emptyLinePlaceholder":4945},[3922,6226,6228,6230,6233,6235,6237,6240],{"class":3924,"line":6227},106,[3922,6229,4010],{"class":4009},[3922,6231,6232],{"class":4013}," Main",[3922,6234,5218],{"class":4017},[3922,6236,4048],{"class":4017},[3922,6238,6239],{"class":4009}," int",[3922,6241,4323],{"class":4017},[3922,6243,6245,6248,6251,6253,6256],{"class":3924,"line":6244},107,[3922,6246,6247],{"class":4009},"    var",[3922,6249,6250],{"class":4032}," system ",[3922,6252,4120],{"class":4084},[3922,6254,6255],{"class":4032}," SystemAllocator",[3922,6257,4091],{"class":4017},[3922,6259,6261,6263,6266,6268,6271,6273,6276],{"class":3924,"line":6260},108,[3922,6262,5198],{"class":4009},[3922,6264,6265],{"class":4032}," allocator",[3922,6267,4689],{"class":4017},[3922,6269,6270],{"class":4032}," Allocator ",[3922,6272,4120],{"class":4084},[3922,6274,6275],{"class":4032}," system",[3922,6277,4546],{"class":4017},[3922,6279,6281],{"class":3924,"line":6280},109,[3922,6282,4946],{"emptyLinePlaceholder":4945},[3922,6284,6286],{"class":3924,"line":6285},110,[3922,6287,6288],{"class":4758},"    \u002F\u002F The builder's destructor returns its memory on every path out of `Main`.\n",[3922,6290,6292,6294,6297,6299,6302,6304,6307],{"class":3924,"line":6291},111,[3922,6293,6247],{"class":4009},[3922,6295,6296],{"class":4032}," builder ",[3922,6298,4120],{"class":4084},[3922,6300,6301],{"class":4032}," StringBuilder",[3922,6303,4018],{"class":4017},[3922,6305,6306],{"class":4032},"allocator",[3922,6308,4076],{"class":4017},[3922,6310,6312],{"class":3924,"line":6311},112,[3922,6313,4946],{"emptyLinePlaceholder":4945},[3922,6315,6317,6319,6321,6324],{"class":3924,"line":6316},113,[3922,6318,4328],{"class":4032},[3922,6320,4018],{"class":4017},[3922,6322,6323],{"class":4067},"\"Solving a x^2 + b x + c = 0\"",[3922,6325,4076],{"class":4017},[3922,6327,6329,6331,6333,6335,6337,6339,6341,6343,6345,6347,6349,6351,6353,6355,6357,6359,6361,6363,6365,6367,6369,6371,6373],{"class":3924,"line":6328},114,[3922,6330,5198],{"class":4009},[3922,6332,4117],{"class":4032},[3922,6334,4120],{"class":4084},[3922,6336,4014],{"class":4032},[3922,6338,4018],{"class":4017},[3922,6340,4127],{"class":4067},[3922,6342,4036],{"class":4017},[3922,6344,4039],{"class":4032},[3922,6346,4045],{"class":4017},[3922,6348,4136],{"class":4032},[3922,6350,4139],{"class":4017},[3922,6352,4142],{"class":4032},[3922,6354,4145],{"class":4084},[3922,6356,4148],{"class":4017},[3922,6358,4151],{"class":4032},[3922,6360,4018],{"class":4017},[3922,6362,4156],{"class":4032},[3922,6364,4159],{"class":4017},[3922,6366,4162],{"class":4009},[3922,6368,4166],{"class":4165},[3922,6370,4169],{"class":4017},[3922,6372,4172],{"class":4017},[3922,6374,4175],{"class":4017},[3922,6376,6378,6380,6382,6384,6386,6388,6390,6392,6394,6396,6398,6400,6402,6404,6406,6408,6410,6412,6414,6416,6418,6420,6422],{"class":3924,"line":6377},115,[3922,6379,5198],{"class":4009},[3922,6381,4182],{"class":4032},[3922,6383,4120],{"class":4084},[3922,6385,4014],{"class":4032},[3922,6387,4018],{"class":4017},[3922,6389,4191],{"class":4067},[3922,6391,4036],{"class":4017},[3922,6393,4039],{"class":4032},[3922,6395,4045],{"class":4017},[3922,6397,4136],{"class":4032},[3922,6399,4139],{"class":4017},[3922,6401,4142],{"class":4032},[3922,6403,4145],{"class":4084},[3922,6405,4148],{"class":4017},[3922,6407,4151],{"class":4032},[3922,6409,4018],{"class":4017},[3922,6411,4156],{"class":4032},[3922,6413,4159],{"class":4017},[3922,6415,4162],{"class":4009},[3922,6417,4166],{"class":4165},[3922,6419,4169],{"class":4017},[3922,6421,4172],{"class":4017},[3922,6423,4175],{"class":4017},[3922,6425,6427,6429,6431,6433,6435,6437,6439,6441,6443,6445,6447,6449,6451,6453,6455,6457,6459,6461,6463,6465,6467,6469,6471],{"class":3924,"line":6426},116,[3922,6428,5198],{"class":4009},[3922,6430,4232],{"class":4032},[3922,6432,4120],{"class":4084},[3922,6434,4014],{"class":4032},[3922,6436,4018],{"class":4017},[3922,6438,4241],{"class":4067},[3922,6440,4036],{"class":4017},[3922,6442,4039],{"class":4032},[3922,6444,4045],{"class":4017},[3922,6446,4136],{"class":4032},[3922,6448,4139],{"class":4017},[3922,6450,4142],{"class":4032},[3922,6452,4145],{"class":4084},[3922,6454,4148],{"class":4017},[3922,6456,4151],{"class":4032},[3922,6458,4018],{"class":4017},[3922,6460,4156],{"class":4032},[3922,6462,4159],{"class":4017},[3922,6464,4162],{"class":4009},[3922,6466,4166],{"class":4165},[3922,6468,4169],{"class":4017},[3922,6470,4172],{"class":4017},[3922,6472,4175],{"class":4017},[3922,6474,6476,6478],{"class":3924,"line":6475},117,[3922,6477,4328],{"class":4032},[3922,6479,4091],{"class":4017},[3922,6481,6483],{"class":3924,"line":6482},118,[3922,6484,4946],{"emptyLinePlaceholder":4945},[3922,6486,6488,6490,6492,6494,6496,6498,6500],{"class":3924,"line":6487},119,[3922,6489,5282],{"class":4009},[3922,6491,4117],{"class":4032},[3922,6493,5133],{"class":4084},[3922,6495,4315],{"class":4165},[3922,6497,4085],{"class":4017},[3922,6499,4320],{"class":4165},[3922,6501,4323],{"class":4017},[3922,6503,6505,6508,6510,6512,6514,6516],{"class":3924,"line":6504},120,[3922,6506,6507],{"class":4032},"        SolveLinear",[3922,6509,4018],{"class":4017},[3922,6511,5485],{"class":4032},[3922,6513,4036],{"class":4017},[3922,6515,4394],{"class":4032},[3922,6517,4076],{"class":4017},[3922,6519,6521,6523,6525],{"class":3924,"line":6520},121,[3922,6522,5561],{"class":4017},[3922,6524,4365],{"class":4009},[3922,6526,4323],{"class":4017},[3922,6528,6530,6533,6535,6537,6539,6541,6543,6545],{"class":3924,"line":6529},122,[3922,6531,6532],{"class":4032},"        SolveQuadratic",[3922,6534,4018],{"class":4017},[3922,6536,3739],{"class":4032},[3922,6538,4036],{"class":4017},[3922,6540,4533],{"class":4032},[3922,6542,4036],{"class":4017},[3922,6544,4394],{"class":4032},[3922,6546,4076],{"class":4017},[3922,6548,6550],{"class":3924,"line":6549},123,[3922,6551,5180],{"class":4017},[3922,6553,6555,6557,6559],{"class":3924,"line":6554},124,[3922,6556,5319],{"class":4009},[3922,6558,4315],{"class":4165},[3922,6560,4546],{"class":4017},[3922,6562,6564],{"class":3924,"line":6563},125,[3922,6565,4420],{"class":4017},[3731,6567,6568,6569,6571,6572,6575,6576,3742,6578,3742,6580,3742,6582,3748,6584,6586,6587,4085],{},"Besides ",[3767,6570,2669],{},", its ",[3767,6573,6574],{},"Rux.toml"," lists ",[3767,6577,2205],{},[3767,6579,2066],{},[3767,6581,2359],{},[3767,6583,2245],{},[3767,6585,680],{}," under ",[3767,6588,6589],{},"[Dependencies]",[3782,6591,6593],{"id":6592},"run-it","Run it",[3913,6595,6599],{"className":6596,"code":6597,"language":6598,"meta":3918,"style":3918},"language-sh shiki shiki-themes catppuccin-latte catppuccin-latte catppuccin-mocha","cd Examples\u002FProjects\u002FQuadratic\nrux run\n","sh",[3767,6600,6601,6610],{"__ignoreMap":3918},[3922,6602,6603,6607],{"class":3924,"line":3925},[3922,6604,6606],{"class":6605},"s0rF6","cd",[3922,6608,6609],{"class":4067}," Examples\u002FProjects\u002FQuadratic\n",[3922,6611,6612,6614],{"class":3924,"line":3931},[3922,6613,4002],{"class":4013},[3922,6615,6616],{"class":4067}," run\n",[3913,6618,6623],{"className":6619,"code":6621,"language":6622},[6620],"language-text","Solving a x^2 + b x + c = 0\na = 1\nb = -3\nc = 2\n\ntwo real roots: x1 = 1.0, x2 = 2.0\n","text",[3767,6624,6621],{"__ignoreMap":3918},[3731,6626,6627],{},"Piped input works too. The typed values are not echoed then, so the prompts run together:",[3913,6629,6631],{"className":6596,"code":6630,"language":6598,"meta":3918,"style":3918},"\"1\", \"2\", \"5\" | rux run\n\"0\", \"0\", \"3\" | rux run\n\"1\", \"Inf\" | rux run\n$null | rux run\n",[3767,6632,6633,6654,6673,6688],{"__ignoreMap":3918},[3922,6634,6635,6638,6640,6643,6646,6649,6652],{"class":3924,"line":3925},[3922,6636,6637],{"class":4013},"\"1\"",[3922,6639,4036],{"class":4013},[3922,6641,6642],{"class":4067}," \"2\",",[3922,6644,6645],{"class":4067}," \"5\"",[3922,6647,6648],{"class":4084}," |",[3922,6650,6651],{"class":4013}," rux",[3922,6653,6616],{"class":4067},[3922,6655,6656,6659,6661,6664,6667,6669,6671],{"class":3924,"line":3931},[3922,6657,6658],{"class":4013},"\"0\"",[3922,6660,4036],{"class":4013},[3922,6662,6663],{"class":4067}," \"0\",",[3922,6665,6666],{"class":4067}," \"3\"",[3922,6668,6648],{"class":4084},[3922,6670,6651],{"class":4013},[3922,6672,6616],{"class":4067},[3922,6674,6675,6677,6679,6682,6684,6686],{"class":3924,"line":3937},[3922,6676,6637],{"class":4013},[3922,6678,4036],{"class":4013},[3922,6680,6681],{"class":4067}," \"Inf\"",[3922,6683,6648],{"class":4084},[3922,6685,6651],{"class":4013},[3922,6687,6616],{"class":4067},[3922,6689,6690,6693,6696,6698],{"class":3924,"line":3943},[3922,6691,6692],{"class":4032},"$null ",[3922,6694,6695],{"class":4084},"|",[3922,6697,6651],{"class":4013},[3922,6699,6616],{"class":4067},[3913,6701,6704],{"className":6702,"code":6703,"language":6622,"meta":3918},[6620],"Solving a x^2 + b x + c = 0\na = b = c =\ncomplex roots: x = -1.0 + 2.0i and x = -1.0 - 2.0i\nSolving a x^2 + b x + c = 0\na = b = c =\ninconsistent: 3.0 = 0 is never true, so there is no solution\nSolving a x^2 + b x + c = 0\na = b =\na coefficient must be finite: Inf, NaN and numbers past float64 are refused\nSolving a x^2 + b x + c = 0\na =\nthe input ended before all three coefficients were given\n",[3767,6705,6703],{"__ignoreMap":3918},[3731,6707,6708],{},"Unusable input, including input that ends early, exits with status 1.",[3731,6710,6711,6712,3742,6715,3742,6717,6719,6720,3742,6722,3742,6724,6726,6727,3742,6729,3742,6732,6734,6735,6738],{},"The program waits for three answers. Run it and type a number after each prompt, pressing Enter each time. Try ",[3767,6713,6714],{},"1",[3767,6716,4630],{},[3767,6718,6714],{}," for a repeated root, ",[3767,6721,4320],{},[3767,6723,4630],{},[3767,6725,4320],{}," for a linear equation, or ",[3767,6728,6714],{},[3767,6730,6731],{},"1e8",[3767,6733,6714],{}," to see the careful formula at work. The piped examples above are written for PowerShell; in a POSIX shell, ",[3767,6736,6737],{},"printf '1\\n2\\n5\\n' | rux run"," does the same.",[3782,6740,6742],{"id":6741},"common-mistakes","Common mistakes",[6744,6745,6746],"mistake",{},[3731,6747,6748,6751,6754,6756,6757,6760,6761,3742,6763,3742,6765,6767],{},[3734,6749,6750],{},"Not clearing a reused builder.",[6752,6753],"br",{},[3767,6755,2735],{}," appends to the builder, without the line break. Leave out ",[3767,6758,6759],{},"builder.Clear()"," and the answers ",[3767,6762,6714],{},[3767,6764,4630],{},[3767,6766,6714],{}," are read as 1, 12 and 121 — each line glued onto the ones before it — so instead of the repeated root −1 the program reports a complex pair, −6 ± 9.2195…i. Nothing fails; the answer is just wrong.",[6744,6769,6770],{},[3731,6771,6772,6778,6780],{},[3734,6773,6774,6775,6777],{},"Dividing by ",[3767,6776,3739],{}," before checking it.",[6752,6779],{},"\nWith a = 0 the quadratic formula divides by zero. On floats that does not stop the program — it produces infinity or NaN, and the output is nonsense rather than an error. Decide the shape of the problem first, then calculate.",[6744,6782,6783],{},[3731,6784,6785,6788,6790],{},[3734,6786,6787],{},"Using the textbook formula for both roots.",[6752,6789],{},"\nIt compiles and passes every small example, which is what makes it dangerous. The cancellation only shows up when b² is much larger than 4ac, as with b = 1e8 above.",[3782,6792,6794],{"id":6793},"try-it-yourself","Try it yourself",[6796,6797,6798,6802,6805,6808],"ol",{},[6799,6800,6801],"li",{},"Print the discriminant before the roots, so you can see which branch was taken and why.",[6799,6803,6804],{},"Change the textbook-formula experiment into a permanent feature: print both the careful roots and the textbook ones, and the difference between them.",[6799,6806,6807],{},"For two real roots, also print the vertex of the parabola: x = −b \u002F 2a, and y found by putting that x back into the equation.",[6799,6809,6810],{},"Let the user solve several equations in one run: after printing a result, ask for the next a, b and c, and stop cleanly when the input ends.",[3782,6812,6814],{"id":6813},"learn-more","Learn more",[6816,6817,6818,6823,6831,6836,6842],"ul",{},[6799,6819,6820,6822],{},[3739,6821,3755],{"href":834}," — infinity, NaN and negative zero",[6799,6824,6825,6827,6828,6830],{},[3739,6826,2245],{"href":866}," — ",[3767,6829,3885],{}," and its domain",[6799,6832,6833,6835],{},[3739,6834,3905],{"href":475}," — handling a failure in place with one arm per case",[6799,6837,6838,6839,6841],{},"Previous project: ",[3739,6840,3775],{"href":1319},", which reads one number the same way",[6799,6843,6844,6845,6848],{},"Next project: ",[3739,6846,6847],{"href":1327},"Word count",", a checkpoint for Collections",[6850,6851,6852],"style",{},"html .light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html.light .shiki span {color: var(--shiki-light);background: var(--shiki-light-bg);font-style: var(--shiki-light-font-style);font-weight: var(--shiki-light-font-weight);text-decoration: var(--shiki-light-text-decoration);}html .default .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .shiki span {color: var(--shiki-default);background: var(--shiki-default-bg);font-style: var(--shiki-default-font-style);font-weight: var(--shiki-default-font-weight);text-decoration: var(--shiki-default-text-decoration);}html .dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html.dark .shiki span {color: var(--shiki-dark);background: var(--shiki-dark-bg);font-style: var(--shiki-dark-font-style);font-weight: var(--shiki-dark-font-weight);text-decoration: var(--shiki-dark-text-decoration);}html pre.shiki code .smXKV, html code.shiki .smXKV{--shiki-light:#8839EF;--shiki-default:#8839EF;--shiki-dark:#CBA6F7}html pre.shiki code .sptzg, html code.shiki .sptzg{--shiki-light:#1E66F5;--shiki-light-font-style:italic;--shiki-default:#1E66F5;--shiki-default-font-style:italic;--shiki-dark:#89B4FA;--shiki-dark-font-style:italic}html pre.shiki code .sDi1i, html code.shiki .sDi1i{--shiki-light:#7C7F93;--shiki-default:#7C7F93;--shiki-dark:#9399B2}html pre.shiki code .sYR1E, html code.shiki .sYR1E{--shiki-light:#E64553;--shiki-light-font-style:italic;--shiki-default:#E64553;--shiki-default-font-style:italic;--shiki-dark:#EBA0AC;--shiki-dark-font-style:italic}html pre.shiki code .sqZDx, html code.shiki .sqZDx{--shiki-light:#DF8E1D;--shiki-light-font-style:italic;--shiki-default:#DF8E1D;--shiki-default-font-style:italic;--shiki-dark:#F9E2AF;--shiki-dark-font-style:italic}html pre.shiki code .sJT_S, html code.shiki .sJT_S{--shiki-light:#4C4F69;--shiki-default:#4C4F69;--shiki-dark:#CDD6F4}html pre.shiki code .sXpww, html code.shiki .sXpww{--shiki-light:#40A02B;--shiki-default:#40A02B;--shiki-dark:#A6E3A1}html pre.shiki code .sCFbw, html code.shiki .sCFbw{--shiki-light:#179299;--shiki-default:#179299;--shiki-dark:#94E2D5}html pre.shiki code .snhBn, html code.shiki .snhBn{--shiki-light:#FE640B;--shiki-default:#FE640B;--shiki-dark:#FAB387}html pre.shiki code .sY9YT, html code.shiki .sY9YT{--shiki-light:#7C7F93;--shiki-light-font-style:italic;--shiki-default:#7C7F93;--shiki-default-font-style:italic;--shiki-dark:#9399B2;--shiki-dark-font-style:italic}html pre.shiki code .s0rF6, html code.shiki .s0rF6{--shiki-light:#D20F39;--shiki-light-font-style:italic;--shiki-default:#D20F39;--shiki-default-font-style:italic;--shiki-dark:#F38BA8;--shiki-dark-font-style:italic}",{"title":3918,"searchDepth":3931,"depth":3931,"links":6854},[6855,6856,6857,6858,6859,6860,6861,6862,6863,6864],{"id":3784,"depth":3931,"text":3785},{"id":3991,"depth":3931,"text":3992},{"id":4288,"depth":3931,"text":4289},{"id":4437,"depth":3931,"text":4438},{"id":4596,"depth":3931,"text":4597},{"id":4736,"depth":3931,"text":4737},{"id":6592,"depth":3931,"text":6593},{"id":6741,"depth":3931,"text":6742},{"id":6793,"depth":3931,"text":6794},{"id":6813,"depth":3931,"text":6814},"Read three coefficients and solve a x² + b x + c = 0, telling apart two real roots, a repeated root, a complex pair, a linear equation, an inconsistent one and an identity.","md",{"number":6868,"source":6869,"requires":6870},"27.7","Projects\u002FQuadratic",[6871,6872,6873,6874,6875,6876],"input","parse","string-view","error-variant","float-special","math",{},{"title":1322},{"title":3718,"description":6865},"CLGPGOb_UrTACqVPWYfJyw_IvSL9TdQWAKI4ysEhD4E",[6882,6884],{"title":1318,"path":1319,"stem":1320,"description":6883,"children":-1},"Read a radius and print the circle's circumference and area, telling apart the end of input, a read error, text that is not a number, and a number that is not a valid radius.",{"title":1326,"path":1327,"stem":1328,"description":6885,"children":-1},"Count how often each word appears in a tongue twister, and print the counts in alphabetical order.",1792235741873]