mirror of
https://github.com/saymrwulf/anza-ed25519-verified.git
synced 2026-09-04 20:24:06 +00:00
Canonicity pass (the layer is now closed under its own preconditions): - sub_val_spec post carries the exact value equation (exists beta <= 1, scVal r + scVal b = scVal a + ell*beta, with the underflow guard beta = 1 -> scVal a < scVal b) - add/montgomery_reduce/mul/aggregate posts all carry scVal r < ell: canonical inputs give canonical outputs everywhere. Needed because from_bytes_wide (hash-to-scalar) feeds Montgomery outputs into add. Hash-to-scalar foundation (toward Scalar::from_hash / EdDSA verify): - extraction scope + from_bytes_wide (brings constants::R); regenerated gen - source repos carry a documented Aeneas-compat patch: the bare `hi[4] = words[7] >> 20` extracts ill-typed at pin bf13c42e; masked (semantic no-op, words[7] >> 20 < 2^44) - Proofs/ScalarWideSpec.lean: R constant lemmas (R = 2^260 mod ell, witness 2^260 = R + 255*ell) and montgomery_mul_spec, the single Montgomery round: [r]*2^260 = [a]*[b], canonical bounded output check-scalar.sh: 10 proof files, 11 kernel audits, all exactly [propext, Classical.choice, Quot.sound]. Button pressed fresh: green.
1 line
No EOL
1.9 MiB
1 line
No EOL
1.9 MiB
{"charon_version":"0.1.212","translated":{"crate_name":"curve25519","options":{"ullbc":false,"precise_drops":false,"skip_borrowck":false,"mir":null,"rustc_args":[],"targets":[],"monomorphize":false,"monomorphize_mut":null,"start_from":["crate::backend::serial::u64::scalar::_::add","crate::backend::serial::u64::scalar::_::sub","crate::backend::serial::u64::scalar::_::mul","crate::backend::serial::u64::scalar::_::square","crate::backend::serial::u64::scalar::_::montgomery_mul","crate::backend::serial::u64::scalar::_::montgomery_square","crate::backend::serial::u64::scalar::_::montgomery_reduce","crate::backend::serial::u64::scalar::_::montgomery_invert","crate::backend::serial::u64::scalar::_::as_montgomery","crate::backend::serial::u64::scalar::_::from_montgomery","crate::backend::serial::u64::scalar::_::from_bytes_wide"],"start_from_if_exists":[],"start_from_attribute":null,"start_from_pub":false,"include":[],"opaque":[],"exclude":[],"extract_opaque_bodies":false,"translate_all_methods":false,"duplicate_defaulted_methods":true,"lift_associated_types":["*"],"hide_marker_traits":true,"remove_adt_clauses":true,"hide_allocator":true,"remove_unused_self_clauses":true,"desugar_drops":false,"ops_to_function_calls":true,"index_to_function_calls":true,"treat_box_as_builtin":true,"raw_consts":false,"unsized_strings":false,"reconstruct_fallible_operations":true,"reconstruct_asserts":true,"unbind_item_vars":true,"print_original_ullbc":false,"print_ullbc":false,"print_built_llbc":false,"print_llbc":false,"dest_dir":null,"dest_file":"/home/oho/GitClone/Claude/FormalVerification/anza-ed25519-verified/verification/CurveScalar.llbc","no_dedup_serialized_ast":false,"format":null,"no_serialize":false,"no_typecheck":false,"no_normalize":false,"abort_on_error":false,"error_on_warnings":false,"preset":"Aeneas"},"target_information":[{"key":"x86_64-unknown-linux-gnu","value":{"target_pointer_size":8,"is_little_endian":true}}],"files":[{"id":0,"name":{"Local":"curve25519/solana-ed25519/src/backend/serial/u64/scalar.rs"},"crate_name":"curve25519","contents":"//! Arithmetic mod \\\\(2\\^{252} + 27742317777372353535851937790883648493\\\\)\n//! with five \\\\(52\\\\)-bit unsigned limbs.\n//!\n//! \\\\(51\\\\)-bit limbs would cover the desired bit range (\\\\(253\\\\)\n//! bits), but isn't large enough to reduce a \\\\(512\\\\)-bit number with\n//! Montgomery multiplication, so \\\\(52\\\\) bits is used instead. To see\n//! that this is safe for intermediate results, note that the largest\n//! limb in a \\\\(5\\times 5\\\\) product of \\\\(52\\\\)-bit limbs will be\n//!\n//! ```text\n//! (0xfffffffffffff^2) * 5 = 0x4ffffffffffff60000000000005 (107 bits).\n//! ```\n\nuse core::fmt::Debug;\nuse core::ops::{Index, IndexMut};\nuse subtle::{Choice, ConditionallySelectable};\n\n#[cfg(feature = \"zeroize\")]\nuse zeroize::{DefaultIsZeroes, Zeroize};\n\nuse crate::constants;\n\n/// The `Scalar52` struct represents an element in\n/// \\\\(\\mathbb Z / \\ell \\mathbb Z\\\\) as 5 \\\\(52\\\\)-bit limbs.\n#[derive(Copy, Clone, Default)]\npub struct Scalar52(pub [u64; 5]);\n\nimpl Debug for Scalar52 {\n fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result {\n f.write_str(\"Scalar52{..}\")\n }\n}\n\n#[cfg(feature = \"zeroize\")]\nimpl DefaultIsZeroes for Scalar52 {}\n\nimpl Index<usize> for Scalar52 {\n type Output = u64;\n fn index(&self, _index: usize) -> &u64 {\n &(self.0[_index])\n }\n}\n\nimpl IndexMut<usize> for Scalar52 {\n fn index_mut(&mut self, _index: usize) -> &mut u64 {\n &mut (self.0[_index])\n }\n}\n\n/// u64 * u64 = u128 multiply helper\n#[inline(always)]\nfn m(x: u64, y: u64) -> u128 {\n (x as u128) * (y as u128)\n}\n\nimpl Scalar52 {\n /// The scalar \\\\( 0 \\\\).\n pub const ZERO: Scalar52 = Scalar52([0, 0, 0, 0, 0]);\n\n /// Unpack a 32 byte / 256 bit scalar into 5 52-bit limbs.\n #[rustfmt::skip] // keep alignment of s[*] calculations\n pub fn from_bytes(bytes: &[u8; 32]) -> Scalar52 {\n let mut words = [0u64; 4];\n for i in 0..4 {\n for j in 0..8 {\n words[i] |= (bytes[(i * 8) + j] as u64) << (j * 8);\n }\n }\n\n let mask = (1u64 << 52) - 1;\n let top_mask = (1u64 << 48) - 1;\n let mut s = Scalar52::ZERO;\n\n s[0] = words[0] & mask;\n s[1] = ((words[0] >> 52) | (words[1] << 12)) & mask;\n s[2] = ((words[1] >> 40) | (words[2] << 24)) & mask;\n s[3] = ((words[2] >> 28) | (words[3] << 36)) & mask;\n s[4] = (words[3] >> 16) & top_mask;\n\n #[cfg(feature = \"zeroize\")]\n words.zeroize();\n\n s\n }\n\n /// Reduce a 64 byte / 512 bit scalar mod l\n #[rustfmt::skip] // keep alignment of lo[*] and hi[*] calculations\n pub fn from_bytes_wide(bytes: &[u8; 64]) -> Scalar52 {\n let mut words = [0u64; 8];\n for i in 0..8 {\n for j in 0..8 {\n words[i] |= (bytes[(i * 8) + j] as u64) << (j * 8);\n }\n }\n\n let mask = (1u64 << 52) - 1;\n let mut lo = Scalar52::ZERO;\n let mut hi = Scalar52::ZERO;\n\n lo[0] = words[0] & mask;\n lo[1] = ((words[0] >> 52) | (words[ 1] << 12)) & mask;\n lo[2] = ((words[1] >> 40) | (words[ 2] << 24)) & mask;\n lo[3] = ((words[2] >> 28) | (words[ 3] << 36)) & mask;\n lo[4] = ((words[3] >> 16) | (words[ 4] << 48)) & mask;\n hi[0] = (words[4] >> 4) & mask;\n hi[1] = ((words[4] >> 56) | (words[ 5] << 8)) & mask;\n hi[2] = ((words[5] >> 44) | (words[ 6] << 20)) & mask;\n hi[3] = ((words[6] >> 32) | (words[ 7] << 32)) & mask;\n // AENEAS-COMPAT: a bare `x >> c` as the full RHS extracts ill-typed\n // at the pinned Aeneas (wrapping_shr with an unsubstituted i32 cast);\n // masking is a semantic no-op here (words[7] >> 20 < 2^44 < 2^52).\n hi[4] = (words[7] >> 20) & mask;\n\n lo = Scalar52::montgomery_mul(&lo, &constants::R); // (lo * R) / R = lo\n hi = Scalar52::montgomery_mul(&hi, &constants::RR); // (hi * R^2) / R = hi * R\n\n let reduced = Scalar52::add(&hi, &lo);\n\n #[cfg(feature = \"zeroize\")]\n {\n words.zeroize();\n lo.zeroize();\n hi.zeroize();\n }\n\n reduced\n }\n\n /// Pack the limbs of this `Scalar52` into 32 bytes\n #[rustfmt::skip] // keep alignment of s[*] calculations\n #[allow(clippy::identity_op)]\n pub fn to_bytes(self) -> [u8; 32] {\n let mut s = [0u8; 32];\n\n s[ 0] = (self.0[ 0] >> 0) as u8;\n s[ 1] = (self.0[ 0] >> 8) as u8;\n s[ 2] = (self.0[ 0] >> 16) as u8;\n s[ 3] = (self.0[ 0] >> 24) as u8;\n s[ 4] = (self.0[ 0] >> 32) as u8;\n s[ 5] = (self.0[ 0] >> 40) as u8;\n s[ 6] = ((self.0[ 0] >> 48) | (self.0[ 1] << 4)) as u8;\n s[ 7] = (self.0[ 1] >> 4) as u8;\n s[ 8] = (self.0[ 1] >> 12) as u8;\n s[ 9] = (self.0[ 1] >> 20) as u8;\n s[10] = (self.0[ 1] >> 28) as u8;\n s[11] = (self.0[ 1] >> 36) as u8;\n s[12] = (self.0[ 1] >> 44) as u8;\n s[13] = (self.0[ 2] >> 0) as u8;\n s[14] = (self.0[ 2] >> 8) as u8;\n s[15] = (self.0[ 2] >> 16) as u8;\n s[16] = (self.0[ 2] >> 24) as u8;\n s[17] = (self.0[ 2] >> 32) as u8;\n s[18] = (self.0[ 2] >> 40) as u8;\n s[19] = ((self.0[ 2] >> 48) | (self.0[ 3] << 4)) as u8;\n s[20] = (self.0[ 3] >> 4) as u8;\n s[21] = (self.0[ 3] >> 12) as u8;\n s[22] = (self.0[ 3] >> 20) as u8;\n s[23] = (self.0[ 3] >> 28) as u8;\n s[24] = (self.0[ 3] >> 36) as u8;\n s[25] = (self.0[ 3] >> 44) as u8;\n s[26] = (self.0[ 4] >> 0) as u8;\n s[27] = (self.0[ 4] >> 8) as u8;\n s[28] = (self.0[ 4] >> 16) as u8;\n s[29] = (self.0[ 4] >> 24) as u8;\n s[30] = (self.0[ 4] >> 32) as u8;\n s[31] = (self.0[ 4] >> 40) as u8;\n\n s\n }\n\n /// Compute `a + b` (mod l)\n pub fn add(a: &Scalar52, b: &Scalar52) -> Scalar52 {\n let mut sum = Scalar52::ZERO;\n let mask = (1u64 << 52) - 1;\n\n // a + b\n let mut carry: u64 = 0;\n for i in 0..5 {\n carry = a[i] + b[i] + (carry >> 52);\n sum[i] = carry & mask;\n }\n\n // subtract l if the sum is >= l\n Scalar52::sub(&sum, &constants::L)\n }\n\n /// Compute `a - b` (mod l)\n pub fn sub(a: &Scalar52, b: &Scalar52) -> Scalar52 {\n let mut difference = Scalar52::ZERO;\n let mask = (1u64 << 52) - 1;\n\n // a - b\n let mut borrow: u64 = 0;\n for i in 0..5 {\n borrow = a[i].wrapping_sub(b[i] + (borrow >> 63));\n difference[i] = borrow & mask;\n }\n\n // conditionally add l if the difference is negative\n difference.conditional_add_l(Choice::from((borrow >> 63) as u8));\n difference\n }\n\n pub(crate) fn conditional_add_l(&mut self, condition: Choice) -> u64 {\n let mut carry: u64 = 0;\n let mask = (1u64 << 52) - 1;\n\n for i in 0..5 {\n let addend = u64::conditional_select(&0, &constants::L[i], condition);\n carry = (carry >> 52) + self[i] + addend;\n self[i] = carry & mask;\n }\n\n carry\n }\n\n /// Compute a raw in-place carrying right shift over the limbs.\n #[inline(always)]\n pub(crate) fn shr1_assign(&mut self) -> u64 {\n let mut carry: u64 = 0;\n for i in (0..5).rev() {\n let limb = self[i];\n let next_carry = limb & 1;\n self[i] = (limb >> 1) | (carry << 51);\n carry = next_carry;\n }\n carry\n }\n\n /// Compute `a * b`\n #[inline(always)]\n #[rustfmt::skip] // keep alignment of z[*] calculations\n pub (crate) fn mul_internal(a: &Scalar52, b: &Scalar52) -> [u128; 9] {\n let mut z = [0u128; 9];\n\n z[0] = m(a[0], b[0]);\n z[1] = m(a[0], b[1]) + m(a[1], b[0]);\n z[2] = m(a[0], b[2]) + m(a[1], b[1]) + m(a[2], b[0]);\n z[3] = m(a[0], b[3]) + m(a[1], b[2]) + m(a[2], b[1]) + m(a[3], b[0]);\n z[4] = m(a[0], b[4]) + m(a[1], b[3]) + m(a[2], b[2]) + m(a[3], b[1]) + m(a[4], b[0]);\n z[5] = m(a[1], b[4]) + m(a[2], b[3]) + m(a[3], b[2]) + m(a[4], b[1]);\n z[6] = m(a[2], b[4]) + m(a[3], b[3]) + m(a[4], b[2]);\n z[7] = m(a[3], b[4]) + m(a[4], b[3]);\n z[8] = m(a[4], b[4]);\n\n z\n }\n\n /// Compute `a^2`\n #[inline(always)]\n #[rustfmt::skip] // keep alignment of return calculations\n fn square_internal(a: &Scalar52) -> [u128; 9] {\n let aa = [\n a[0] * 2,\n a[1] * 2,\n a[2] * 2,\n a[3] * 2,\n ];\n\n [\n m( a[0], a[0]),\n m(aa[0], a[1]),\n m(aa[0], a[2]) + m( a[1], a[1]),\n m(aa[0], a[3]) + m(aa[1], a[2]),\n m(aa[0], a[4]) + m(aa[1], a[3]) + m( a[2], a[2]),\n m(aa[1], a[4]) + m(aa[2], a[3]),\n m(aa[2], a[4]) + m( a[3], a[3]),\n m(aa[3], a[4]),\n m(a[4], a[4])\n ]\n }\n\n /// Compute `limbs/R` (mod l), where R is the Montgomery modulus 2^260\n #[inline(always)]\n #[rustfmt::skip] // keep alignment of n* and r* calculations\n pub (crate) fn montgomery_reduce(limbs: &[u128; 9]) -> Scalar52 {\n\n #[inline(always)]\n fn part1(sum: u128) -> (u128, u64) {\n let p = (sum as u64).wrapping_mul(constants::LFACTOR) & ((1u64 << 52) - 1);\n ((sum + m(p, constants::L[0])) >> 52, p)\n }\n\n #[inline(always)]\n fn part2(sum: u128) -> (u128, u64) {\n let w = (sum as u64) & ((1u64 << 52) - 1);\n (sum >> 52, w)\n }\n\n // note: l[3] is zero, so its multiples can be skipped\n let l = &constants::L;\n\n // the first half computes the Montgomery adjustment factor n, and begins adding n*l to make limbs divisible by R\n let (carry, n0) = part1( limbs[0]);\n let (carry, n1) = part1(carry + limbs[1] + m(n0, l[1]));\n let (carry, n2) = part1(carry + limbs[2] + m(n0, l[2]) + m(n1, l[1]));\n let (carry, n3) = part1(carry + limbs[3] + m(n1, l[2]) + m(n2, l[1]));\n let (carry, n4) = part1(carry + limbs[4] + m(n0, l[4]) + m(n2, l[2]) + m(n3, l[1]));\n\n // limbs is divisible by R now, so we can divide by R by simply storing the upper half as the result\n let (carry, r0) = part2(carry + limbs[5] + m(n1, l[4]) + m(n3, l[2]) + m(n4, l[1]));\n let (carry, r1) = part2(carry + limbs[6] + m(n2,l[4]) + m(n4, l[2]));\n let (carry, r2) = part2(carry + limbs[7] + m(n3, l[4]) );\n let (carry, r3) = part2(carry + limbs[8] + m(n4, l[4]));\n let r4 = carry as u64;\n\n // result may be >= l, so attempt to subtract l\n Scalar52::sub(&Scalar52([r0, r1, r2, r3, r4]), l)\n }\n\n /// Compute `a * b` (mod l)\n #[inline(never)]\n #[cfg_attr(not(feature = \"zeroize\"), allow(unused_mut))]\n pub fn mul(a: &Scalar52, b: &Scalar52) -> Scalar52 {\n let mut ab_limbs = Scalar52::mul_internal(a, b);\n let mut ab = Scalar52::montgomery_reduce(&ab_limbs);\n let mut rr_limbs = Scalar52::mul_internal(&ab, &constants::RR);\n let product = Scalar52::montgomery_reduce(&rr_limbs);\n\n #[cfg(feature = \"zeroize\")]\n {\n ab_limbs.zeroize();\n ab.zeroize();\n rr_limbs.zeroize();\n }\n\n product\n }\n\n /// Compute `a^2` (mod l)\n #[inline(never)]\n #[cfg_attr(not(feature = \"zeroize\"), allow(unused_mut))]\n #[allow(dead_code)] // XXX we don't expose square() via the Scalar API\n pub fn square(&self) -> Scalar52 {\n let mut aa_limbs = Scalar52::square_internal(self);\n let mut aa = Scalar52::montgomery_reduce(&aa_limbs);\n let mut rr_limbs = Scalar52::mul_internal(&aa, &constants::RR);\n let square = Scalar52::montgomery_reduce(&rr_limbs);\n\n #[cfg(feature = \"zeroize\")]\n {\n aa_limbs.zeroize();\n aa.zeroize();\n rr_limbs.zeroize();\n }\n\n square\n }\n\n /// Compute `(a * b) / R` (mod l), where R is the Montgomery modulus 2^260\n #[inline(never)]\n #[cfg_attr(not(feature = \"zeroize\"), allow(unused_mut))]\n pub fn montgomery_mul(a: &Scalar52, b: &Scalar52) -> Scalar52 {\n let mut limbs = Scalar52::mul_internal(a, b);\n let product = Scalar52::montgomery_reduce(&limbs);\n\n #[cfg(feature = \"zeroize\")]\n limbs.zeroize();\n\n product\n }\n\n /// Compute `(a^2) / R` (mod l) in Montgomery form, where R is the Montgomery modulus 2^260\n #[inline(never)]\n #[cfg_attr(not(feature = \"zeroize\"), allow(unused_mut))]\n pub fn montgomery_square(&self) -> Scalar52 {\n let mut limbs = Scalar52::square_internal(self);\n let square = Scalar52::montgomery_reduce(&limbs);\n\n #[cfg(feature = \"zeroize\")]\n limbs.zeroize();\n\n square\n }\n\n /// Puts a Scalar52 in to Montgomery form, i.e. computes `a*R (mod l)`\n #[inline(never)]\n pub fn as_montgomery(&self) -> Scalar52 {\n Scalar52::montgomery_mul(self, &constants::RR)\n }\n\n /// Takes a Scalar52 out of Montgomery form, i.e. computes `a/R (mod l)`\n #[allow(clippy::wrong_self_convention)]\n #[inline(never)]\n pub fn from_montgomery(&self) -> Scalar52 {\n let mut limbs = [0u128; 9];\n for i in 0..5 {\n limbs[i] = self[i] as u128;\n }\n let scalar = Scalar52::montgomery_reduce(&limbs);\n\n #[cfg(feature = \"zeroize\")]\n limbs.zeroize();\n\n scalar\n }\n}\n\n#[cfg(test)]\nmod test {\n use super::*;\n\n /// Note: x is 2^253-1 which is slightly larger than the largest scalar produced by\n /// this implementation (l-1), and should show there are no overflows for valid scalars\n ///\n /// x = 14474011154664524427946373126085988481658748083205070504932198000989141204991\n /// x = 7237005577332262213973186563042994240801631723825162898930247062703686954002 mod l\n /// x = 3057150787695215392275360544382990118917283750546154083604586903220563173085*R mod l in Montgomery form\n pub static X: Scalar52 = Scalar52([\n 0x000fffffffffffff,\n 0x000fffffffffffff,\n 0x000fffffffffffff,\n 0x000fffffffffffff,\n 0x00001fffffffffff,\n ]);\n\n /// x^2 = 3078544782642840487852506753550082162405942681916160040940637093560259278169 mod l\n pub static XX: Scalar52 = Scalar52([\n 0x0001668020217559,\n 0x000531640ffd0ec0,\n 0x00085fd6f9f38a31,\n 0x000c268f73bb1cf4,\n 0x000006ce65046df0,\n ]);\n\n /// x^2 = 4413052134910308800482070043710297189082115023966588301924965890668401540959*R mod l in Montgomery form\n pub static XX_MONT: Scalar52 = Scalar52([\n 0x000c754eea569a5c,\n 0x00063b6ed36cb215,\n 0x0008ffa36bf25886,\n 0x000e9183614e7543,\n 0x0000061db6c6f26f,\n ]);\n\n /// y = 6145104759870991071742105800796537629880401874866217824609283457819451087098\n pub static Y: Scalar52 = Scalar52([\n 0x000b75071e1458fa,\n 0x000bf9d75e1ecdac,\n 0x000433d2baf0672b,\n 0x0005fffcc11fad13,\n 0x00000d96018bb825,\n ]);\n\n /// x*y = 36752150652102274958925982391442301741 mod l\n pub static XY: Scalar52 = Scalar52([\n 0x000ee6d76ba7632d,\n 0x000ed50d71d84e02,\n 0x00000000001ba634,\n 0x0000000000000000,\n 0x0000000000000000,\n ]);\n\n /// x*y = 658448296334113745583381664921721413881518248721417041768778176391714104386*R mod l in Montgomery form\n pub static XY_MONT: Scalar52 = Scalar52([\n 0x0006d52bf200cfd5,\n 0x00033fb1d7021570,\n 0x000f201bc07139d8,\n 0x0001267e3e49169e,\n 0x000007b839c00268,\n ]);\n\n /// a = 2351415481556538453565687241199399922945659411799870114962672658845158063753\n pub static A: Scalar52 = Scalar52([\n 0x0005236c07b3be89,\n 0x0001bc3d2a67c0c4,\n 0x000a4aa782aae3ee,\n 0x0006b3f6e4fec4c4,\n 0x00000532da9fab8c,\n ]);\n\n /// b = 4885590095775723760407499321843594317911456947580037491039278279440296187236\n pub static B: Scalar52 = Scalar52([\n 0x000d3fae55421564,\n 0x000c2df24f65a4bc,\n 0x0005b5587d69fb0b,\n 0x00094c091b013b3b,\n 0x00000acd25605473,\n ]);\n\n /// a+b = 0\n /// a-b = 4702830963113076907131374482398799845891318823599740229925345317690316127506\n pub static AB: Scalar52 = Scalar52([\n 0x000a46d80f677d12,\n 0x0003787a54cf8188,\n 0x0004954f0555c7dc,\n 0x000d67edc9fd8989,\n 0x00000a65b53f5718,\n ]);\n\n // c = (2^512 - 1) % l = 1627715501170711445284395025044413883736156588369414752970002579683115011840\n pub static C: Scalar52 = Scalar52([\n 0x000611e3449c0f00,\n 0x000a768859347a40,\n 0x0007f5be65d00e1b,\n 0x0009a3dceec73d21,\n 0x00000399411b7c30,\n ]);\n\n #[test]\n fn mul_max() {\n let res = Scalar52::mul(&X, &X);\n for i in 0..5 {\n assert!(res[i] == XX[i]);\n }\n }\n\n #[test]\n fn square_max() {\n let res = X.square();\n for i in 0..5 {\n assert!(res[i] == XX[i]);\n }\n }\n\n #[test]\n fn montgomery_mul_max() {\n let res = Scalar52::montgomery_mul(&X, &X);\n for i in 0..5 {\n assert!(res[i] == XX_MONT[i]);\n }\n }\n\n #[test]\n fn montgomery_square_max() {\n let res = X.montgomery_square();\n for i in 0..5 {\n assert!(res[i] == XX_MONT[i]);\n }\n }\n\n #[test]\n fn mul() {\n let res = Scalar52::mul(&X, &Y);\n for i in 0..5 {\n assert!(res[i] == XY[i]);\n }\n }\n\n #[test]\n fn montgomery_mul() {\n let res = Scalar52::montgomery_mul(&X, &Y);\n for i in 0..5 {\n assert!(res[i] == XY_MONT[i]);\n }\n }\n\n #[test]\n fn add() {\n let res = Scalar52::add(&A, &B);\n let zero = Scalar52::ZERO;\n for i in 0..5 {\n assert!(res[i] == zero[i]);\n }\n }\n\n #[test]\n fn sub() {\n let res = Scalar52::sub(&A, &B);\n for i in 0..5 {\n assert!(res[i] == AB[i]);\n }\n }\n\n #[test]\n fn from_bytes_wide() {\n let bignum = [255u8; 64]; // 2^512 - 1\n let reduced = Scalar52::from_bytes_wide(&bignum);\n for i in 0..5 {\n assert!(reduced[i] == C[i]);\n }\n }\n}\n"},{"id":1,"name":{"Local":"curve25519/solana-ed25519/src/backend/serial/u64.rs"},"crate_name":"curve25519","contents":"// -*- mode: rust; -*-\n//\n// This file is part of curve25519-dalek.\n// Copyright (c) 2016-2021 isis lovecruft\n// Copyright (c) 2016-2018 Henry de Valence\n// See LICENSE for licensing information.\n//\n// Authors:\n// - isis agora lovecruft <isis@patternsinthevoid.net>\n// - Henry de Valence <hdevalence@hdevalence.ca>\n\n//! The `u64` backend uses `u64`s and a `(u64, u64) -> u128` multiplier.\n//!\n//! On x86_64, the idiom `(x as u128) * (y as u128)` lowers to `MUL`\n//! instructions taking 64-bit inputs and producing 128-bit outputs. On\n//! other platforms, this implementation is not recommended.\n//!\n//! On Haswell and newer, the BMI2 extension provides `MULX`, and on\n//! Broadwell and newer, the ADX extension provides `ADCX` and `ADOX`\n//! (allowing the CPU to compute two carry chains in parallel). These\n//! will be used if available.\n\npub mod field;\n\npub mod scalar;\n\npub mod constants;\n"},{"id":2,"name":{"Local":"curve25519/solana-ed25519/src/backend/serial.rs"},"crate_name":"curve25519","contents":"// -*- mode: rust; -*-\n//\n// This file is part of curve25519-dalek.\n// Copyright (c) 2016-2021 isis lovecruft\n// Copyright (c) 2016-2019 Henry de Valence\n// See LICENSE for licensing information.\n//\n// Authors:\n// - isis agora lovecruft <isis@patternsinthevoid.net>\n// - Henry de Valence <hdevalence@hdevalence.ca>\n\n//! Serial implementations of field, scalar, point arithmetic.\n//!\n//! When the vector backend is disabled, the crate uses the mixed-model strategy\n//! for implementing point operations and scalar multiplication; see the\n//! [`curve_models`] and [`scalar_mul`] documentation for more information.\n//!\n//! When the vector backend is enabled, the field and scalar\n//! implementations are still used for non-vectorized operations.\n\n#[doc(hidden)]\npub mod u64;\n\npub mod curve_models;\n\npub mod scalar_mul;\n"},{"id":3,"name":{"Local":"curve25519/solana-ed25519/src/backend.rs"},"crate_name":"curve25519","contents":"// -*- mode: rust; -*-\n//\n// This file is part of curve25519-dalek.\n// Copyright (c) 2016-2021 isis lovecruft\n// Copyright (c) 2016-2019 Henry de Valence\n// See LICENSE for licensing information.\n//\n// Authors:\n// - isis agora lovecruft <isis@patternsinthevoid.net>\n// - Henry de Valence <hdevalence@hdevalence.ca>\n\n//! **INTERNALS:** Pluggable implementations for different architectures.\n//!\n//! The backend code is split into two parts: a serial backend,\n//! and a vector backend.\n//!\n//! The [`serial`] backend contains 32- and 64-bit implementations of\n//! field arithmetic and scalar arithmetic, as well as implementations\n//! of point operations using the mixed-model strategy (passing\n//! between different curve models depending on the operation).\n//!\n//! The [`vector`] backend contains implementations of vectorized\n//! field arithmetic, used to implement point operations using a novel\n//! implementation strategy derived from parallel formulas of Hisil,\n//! Wong, Carter, and Dawson.\n//!\n//! Because the two strategies give rise to different curve models,\n//! it's not possible to reuse exactly the same scalar multiplication\n//! code (or to write it generically), so both serial and vector\n//! backends contain matching implementations of scalar multiplication\n//! algorithms. These are intended to be selected by a `#[cfg]`-based\n//! type alias.\n//!\n//! The [`vector`] backend is selected by the `simd_backend` cargo\n//! feature; it uses the [`serial`] backend for non-vectorized operations.\n\nuse crate::EdwardsPoint;\nuse crate::Scalar;\n\npub mod serial;\n\n#[cfg(target_arch = \"x86_64\")]\npub mod vector;\n\n#[derive(Copy, Clone)]\nenum BackendKind {\n #[cfg(target_arch = \"x86_64\")]\n Avx2,\n Serial,\n}\n\n#[inline]\nfn get_selected_backend() -> BackendKind {\n #[cfg(target_arch = \"x86_64\")]\n {\n cpufeatures::new!(cpuid_avx2, \"avx2\");\n let token_avx2: cpuid_avx2::InitToken = cpuid_avx2::init();\n if token_avx2.get() {\n return BackendKind::Avx2;\n }\n }\n\n BackendKind::Serial\n}\n\n#[allow(missing_docs)]\n#[cfg(feature = \"alloc\")]\npub fn pippenger_optional_multiscalar_mul<I, J>(scalars: I, points: J) -> Option<EdwardsPoint>\nwhere\n I: IntoIterator,\n I::Item: core::borrow::Borrow<Scalar>,\n J: IntoIterator<Item = Option<EdwardsPoint>>,\n{\n use crate::traits::VartimeMultiscalarMul;\n\n match get_selected_backend() {\n #[cfg(target_arch = \"x86_64\")]\n BackendKind::Avx2 => {\n vector::scalar_mul::pippenger::spec_avx2::Pippenger::optional_multiscalar_mul::<I, J>(\n scalars, points,\n )\n }\n BackendKind::Serial => {\n serial::scalar_mul::pippenger::Pippenger::optional_multiscalar_mul::<I, J>(\n scalars, points,\n )\n }\n }\n}\n\n#[cfg(feature = \"alloc\")]\npub(crate) enum VartimePrecomputedStraus {\n #[cfg(target_arch = \"x86_64\")]\n Avx2(vector::scalar_mul::precomputed_straus::spec_avx2::VartimePrecomputedStraus),\n Scalar(serial::scalar_mul::precomputed_straus::VartimePrecomputedStraus),\n}\n\n#[cfg(feature = \"alloc\")]\nimpl VartimePrecomputedStraus {\n pub fn new<I>(static_points: I) -> Self\n where\n I: IntoIterator,\n I::Item: core::borrow::Borrow<EdwardsPoint>,\n {\n use crate::traits::VartimePrecomputedMultiscalarMul;\n\n match get_selected_backend() {\n #[cfg(target_arch = \"x86_64\")]\n BackendKind::Avx2 => VartimePrecomputedStraus::Avx2(\n vector::scalar_mul::precomputed_straus::spec_avx2::VartimePrecomputedStraus::new(\n static_points,\n ),\n ),\n BackendKind::Serial => VartimePrecomputedStraus::Scalar(\n serial::scalar_mul::precomputed_straus::VartimePrecomputedStraus::new(\n static_points,\n ),\n ),\n }\n }\n\n /// Return the number of static points in the precomputation.\n pub fn len(&self) -> usize {\n use crate::traits::VartimePrecomputedMultiscalarMul;\n\n match self {\n #[cfg(target_arch = \"x86_64\")]\n VartimePrecomputedStraus::Avx2(inner) => inner.len(),\n VartimePrecomputedStraus::Scalar(inner) => inner.len(),\n }\n }\n\n /// Determine if the precomputation is empty.\n pub fn is_empty(&self) -> bool {\n use crate::traits::VartimePrecomputedMultiscalarMul;\n\n match self {\n #[cfg(target_arch = \"x86_64\")]\n VartimePrecomputedStraus::Avx2(inner) => inner.is_empty(),\n VartimePrecomputedStraus::Scalar(inner) => inner.is_empty(),\n }\n }\n\n pub fn optional_mixed_multiscalar_mul<I, J, K>(\n &self,\n static_scalars: I,\n dynamic_scalars: J,\n dynamic_points: K,\n ) -> Option<EdwardsPoint>\n where\n I: IntoIterator,\n I::Item: core::borrow::Borrow<Scalar>,\n J: IntoIterator,\n J::Item: core::borrow::Borrow<Scalar>,\n K: IntoIterator<Item = Option<EdwardsPoint>>,\n {\n use crate::traits::VartimePrecomputedMultiscalarMul;\n\n match self {\n #[cfg(target_arch = \"x86_64\")]\n VartimePrecomputedStraus::Avx2(inner) => inner.optional_mixed_multiscalar_mul(\n static_scalars,\n dynamic_scalars,\n dynamic_points,\n ),\n VartimePrecomputedStraus::Scalar(inner) => inner.optional_mixed_multiscalar_mul(\n static_scalars,\n dynamic_scalars,\n dynamic_points,\n ),\n }\n }\n}\n\n#[allow(missing_docs)]\n#[cfg(feature = \"alloc\")]\npub fn straus_multiscalar_mul<I, J>(scalars: I, points: J) -> EdwardsPoint\nwhere\n I: IntoIterator,\n I::Item: core::borrow::Borrow<Scalar>,\n J: IntoIterator,\n J::Item: core::borrow::Borrow<EdwardsPoint>,\n{\n use crate::traits::MultiscalarMul;\n\n match get_selected_backend() {\n #[cfg(target_arch = \"x86_64\")]\n BackendKind::Avx2 => {\n vector::scalar_mul::straus::spec_avx2::Straus::multiscalar_mul::<I, J>(scalars, points)\n }\n BackendKind::Serial => {\n serial::scalar_mul::straus::Straus::multiscalar_mul::<I, J>(scalars, points)\n }\n }\n}\n\n#[allow(missing_docs)]\n#[cfg(feature = \"alloc\")]\npub fn straus_optional_multiscalar_mul<I, J>(scalars: I, points: J) -> Option<EdwardsPoint>\nwhere\n I: IntoIterator,\n I::Item: core::borrow::Borrow<Scalar>,\n J: IntoIterator<Item = Option<EdwardsPoint>>,\n{\n use crate::traits::VartimeMultiscalarMul;\n\n match get_selected_backend() {\n #[cfg(target_arch = \"x86_64\")]\n BackendKind::Avx2 => {\n vector::scalar_mul::straus::spec_avx2::Straus::optional_multiscalar_mul::<I, J>(\n scalars, points,\n )\n }\n BackendKind::Serial => {\n serial::scalar_mul::straus::Straus::optional_multiscalar_mul::<I, J>(scalars, points)\n }\n }\n}\n\n/// Perform constant-time, variable-base scalar multiplication.\npub fn variable_base_mul(point: &EdwardsPoint, scalar: &Scalar) -> EdwardsPoint {\n match get_selected_backend() {\n #[cfg(target_arch = \"x86_64\")]\n BackendKind::Avx2 => vector::scalar_mul::variable_base::spec_avx2::mul(point, scalar),\n BackendKind::Serial => serial::scalar_mul::variable_base::mul(point, scalar),\n }\n}\n\n/// Compute \\\\(aA + bB\\\\) in variable time, where \\\\(B\\\\) is the Ed25519 basepoint.\n#[allow(non_snake_case)]\npub fn vartime_double_base_mul(a: &Scalar, A: &EdwardsPoint, b: &Scalar) -> EdwardsPoint {\n match get_selected_backend() {\n #[cfg(target_arch = \"x86_64\")]\n BackendKind::Avx2 => vector::scalar_mul::vartime_double_base::spec_avx2::mul(a, A, b),\n BackendKind::Serial => serial::scalar_mul::vartime_double_base::mul(a, A, b),\n }\n}\n\n/// Compute \\\\(a_1 A_1 + a_2 A_2 + b B\\\\) in variable time, where \\\\(B\\\\) is the Ed25519 basepoint.\n///\n/// This function uses an optimized path when \\\\(a_1\\\\) and \\\\(a_2\\\\) are less than \\\\(2^{128}\\\\),\n/// and falls back to general scalar multiplication otherwise.\n#[allow(non_snake_case)]\npub fn vartime_triple_base_mul_128_128_256(\n a1: &Scalar,\n A1: &EdwardsPoint,\n a2: &Scalar,\n A2: &EdwardsPoint,\n b: &Scalar,\n) -> EdwardsPoint {\n if !scalar_fits_in_128_bits(a1) || !scalar_fits_in_128_bits(a2) {\n return (a1 * A1) + (a2 * A2) + EdwardsPoint::mul_base(b);\n }\n\n vartime_triple_base_mul_128_128_256_prechecked(a1, A1, a2, A2, b)\n}\n\n/// Compute \\\\(a_1 A_1 + a_2 A_2 + b B\\\\) using the optimized 128/128/256-bit path.\n///\n/// Callers must ensure \\\\(a_1\\\\) and \\\\(a_2\\\\) are less than \\\\(2^{128}\\\\).\n#[allow(non_snake_case)]\npub(crate) fn vartime_triple_base_mul_128_128_256_prechecked(\n a1: &Scalar,\n A1: &EdwardsPoint,\n a2: &Scalar,\n A2: &EdwardsPoint,\n b: &Scalar,\n) -> EdwardsPoint {\n match get_selected_backend() {\n #[cfg(target_arch = \"x86_64\")]\n BackendKind::Avx2 => {\n vector::scalar_mul::vartime_triple_base::spec_avx2::mul_128_128_256_prechecked(\n a1, A1, a2, A2, b,\n )\n }\n BackendKind::Serial => {\n serial::scalar_mul::vartime_triple_base::mul_128_128_256_prechecked(a1, A1, a2, A2, b)\n }\n }\n}\n\n#[inline]\nfn scalar_fits_in_128_bits(scalar: &Scalar) -> bool {\n scalar.as_bytes()[16..32].iter().all(|&byte| byte == 0)\n}\n"},{"id":4,"name":{"Local":"curve25519/solana-ed25519/src/lib.rs"},"crate_name":"curve25519","contents":"// -*- mode: rust; -*-\n//\n// This file is part of curve25519.\n// Copyright (c) 2016-2021 isis lovecruft\n// Copyright (c) 2016-2019 Henry de Valence\n// See LICENSE for licensing information.\n//\n// Authors:\n// - isis agora lovecruft <isis@patternsinthevoid.net>\n// - Henry de Valence <hdevalence@hdevalence.ca>\n\n#![no_std]\n#![cfg_attr(docsrs, feature(doc_cfg))]\n#![cfg_attr(docsrs, doc(auto_cfg(hide(docsrs))))]\n//------------------------------------------------------------------------\n// Documentation:\n//------------------------------------------------------------------------\n#![doc(\n html_logo_url = \"https://cdn.jsdelivr.net/gh/dalek-cryptography/curve25519/docs/assets/dalek-logo-clear.png\"\n)]\n#![doc = include_str!(\"../README.md\")]\n//------------------------------------------------------------------------\n// Linting:\n//------------------------------------------------------------------------\n#![cfg_attr(allow_unused_unsafe, allow(unused_unsafe))]\n#![warn(\n clippy::mod_module_files,\n clippy::unwrap_used,\n missing_docs,\n rust_2018_idioms,\n unused_lifetimes,\n unused_qualifications\n)]\n\n//------------------------------------------------------------------------\n// External dependencies:\n//------------------------------------------------------------------------\n\n#[cfg(feature = \"alloc\")]\n#[allow(unused_imports)]\n#[macro_use]\nextern crate alloc;\n\n// TODO: move std-dependent tests to `tests/`\n#[cfg(any(test, feature = \"std\"))]\n#[macro_use]\nextern crate std;\n\n#[cfg(feature = \"digest\")]\npub use digest;\n\n// Internal macros. Must come first!\n#[macro_use]\npub(crate) mod macros;\n\n//------------------------------------------------------------------------\n// curve25519 public modules\n//------------------------------------------------------------------------\n\n// Scalar arithmetic mod l = 2^252 + ..., the order of the Ristretto group\npub mod scalar;\n\n// Point operations on the Montgomery form of Curve25519\npub mod montgomery;\n\n// Point operations on the Edwards form of Curve25519\npub mod edwards;\n\n// Point operations on the short Weierstrass form of Curve25519\npub mod short_weierstrass;\n\n// Group operations on the Ristretto group\npub mod ristretto;\n\n// Useful constants, like the Ed25519 basepoint\npub mod constants;\n\n// External (and internal) traits.\npub mod traits;\n\n//------------------------------------------------------------------------\n// ed25519 public modules\n//------------------------------------------------------------------------\n\npub mod ed_sigs;\n\n//------------------------------------------------------------------------\n// curve25519 internal modules\n//------------------------------------------------------------------------\n\n// Finite field arithmetic mod p = 2^255 - 19\npub(crate) mod field;\n\n// Arithmetic backends (using u32, u64, etc) live here\n#[cfg(docsrs)]\npub mod backend;\n#[cfg(not(docsrs))]\npub(crate) mod backend;\n\n// Generic code for window lookups\npub(crate) mod window;\n\n#[cfg(feature = \"lizard\")]\nmod lizard;\n\npub use crate::{\n edwards::EdwardsPoint, montgomery::MontgomeryPoint, ristretto::RistrettoPoint, scalar::Scalar,\n};\n\n// Build time diagnostics for validation\n#[cfg(curve25519_diagnostics = \"build\")]\nmod diagnostics;\n"},{"id":5,"name":{"Local":"curve25519/solana-ed25519/src/scalar.rs"},"crate_name":"curve25519","contents":"// -*- mode: rust; -*-\n//\n// This file is part of curve25519-dalek.\n// Copyright (c) 2016-2021 isis lovecruft\n// Copyright (c) 2016-2019 Henry de Valence\n// Portions Copyright 2017 Brian Smith\n// See LICENSE for licensing information.\n//\n// Authors:\n// - Isis Agora Lovecruft <isis@patternsinthevoid.net>\n// - Henry de Valence <hdevalence@hdevalence.ca>\n// - Brian Smith <brian@briansmith.org>\n\n//! Arithmetic on scalars (integers mod the group order).\n//!\n//! Both the Ristretto group and the Ed25519 basepoint have prime order\n//! \\\\( \\ell = 2\\^{252} + 27742317777372353535851937790883648493 \\\\).\n//!\n//! This code is intended to be useful with both the Ristretto group\n//! (where everything is done modulo \\\\( \\ell \\\\)), and the X/Ed25519\n//! setting, which mandates specific bit-twiddles that are not\n//! well-defined modulo \\\\( \\ell \\\\).\n//!\n//! All arithmetic on `Scalars` is done modulo \\\\( \\ell \\\\).\n//!\n//! # Constructing a scalar\n//!\n//! To create a [`Scalar`](struct.Scalar.html) from a supposedly canonical encoding, use\n//! [`Scalar::from_canonical_bytes`](struct.Scalar.html#method.from_canonical_bytes).\n//!\n//! This function does input validation, ensuring that the input bytes\n//! are the canonical encoding of a `Scalar`.\n//! If they are, we'll get\n//! `Some(Scalar)` in return:\n//!\n//! ```\n//! use curve25519::scalar::Scalar;\n//!\n//! let one_as_bytes: [u8; 32] = Scalar::ONE.to_bytes();\n//! let a: Option<Scalar> = Scalar::from_canonical_bytes(one_as_bytes).into();\n//!\n//! assert!(a.is_some());\n//! ```\n//!\n//! However, if we give it bytes representing a scalar larger than \\\\( \\ell \\\\)\n//! (in this case, \\\\( \\ell + 2 \\\\)), we'll get `None` back:\n//!\n//! ```\n//! use curve25519::scalar::Scalar;\n//!\n//! let l_plus_two_bytes: [u8; 32] = [\n//! 0xef, 0xd3, 0xf5, 0x5c, 0x1a, 0x63, 0x12, 0x58,\n//! 0xd6, 0x9c, 0xf7, 0xa2, 0xde, 0xf9, 0xde, 0x14,\n//! 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n//! 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10,\n//! ];\n//! let a: Option<Scalar> = Scalar::from_canonical_bytes(l_plus_two_bytes).into();\n//!\n//! assert!(a.is_none());\n//! ```\n//!\n//! Another way to create a `Scalar` is by reducing a \\\\(256\\\\)-bit integer mod\n//! \\\\( \\ell \\\\), for which one may use the\n//! [`Scalar::from_bytes_mod_order`](struct.Scalar.html#method.from_bytes_mod_order)\n//! method. In the case of the second example above, this would reduce the\n//! resultant scalar \\\\( \\mod \\ell \\\\), producing \\\\( 2 \\\\):\n//!\n//! ```\n//! use curve25519::scalar::Scalar;\n//!\n//! let l_plus_two_bytes: [u8; 32] = [\n//! 0xef, 0xd3, 0xf5, 0x5c, 0x1a, 0x63, 0x12, 0x58,\n//! 0xd6, 0x9c, 0xf7, 0xa2, 0xde, 0xf9, 0xde, 0x14,\n//! 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n//! 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x10,\n//! ];\n//! let a: Scalar = Scalar::from_bytes_mod_order(l_plus_two_bytes);\n//!\n//! let two: Scalar = Scalar::ONE + Scalar::ONE;\n//!\n//! assert!(a == two);\n//! ```\n//!\n//! There is also a constructor that reduces a \\\\(512\\\\)-bit integer,\n//! [`Scalar::from_bytes_mod_order_wide`].\n//!\n//! To construct a `Scalar` as the hash of some input data, use\n//! [`Scalar::hash_from_bytes`], which takes a buffer, or\n//! [`Scalar::from_hash`], which allows an IUF API.\n//!\n#![cfg_attr(feature = \"digest\", doc = \"```\")]\n#![cfg_attr(not(feature = \"digest\"), doc = \"```ignore\")]\n//! # fn main() {\n//! use sha2::{Digest, Sha512};\n//! use curve25519::scalar::Scalar;\n//!\n//! // Hashing a single byte slice\n//! let a = Scalar::hash_from_bytes::<Sha512>(b\"Abolish ICE\");\n//!\n//! // Streaming data into a hash object\n//! let mut hasher = Sha512::default();\n//! hasher.update(b\"Abolish \");\n//! hasher.update(b\"ICE\");\n//! let a2 = Scalar::from_hash(hasher);\n//!\n//! assert_eq!(a, a2);\n//! # }\n//! ```\n//!\n//! See also `Scalar::hash_from_bytes` and `Scalar::from_hash` that\n//! reduces a \\\\(512\\\\)-bit integer, if the optional `digest` feature\n//! has been enabled.\n\nuse core::borrow::Borrow;\nuse core::fmt::Debug;\nuse core::iter::{Product, Sum};\nuse core::ops::Index;\nuse core::ops::Neg;\nuse core::ops::{Add, AddAssign};\nuse core::ops::{Mul, MulAssign};\nuse core::ops::{Sub, SubAssign};\n\n#[cfg(feature = \"group\")]\nuse group::ff::{Field, FromUniformBytes, PrimeField};\n#[cfg(feature = \"group-bits\")]\nuse group::ff::{FieldBits, PrimeFieldBits};\n\n#[cfg(any(feature = \"group\", feature = \"rand_core\"))]\nuse rand_core::RngCore;\n\n#[cfg(feature = \"rand_core\")]\nuse rand_core::CryptoRng;\n\n#[cfg(feature = \"digest\")]\nuse digest::Digest;\n#[cfg(feature = \"digest\")]\nuse digest::array::typenum::U64;\n\nuse subtle::Choice;\nuse subtle::ConditionallySelectable;\nuse subtle::ConstantTimeEq;\nuse subtle::CtOption;\n\n#[cfg(feature = \"zeroize\")]\nuse zeroize::Zeroize;\n\nuse crate::backend;\nuse crate::constants;\nuse crate::scalar::heea::{I256, curve25519_heea_vartime};\nuse crate::traits::HEEADecomposition;\n\nmod heea;\npub(crate) use heea::HEEA_MAX_INDEX;\n\npub(crate) const NAF_128_SIZE: usize = HEEA_MAX_INDEX + 1;\n\n/// An `UnpackedScalar` represents an element of the field GF(l), optimized for speed.\n///\n/// This is pinned to the 64-bit serial scalar backend.\ntype UnpackedScalar = backend::serial::u64::scalar::Scalar52;\n\n/// The `Scalar` struct holds an element of \\\\(\\mathbb Z / \\ell\\mathbb Z \\\\).\n#[allow(clippy::derived_hash_with_manual_eq)]\n#[derive(Copy, Clone, Hash)]\npub struct Scalar {\n /// `bytes` is a little-endian byte encoding of an integer representing a scalar modulo the\n /// group order.\n ///\n /// # Invariant #1\n ///\n /// The integer representing this scalar is less than \\\\(2\\^{255}\\\\). That is, the most\n /// significant bit of `bytes[31]` is 0.\n ///\n /// This is required for `EdwardsPoint` variable- and fixed-base multiplication, because most\n /// integers above 2^255 are unrepresentable in our radix-16 NAF (see [`Self::as_radix_16`]).\n /// The invariant is also required because our `MontgomeryPoint` multiplication assumes the MSB\n /// is 0 (see `MontgomeryPoint::mul`).\n ///\n /// # Invariant #2 (weak)\n ///\n /// The integer representing this scalar is less than \\\\(2\\^{255} - 19 \\\\), i.e., it represents\n /// a canonical representative of an element of \\\\( \\mathbb Z / \\ell\\mathbb Z \\\\). This is\n /// stronger than invariant #1. It also sometimes has to be broken.\n ///\n /// This invariant is deliberately broken in the implementation of `EdwardsPoint::{mul_clamped,\n /// mul_base_clamped}`, `MontgomeryPoint::{mul_clamped, mul_base_clamped}`, and\n /// `BasepointTable::mul_base_clamped`. This is not an issue though. As mentioned above,\n /// scalar-point multiplication is defined for any choice of `bytes` that satisfies invariant\n /// #1. Since clamping guarantees invariant #1 is satisfied, these operations are well defined.\n ///\n /// Note: Scalar-point mult is the _only_ thing you can do safely with an unreduced scalar.\n /// Scalar-scalar addition and subtraction are NOT correct when using unreduced scalars.\n /// Multiplication is correct, but this is only due to a quirk of our implementation, and not\n /// guaranteed to hold in general in the future.\n ///\n /// Note: It is not possible to construct an unreduced `Scalar` from the public API unless the\n /// `legacy_compatibility` is enabled (thus making `Scalar::from_bits` public). Thus, for all\n /// public non-legacy uses, invariant #2\n /// always holds.\n ///\n pub(crate) bytes: [u8; 32],\n}\n\nimpl Scalar {\n /// Construct a `Scalar` by reducing a 256-bit little-endian integer\n /// modulo the group order \\\\( \\ell \\\\).\n pub fn from_bytes_mod_order(bytes: [u8; 32]) -> Scalar {\n // Temporarily allow s_unreduced.bytes > 2^255 ...\n let s_unreduced = Scalar { bytes };\n\n // Then reduce mod the group order and return the reduced representative.\n let s = s_unreduced.reduce();\n debug_assert_eq!(0u8, s[31] >> 7);\n\n s\n }\n\n /// Construct a `Scalar` by reducing a 512-bit little-endian integer\n /// modulo the group order \\\\( \\ell \\\\).\n pub fn from_bytes_mod_order_wide(input: &[u8; 64]) -> Scalar {\n #[cfg_attr(not(feature = \"zeroize\"), allow(unused_mut))]\n let mut unpacked = UnpackedScalar::from_bytes_wide(input);\n let scalar = unpacked.pack();\n\n #[cfg(feature = \"zeroize\")]\n unpacked.zeroize();\n\n scalar\n }\n\n /// Attempt to construct a `Scalar` from a canonical byte representation.\n ///\n /// # Return\n ///\n /// - `Some(s)`, where `s` is the `Scalar` corresponding to `bytes`,\n /// if `bytes` is a canonical byte representation modulo the group order \\\\( \\ell \\\\);\n /// - `None` if `bytes` is not a canonical byte representation.\n pub fn from_canonical_bytes(bytes: [u8; 32]) -> CtOption<Scalar> {\n let high_bit_unset = (bytes[31] >> 7).ct_eq(&0);\n let candidate = Scalar { bytes };\n CtOption::new(candidate, high_bit_unset & candidate.is_canonical())\n }\n\n /// Construct a `Scalar` from bytes that are known to be canonical.\n #[inline]\n #[cfg(target_arch = \"x86_64\")]\n pub(crate) const fn from_canonical_bytes_unchecked(bytes: [u8; 32]) -> Scalar {\n Scalar { bytes }\n }\n\n /// Construct a `Scalar` from the low 255 bits of a 256-bit integer. This breaks the invariant\n /// that scalars are always reduced. Scalar-scalar arithmetic, i.e., addition, subtraction,\n /// multiplication, **does not work** on scalars produced from this function. You may only use\n /// the output of this function for `EdwardsPoint::mul`, `MontgomeryPoint::mul`, and\n /// `EdwardsPoint::vartime_double_scalar_mul_basepoint`. **Do not use this function** unless\n /// you absolutely have to.\n #[cfg(feature = \"legacy_compatibility\")]\n pub const fn from_bits(bytes: [u8; 32]) -> Scalar {\n let mut s = Scalar { bytes };\n // Ensure invariant #1 holds. That is, make s < 2^255 by masking the high bit.\n s.bytes[31] &= 0b0111_1111;\n\n s\n }\n}\n\nimpl Debug for Scalar {\n fn fmt(&self, f: &mut core::fmt::Formatter<'_>) -> core::fmt::Result {\n f.write_str(\"Scalar{..}\")\n }\n}\n\nimpl Eq for Scalar {}\nimpl PartialEq for Scalar {\n fn eq(&self, other: &Self) -> bool {\n self.ct_eq(other).into()\n }\n}\n\nimpl ConstantTimeEq for Scalar {\n fn ct_eq(&self, other: &Self) -> Choice {\n self.bytes.ct_eq(&other.bytes)\n }\n}\n\nimpl Index<usize> for Scalar {\n type Output = u8;\n\n /// Index the bytes of the representative for this `Scalar`. Mutation is not permitted.\n fn index(&self, _index: usize) -> &u8 {\n &(self.bytes[_index])\n }\n}\n\nimpl<'a> MulAssign<&'a Scalar> for Scalar {\n fn mul_assign(&mut self, _rhs: &'a Scalar) {\n *self = UnpackedScalar::mul(&self.unpack(), &_rhs.unpack()).pack();\n }\n}\n\ndefine_mul_assign_variants!(LHS = Scalar, RHS = Scalar);\n\nimpl<'a> Mul<&'a Scalar> for &Scalar {\n type Output = Scalar;\n fn mul(self, _rhs: &'a Scalar) -> Scalar {\n UnpackedScalar::mul(&self.unpack(), &_rhs.unpack()).pack()\n }\n}\n\ndefine_mul_variants!(LHS = Scalar, RHS = Scalar, Output = Scalar);\n\nimpl<'a> AddAssign<&'a Scalar> for Scalar {\n fn add_assign(&mut self, _rhs: &'a Scalar) {\n *self = *self + _rhs;\n }\n}\n\ndefine_add_assign_variants!(LHS = Scalar, RHS = Scalar);\n\nimpl<'a> Add<&'a Scalar> for &Scalar {\n type Output = Scalar;\n #[allow(non_snake_case)]\n fn add(self, _rhs: &'a Scalar) -> Scalar {\n // The UnpackedScalar::add function produces reduced outputs if the inputs are reduced. By\n // Scalar invariant #1, this is always the case.\n UnpackedScalar::add(&self.unpack(), &_rhs.unpack()).pack()\n }\n}\n\ndefine_add_variants!(LHS = Scalar, RHS = Scalar, Output = Scalar);\n\nimpl<'a> SubAssign<&'a Scalar> for Scalar {\n fn sub_assign(&mut self, _rhs: &'a Scalar) {\n *self = *self - _rhs;\n }\n}\n\ndefine_sub_assign_variants!(LHS = Scalar, RHS = Scalar);\n\nimpl<'a> Sub<&'a Scalar> for &Scalar {\n type Output = Scalar;\n #[allow(non_snake_case)]\n fn sub(self, rhs: &'a Scalar) -> Scalar {\n // The UnpackedScalar::sub function produces reduced outputs if the inputs are reduced. By\n // Scalar invariant #1, this is always the case.\n UnpackedScalar::sub(&self.unpack(), &rhs.unpack()).pack()\n }\n}\n\ndefine_sub_variants!(LHS = Scalar, RHS = Scalar, Output = Scalar);\n\nimpl Neg for &Scalar {\n type Output = Scalar;\n #[allow(non_snake_case)]\n fn neg(self) -> Scalar {\n #[cfg_attr(not(feature = \"zeroize\"), allow(unused_mut))]\n let mut self_unpacked = self.unpack();\n #[cfg_attr(not(feature = \"zeroize\"), allow(unused_mut))]\n let mut self_R = UnpackedScalar::mul_internal(&self_unpacked, &constants::R);\n #[cfg_attr(not(feature = \"zeroize\"), allow(unused_mut))]\n let mut self_mod_l = UnpackedScalar::montgomery_reduce(&self_R);\n let negated = UnpackedScalar::sub(&UnpackedScalar::ZERO, &self_mod_l).pack();\n\n #[cfg(feature = \"zeroize\")]\n {\n self_unpacked.zeroize();\n self_R.zeroize();\n self_mod_l.zeroize();\n }\n\n negated\n }\n}\n\nimpl Neg for Scalar {\n type Output = Scalar;\n fn neg(self) -> Scalar {\n -&self\n }\n}\n\nimpl ConditionallySelectable for Scalar {\n fn conditional_select(a: &Self, b: &Self, choice: Choice) -> Self {\n let mut bytes = [0u8; 32];\n #[allow(clippy::needless_range_loop)]\n for i in 0..32 {\n bytes[i] = u8::conditional_select(&a.bytes[i], &b.bytes[i], choice);\n }\n Scalar { bytes }\n }\n}\n\n#[cfg(feature = \"serde\")]\nuse serde::de::Visitor;\n#[cfg(feature = \"serde\")]\nuse serde::{Deserialize, Deserializer, Serialize, Serializer};\n\n#[cfg(feature = \"serde\")]\n#[cfg_attr(docsrs, doc(cfg(feature = \"serde\")))]\nimpl Serialize for Scalar {\n fn serialize<S>(&self, serializer: S) -> Result<S::Ok, S::Error>\n where\n S: Serializer,\n {\n use serde::ser::SerializeTuple;\n let mut tup = serializer.serialize_tuple(32)?;\n for byte in self.as_bytes().iter() {\n tup.serialize_element(byte)?;\n }\n tup.end()\n }\n}\n\n#[cfg(feature = \"serde\")]\n#[cfg_attr(docsrs, doc(cfg(feature = \"serde\")))]\nimpl<'de> Deserialize<'de> for Scalar {\n fn deserialize<D>(deserializer: D) -> Result<Self, D::Error>\n where\n D: Deserializer<'de>,\n {\n struct ScalarVisitor;\n\n impl<'de> Visitor<'de> for ScalarVisitor {\n type Value = Scalar;\n\n fn expecting(&self, formatter: &mut core::fmt::Formatter<'_>) -> core::fmt::Result {\n formatter.write_str(\n \"a sequence of 32 bytes whose little-endian interpretation is less than the \\\n basepoint order ℓ\",\n )\n }\n\n fn visit_seq<A>(self, mut seq: A) -> Result<Scalar, A::Error>\n where\n A: serde::de::SeqAccess<'de>,\n {\n let mut bytes = [0u8; 32];\n #[allow(clippy::needless_range_loop)]\n for i in 0..32 {\n bytes[i] = seq\n .next_element()?\n .ok_or_else(|| serde::de::Error::invalid_length(i, &\"expected 32 bytes\"))?;\n }\n let scalar = Option::from(Scalar::from_canonical_bytes(bytes))\n .ok_or_else(|| serde::de::Error::custom(\"scalar was not canonically encoded\"));\n\n #[cfg(feature = \"zeroize\")]\n bytes.zeroize();\n\n scalar\n }\n }\n\n deserializer.deserialize_tuple(32, ScalarVisitor)\n }\n}\n\nimpl<T> Product<T> for Scalar\nwhere\n T: Borrow<Scalar>,\n{\n fn product<I>(iter: I) -> Self\n where\n I: Iterator<Item = T>,\n {\n iter.fold(Scalar::ONE, |acc, item| acc * item.borrow())\n }\n}\n\nimpl<T> Sum<T> for Scalar\nwhere\n T: Borrow<Scalar>,\n{\n fn sum<I>(iter: I) -> Self\n where\n I: Iterator<Item = T>,\n {\n iter.fold(Scalar::ZERO, |acc, item| acc + item.borrow())\n }\n}\n\nimpl Default for Scalar {\n fn default() -> Scalar {\n Scalar::ZERO\n }\n}\n\nimpl From<u8> for Scalar {\n fn from(x: u8) -> Scalar {\n let mut s_bytes = [0u8; 32];\n s_bytes[0] = x;\n Scalar { bytes: s_bytes }\n }\n}\n\nimpl From<u16> for Scalar {\n fn from(x: u16) -> Scalar {\n let mut s_bytes = [0u8; 32];\n let x_bytes = x.to_le_bytes();\n s_bytes[0..x_bytes.len()].copy_from_slice(&x_bytes);\n Scalar { bytes: s_bytes }\n }\n}\n\nimpl From<u32> for Scalar {\n fn from(x: u32) -> Scalar {\n let mut s_bytes = [0u8; 32];\n let x_bytes = x.to_le_bytes();\n s_bytes[0..x_bytes.len()].copy_from_slice(&x_bytes);\n Scalar { bytes: s_bytes }\n }\n}\n\nimpl From<u64> for Scalar {\n /// Construct a scalar from the given `u64`.\n ///\n /// # Inputs\n ///\n /// An `u64` to convert to a `Scalar`.\n ///\n /// # Returns\n ///\n /// A `Scalar` corresponding to the input `u64`.\n ///\n /// # Example\n ///\n /// ```\n /// use curve25519::scalar::Scalar;\n ///\n /// let fourtytwo = Scalar::from(42u64);\n /// let six = Scalar::from(6u64);\n /// let seven = Scalar::from(7u64);\n ///\n /// assert!(fourtytwo == six * seven);\n /// ```\n fn from(x: u64) -> Scalar {\n let mut s_bytes = [0u8; 32];\n let x_bytes = x.to_le_bytes();\n s_bytes[0..x_bytes.len()].copy_from_slice(&x_bytes);\n Scalar { bytes: s_bytes }\n }\n}\n\nimpl From<u128> for Scalar {\n fn from(x: u128) -> Scalar {\n let mut s_bytes = [0u8; 32];\n let x_bytes = x.to_le_bytes();\n s_bytes[0..x_bytes.len()].copy_from_slice(&x_bytes);\n Scalar { bytes: s_bytes }\n }\n}\n\nimpl From<&Scalar> for I256 {\n fn from(s: &Scalar) -> I256 {\n I256::from_le_bytes(s.to_bytes())\n }\n}\n\n#[cfg(feature = \"zeroize\")]\nimpl Zeroize for Scalar {\n fn zeroize(&mut self) {\n self.bytes.zeroize();\n }\n}\n\nimpl HEEADecomposition for Scalar {\n /// Generate approximately half-size non-negative scalars `(rho, tau)` for a\n /// given challenge scalar `h`.\n ///\n /// The signed HEEA output satisfies `rho_i = tau_i * h (mod ell)`. This\n /// method returns the absolute values of `rho_i` and `tau_i`, plus `flip_h`\n /// to record whether exactly one of the signed values was negative.\n ///\n /// If `flip_h` is false, then `rho = tau * h (mod ell)`. If `flip_h` is\n /// true, then `rho = -tau * h (mod ell)`.\n fn heea_decompose(&self) -> (Scalar, Scalar, bool) {\n // Convert h to I256\n let v = self.into();\n\n // Run the algorithm\n let (mut rho_i, mut tau_i) = curve25519_heea_vartime(v);\n\n // Convert back to Scalars and ensure shortness\n let mut flip_h = false;\n if rho_i < I256::ZERO {\n rho_i = -rho_i;\n flip_h = !flip_h;\n }\n if tau_i < I256::ZERO {\n tau_i = -tau_i;\n flip_h = !flip_h;\n }\n\n let rho = Scalar::from_positive_i256(&rho_i);\n let tau = Scalar::from_positive_i256(&tau_i);\n\n (rho, tau, flip_h)\n }\n}\n\nimpl Scalar {\n /// The scalar \\\\( 0 \\\\).\n pub const ZERO: Self = Self { bytes: [0u8; 32] };\n\n /// The scalar \\\\( 1 \\\\).\n pub const ONE: Self = Self {\n bytes: [\n 1, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n 0, 0, 0,\n ],\n };\n\n /// Return a `Scalar` chosen uniformly at random using a user-provided RNG.\n ///\n /// # Inputs\n ///\n /// * `rng`: any RNG which implements `CryptoRng` interface.\n ///\n /// # Returns\n ///\n /// A random scalar within \\\\(\\mathbb{Z} / \\ell\\mathbb{Z}\\\\).\n ///\n /// # Example\n ///\n /// ```\n /// # fn main() {\n /// use curve25519::scalar::Scalar;\n ///\n /// let mut csprng = rand::thread_rng();\n /// let a: Scalar = Scalar::random(&mut csprng);\n /// # }\n #[cfg(feature = \"rand_core\")]\n pub fn random<R: CryptoRng + RngCore + ?Sized>(rng: &mut R) -> Self {\n #[cfg_attr(not(feature = \"zeroize\"), allow(unused_mut))]\n let mut scalar_bytes = [0u8; 64];\n rng.fill_bytes(&mut scalar_bytes);\n let scalar = Scalar::from_bytes_mod_order_wide(&scalar_bytes);\n\n #[cfg(feature = \"zeroize\")]\n scalar_bytes.zeroize();\n\n scalar\n }\n\n #[cfg(feature = \"digest\")]\n /// Hash a slice of bytes into a scalar.\n ///\n /// Takes a type parameter `D`, which is any `Digest` producing 64\n /// bytes (512 bits) of output.\n ///\n /// Convenience wrapper around `from_hash`.\n ///\n /// # Example\n ///\n #[cfg_attr(feature = \"digest\", doc = \"```\")]\n #[cfg_attr(not(feature = \"digest\"), doc = \"```ignore\")]\n /// # use curve25519::scalar::Scalar;\n /// use sha2::Sha512;\n ///\n /// # // Need fn main() here in comment so the doctest compiles\n /// # // See https://doc.rust-lang.org/book/documentation.html#documentation-as-tests\n /// # fn main() {\n /// let msg = \"To really appreciate architecture, you may even need to commit a murder\";\n /// let s = Scalar::hash_from_bytes::<Sha512>(msg.as_bytes());\n /// # }\n /// ```\n pub fn hash_from_bytes<D>(input: &[u8]) -> Scalar\n where\n D: Digest<OutputSize = U64> + Default,\n {\n let mut hash = D::default();\n hash.update(input);\n Scalar::from_hash(hash)\n }\n\n #[cfg(feature = \"digest\")]\n /// Construct a scalar from an existing `Digest` instance.\n ///\n /// Use this instead of `hash_from_bytes` if it is more convenient\n /// to stream data into the `Digest` than to pass a single byte\n /// slice.\n ///\n /// # Example\n ///\n /// ```\n /// # use curve25519::scalar::Scalar;\n /// use curve25519::digest::Update;\n ///\n /// use sha2::Digest;\n /// use sha2::Sha512;\n ///\n /// # fn main() {\n /// let mut h = Sha512::new()\n /// .chain(\"To really appreciate architecture, you may even need to commit a murder.\")\n /// .chain(\"While the programs used for The Manhattan Transcripts are of the most extreme\")\n /// .chain(\"nature, they also parallel the most common formula plot: the archetype of\")\n /// .chain(\"murder. Other phantasms were occasionally used to underline the fact that\")\n /// .chain(\"perhaps all architecture, rather than being about functional standards, is\")\n /// .chain(\"about love and death.\");\n ///\n /// let s = Scalar::from_hash(h);\n ///\n /// println!(\"{:?}\", s.to_bytes());\n /// assert_eq!(\n /// s.to_bytes(),\n /// [ 21, 88, 208, 252, 63, 122, 210, 152,\n /// 154, 38, 15, 23, 16, 167, 80, 150,\n /// 192, 221, 77, 226, 62, 25, 224, 148,\n /// 239, 48, 176, 10, 185, 69, 168, 11, ],\n /// );\n /// # }\n /// ```\n pub fn from_hash<D>(hash: D) -> Scalar\n where\n D: Digest<OutputSize = U64>,\n {\n #[cfg_attr(not(feature = \"zeroize\"), allow(unused_mut))]\n let mut digest = hash.finalize();\n #[cfg_attr(not(feature = \"zeroize\"), allow(unused_mut))]\n let mut output = [0u8; 64];\n output.copy_from_slice(digest.as_slice());\n let scalar = Scalar::from_bytes_mod_order_wide(&output);\n\n #[cfg(feature = \"zeroize\")]\n {\n digest.zeroize();\n output.zeroize();\n }\n\n scalar\n }\n\n /// Convert this `Scalar` to its underlying sequence of bytes.\n ///\n /// # Example\n ///\n /// ```\n /// use curve25519::scalar::Scalar;\n ///\n /// let s: Scalar = Scalar::ZERO;\n ///\n /// assert!(s.to_bytes() == [0u8; 32]);\n /// ```\n pub const fn to_bytes(&self) -> [u8; 32] {\n self.bytes\n }\n\n /// View the little-endian byte encoding of the integer representing this Scalar.\n ///\n /// # Example\n ///\n /// ```\n /// use curve25519::scalar::Scalar;\n ///\n /// let s: Scalar = Scalar::ZERO;\n ///\n /// assert!(s.as_bytes() == &[0u8; 32]);\n /// ```\n pub const fn as_bytes(&self) -> &[u8; 32] {\n &self.bytes\n }\n\n /// Given a nonzero `Scalar`, compute its multiplicative inverse.\n ///\n /// # Warning\n ///\n /// `self` **MUST** be nonzero. If you cannot\n /// *prove* that this is the case, you **SHOULD NOT USE THIS\n /// FUNCTION**.\n ///\n /// # Returns\n ///\n /// The multiplicative inverse of the this `Scalar`.\n ///\n /// # Example\n ///\n /// ```\n /// use curve25519::scalar::Scalar;\n ///\n /// // x = 2238329342913194256032495932344128051776374960164957527413114840482143558222\n /// let X: Scalar = Scalar::from_bytes_mod_order([\n /// 0x4e, 0x5a, 0xb4, 0x34, 0x5d, 0x47, 0x08, 0x84,\n /// 0x59, 0x13, 0xb4, 0x64, 0x1b, 0xc2, 0x7d, 0x52,\n /// 0x52, 0xa5, 0x85, 0x10, 0x1b, 0xcc, 0x42, 0x44,\n /// 0xd4, 0x49, 0xf4, 0xa8, 0x79, 0xd9, 0xf2, 0x04,\n /// ]);\n /// // 1/x = 6859937278830797291664592131120606308688036382723378951768035303146619657244\n /// let XINV: Scalar = Scalar::from_bytes_mod_order([\n /// 0x1c, 0xdc, 0x17, 0xfc, 0xe0, 0xe9, 0xa5, 0xbb,\n /// 0xd9, 0x24, 0x7e, 0x56, 0xbb, 0x01, 0x63, 0x47,\n /// 0xbb, 0xba, 0x31, 0xed, 0xd5, 0xa9, 0xbb, 0x96,\n /// 0xd5, 0x0b, 0xcd, 0x7a, 0x3f, 0x96, 0x2a, 0x0f,\n /// ]);\n ///\n /// let inv_X: Scalar = X.invert();\n /// assert!(XINV == inv_X);\n /// let should_be_one: Scalar = &inv_X * &X;\n /// assert!(should_be_one == Scalar::ONE);\n /// ```\n pub fn invert(&self) -> Scalar {\n #[cfg_attr(not(feature = \"zeroize\"), allow(unused_mut))]\n let mut unpacked = self.unpack();\n #[cfg_attr(not(feature = \"zeroize\"), allow(unused_mut))]\n let mut inverse = unpacked.invert();\n let scalar = inverse.pack();\n\n #[cfg(feature = \"zeroize\")]\n {\n unpacked.zeroize();\n inverse.zeroize();\n }\n\n scalar\n }\n\n /// Given a slice of nonzero (possibly secret) `Scalar`s,\n /// compute their inverses in a batch.\n ///\n /// # Return\n ///\n /// Each element of `inputs` is replaced by its inverse.\n ///\n /// The product of all inverses is returned.\n ///\n /// # Warning\n ///\n /// All input `Scalars` **MUST** be nonzero. If you cannot\n /// *prove* that this is the case, you **SHOULD NOT USE THIS\n /// FUNCTION**.\n ///\n /// # Example\n ///\n /// ```\n /// # use curve25519::scalar::Scalar;\n /// # fn main() {\n /// let mut scalars = [\n /// Scalar::from(3u64),\n /// Scalar::from(5u64),\n /// Scalar::from(7u64),\n /// Scalar::from(11u64),\n /// ];\n ///\n /// let allinv = Scalar::invert_batch(&mut scalars);\n ///\n /// assert_eq!(allinv, Scalar::from(3*5*7*11u64).invert());\n /// assert_eq!(scalars[0], Scalar::from(3u64).invert());\n /// assert_eq!(scalars[1], Scalar::from(5u64).invert());\n /// assert_eq!(scalars[2], Scalar::from(7u64).invert());\n /// assert_eq!(scalars[3], Scalar::from(11u64).invert());\n /// # }\n /// ```\n pub fn invert_batch<const N: usize>(inputs: &mut [Scalar; N]) -> Scalar {\n let one: UnpackedScalar = Scalar::ONE.unpack().as_montgomery();\n\n let mut scratch = [one; N];\n\n Self::invert_batch_internal(inputs, &mut scratch)\n }\n\n /// Given a slice of nonzero (possibly secret) `Scalar`s, compute their inverses in a batch.\n /// This the allocating form of [`Self::invert_batch`]. See those docs for examples.\n ///\n /// # Return\n ///\n /// Each element of `inputs` is replaced by its inverse.\n ///\n /// The product of all inverses is returned.\n ///\n /// # Warning\n ///\n /// All input `Scalars` **MUST** be nonzero. If you cannot\n /// *prove* that this is the case, you **SHOULD NOT USE THIS\n /// FUNCTION**.\n #[cfg(feature = \"alloc\")]\n pub fn invert_batch_alloc(inputs: &mut [Scalar]) -> Scalar {\n let n = inputs.len();\n let one: UnpackedScalar = Scalar::ONE.unpack().as_montgomery();\n\n let mut scratch = vec![one; n];\n\n Self::invert_batch_internal(inputs, &mut scratch)\n }\n\n fn invert_batch_internal(inputs: &mut [Scalar], scratch: &mut [UnpackedScalar]) -> Scalar {\n // This code is essentially identical to the FieldElement\n // implementation, and is documented there. Unfortunately,\n // it's not easy to write it generically, since here we want\n // to use `UnpackedScalar`s internally, and `Scalar`s\n // externally, but there's no corresponding distinction for\n // field elements.\n\n // Keep an accumulator of all of the previous products\n let mut acc = Scalar::ONE.unpack().as_montgomery();\n\n // Pass through the input vector, recording the previous\n // products in the scratch space\n for (input, scratch) in inputs.iter_mut().zip(scratch.iter_mut()) {\n *scratch = acc;\n\n // Avoid unnecessary Montgomery multiplication in second pass by\n // keeping inputs in Montgomery form\n let tmp = input.unpack().as_montgomery();\n *input = tmp.pack();\n acc = UnpackedScalar::montgomery_mul(&acc, &tmp);\n }\n\n // acc is nonzero iff all inputs are nonzero\n debug_assert!(acc.pack() != Scalar::ZERO);\n\n // Compute the inverse of all products\n acc = acc.montgomery_invert().from_montgomery();\n\n // We need to return the product of all inverses later\n let ret = acc.pack();\n\n // Pass through the vector backwards to compute the inverses\n // in place\n for (input, scratch) in inputs.iter_mut().rev().zip(scratch.iter().rev()) {\n let tmp = UnpackedScalar::montgomery_mul(&acc, &input.unpack());\n *input = UnpackedScalar::montgomery_mul(&acc, scratch).pack();\n acc = tmp;\n }\n\n #[cfg(feature = \"zeroize\")]\n scratch.zeroize();\n\n ret\n }\n\n /// Compute `b` such that `b + b = a mod modulus`.\n pub fn div_by_2(&self) -> Self {\n // We are looking for such `b` that `b + b = a mod modulus`.\n // Two possibilities:\n // - if `a` is even, we can just divide by 2;\n // - if `a` is odd, we divide `(a + modulus)` by 2.\n let is_odd = Choice::from(self.as_bytes()[0] & 1);\n let mut scalar = self.unpack();\n scalar.conditional_add_l(is_odd);\n\n let carry = scalar.shr1_assign();\n debug_assert_eq!(carry, 0);\n\n scalar.pack()\n }\n\n /// Get the bits of the scalar, in little-endian order\n pub(crate) fn bits_le(&self) -> impl DoubleEndedIterator<Item = bool> + '_ {\n (0..256).map(|i| {\n // As i runs from 0..256, the bottom 3 bits index the bit, while the upper bits index\n // the byte. Since self.bytes is little-endian at the byte level, this iterator is\n // little-endian on the bit level\n ((self.bytes[i >> 3] >> (i & 7)) & 1u8) == 1\n })\n }\n\n /// Compute a width-\\\\(w\\\\) \"Non-Adjacent Form\" of this scalar.\n ///\n /// A width-\\\\(w\\\\) NAF of a positive integer \\\\(k\\\\) is an expression\n /// $$\n /// k = \\sum_{i=0}\\^m n\\_i 2\\^i,\n /// $$\n /// where each nonzero\n /// coefficient \\\\(n\\_i\\\\) is odd and bounded by \\\\(|n\\_i| < 2\\^{w-1}\\\\),\n /// \\\\(n\\_{m-1}\\\\) is nonzero, and at most one of any \\\\(w\\\\) consecutive\n /// coefficients is nonzero. (Hankerson, Menezes, Vanstone; def 3.32).\n ///\n /// The length of the NAF is at most one more than the length of\n /// the binary representation of \\\\(k\\\\). This is why the\n /// `Scalar` type maintains an invariant (invariant #1) that the top bit is\n /// \\\\(0\\\\), so that the NAF of a scalar has at most 256 digits.\n ///\n /// Intuitively, this is like a binary expansion, except that we\n /// allow some coefficients to grow in magnitude up to\n /// \\\\(2\\^{w-1}\\\\) so that the nonzero coefficients are as sparse\n /// as possible.\n ///\n /// When doing scalar multiplication, we can then use a lookup\n /// table of precomputed multiples of a point to add the nonzero\n /// terms \\\\( k_i P \\\\). Using signed digits cuts the table size\n /// in half, and using odd digits cuts the table size in half\n /// again.\n ///\n /// To compute a \\\\(w\\\\)-NAF, we use a modification of Algorithm 3.35 of HMV:\n ///\n /// 1. \\\\( i \\gets 0 \\\\)\n /// 2. While \\\\( k \\ge 1 \\\\):\n /// 1. If \\\\(k\\\\) is odd, \\\\( n_i \\gets k \\operatorname{mods} 2^w \\\\), \\\\( k \\gets k - n_i \\\\).\n /// 2. If \\\\(k\\\\) is even, \\\\( n_i \\gets 0 \\\\).\n /// 3. \\\\( k \\gets k / 2 \\\\), \\\\( i \\gets i + 1 \\\\).\n /// 3. Return \\\\( n_0, n_1, ... , \\\\)\n ///\n /// Here \\\\( \\bar x = x \\operatorname{mods} 2^w \\\\) means the\n /// \\\\( \\bar x \\\\) with \\\\( \\bar x \\equiv x \\pmod{2^w} \\\\) and\n /// \\\\( -2^{w-1} \\leq \\bar x < 2^{w-1} \\\\).\n ///\n /// We implement this by scanning across the bits of \\\\(k\\\\) from\n /// least-significant bit to most-significant-bit.\n /// Write the bits of \\\\(k\\\\) as\n /// $$\n /// k = \\sum\\_{i=0}\\^m k\\_i 2^i,\n /// $$\n /// and split the sum as\n /// $$\n /// k = \\sum\\_{i=0}^{w-1} k\\_i 2^i + 2^w \\sum\\_{i=0} k\\_{i+w} 2^i\n /// $$\n /// where the first part is \\\\( k \\mod 2^w \\\\).\n ///\n /// If \\\\( k \\mod 2^w\\\\) is odd, and \\\\( k \\mod 2^w < 2^{w-1} \\\\), then we emit\n /// \\\\( n_0 = k \\mod 2^w \\\\). Instead of computing\n /// \\\\( k - n_0 \\\\), we just advance \\\\(w\\\\) bits and reindex.\n ///\n /// If \\\\( k \\mod 2^w\\\\) is odd, and \\\\( k \\mod 2^w \\ge 2^{w-1} \\\\), then\n /// \\\\( n_0 = k \\operatorname{mods} 2^w = k \\mod 2^w - 2^w \\\\).\n /// The quantity \\\\( k - n_0 \\\\) is\n /// $$\n /// \\begin{aligned}\n /// k - n_0 &= \\sum\\_{i=0}^{w-1} k\\_i 2^i + 2^w \\sum\\_{i=0} k\\_{i+w} 2^i\n /// - \\sum\\_{i=0}^{w-1} k\\_i 2^i + 2^w \\\\\\\\\n /// &= 2^w + 2^w \\sum\\_{i=0} k\\_{i+w} 2^i\n /// \\end{aligned}\n /// $$\n /// so instead of computing the subtraction, we can set a carry\n /// bit, advance \\\\(w\\\\) bits, and reindex.\n ///\n /// If \\\\( k \\mod 2^w\\\\) is even, we emit \\\\(0\\\\), advance 1 bit\n /// and reindex. In fact, by setting all digits to \\\\(0\\\\)\n /// initially, we don't need to emit anything.\n pub(crate) fn non_adjacent_form(&self, w: usize) -> [i8; 256] {\n // required by the NAF definition\n debug_assert!(w >= 2);\n // required so that the NAF digits fit in i8\n debug_assert!(w <= 8);\n\n let mut naf = [0i8; 256];\n\n let mut x_u64 = [0u64; 5];\n read_le_u64_into(&self.bytes, &mut x_u64[0..4]);\n\n let width = 1 << w;\n let window_mask = width - 1;\n\n let mut pos = 0;\n let mut carry = 0;\n while pos < 256 {\n // Construct a buffer of bits of the scalar, starting at bit `pos`\n let u64_idx = pos / 64;\n let bit_idx = pos % 64;\n let bit_buf: u64 = if bit_idx < 64 - w {\n // This window's bits are contained in a single u64\n x_u64[u64_idx] >> bit_idx\n } else {\n // Combine the current u64's bits with the bits from the next u64\n (x_u64[u64_idx] >> bit_idx) | (x_u64[1 + u64_idx] << (64 - bit_idx))\n };\n\n // Add the carry into the current window\n let window = carry + (bit_buf & window_mask);\n\n if window & 1 == 0 {\n // If the window value is even, preserve the carry and continue.\n // Why is the carry preserved?\n // If carry == 0 and window & 1 == 0, then the next carry should be 0\n // If carry == 1 and window & 1 == 0, then bit_buf & 1 == 1 so the next carry should be 1\n pos += 1;\n continue;\n }\n\n if window < width / 2 {\n carry = 0;\n naf[pos] = window as i8;\n } else {\n carry = 1;\n naf[pos] = (window as i8).wrapping_sub(width as i8);\n }\n\n pos += w;\n }\n\n naf\n }\n\n /// Compute a width-\\\\(w\\\\) non-adjacent form for scalars known to fit in 128 bits.\n pub(crate) fn non_adjacent_form_128(&self, w: usize) -> [i8; NAF_128_SIZE] {\n // required by the NAF definition\n debug_assert!(w >= 2);\n // required so that the NAF digits fit in i8\n debug_assert!(w <= 8);\n debug_assert!(self.bytes[16..32].iter().all(|&b| b == 0));\n\n let mut naf = [0i8; NAF_128_SIZE];\n\n let mut x_u64 = [0u64; 3];\n read_le_u64_into(&self.bytes[..16], &mut x_u64[0..2]);\n\n let width = 1u64 << w;\n let window_mask = width - 1;\n\n let mut pos = 0;\n let mut carry = 0;\n while pos < HEEA_MAX_INDEX {\n let u64_idx = pos / 64;\n let bit_idx = pos % 64;\n let bit_buf: u64 = if bit_idx < 64 - w {\n x_u64[u64_idx] >> bit_idx\n } else {\n (x_u64[u64_idx] >> bit_idx) | (x_u64[1 + u64_idx] << (64 - bit_idx))\n };\n\n let window = carry + (bit_buf & window_mask);\n\n if window & 1 == 0 {\n pos += 1;\n continue;\n }\n\n if window < width / 2 {\n carry = 0;\n naf[pos] = window as i8;\n } else {\n carry = 1;\n naf[pos] = (window as i8).wrapping_sub(width as i8);\n }\n\n pos += w;\n }\n\n debug_assert_eq!(carry, 0);\n naf\n }\n\n /// Write this scalar in radix 16, with coefficients in \\\\([-8,8)\\\\),\n /// i.e., compute \\\\(a\\_i\\\\) such that\n /// $$\n /// a = a\\_0 + a\\_1 16\\^1 + \\cdots + a_{63} 16\\^{63},\n /// $$\n /// with \\\\(-8 \\leq a_i < 8\\\\) for \\\\(0 \\leq i < 63\\\\) and \\\\(-8 \\leq a_{63} \\leq 8\\\\).\n ///\n /// The largest value that can be decomposed like this is just over \\\\(2^{255}\\\\). Thus, in\n /// order to not error, the top bit MUST NOT be set, i.e., `Self` MUST be less than\n /// \\\\(2^{255}\\\\).\n pub(crate) fn as_radix_16(&self) -> [i8; 64] {\n debug_assert!(self[31] <= 127);\n let mut output = [0i8; 64];\n\n // Step 1: change radix.\n // Convert from radix 256 (bytes) to radix 16 (nibbles)\n #[allow(clippy::identity_op)]\n #[inline(always)]\n fn bot_half(x: u8) -> u8 {\n (x >> 0) & 15\n }\n #[inline(always)]\n fn top_half(x: u8) -> u8 {\n (x >> 4) & 15\n }\n\n for i in 0..32 {\n output[2 * i] = bot_half(self[i]) as i8;\n output[2 * i + 1] = top_half(self[i]) as i8;\n }\n // Precondition note: since self[31] <= 127, output[63] <= 7\n\n // Step 2: recenter coefficients from [0,16) to [-8,8)\n for i in 0..63 {\n let carry = (output[i] + 8) >> 4;\n output[i] -= carry << 4;\n output[i + 1] += carry;\n }\n // Precondition note: output[63] is not recentered. It\n // increases by carry <= 1. Thus output[63] <= 8.\n\n output\n }\n\n /// Returns a size hint indicating how many entries of the return\n /// value of `to_radix_2w` are nonzero.\n #[cfg(any(feature = \"alloc\", all(test, feature = \"precomputed-tables\")))]\n pub(crate) fn to_radix_2w_size_hint(w: usize) -> usize {\n debug_assert!(w >= 4);\n debug_assert!(w <= 8);\n\n let digits_count = match w {\n 4..=7 => 256_usize.div_ceil(w),\n // See comment in to_radix_2w on handling the terminal carry.\n 8 => 256_usize.div_ceil(w) + 1_usize,\n _ => panic!(\"invalid radix parameter\"),\n };\n\n debug_assert!(digits_count <= 64);\n digits_count\n }\n\n /// Creates a representation of a Scalar in radix \\\\( 2^w \\\\) with \\\\(w = 4, 5, 6, 7, 8\\\\) for\n /// use with the Pippenger algorithm. Higher radixes are not supported to save cache space.\n /// Radix 256 is near-optimal even for very large inputs.\n ///\n /// Radix below 16 or above 256 is prohibited.\n /// This method returns digits in a fixed-sized array, excess digits are zeroes.\n ///\n /// For radix 16, `Self` must be less than \\\\(2^{255}\\\\). This is because most integers larger\n /// than \\\\(2^{255}\\\\) are unrepresentable in the form described below for \\\\(w = 4\\\\). This\n /// would be true for \\\\(w = 8\\\\) as well, but it is compensated for by increasing the size\n /// hint by 1.\n ///\n /// ## Scalar representation\n ///\n /// Radix \\\\(2\\^w\\\\), with \\\\(n = ceil(256/w)\\\\) coefficients in \\\\([-(2\\^w)/2,(2\\^w)/2)\\\\),\n /// i.e., scalar is represented using digits \\\\(a\\_i\\\\) such that\n /// $$\n /// a = a\\_0 + a\\_1 2\\^1w + \\cdots + a_{n-1} 2\\^{w*(n-1)},\n /// $$\n /// with \\\\(-2\\^w/2 \\leq a_i < 2\\^w/2\\\\) for \\\\(0 \\leq i < (n-1)\\\\) and \\\\(-2\\^w/2 \\leq a_{n-1} \\leq 2\\^w/2\\\\).\n ///\n #[cfg(any(feature = \"alloc\", feature = \"precomputed-tables\"))]\n pub(crate) fn as_radix_2w(&self, w: usize) -> [i8; 64] {\n debug_assert!(w >= 4);\n debug_assert!(w <= 8);\n\n if w == 4 {\n return self.as_radix_16();\n }\n\n // Scalar formatted as four `u64`s with carry bit packed into the highest bit.\n let mut scalar64x4 = [0u64; 4];\n read_le_u64_into(&self.bytes, &mut scalar64x4[0..4]);\n\n let radix: u64 = 1 << w;\n let window_mask: u64 = radix - 1;\n\n let mut carry = 0u64;\n let mut digits = [0i8; 64];\n let digits_count = 256_usize.div_ceil(w);\n #[allow(clippy::needless_range_loop)]\n for i in 0..digits_count {\n // Construct a buffer of bits of the scalar, starting at `bit_offset`.\n let bit_offset = i * w;\n let u64_idx = bit_offset / 64;\n let bit_idx = bit_offset % 64;\n\n // Read the bits from the scalar\n let bit_buf: u64 = if bit_idx < 64 - w || u64_idx == 3 {\n // This window's bits are contained in a single u64,\n // or it's the last u64 anyway.\n scalar64x4[u64_idx] >> bit_idx\n } else {\n // Combine the current u64's bits with the bits from the next u64\n (scalar64x4[u64_idx] >> bit_idx) | (scalar64x4[1 + u64_idx] << (64 - bit_idx))\n };\n\n // Read the actual coefficient value from the window\n let coef = carry + (bit_buf & window_mask); // coef = [0, 2^r)\n\n // Recenter coefficients from [0,2^w) to [-2^w/2, 2^w/2)\n carry = (coef + (radix / 2)) >> w;\n digits[i] = ((coef as i64) - (carry << w) as i64) as i8;\n }\n\n // When 4 < w < 8, we can fold the final carry onto the last digit d,\n // because d < 2^w/2 so d + carry*2^w = d + 1*2^w < 2^(w+1) < 2^8.\n //\n // When w = 8, we can't fit carry*2^w into an i8. This should\n // not happen anyways, because the final carry will be 0 for\n // reduced scalars, but Scalar invariant #1 allows 255-bit scalars.\n // To handle this, we expand the size_hint by 1 when w=8,\n // and accumulate the final carry onto another digit.\n match w {\n 8 => digits[digits_count] += carry as i8,\n _ => digits[digits_count - 1] += (carry << w) as i8,\n }\n\n digits\n }\n\n /// Unpack this `Scalar` to an `UnpackedScalar` for faster arithmetic.\n pub(crate) fn unpack(&self) -> UnpackedScalar {\n UnpackedScalar::from_bytes(&self.bytes)\n }\n\n /// Create a `Scalar` from a positive `I256`.\n /// The caller must ensure val > 0.\n pub(crate) fn from_positive_i256(val: &I256) -> Self {\n debug_assert!(val >= &I256::ZERO);\n Scalar {\n bytes: val.to_le_bytes(),\n }\n }\n\n /// Reduce this `Scalar` modulo \\\\(\\ell\\\\).\n #[allow(non_snake_case)]\n fn reduce(&self) -> Scalar {\n #[cfg_attr(not(feature = \"zeroize\"), allow(unused_mut))]\n let mut x = self.unpack();\n #[cfg_attr(not(feature = \"zeroize\"), allow(unused_mut))]\n let mut xR = UnpackedScalar::mul_internal(&x, &constants::R);\n #[cfg_attr(not(feature = \"zeroize\"), allow(unused_mut))]\n let mut x_mod_l = UnpackedScalar::montgomery_reduce(&xR);\n let scalar = x_mod_l.pack();\n\n #[cfg(feature = \"zeroize\")]\n {\n x.zeroize();\n xR.zeroize();\n x_mod_l.zeroize();\n }\n\n scalar\n }\n\n /// Check whether this `Scalar` is the canonical representative mod \\\\(\\ell\\\\). This is not\n /// public because any `Scalar` that is publicly observed is reduced, by scalar invariant #2.\n fn is_canonical(&self) -> Choice {\n self.ct_eq(&self.reduce())\n }\n}\n\nimpl UnpackedScalar {\n /// Pack the limbs of this `UnpackedScalar` into a `Scalar`.\n fn pack(&self) -> Scalar {\n Scalar {\n bytes: self.to_bytes(),\n }\n }\n\n /// Inverts an UnpackedScalar in Montgomery form.\n #[rustfmt::skip] // keep alignment of addition chain and squarings\n #[cfg_attr(not(feature = \"zeroize\"), allow(unused_mut))]\n #[allow(clippy::just_underscores_and_digits)]\n pub fn montgomery_invert(&self) -> UnpackedScalar {\n // Uses the addition chain from\n // https://briansmith.org/ecc-inversion-addition-chains-01#curve25519_scalar_inversion\n let mut _1 = *self;\n let mut _10 = _1.montgomery_square();\n let mut _100 = _10.montgomery_square();\n let mut _11 = UnpackedScalar::montgomery_mul(&_10, &_1);\n let mut _101 = UnpackedScalar::montgomery_mul(&_10, &_11);\n let mut _111 = UnpackedScalar::montgomery_mul(&_10, &_101);\n let mut _1001 = UnpackedScalar::montgomery_mul(&_10, &_111);\n let mut _1011 = UnpackedScalar::montgomery_mul(&_10, &_1001);\n let mut _1111 = UnpackedScalar::montgomery_mul(&_100, &_1011);\n\n // _10000\n let mut y = UnpackedScalar::montgomery_mul(&_1111, &_1);\n\n #[inline]\n fn square_multiply(y: &mut UnpackedScalar, squarings: usize, x: &UnpackedScalar) {\n for _ in 0..squarings {\n *y = y.montgomery_square();\n }\n *y = UnpackedScalar::montgomery_mul(y, x);\n }\n\n square_multiply(&mut y, 123 + 3, &_101);\n square_multiply(&mut y, 2 + 2, &_11);\n square_multiply(&mut y, 1 + 4, &_1111);\n square_multiply(&mut y, 1 + 4, &_1111);\n square_multiply(&mut y, 4, &_1001);\n square_multiply(&mut y, 2, &_11);\n square_multiply(&mut y, 1 + 4, &_1111);\n square_multiply(&mut y, 1 + 3, &_101);\n square_multiply(&mut y, 3 + 3, &_101);\n square_multiply(&mut y, 3, &_111);\n square_multiply(&mut y, 1 + 4, &_1111);\n square_multiply(&mut y, 2 + 3, &_111);\n square_multiply(&mut y, 2 + 2, &_11);\n square_multiply(&mut y, 1 + 4, &_1011);\n square_multiply(&mut y, 2 + 4, &_1011);\n square_multiply(&mut y, 6 + 4, &_1001);\n square_multiply(&mut y, 2 + 2, &_11);\n square_multiply(&mut y, 3 + 2, &_11);\n square_multiply(&mut y, 3 + 2, &_11);\n square_multiply(&mut y, 1 + 4, &_1001);\n square_multiply(&mut y, 1 + 3, &_111);\n square_multiply(&mut y, 2 + 4, &_1111);\n square_multiply(&mut y, 1 + 4, &_1011);\n square_multiply(&mut y, 3, &_101);\n square_multiply(&mut y, 2 + 4, &_1111);\n square_multiply(&mut y, 3, &_101);\n square_multiply(&mut y, 1 + 2, &_11);\n\n let inverse = y;\n\n #[cfg(feature = \"zeroize\")]\n {\n _1.zeroize();\n _10.zeroize();\n _100.zeroize();\n _11.zeroize();\n _101.zeroize();\n _111.zeroize();\n _1001.zeroize();\n _1011.zeroize();\n _1111.zeroize();\n y.zeroize();\n }\n\n inverse\n }\n\n /// Inverts an UnpackedScalar not in Montgomery form.\n pub fn invert(&self) -> UnpackedScalar {\n #[cfg_attr(not(feature = \"zeroize\"), allow(unused_mut))]\n let mut montgomery = self.as_montgomery();\n #[cfg_attr(not(feature = \"zeroize\"), allow(unused_mut))]\n let mut inverse = montgomery.montgomery_invert();\n let result = inverse.from_montgomery();\n\n #[cfg(feature = \"zeroize\")]\n {\n montgomery.zeroize();\n inverse.zeroize();\n }\n\n result\n }\n}\n\n#[cfg(feature = \"group\")]\nimpl Field for Scalar {\n const ZERO: Self = Self::ZERO;\n const ONE: Self = Self::ONE;\n\n fn random(mut rng: impl RngCore) -> Self {\n // NOTE: this is duplicated due to different `rng` bounds\n let mut scalar_bytes = [0u8; 64];\n rng.fill_bytes(&mut scalar_bytes);\n let scalar = Self::from_bytes_mod_order_wide(&scalar_bytes);\n\n #[cfg(feature = \"zeroize\")]\n scalar_bytes.zeroize();\n\n scalar\n }\n\n fn square(&self) -> Self {\n self * self\n }\n\n fn double(&self) -> Self {\n self + self\n }\n\n fn invert(&self) -> CtOption<Self> {\n CtOption::new(self.invert(), !self.is_zero())\n }\n\n fn sqrt_ratio(num: &Self, div: &Self) -> (Choice, Self) {\n #[allow(unused_qualifications)]\n group::ff::helpers::sqrt_ratio_generic(num, div)\n }\n\n fn sqrt(&self) -> CtOption<Self> {\n #[allow(unused_qualifications)]\n group::ff::helpers::sqrt_tonelli_shanks(\n self,\n [\n 0xcb02_4c63_4b9e_ba7d,\n 0x029b_df3b_d45e_f39a,\n 0x0000_0000_0000_0000,\n 0x0200_0000_0000_0000,\n ],\n )\n }\n}\n\n#[cfg(feature = \"group\")]\nimpl PrimeField for Scalar {\n type Repr = [u8; 32];\n\n fn from_repr(repr: Self::Repr) -> CtOption<Self> {\n Self::from_canonical_bytes(repr)\n }\n\n fn from_repr_vartime(repr: Self::Repr) -> Option<Self> {\n // Check that the high bit is not set\n if (repr[31] >> 7) != 0u8 {\n return None;\n }\n\n let candidate = Scalar { bytes: repr };\n\n if candidate == candidate.reduce() {\n Some(candidate)\n } else {\n None\n }\n }\n\n fn to_repr(&self) -> Self::Repr {\n self.to_bytes()\n }\n\n fn is_odd(&self) -> Choice {\n Choice::from(self.as_bytes()[0] & 1)\n }\n\n const MODULUS: &'static str =\n \"0x1000000000000000000000000000000014def9dea2f79cd65812631a5cf5d3ed\";\n const NUM_BITS: u32 = 253;\n const CAPACITY: u32 = 252;\n\n const TWO_INV: Self = Self {\n bytes: [\n 0xf7, 0xe9, 0x7a, 0x2e, 0x8d, 0x31, 0x09, 0x2c, 0x6b, 0xce, 0x7b, 0x51, 0xef, 0x7c,\n 0x6f, 0x0a, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x08,\n ],\n };\n const MULTIPLICATIVE_GENERATOR: Self = Self {\n bytes: [\n 2, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n 0, 0, 0,\n ],\n };\n const S: u32 = 2;\n const ROOT_OF_UNITY: Self = Self {\n bytes: [\n 0xd4, 0x07, 0xbe, 0xeb, 0xdf, 0x75, 0x87, 0xbe, 0xfe, 0x83, 0xce, 0x42, 0x53, 0x56,\n 0xf0, 0x0e, 0x7a, 0xc2, 0xc1, 0xab, 0x60, 0x6d, 0x3d, 0x7d, 0xe7, 0x81, 0x79, 0xe0,\n 0x10, 0x73, 0x4a, 0x09,\n ],\n };\n const ROOT_OF_UNITY_INV: Self = Self {\n bytes: [\n 0x19, 0xcc, 0x37, 0x71, 0x3a, 0xed, 0x8a, 0x99, 0xd7, 0x18, 0x29, 0x60, 0x8b, 0xa3,\n 0xee, 0x05, 0x86, 0x3d, 0x3e, 0x54, 0x9f, 0x92, 0xc2, 0x82, 0x18, 0x7e, 0x86, 0x1f,\n 0xef, 0x8c, 0xb5, 0x06,\n ],\n };\n const DELTA: Self = Self {\n bytes: [\n 16, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n 0, 0, 0,\n ],\n };\n}\n\n#[cfg(feature = \"group-bits\")]\nimpl PrimeFieldBits for Scalar {\n type ReprBits = [u8; 32];\n\n fn to_le_bits(&self) -> FieldBits<Self::ReprBits> {\n self.to_repr().into()\n }\n\n fn char_le_bits() -> FieldBits<Self::ReprBits> {\n constants::BASEPOINT_ORDER.to_bytes().into()\n }\n}\n\n#[cfg(feature = \"group\")]\nimpl FromUniformBytes<64> for Scalar {\n fn from_uniform_bytes(bytes: &[u8; 64]) -> Self {\n Scalar::from_bytes_mod_order_wide(bytes)\n }\n}\n\n/// Read one or more u64s stored as little endian bytes.\n///\n/// ## Panics\n/// Panics if `src.len() != 8 * dst.len()`.\nfn read_le_u64_into(src: &[u8], dst: &mut [u64]) {\n assert!(\n src.len() == 8 * dst.len(),\n \"src.len() = {}, dst.len() = {}\",\n src.len(),\n dst.len()\n );\n for (bytes, val) in src.chunks(8).zip(dst.iter_mut()) {\n *val = u64::from_le_bytes(\n bytes\n .try_into()\n .expect(\"Incorrect src length, should be 8 * dst.len()\"),\n );\n }\n}\n\n/// _Clamps_ the given little-endian representation of a 32-byte integer. Clamping the value puts\n/// it in the range:\n///\n/// **n ∈ 2^254 + 8\\*{0, 1, 2, 3, . . ., 2^251 − 1}**\n///\n/// # Explanation of clamping\n///\n/// For Curve25519, h = 8, and multiplying by 8 is the same as a binary left-shift by 3 bits.\n/// If you take a secret scalar value between 2^251 and 2^252 – 1 and left-shift by 3 bits\n/// then you end up with a 255-bit number with the most significant bit set to 1 and\n/// the least-significant three bits set to 0.\n///\n/// The Curve25519 clamping operation takes **an arbitrary 256-bit random value** and\n/// clears the most-significant bit (making it a 255-bit number), sets the next bit, and then\n/// clears the 3 least-significant bits. In other words, it directly creates a scalar value that is\n/// in the right form and pre-multiplied by the cofactor.\n///\n/// See [here](https://neilmadden.blog/2020/05/28/whats-the-curve25519-clamping-all-about/) for\n/// more details.\n#[must_use]\npub const fn clamp_integer(mut bytes: [u8; 32]) -> [u8; 32] {\n bytes[0] &= 0b1111_1000;\n bytes[31] &= 0b0111_1111;\n bytes[31] |= 0b0100_0000;\n bytes\n}\n\n#[cfg(test)]\npub(crate) mod test {\n use super::*;\n\n #[cfg(feature = \"alloc\")]\n use alloc::vec::Vec;\n use rand::RngCore;\n\n /// x = 2238329342913194256032495932344128051776374960164957527413114840482143558222\n pub static X: Scalar = Scalar {\n bytes: [\n 0x4e, 0x5a, 0xb4, 0x34, 0x5d, 0x47, 0x08, 0x84, 0x59, 0x13, 0xb4, 0x64, 0x1b, 0xc2,\n 0x7d, 0x52, 0x52, 0xa5, 0x85, 0x10, 0x1b, 0xcc, 0x42, 0x44, 0xd4, 0x49, 0xf4, 0xa8,\n 0x79, 0xd9, 0xf2, 0x04,\n ],\n };\n /// 1/x = 6859937278830797291664592131120606308688036382723378951768035303146619657244\n pub static XINV: Scalar = Scalar {\n bytes: [\n 0x1c, 0xdc, 0x17, 0xfc, 0xe0, 0xe9, 0xa5, 0xbb, 0xd9, 0x24, 0x7e, 0x56, 0xbb, 0x01,\n 0x63, 0x47, 0xbb, 0xba, 0x31, 0xed, 0xd5, 0xa9, 0xbb, 0x96, 0xd5, 0x0b, 0xcd, 0x7a,\n 0x3f, 0x96, 0x2a, 0x0f,\n ],\n };\n /// y = 2592331292931086675770238855846338635550719849568364935475441891787804997264\n pub static Y: Scalar = Scalar {\n bytes: [\n 0x90, 0x76, 0x33, 0xfe, 0x1c, 0x4b, 0x66, 0xa4, 0xa2, 0x8d, 0x2d, 0xd7, 0x67, 0x83,\n 0x86, 0xc3, 0x53, 0xd0, 0xde, 0x54, 0x55, 0xd4, 0xfc, 0x9d, 0xe8, 0xef, 0x7a, 0xc3,\n 0x1f, 0x35, 0xbb, 0x05,\n ],\n };\n\n /// The largest scalar that satisfies invariant #1, i.e., the largest scalar with the top bit\n /// set to 0. Since this scalar violates invariant #2, i.e., it's greater than the modulus `l`,\n /// addition and subtraction are broken. The only thing you can do with this is scalar-point\n /// multiplication (and actually also scalar-scalar multiplication, but that's just a quirk of\n /// our implementation).\n pub(crate) static LARGEST_UNREDUCED_SCALAR: Scalar = Scalar {\n bytes: [\n 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n 0xff, 0xff, 0xff, 0x7f,\n ],\n };\n\n /// x*y = 5690045403673944803228348699031245560686958845067437804563560795922180092780\n static X_TIMES_Y: Scalar = Scalar {\n bytes: [\n 0x6c, 0x33, 0x74, 0xa1, 0x89, 0x4f, 0x62, 0x21, 0x0a, 0xaa, 0x2f, 0xe1, 0x86, 0xa6,\n 0xf9, 0x2c, 0xe0, 0xaa, 0x75, 0xc2, 0x77, 0x95, 0x81, 0xc2, 0x95, 0xfc, 0x08, 0x17,\n 0x9a, 0x73, 0x94, 0x0c,\n ],\n };\n\n /// sage: l = 2^252 + 27742317777372353535851937790883648493\n /// sage: big = 2^256 - 1\n /// sage: repr((big % l).digits(256))\n static CANONICAL_2_256_MINUS_1: Scalar = Scalar {\n bytes: [\n 28, 149, 152, 141, 116, 49, 236, 214, 112, 207, 125, 115, 244, 91, 239, 198, 254, 255,\n 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 15,\n ],\n };\n\n static A_SCALAR: Scalar = Scalar {\n bytes: [\n 0x1a, 0x0e, 0x97, 0x8a, 0x90, 0xf6, 0x62, 0x2d, 0x37, 0x47, 0x02, 0x3f, 0x8a, 0xd8,\n 0x26, 0x4d, 0xa7, 0x58, 0xaa, 0x1b, 0x88, 0xe0, 0x40, 0xd1, 0x58, 0x9e, 0x7b, 0x7f,\n 0x23, 0x76, 0xef, 0x09,\n ],\n };\n\n static A_NAF: [i8; 256] = [\n 0, 13, 0, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, 0, -9, 0, 0, 0, 0, -11, 0, 0, 0, 0, 3, 0, 0,\n 0, 0, 1, 0, 0, 0, 0, 9, 0, 0, 0, 0, -5, 0, 0, 0, 0, 0, 0, 3, 0, 0, 0, 0, 11, 0, 0, 0, 0,\n 11, 0, 0, 0, 0, 0, -9, 0, 0, 0, 0, 0, -3, 0, 0, 0, 0, 9, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0,\n 0, -1, 0, 0, 0, 0, 0, 9, 0, 0, 0, 0, -15, 0, 0, 0, 0, -7, 0, 0, 0, 0, -9, 0, 0, 0, 0, 0, 5,\n 0, 0, 0, 0, 13, 0, 0, 0, 0, 0, -3, 0, 0, 0, 0, -11, 0, 0, 0, 0, -7, 0, 0, 0, 0, -13, 0, 0,\n 0, 0, 11, 0, 0, 0, 0, -9, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0, 0, -15, 0, 0, 0, 0, 1, 0, 0, 0, 0,\n 7, 0, 0, 0, 0, 0, 0, 0, 0, 5, 0, 0, 0, 0, 0, 13, 0, 0, 0, 0, 0, 0, 11, 0, 0, 0, 0, 0, 15,\n 0, 0, 0, 0, 0, -9, 0, 0, 0, 0, 0, 0, 0, -1, 0, 0, 0, 0, 0, 0, 0, 7, 0, 0, 0, 0, 0, -15, 0,\n 0, 0, 0, 0, 15, 0, 0, 0, 0, 15, 0, 0, 0, 0, 15, 0, 0, 0, 0, 0, 1, 0, 0, 0, 0,\n ];\n\n const BASEPOINT_ORDER_MINUS_ONE: Scalar = Scalar {\n bytes: [\n 0xec, 0xd3, 0xf5, 0x5c, 0x1a, 0x63, 0x12, 0x58, 0xd6, 0x9c, 0xf7, 0xa2, 0xde, 0xf9,\n 0xde, 0x14, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,\n 0x00, 0x00, 0x00, 0x10,\n ],\n };\n\n /// The largest clamped integer\n static LARGEST_CLAMPED_INTEGER: [u8; 32] = clamp_integer(LARGEST_UNREDUCED_SCALAR.bytes);\n\n #[test]\n fn fuzzer_testcase_reduction() {\n // LE bytes of 24519928653854221733733552434404946937899825954937634815\n let a_bytes = [\n 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255,\n 255, 255, 255, 255, 255, 255, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n ];\n // LE bytes of 4975441334397345751130612518500927154628011511324180036903450236863266160640\n let b_bytes = [\n 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 255, 210, 210,\n 210, 255, 255, 255, 255, 10,\n ];\n // LE bytes of 6432735165214683820902750800207468552549813371247423777071615116673864412038\n let c_bytes = [\n 134, 171, 119, 216, 180, 128, 178, 62, 171, 132, 32, 62, 34, 119, 104, 193, 47, 215,\n 181, 250, 14, 207, 172, 93, 75, 207, 211, 103, 144, 204, 56, 14,\n ];\n\n let a = Scalar::from_bytes_mod_order(a_bytes);\n let b = Scalar::from_bytes_mod_order(b_bytes);\n let c = Scalar::from_bytes_mod_order(c_bytes);\n\n let mut tmp = [0u8; 64];\n\n // also_a = (a mod l)\n tmp[0..32].copy_from_slice(&a_bytes[..]);\n let also_a = Scalar::from_bytes_mod_order_wide(&tmp);\n\n // also_b = (b mod l)\n tmp[0..32].copy_from_slice(&b_bytes[..]);\n let also_b = Scalar::from_bytes_mod_order_wide(&tmp);\n\n let expected_c = a * b;\n let also_expected_c = also_a * also_b;\n\n assert_eq!(c, expected_c);\n assert_eq!(c, also_expected_c);\n }\n\n #[test]\n fn non_adjacent_form_test_vector() {\n let naf = A_SCALAR.non_adjacent_form(5);\n for i in 0..256 {\n assert_eq!(naf[i], A_NAF[i]);\n }\n }\n\n #[test]\n fn non_adjacent_form_128_matches_generic() {\n let mut high_bit = [0u8; 32];\n high_bit[15] = 0x80;\n\n let cases = [\n Scalar::ZERO,\n Scalar::ONE,\n Scalar::from(u64::MAX),\n Scalar::from(0xfedc_ba98_7654_3210_0123_4567_89ab_cdefu128),\n Scalar::from(u128::MAX),\n Scalar { bytes: high_bit },\n ];\n\n for scalar in cases {\n for w in 2..=8 {\n let generic = scalar.non_adjacent_form(w);\n let naf_128 = scalar.non_adjacent_form_128(w);\n\n for i in 0..=HEEA_MAX_INDEX {\n assert_eq!(\n naf_128[i], generic[i],\n \"NAF mismatch at index {i} for width {w}\"\n );\n }\n\n assert!(\n generic[NAF_128_SIZE..].iter().all(|&digit| digit == 0),\n \"generic NAF has non-zero digits above 128-bit range for width {w}\"\n );\n }\n }\n }\n\n #[cfg(feature = \"rand_core\")]\n fn non_adjacent_form_iter(w: usize, x: &Scalar) {\n let naf = x.non_adjacent_form(w);\n\n // Reconstruct the scalar from the computed NAF\n let mut y = Scalar::ZERO;\n for i in (0..256).rev() {\n y += y;\n let digit = if naf[i] < 0 {\n -Scalar::from((-naf[i]) as u64)\n } else {\n Scalar::from(naf[i] as u64)\n };\n y += digit;\n }\n\n assert_eq!(*x, y);\n }\n\n #[cfg(feature = \"rand_core\")]\n #[test]\n fn non_adjacent_form_random() {\n let mut rng = rand::thread_rng();\n for _ in 0..1_000 {\n let x = Scalar::random(&mut rng);\n for w in &[5, 6, 7, 8] {\n non_adjacent_form_iter(*w, &x);\n }\n }\n }\n\n #[test]\n fn from_u64() {\n let val: u64 = 0xdeadbeefdeadbeef;\n let s = Scalar::from(val);\n assert_eq!(s[7], 0xde);\n assert_eq!(s[6], 0xad);\n assert_eq!(s[5], 0xbe);\n assert_eq!(s[4], 0xef);\n assert_eq!(s[3], 0xde);\n assert_eq!(s[2], 0xad);\n assert_eq!(s[1], 0xbe);\n assert_eq!(s[0], 0xef);\n }\n\n #[test]\n fn scalar_mul_by_one() {\n let test_scalar = X * Scalar::ONE;\n for i in 0..32 {\n assert!(test_scalar[i] == X[i]);\n }\n }\n\n #[test]\n fn add_reduces() {\n // Check that addition wraps around the modulus\n assert_eq!(BASEPOINT_ORDER_MINUS_ONE + Scalar::ONE, Scalar::ZERO);\n }\n\n #[test]\n fn sub_reduces() {\n // Check that subtraction wraps around the modulus\n assert_eq!(Scalar::ZERO - Scalar::ONE, BASEPOINT_ORDER_MINUS_ONE);\n }\n\n #[test]\n fn impl_add() {\n let two = Scalar::from(2u64);\n let one = Scalar::ONE;\n let should_be_two = one + one;\n assert_eq!(should_be_two, two);\n }\n\n #[allow(non_snake_case)]\n #[test]\n fn impl_mul() {\n let should_be_X_times_Y = X * Y;\n assert_eq!(should_be_X_times_Y, X_TIMES_Y);\n }\n\n #[allow(non_snake_case)]\n #[test]\n #[cfg(feature = \"alloc\")]\n fn impl_product() {\n // Test that product works for non-empty iterators\n let X_Y_vector = [X, Y];\n let should_be_X_times_Y: Scalar = X_Y_vector.iter().product();\n assert_eq!(should_be_X_times_Y, X_TIMES_Y);\n\n // Test that product works for the empty iterator\n let one = Scalar::ONE;\n let empty_vector = [];\n let should_be_one: Scalar = empty_vector.iter().product();\n assert_eq!(should_be_one, one);\n\n // Test that product works for iterators where Item = Scalar\n let xs = [Scalar::from(2u64); 10];\n let ys = [Scalar::from(3u64); 10];\n // now zs is an iterator with Item = Scalar\n let zs = xs.iter().zip(ys.iter()).map(|(x, y)| x * y);\n\n let x_prod: Scalar = xs.iter().product();\n let y_prod: Scalar = ys.iter().product();\n let z_prod: Scalar = zs.product();\n\n assert_eq!(x_prod, Scalar::from(1024u64));\n assert_eq!(y_prod, Scalar::from(59049u64));\n assert_eq!(z_prod, Scalar::from(60466176u64));\n assert_eq!(x_prod * y_prod, z_prod);\n }\n\n #[test]\n #[cfg(feature = \"alloc\")]\n fn impl_sum() {\n // Test that sum works for non-empty iterators\n let two = Scalar::from(2u64);\n let one_vector = [Scalar::ONE, Scalar::ONE];\n let should_be_two: Scalar = one_vector.iter().sum();\n assert_eq!(should_be_two, two);\n\n // Test that sum works for the empty iterator\n let zero = Scalar::ZERO;\n let empty_vector = [];\n let should_be_zero: Scalar = empty_vector.iter().sum();\n assert_eq!(should_be_zero, zero);\n\n // Test that sum works for owned types\n let xs = [Scalar::from(1u64); 10];\n let ys = [Scalar::from(2u64); 10];\n // now zs is an iterator with Item = Scalar\n let zs = xs.iter().zip(ys.iter()).map(|(x, y)| x + y);\n\n let x_sum: Scalar = xs.iter().sum();\n let y_sum: Scalar = ys.iter().sum();\n let z_sum: Scalar = zs.sum();\n\n assert_eq!(x_sum, Scalar::from(10u64));\n assert_eq!(y_sum, Scalar::from(20u64));\n assert_eq!(z_sum, Scalar::from(30u64));\n assert_eq!(x_sum + y_sum, z_sum);\n }\n\n #[test]\n fn square() {\n let expected = X * X;\n let actual = X.unpack().square().pack();\n for i in 0..32 {\n assert!(expected[i] == actual[i]);\n }\n }\n\n #[test]\n fn div_by_2() {\n // test a range of small scalars\n for i in 0u64..32 {\n let scalar = Scalar::from(i);\n let dividend = scalar.div_by_2();\n assert_eq!(scalar, dividend + dividend);\n }\n\n // test a range of scalars near the modulus\n for i in 0u64..32 {\n let scalar = Scalar::ZERO - Scalar::from(i);\n let dividend = scalar.div_by_2();\n assert_eq!(scalar, dividend + dividend);\n }\n }\n\n #[test]\n fn reduce() {\n let biggest = Scalar::from_bytes_mod_order([0xff; 32]);\n assert_eq!(biggest, CANONICAL_2_256_MINUS_1);\n }\n\n #[test]\n fn from_bytes_mod_order_wide() {\n let mut bignum = [0u8; 64];\n // set bignum = x + 2^256x\n for i in 0..32 {\n bignum[i] = X[i];\n bignum[32 + i] = X[i];\n }\n // 3958878930004874126169954872055634648693766179881526445624823978500314864344\n // = x + 2^256x (mod l)\n let reduced = Scalar {\n bytes: [\n 216, 154, 179, 139, 210, 121, 2, 71, 69, 99, 158, 216, 23, 173, 63, 100, 204, 0,\n 91, 50, 219, 153, 57, 249, 28, 82, 31, 197, 100, 165, 192, 8,\n ],\n };\n let test_red = Scalar::from_bytes_mod_order_wide(&bignum);\n for i in 0..32 {\n assert!(test_red[i] == reduced[i]);\n }\n }\n\n #[allow(non_snake_case)]\n #[test]\n fn invert() {\n let inv_X = X.invert();\n assert_eq!(inv_X, XINV);\n let should_be_one = inv_X * X;\n assert_eq!(should_be_one, Scalar::ONE);\n }\n\n // Negating a scalar twice should result in the original scalar.\n #[allow(non_snake_case)]\n #[test]\n fn neg_twice_is_identity() {\n let negative_X = -&X;\n let should_be_X = -&negative_X;\n\n assert_eq!(should_be_X, X);\n }\n\n #[test]\n fn to_bytes_from_bytes_roundtrips() {\n let unpacked = X.unpack();\n let bytes = unpacked.to_bytes();\n let should_be_unpacked = UnpackedScalar::from_bytes(&bytes);\n\n assert_eq!(should_be_unpacked.0, unpacked.0);\n }\n\n #[test]\n fn montgomery_reduce_matches_from_bytes_mod_order_wide() {\n let mut bignum = [0u8; 64];\n\n // set bignum = x + 2^256x\n for i in 0..32 {\n bignum[i] = X[i];\n bignum[32 + i] = X[i];\n }\n // x + 2^256x (mod l)\n // = 3958878930004874126169954872055634648693766179881526445624823978500314864344\n let expected = Scalar {\n bytes: [\n 216, 154, 179, 139, 210, 121, 2, 71, 69, 99, 158, 216, 23, 173, 63, 100, 204, 0,\n 91, 50, 219, 153, 57, 249, 28, 82, 31, 197, 100, 165, 192, 8,\n ],\n };\n let reduced = Scalar::from_bytes_mod_order_wide(&bignum);\n\n // The reduced scalar should match the expected\n assert_eq!(reduced.bytes, expected.bytes);\n\n // (x + 2^256x) * R\n let interim =\n UnpackedScalar::mul_internal(&UnpackedScalar::from_bytes_wide(&bignum), &constants::R);\n // ((x + 2^256x) * R) / R (mod l)\n let montgomery_reduced = UnpackedScalar::montgomery_reduce(&interim);\n\n // The Montgomery reduced scalar should match the reduced one, as well as the expected\n assert_eq!(montgomery_reduced.0, reduced.unpack().0);\n assert_eq!(montgomery_reduced.0, expected.unpack().0)\n }\n\n #[test]\n fn canonical_decoding() {\n // canonical encoding of 1667457891\n let canonical_bytes = [\n 99, 99, 99, 99, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n 0, 0, 0, 0,\n ];\n\n // encoding of\n // 7265385991361016183439748078976496179028704920197054998554201349516117938192\n // = 28380414028753969466561515933501938171588560817147392552250411230663687203 (mod l)\n // non_canonical because unreduced mod l\n let non_canonical_bytes_because_unreduced = [16; 32];\n\n // encoding with high bit set, to check that the parser isn't pre-masking the high bit\n let non_canonical_bytes_because_highbit = [\n 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n 0, 0, 128,\n ];\n\n assert!(bool::from(\n Scalar::from_canonical_bytes(canonical_bytes).is_some()\n ));\n assert!(bool::from(\n Scalar::from_canonical_bytes(non_canonical_bytes_because_unreduced).is_none()\n ));\n assert!(bool::from(\n Scalar::from_canonical_bytes(non_canonical_bytes_because_highbit).is_none()\n ));\n }\n\n #[test]\n #[cfg(feature = \"serde\")]\n fn serde_bincode_scalar_roundtrip() {\n use bincode;\n let encoded = bincode::serialize(&X).unwrap();\n let parsed: Scalar = bincode::deserialize(&encoded).unwrap();\n assert_eq!(parsed, X);\n\n // Check that the encoding is 32 bytes exactly\n assert_eq!(encoded.len(), 32);\n\n // Check that the encoding itself matches the usual one\n assert_eq!(X, bincode::deserialize(X.as_bytes()).unwrap(),);\n }\n\n #[cfg(debug_assertions)]\n #[test]\n #[should_panic]\n fn invert_batch_with_a_zero_input_panics() {\n let mut xs = [Scalar::ONE; 16];\n xs[3] = Scalar::ZERO;\n // This should panic in debug mode.\n Scalar::invert_batch(&mut xs);\n }\n\n #[test]\n fn invert_batch_empty() {\n assert_eq!(Scalar::ONE, Scalar::invert_batch(&mut []));\n }\n\n #[test]\n fn invert_batch_consistency() {\n let mut x = Scalar::from(1u64);\n let mut v1: [Scalar; 16] = core::array::from_fn(|_| {\n let tmp = x;\n x = x + x;\n tmp\n });\n let v2 = v1;\n\n let expected: Scalar = v1.iter().product();\n let expected = expected.invert();\n let ret = Scalar::invert_batch(&mut v1);\n assert_eq!(ret, expected);\n\n for (a, b) in v1.iter().zip(v2.iter()) {\n assert_eq!(a * b, Scalar::ONE);\n }\n }\n\n #[test]\n #[cfg(feature = \"alloc\")]\n fn batch_vec_invert_consistency() {\n let mut x = Scalar::from(1u64);\n let mut v1: Vec<_> = (0..16)\n .map(|_| {\n let tmp = x;\n x = x + x;\n tmp\n })\n .collect();\n let v2 = v1.clone();\n\n let expected: Scalar = v1.iter().product();\n let expected = expected.invert();\n let ret = Scalar::invert_batch_alloc(&mut v1);\n assert_eq!(ret, expected);\n\n for (a, b) in v1.iter().zip(v2.iter()) {\n assert_eq!(a * b, Scalar::ONE);\n }\n }\n\n #[cfg(feature = \"precomputed-tables\")]\n fn test_pippenger_radix_iter(scalar: Scalar, w: usize) {\n let digits_count = Scalar::to_radix_2w_size_hint(w);\n let digits = scalar.as_radix_2w(w);\n\n let radix = Scalar::from((1 << w) as u64);\n let mut term = Scalar::ONE;\n let mut recovered_scalar = Scalar::ZERO;\n for digit in &digits[0..digits_count] {\n let digit = *digit;\n if digit != 0 {\n let sdigit = if digit < 0 {\n -Scalar::from((-(digit as i64)) as u64)\n } else {\n Scalar::from(digit as u64)\n };\n recovered_scalar += term * sdigit;\n }\n term *= radix;\n }\n // When the input is unreduced, we may only recover the scalar mod l.\n assert_eq!(recovered_scalar, scalar.reduce());\n }\n\n #[test]\n #[cfg(feature = \"precomputed-tables\")]\n fn test_pippenger_radix() {\n use core::iter;\n // For each valid radix it tests that 1000 random-ish scalars can be restored\n // from the produced representation precisely.\n let cases = (2..100)\n .map(|s| Scalar::from(s as u64).invert())\n // The largest unreduced scalar, s = 2^255-1. This is not reduced mod l. Scalar mult\n // still works though.\n .chain(iter::once(LARGEST_UNREDUCED_SCALAR));\n\n for scalar in cases {\n test_pippenger_radix_iter(scalar, 6);\n test_pippenger_radix_iter(scalar, 7);\n test_pippenger_radix_iter(scalar, 8);\n }\n }\n\n #[test]\n #[cfg(feature = \"alloc\")]\n fn test_read_le_u64_into() {\n let cases: &[(&[u8], &[u64])] = &[\n (\n &[0xFE, 0xEF, 0x10, 0x01, 0x1F, 0xF1, 0x0F, 0xF0],\n &[0xF00F_F11F_0110_EFFE],\n ),\n (\n &[\n 0xFE, 0xEF, 0x10, 0x01, 0x1F, 0xF1, 0x0F, 0xF0, 0x12, 0x34, 0x56, 0x78, 0x9A,\n 0xBC, 0xDE, 0xF0,\n ],\n &[0xF00F_F11F_0110_EFFE, 0xF0DE_BC9A_7856_3412],\n ),\n ];\n\n for (src, expected) in cases {\n let mut dst = vec![0; expected.len()];\n read_le_u64_into(src, &mut dst);\n\n assert_eq!(&dst, expected, \"Expected {:x?} got {:x?}\", expected, dst);\n }\n }\n\n // Tests consistency of From<{integer}> impls for Scalar\n #[test]\n fn test_scalar_from_int() {\n let s1 = Scalar::ONE;\n\n // For `x` in `u8`, `u16`, `u32`, `u64`, and `u128`, check that\n // `Scalar::from(x + 1) == Scalar::from(x) + Scalar::from(1)`\n\n let x = 0x23u8;\n let sx = Scalar::from(x);\n assert_eq!(sx + s1, Scalar::from(x + 1));\n\n let x = 0x2323u16;\n let sx = Scalar::from(x);\n assert_eq!(sx + s1, Scalar::from(x + 1));\n\n let x = 0x2323_2323u32;\n let sx = Scalar::from(x);\n assert_eq!(sx + s1, Scalar::from(x + 1));\n\n let x = 0x2323_2323_2323_2323u64;\n let sx = Scalar::from(x);\n assert_eq!(sx + s1, Scalar::from(x + 1));\n\n let x = 0x2323_2323_2323_2323_2323_2323_2323_2323u128;\n let sx = Scalar::from(x);\n assert_eq!(sx + s1, Scalar::from(x + 1));\n }\n\n #[cfg(feature = \"group\")]\n #[test]\n fn ff_constants() {\n assert_eq!(Scalar::from(2u64) * Scalar::TWO_INV, Scalar::ONE);\n\n assert_eq!(\n Scalar::ROOT_OF_UNITY * Scalar::ROOT_OF_UNITY_INV,\n Scalar::ONE,\n );\n\n // ROOT_OF_UNITY^{2^s} mod m == 1\n assert_eq!(\n Scalar::ROOT_OF_UNITY.pow(&[1u64 << Scalar::S, 0, 0, 0]),\n Scalar::ONE,\n );\n\n // DELTA^{t} mod m == 1\n assert_eq!(\n Scalar::DELTA.pow(&[\n 0x9604_98c6_973d_74fb,\n 0x0537_be77_a8bd_e735,\n 0x0000_0000_0000_0000,\n 0x0400_0000_0000_0000,\n ]),\n Scalar::ONE,\n );\n }\n\n #[cfg(feature = \"group\")]\n #[test]\n fn ff_impls() {\n assert!(bool::from(Scalar::ZERO.is_even()));\n assert!(bool::from(Scalar::ONE.is_odd()));\n assert!(bool::from(Scalar::from(2u64).is_even()));\n assert!(bool::from(Scalar::DELTA.is_even()));\n\n assert!(bool::from(Field::invert(&Scalar::ZERO).is_none()));\n assert_eq!(Field::invert(&X).unwrap(), XINV);\n\n let x_sq = X.square();\n // We should get back either the positive or negative root.\n assert!([X, -X].contains(&x_sq.sqrt().unwrap()));\n\n assert_eq!(Scalar::from_repr_vartime(X.to_repr()), Some(X));\n assert_eq!(Scalar::from_repr_vartime([0xff; 32]), None);\n\n assert_eq!(Scalar::from_repr(X.to_repr()).unwrap(), X);\n assert!(bool::from(Scalar::from_repr([0xff; 32]).is_none()));\n }\n\n #[test]\n #[should_panic]\n fn test_read_le_u64_into_should_panic_on_bad_input() {\n let mut dst = [0_u64; 1];\n // One byte short\n read_le_u64_into(&[0xFE, 0xEF, 0x10, 0x01, 0x1F, 0xF1, 0x0F], &mut dst);\n }\n\n #[test]\n fn test_scalar_clamp() {\n let input = A_SCALAR.bytes;\n let expected = [\n 0x18, 0x0e, 0x97, 0x8a, 0x90, 0xf6, 0x62, 0x2d, 0x37, 0x47, 0x02, 0x3f, 0x8a, 0xd8,\n 0x26, 0x4d, 0xa7, 0x58, 0xaa, 0x1b, 0x88, 0xe0, 0x40, 0xd1, 0x58, 0x9e, 0x7b, 0x7f,\n 0x23, 0x76, 0xef, 0x49,\n ];\n let actual = clamp_integer(input);\n assert_eq!(actual, expected);\n\n let expected = [\n 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0,\n 0, 0, 0x40,\n ];\n let actual = clamp_integer([0; 32]);\n assert_eq!(expected, actual);\n let expected = [\n 0xf8, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff,\n 0xff, 0xff, 0xff, 0x7f,\n ];\n let actual = clamp_integer([0xff; 32]);\n assert_eq!(actual, expected);\n\n assert_eq!(\n LARGEST_CLAMPED_INTEGER,\n clamp_integer(LARGEST_CLAMPED_INTEGER)\n );\n }\n\n // Check that a * b == a.reduce() * a.reduce() for ANY scalars a,b, even ones that violate\n // invariant #1, i.e., a,b > 2^255. Old versions of ed25519-dalek did multiplication where a\n // was reduced and b was clamped and unreduced. This checks that was always well-defined.\n #[test]\n fn test_mul_reduction_invariance() {\n let mut rng = rand::thread_rng();\n\n for _ in 0..10 {\n // Also define c that's clamped. We'll make sure that clamping doesn't affect\n // computation\n let (a, b, c) = {\n let mut a_bytes = [0u8; 32];\n let mut b_bytes = [0u8; 32];\n let mut c_bytes = [0u8; 32];\n rng.fill_bytes(&mut a_bytes);\n rng.fill_bytes(&mut b_bytes);\n rng.fill_bytes(&mut c_bytes);\n (\n Scalar { bytes: a_bytes },\n Scalar { bytes: b_bytes },\n Scalar {\n bytes: clamp_integer(c_bytes),\n },\n )\n };\n\n // Make sure this is the same product no matter how you cut it\n let reduced_mul_ab = a.reduce() * b.reduce();\n let reduced_mul_ac = a.reduce() * c.reduce();\n assert_eq!(a * b, reduced_mul_ab);\n assert_eq!(a.reduce() * b, reduced_mul_ab);\n assert_eq!(a * b.reduce(), reduced_mul_ab);\n assert_eq!(a * c, reduced_mul_ac);\n assert_eq!(a.reduce() * c, reduced_mul_ac);\n assert_eq!(a * c.reduce(), reduced_mul_ac);\n }\n }\n}\n"},{"id":6,"name":{"Local":"/rustc/library/core/src/ops/range.rs"},"crate_name":"core","contents":null},{"id":7,"name":{"Local":"/rustc/library/core/src/ops/mod.rs"},"crate_name":"core","contents":null},{"id":8,"name":{"Local":"/rustc/library/core/src/lib.rs"},"crate_name":"core","contents":null},{"id":9,"name":{"Local":"/rustc/library/core/src/option.rs"},"crate_name":"core","contents":null},{"id":10,"name":{"Local":"/rustc/library/core/src/iter/traits/collect.rs"},"crate_name":"core","contents":null},{"id":11,"name":{"Local":"/rustc/library/core/src/iter/traits/mod.rs"},"crate_name":"core","contents":null},{"id":12,"name":{"Local":"/rustc/library/core/src/iter/mod.rs"},"crate_name":"core","contents":null},{"id":13,"name":{"Local":"/rustc/library/core/src/iter/traits/iterator.rs"},"crate_name":"core","contents":null},{"id":14,"name":{"Local":"/rustc/library/core/src/iter/range.rs"},"crate_name":"core","contents":null},{"id":15,"name":{"Local":"/cargo/registry/src/index.crates.io-1949cf8c6b5b557f/subtle-2.6.1/src/lib.rs"},"crate_name":"subtle","contents":null},{"id":16,"name":{"Local":"/rustc/library/core/src/num/uint_macros.rs"},"crate_name":"core","contents":null},{"id":17,"name":{"Local":"/rustc/library/core/src/num/mod.rs"},"crate_name":"core","contents":null},{"id":18,"name":{"Local":"/rustc/library/core/src/result.rs"},"crate_name":"core","contents":null},{"id":19,"name":{"Local":"/rustc/library/core/src/array/iter.rs"},"crate_name":"core","contents":null},{"id":20,"name":{"Local":"/rustc/library/core/src/array/mod.rs"},"crate_name":"core","contents":null},{"id":21,"name":{"Local":"/rustc/library/core/src/marker.rs"},"crate_name":"core","contents":null},{"id":22,"name":{"Local":"/rustc/library/core/src/num/nonzero.rs"},"crate_name":"core","contents":null},{"id":23,"name":{"Local":"/rustc/library/core/src/iter/adapters/step_by.rs"},"crate_name":"core","contents":null},{"id":24,"name":{"Local":"/rustc/library/core/src/iter/adapters/mod.rs"},"crate_name":"core","contents":null},{"id":25,"name":{"Local":"/rustc/library/core/src/iter/adapters/chain.rs"},"crate_name":"core","contents":null},{"id":26,"name":{"Local":"/rustc/library/core/src/iter/adapters/zip.rs"},"crate_name":"core","contents":null},{"id":27,"name":{"Local":"/rustc/library/core/src/clone.rs"},"crate_name":"core","contents":null},{"id":28,"name":{"Local":"/rustc/library/core/src/iter/adapters/intersperse.rs"},"crate_name":"core","contents":null},{"id":29,"name":{"Local":"/rustc/library/core/src/ops/function.rs"},"crate_name":"core","contents":null},{"id":30,"name":{"Local":"/rustc/library/core/src/iter/adapters/map.rs"},"crate_name":"core","contents":null},{"id":31,"name":{"Local":"/rustc/library/core/src/iter/adapters/filter.rs"},"crate_name":"core","contents":null},{"id":32,"name":{"Local":"/rustc/library/core/src/iter/adapters/filter_map.rs"},"crate_name":"core","contents":null},{"id":33,"name":{"Local":"/rustc/library/core/src/iter/adapters/enumerate.rs"},"crate_name":"core","contents":null},{"id":34,"name":{"Local":"/rustc/library/core/src/iter/adapters/peekable.rs"},"crate_name":"core","contents":null},{"id":35,"name":{"Local":"/rustc/library/core/src/iter/adapters/skip_while.rs"},"crate_name":"core","contents":null},{"id":36,"name":{"Local":"/rustc/library/core/src/iter/adapters/take_while.rs"},"crate_name":"core","contents":null},{"id":37,"name":{"Local":"/rustc/library/core/src/iter/adapters/map_while.rs"},"crate_name":"core","contents":null},{"id":38,"name":{"Local":"/rustc/library/core/src/iter/adapters/skip.rs"},"crate_name":"core","contents":null},{"id":39,"name":{"Local":"/rustc/library/core/src/iter/adapters/take.rs"},"crate_name":"core","contents":null},{"id":40,"name":{"Local":"/rustc/library/core/src/iter/adapters/scan.rs"},"crate_name":"core","contents":null},{"id":41,"name":{"Local":"/rustc/library/core/src/iter/adapters/flatten.rs"},"crate_name":"core","contents":null},{"id":42,"name":{"Local":"/rustc/library/core/src/iter/adapters/map_windows.rs"},"crate_name":"core","contents":null},{"id":43,"name":{"Local":"/rustc/library/core/src/iter/adapters/fuse.rs"},"crate_name":"core","contents":null},{"id":44,"name":{"Local":"/rustc/library/core/src/iter/adapters/inspect.rs"},"crate_name":"core","contents":null},{"id":45,"name":{"Local":"/rustc/library/core/src/ops/try_trait.rs"},"crate_name":"core","contents":null},{"id":46,"name":{"Local":"/rustc/library/core/src/default.rs"},"crate_name":"core","contents":null},{"id":47,"name":{"Local":"/rustc/library/core/src/iter/traits/double_ended.rs"},"crate_name":"core","contents":null},{"id":48,"name":{"Local":"/rustc/library/core/src/iter/traits/exact_size.rs"},"crate_name":"core","contents":null},{"id":49,"name":{"Local":"/rustc/library/core/src/cmp.rs"},"crate_name":"core","contents":null},{"id":50,"name":{"Local":"/rustc/library/core/src/iter/adapters/rev.rs"},"crate_name":"core","contents":null},{"id":51,"name":{"Local":"/rustc/library/core/src/iter/adapters/copied.rs"},"crate_name":"core","contents":null},{"id":52,"name":{"Local":"/rustc/library/core/src/iter/adapters/cloned.rs"},"crate_name":"core","contents":null},{"id":53,"name":{"Local":"/rustc/library/core/src/iter/adapters/cycle.rs"},"crate_name":"core","contents":null},{"id":54,"name":{"Local":"/rustc/library/core/src/iter/adapters/array_chunks.rs"},"crate_name":"core","contents":null},{"id":55,"name":{"Local":"/rustc/library/core/src/iter/traits/accum.rs"},"crate_name":"core","contents":null},{"id":56,"name":{"Local":"/rustc/library/core/src/ops/index.rs"},"crate_name":"core","contents":null},{"id":57,"name":{"Local":"/rustc/library/core/src/convert/mod.rs"},"crate_name":"core","contents":null},{"id":58,"name":{"Local":"curve25519/solana-ed25519/src/backend/serial/u64/constants.rs"},"crate_name":"curve25519","contents":"// -*- mode: rust; -*-\n//\n// This file is part of curve25519-dalek.\n// Copyright (c) 2016-2021 isis lovecruft\n// Copyright (c) 2016-2019 Henry de Valence\n// See LICENSE for licensing information.\n//\n// Authors:\n// - isis agora lovecruft <isis@patternsinthevoid.net>\n// - Henry de Valence <hdevalence@hdevalence.ca>\n\n//! This module contains backend-specific constant values, such as the 64-bit limbs of curve constants.\n\nuse super::field::FieldElement51;\nuse super::scalar::Scalar52;\nuse crate::edwards::EdwardsPoint;\n\n#[cfg(feature = \"precomputed-tables\")]\nuse crate::{\n backend::serial::curve_models::{AffineNielsPoint, ProjectiveNielsPoint},\n edwards::EdwardsBasepointTable,\n window::{LookupTable, NafLookupTable5, NafLookupTable8},\n};\n\n/// The value of minus one, equal to `-&FieldElement::ONE`\npub(crate) const MINUS_ONE: FieldElement51 = FieldElement51::from_limbs([\n 2251799813685228,\n 2251799813685247,\n 2251799813685247,\n 2251799813685247,\n 2251799813685247,\n]);\n\n/// sqrt(-486664)\n#[cfg(feature = \"digest\")]\npub(crate) const ED25519_SQRTAM2: FieldElement51 = FieldElement51::from_limbs([\n 1693982333959686,\n 608509411481997,\n 2235573344831311,\n 947681270984193,\n 266558006233600,\n]);\n\n/// Edwards `d` value, equal to `-121665/121666 mod p`.\npub(crate) const EDWARDS_D: FieldElement51 = FieldElement51::from_limbs([\n 929955233495203,\n 466365720129213,\n 1662059464998953,\n 2033849074728123,\n 1442794654840575,\n]);\n\n/// Edwards `2*d` value, equal to `2*(-121665/121666) mod p`.\npub(crate) const EDWARDS_D2: FieldElement51 = FieldElement51::from_limbs([\n 1859910466990425,\n 932731440258426,\n 1072319116312658,\n 1815898335770999,\n 633789495995903,\n]);\n\n/// One minus edwards `d` value squared, equal to `(1 - (-121665/121666) mod p) pow 2`\npub(crate) const ONE_MINUS_EDWARDS_D_SQUARED: FieldElement51 = FieldElement51::from_limbs([\n 1136626929484150,\n 1998550399581263,\n 496427632559748,\n 118527312129759,\n 45110755273534,\n]);\n\n/// Edwards `d` value minus one squared, equal to `(((-121665/121666) mod p) - 1) pow 2`\npub(crate) const EDWARDS_D_MINUS_ONE_SQUARED: FieldElement51 = FieldElement51::from_limbs([\n 1507062230895904,\n 1572317787530805,\n 683053064812840,\n 317374165784489,\n 1572899562415810,\n]);\n\n/// `= sqrt(a*d - 1)`, where `a = -1 (mod p)`, `d` are the Edwards curve parameters.\npub(crate) const SQRT_AD_MINUS_ONE: FieldElement51 = FieldElement51::from_limbs([\n 2241493124984347,\n 425987919032274,\n 2207028919301688,\n 1220490630685848,\n 974799131293748,\n]);\n\n/// `= 1/sqrt(a-d)`, where `a = -1 (mod p)`, `d` are the Edwards curve parameters.\npub(crate) const INVSQRT_A_MINUS_D: FieldElement51 = FieldElement51::from_limbs([\n 278908739862762,\n 821645201101625,\n 8113234426968,\n 1777959178193151,\n 2118520810568447,\n]);\n\n/// Precomputed value of one of the square roots of -1 (mod p)\npub(crate) const SQRT_M1: FieldElement51 = FieldElement51::from_limbs([\n 1718705420411056,\n 234908883556509,\n 2233514472574048,\n 2117202627021982,\n 765476049583133,\n]);\n\n/// `APLUS2_OVER_FOUR` is (A+2)/4. (This is used internally within the Montgomery ladder.)\npub(crate) const APLUS2_OVER_FOUR: FieldElement51 =\n FieldElement51::from_limbs([121666, 0, 0, 0, 0]);\n\n#[cfg(feature = \"digest\")]\n/// `MONTGOMERY_A` is equal to 486662, which is a constant of the curve equation\n/// for Curve25519 in its Montgomery form. (This is used internally within the\n/// Elligator map.)\npub(crate) const MONTGOMERY_A: FieldElement51 = FieldElement51::from_limbs([486662, 0, 0, 0, 0]);\n\n#[cfg(feature = \"digest\")]\n/// `MONTGOMERY_A_NEG` is equal to -486662. (This is used internally within the\n/// Elligator map.)\npub(crate) const MONTGOMERY_A_NEG: FieldElement51 = FieldElement51::from_limbs([\n 2251799813198567,\n 2251799813685247,\n 2251799813685247,\n 2251799813685247,\n 2251799813685247,\n]);\n\n/// `L` is the order of base point, i.e. 2^252 + 27742317777372353535851937790883648493\npub(crate) const L: Scalar52 = Scalar52([\n 0x0002631a5cf5d3ed,\n 0x000dea2f79cd6581,\n 0x000000000014def9,\n 0x0000000000000000,\n 0x0000100000000000,\n]);\n\n/// `L` * `LFACTOR` = -1 (mod 2^52)\npub(crate) const LFACTOR: u64 = 0x51da312547e1b;\n\n/// `R` = R % L where R = 2^260\npub(crate) const R: Scalar52 = Scalar52([\n 0x000f48bd6721e6ed,\n 0x0003bab5ac67e45a,\n 0x000fffffeb35e51b,\n 0x000fffffffffffff,\n 0x00000fffffffffff,\n]);\n\n/// `RR` = (R^2) % L where R = 2^260\npub(crate) const RR: Scalar52 = Scalar52([\n 0x0009d265e952d13b,\n 0x000d63c715bea69f,\n 0x0005be65cb687604,\n 0x0003dceec73d217f,\n 0x000009411b7c309a,\n]);\n\n/// The Ed25519 basepoint, as an `EdwardsPoint`.\n///\n/// This is called `_POINT` to distinguish it from\n/// `ED25519_BASEPOINT_TABLE`, which should be used for scalar\n/// multiplication (it's much faster).\npub const ED25519_BASEPOINT_POINT: EdwardsPoint = EdwardsPoint {\n X: FieldElement51::from_limbs([\n 1738742601995546,\n 1146398526822698,\n 2070867633025821,\n 562264141797630,\n 587772402128613,\n ]),\n Y: FieldElement51::from_limbs([\n 1801439850948184,\n 1351079888211148,\n 450359962737049,\n 900719925474099,\n 1801439850948198,\n ]),\n Z: FieldElement51::from_limbs([1, 0, 0, 0, 0]),\n T: FieldElement51::from_limbs([\n 1841354044333475,\n 16398895984059,\n 755974180946558,\n 900171276175154,\n 1821297809914039,\n ]),\n};\n\n/// The Ed25519 basepoint, mul by 2^128, as an `EdwardsPoint`.\npub const ED25519_BASEPOINT_128_POINT: EdwardsPoint = EdwardsPoint {\n X: FieldElement51::from_limbs([\n 1573694877509226,\n 2118644427590872,\n 940662180141619,\n 707110682864191,\n 1255997186674731,\n ]),\n Y: FieldElement51::from_limbs([\n 1162474291335259,\n 820106152083656,\n 523232807607258,\n 2134608004007539,\n 729879497843472,\n ]),\n Z: FieldElement51::from_limbs([\n 445134475408207,\n 1820906444767788,\n 40212681131971,\n 1448661247201044,\n 965705781338211,\n ]),\n T: FieldElement51::from_limbs([\n 1855274855831337,\n 1818119365171423,\n 269991889323070,\n 1370944576683708,\n 140790155072480,\n ]),\n};\n\n/// The 8-torsion subgroup \\\\(\\mathcal E \\[8\\]\\\\).\n///\n/// In the case of Curve25519, it is cyclic; the \\\\(i\\\\)-th element of\n/// the array is \\\\(\\[i\\]P\\\\), where \\\\(P\\\\) is a point of order \\\\(8\\\\)\n/// generating \\\\(\\mathcal E\\[8\\]\\\\).\n///\n/// Thus \\\\(\\mathcal E\\[4\\]\\\\) is the points indexed by `0,2,4,6`, and\n/// \\\\(\\mathcal E\\[2\\]\\\\) is the points indexed by `0,4`.\npub const EIGHT_TORSION: [EdwardsPoint; 8] = EIGHT_TORSION_INNER_DOC_HIDDEN;\n\n/// Inner item used to hide limb constants from cargo doc output.\n#[doc(hidden)]\npub const EIGHT_TORSION_INNER_DOC_HIDDEN: [EdwardsPoint; 8] = [\n EdwardsPoint {\n X: FieldElement51::from_limbs([0, 0, 0, 0, 0]),\n Y: FieldElement51::from_limbs([1, 0, 0, 0, 0]),\n Z: FieldElement51::from_limbs([1, 0, 0, 0, 0]),\n T: FieldElement51::from_limbs([0, 0, 0, 0, 0]),\n },\n EdwardsPoint {\n X: FieldElement51::from_limbs([\n 358744748052810,\n 1691584618240980,\n 977650209285361,\n 1429865912637724,\n 560044844278676,\n ]),\n Y: FieldElement51::from_limbs([\n 84926274344903,\n 473620666599931,\n 365590438845504,\n 1028470286882429,\n 2146499180330972,\n ]),\n Z: FieldElement51::from_limbs([1, 0, 0, 0, 0]),\n T: FieldElement51::from_limbs([\n 1448326834587521,\n 1857896831960481,\n 1093722731865333,\n 1677408490711241,\n 1915505153018406,\n ]),\n },\n EdwardsPoint {\n X: FieldElement51::from_limbs([\n 533094393274173,\n 2016890930128738,\n 18285341111199,\n 134597186663265,\n 1486323764102114,\n ]),\n Y: FieldElement51::from_limbs([0, 0, 0, 0, 0]),\n Z: FieldElement51::from_limbs([1, 0, 0, 0, 0]),\n T: FieldElement51::from_limbs([0, 0, 0, 0, 0]),\n },\n EdwardsPoint {\n X: FieldElement51::from_limbs([\n 358744748052810,\n 1691584618240980,\n 977650209285361,\n 1429865912637724,\n 560044844278676,\n ]),\n Y: FieldElement51::from_limbs([\n 2166873539340326,\n 1778179147085316,\n 1886209374839743,\n 1223329526802818,\n 105300633354275,\n ]),\n Z: FieldElement51::from_limbs([1, 0, 0, 0, 0]),\n T: FieldElement51::from_limbs([\n 803472979097708,\n 393902981724766,\n 1158077081819914,\n 574391322974006,\n 336294660666841,\n ]),\n },\n EdwardsPoint {\n X: FieldElement51::from_limbs([0, 0, 0, 0, 0]),\n Y: FieldElement51::from_limbs([\n 2251799813685228,\n 2251799813685247,\n 2251799813685247,\n 2251799813685247,\n 2251799813685247,\n ]),\n Z: FieldElement51::from_limbs([1, 0, 0, 0, 0]),\n T: FieldElement51::from_limbs([0, 0, 0, 0, 0]),\n },\n EdwardsPoint {\n X: FieldElement51::from_limbs([\n 1893055065632419,\n 560215195444267,\n 1274149604399886,\n 821933901047523,\n 1691754969406571,\n ]),\n Y: FieldElement51::from_limbs([\n 2166873539340326,\n 1778179147085316,\n 1886209374839743,\n 1223329526802818,\n 105300633354275,\n ]),\n Z: FieldElement51::from_limbs([1, 0, 0, 0, 0]),\n T: FieldElement51::from_limbs([\n 1448326834587521,\n 1857896831960481,\n 1093722731865333,\n 1677408490711241,\n 1915505153018406,\n ]),\n },\n EdwardsPoint {\n X: FieldElement51::from_limbs([\n 1718705420411056,\n 234908883556509,\n 2233514472574048,\n 2117202627021982,\n 765476049583133,\n ]),\n Y: FieldElement51::from_limbs([0, 0, 0, 0, 0]),\n Z: FieldElement51::from_limbs([1, 0, 0, 0, 0]),\n T: FieldElement51::from_limbs([0, 0, 0, 0, 0]),\n },\n EdwardsPoint {\n X: FieldElement51::from_limbs([\n 1893055065632419,\n 560215195444267,\n 1274149604399886,\n 821933901047523,\n 1691754969406571,\n ]),\n Y: FieldElement51::from_limbs([\n 84926274344903,\n 473620666599931,\n 365590438845504,\n 1028470286882429,\n 2146499180330972,\n ]),\n Z: FieldElement51::from_limbs([1, 0, 0, 0, 0]),\n T: FieldElement51::from_limbs([\n 803472979097708,\n 393902981724766,\n 1158077081819914,\n 574391322974006,\n 336294660666841,\n ]),\n },\n];\n\n/// Table containing precomputed multiples of the Ed25519 basepoint \\\\(B = (x, 4/5)\\\\).\n#[cfg(feature = \"precomputed-tables\")]\npub static ED25519_BASEPOINT_TABLE: &EdwardsBasepointTable =\n &ED25519_BASEPOINT_TABLE_INNER_DOC_HIDDEN;\n\n/// Inner constant, used to avoid filling the docs with precomputed points.\n#[doc(hidden)]\n#[cfg(feature = \"precomputed-tables\")]\nstatic ED25519_BASEPOINT_TABLE_INNER_DOC_HIDDEN: EdwardsBasepointTable = EdwardsBasepointTable([\n LookupTable([\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3540182452943730,\n 2497478415033846,\n 2521227595762870,\n 1462984067271729,\n 2389212253076811,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 62697248952638,\n 204681361388450,\n 631292143396476,\n 338455783676468,\n 1213667448819585,\n ]),\n xy2d: FieldElement51::from_limbs([\n 301289933810280,\n 1259582250014073,\n 1422107436869536,\n 796239922652654,\n 1953934009299142,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3632771708514775,\n 790832306631235,\n 2067202295274102,\n 1995808275510000,\n 1566530869037010,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 463307831301544,\n 432984605774163,\n 1610641361907204,\n 750899048855000,\n 1894842303421586,\n ]),\n xy2d: FieldElement51::from_limbs([\n 748439484463711,\n 1033211726465151,\n 1396005112841647,\n 1611506220286469,\n 1972177495910992,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1601611775252272,\n 1720807796594148,\n 1132070835939856,\n 3512254832574799,\n 2147779492816910,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 316559037616741,\n 2177824224946892,\n 1459442586438991,\n 1461528397712656,\n 751590696113597,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1850748884277385,\n 1200145853858453,\n 1068094770532492,\n 672251375690438,\n 1586055907191707,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 934282339813791,\n 1846903124198670,\n 1172395437954843,\n 1007037127761661,\n 1830588347719256,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1694390458783935,\n 1735906047636159,\n 705069562067493,\n 648033061693059,\n 696214010414170,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1121406372216585,\n 192876649532226,\n 190294192191717,\n 1994165897297032,\n 2245000007398739,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 769950342298400,\n 2384754244604994,\n 3095885746880802,\n 3225892188161580,\n 2977876099231263,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 425251763115706,\n 608463272472562,\n 442562545713235,\n 837766094556764,\n 374555092627893,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1086255230780037,\n 274979815921559,\n 1960002765731872,\n 929474102396301,\n 1190409889297339,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1388594989461809,\n 316767091099457,\n 2646098655878230,\n 1230079486801004,\n 1440737038838979,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 7380825640100,\n 146210432690483,\n 304903576448906,\n 1198869323871120,\n 997689833219095,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1181317918772081,\n 114573476638901,\n 262805072233344,\n 265712217171332,\n 294181933805782,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2916800678241215,\n 2065379846933858,\n 2622030924071124,\n 2602788184473875,\n 1233371373142984,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2019367628972465,\n 676711900706637,\n 110710997811333,\n 1108646842542025,\n 517791959672113,\n ]),\n xy2d: FieldElement51::from_limbs([\n 965130719900578,\n 247011430587952,\n 526356006571389,\n 91986625355052,\n 2157223321444601,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 4320419353804412,\n 4218074731744053,\n 957728544705548,\n 729906502578991,\n 2411634706750414,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2073601412052185,\n 31021124762708,\n 264500969797082,\n 248034690651703,\n 1030252227928288,\n ]),\n xy2d: FieldElement51::from_limbs([\n 551790716293402,\n 1989538725166328,\n 801169423371717,\n 2052451893578887,\n 678432056995012,\n ]),\n },\n ]),\n LookupTable([\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1368953770187805,\n 3042147450398169,\n 2689308289352409,\n 2142576377050579,\n 1932081720066286,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 953638594433374,\n 1092333936795051,\n 1419774766716690,\n 805677984380077,\n 859228993502513,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1200766035879111,\n 20142053207432,\n 1465634435977050,\n 1645256912097844,\n 295121984874596,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1735718747031538,\n 1248237894295956,\n 1204753118328107,\n 976066523550493,\n 2317743583219840,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1060098822528990,\n 1586825862073490,\n 212301317240126,\n 1975302711403555,\n 666724059764335,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1091990273418756,\n 1572899409348578,\n 80968014455247,\n 306009358661350,\n 1520450739132526,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3732317023121341,\n 1511153322193951,\n 3496143672676420,\n 2556587964178488,\n 2620936670181690,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2151330273626164,\n 762045184746182,\n 1688074332551515,\n 823046109005759,\n 907602769079491,\n ]),\n xy2d: FieldElement51::from_limbs([\n 2047386910586836,\n 168470092900250,\n 1552838872594810,\n 340951180073789,\n 360819374702533,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1982622644432037,\n 2014393600336956,\n 2380709022489462,\n 3869592437614438,\n 2357094095599062,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 980234343912898,\n 1712256739246056,\n 588935272190264,\n 204298813091998,\n 841798321043288,\n ]),\n xy2d: FieldElement51::from_limbs([\n 197561292938973,\n 454817274782871,\n 1963754960082318,\n 2113372252160468,\n 971377527342673,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2416499262514576,\n 2254927265442919,\n 3451304785234000,\n 1766155447043651,\n 1899238924683527,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 732262946680281,\n 1674412764227063,\n 2182456405662809,\n 1350894754474250,\n 558458873295247,\n ]),\n xy2d: FieldElement51::from_limbs([\n 2103305098582922,\n 1960809151316468,\n 715134605001343,\n 1454892949167181,\n 40827143824949,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1239289043050193,\n 1744654158124578,\n 758702410031698,\n 4048562808759936,\n 2253402870349013,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2232056027107988,\n 987343914584615,\n 2115594492994461,\n 1819598072792159,\n 1119305654014850,\n ]),\n xy2d: FieldElement51::from_limbs([\n 320153677847348,\n 939613871605645,\n 641883205761567,\n 1930009789398224,\n 329165806634126,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3232730304159378,\n 1242488692177892,\n 1251446316964684,\n 1086618677993530,\n 1961430968465772,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 276821765317453,\n 1536835591188030,\n 1305212741412361,\n 61473904210175,\n 2051377036983058,\n ]),\n xy2d: FieldElement51::from_limbs([\n 833449923882501,\n 1750270368490475,\n 1123347002068295,\n 185477424765687,\n 278090826653186,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 794524995833413,\n 1849907304548286,\n 2305148486158393,\n 1272368559505216,\n 1147304168324779,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1504846112759364,\n 1203096289004681,\n 562139421471418,\n 274333017451844,\n 1284344053775441,\n ]),\n xy2d: FieldElement51::from_limbs([\n 483048732424432,\n 2116063063343382,\n 30120189902313,\n 292451576741007,\n 1156379271702225,\n ]),\n },\n ]),\n LookupTable([\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3180171966714267,\n 2147692869914563,\n 1455665844462196,\n 1986737809425946,\n 2437006863943337,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 137732961814206,\n 706670923917341,\n 1387038086865771,\n 1965643813686352,\n 1384777115696347,\n ]),\n xy2d: FieldElement51::from_limbs([\n 481144981981577,\n 2053319313589856,\n 2065402289827512,\n 617954271490316,\n 1106602634668125,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2948097833334040,\n 3145099472726142,\n 1148636718636008,\n 2278533891034865,\n 2203955659340680,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 657390353372855,\n 998499966885562,\n 991893336905797,\n 810470207106761,\n 343139804608786,\n ]),\n xy2d: FieldElement51::from_limbs([\n 791736669492960,\n 934767652997115,\n 824656780392914,\n 1759463253018643,\n 361530362383518,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2022541353055578,\n 4346500076272714,\n 3802807888710933,\n 2494585331103411,\n 2947785218648809,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1287487199965223,\n 2215311941380308,\n 1552928390931986,\n 1664859529680196,\n 1125004975265243,\n ]),\n xy2d: FieldElement51::from_limbs([\n 677434665154918,\n 989582503122485,\n 1817429540898386,\n 1052904935475344,\n 1143826298169798,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2619066141993637,\n 2570231002607651,\n 2947429167440602,\n 2885885471266079,\n 2276381426249673,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 773360688841258,\n 1815381330538070,\n 363773437667376,\n 539629987070205,\n 783280434248437,\n ]),\n xy2d: FieldElement51::from_limbs([\n 180820816194166,\n 168937968377394,\n 748416242794470,\n 1227281252254508,\n 1567587861004268,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2730575372268893,\n 2062896624554806,\n 2951191072970647,\n 2609899222113120,\n 1277310261461760,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1984740906540026,\n 1079164179400229,\n 1056021349262661,\n 1659958556483663,\n 1088529069025527,\n ]),\n xy2d: FieldElement51::from_limbs([\n 580736401511151,\n 1842931091388998,\n 1177201471228238,\n 2075460256527244,\n 1301133425678027,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1515728832059163,\n 1575261009617579,\n 1510246567196186,\n 2442877836294952,\n 2368461529974388,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1295295738269652,\n 1714742313707026,\n 545583042462581,\n 2034411676262552,\n 1513248090013606,\n ]),\n xy2d: FieldElement51::from_limbs([\n 230710545179830,\n 30821514358353,\n 760704303452229,\n 390668103790604,\n 573437871383156,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3421179921230875,\n 2514967047430861,\n 4274701112739695,\n 3071700566936367,\n 4275698278559832,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2102254323485823,\n 1570832666216754,\n 34696906544624,\n 1993213739807337,\n 70638552271463,\n ]),\n xy2d: FieldElement51::from_limbs([\n 894132856735058,\n 548675863558441,\n 845349339503395,\n 1942269668326667,\n 1615682209874691,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3539470031223082,\n 1222355136884919,\n 1846481788678694,\n 1150426571265110,\n 1613523400722047,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 793388516527298,\n 1315457083650035,\n 1972286999342417,\n 1901825953052455,\n 338269477222410,\n ]),\n xy2d: FieldElement51::from_limbs([\n 550201530671806,\n 778605267108140,\n 2063911101902983,\n 115500557286349,\n 2041641272971022,\n ]),\n },\n ]),\n LookupTable([\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 717255318455100,\n 519313764361315,\n 2080406977303708,\n 541981206705521,\n 774328150311600,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 261715221532238,\n 1795354330069993,\n 1496878026850283,\n 499739720521052,\n 389031152673770,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1997217696294013,\n 1717306351628065,\n 1684313917746180,\n 1644426076011410,\n 1857378133465451,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3727234538477877,\n 2328731709971226,\n 3368528843456914,\n 2002544139318041,\n 2977347647489186,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2022306639183567,\n 726296063571875,\n 315345054448644,\n 1058733329149221,\n 1448201136060677,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1710065158525665,\n 1895094923036397,\n 123988286168546,\n 1145519900776355,\n 1607510767693874,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2813405189107769,\n 1071733543815036,\n 2383296312486238,\n 1946868434569998,\n 3079937947649451,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1548495173745801,\n 442310529226540,\n 998072547000384,\n 553054358385281,\n 644824326376171,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1445526537029440,\n 2225519789662536,\n 914628859347385,\n 1064754194555068,\n 1660295614401091,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3451490036797185,\n 2275827949507588,\n 2318438102929588,\n 2309425969971222,\n 2816893781664854,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 876926774220824,\n 554618976488214,\n 1012056309841565,\n 839961821554611,\n 1414499340307677,\n ]),\n xy2d: FieldElement51::from_limbs([\n 703047626104145,\n 1266841406201770,\n 165556500219173,\n 486991595001879,\n 1011325891650656,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1622861044480487,\n 1156394801573634,\n 4120932379100752,\n 2578903799462977,\n 2095342781472283,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 334886927423922,\n 489511099221528,\n 129160865966726,\n 1720809113143481,\n 619700195649254,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1646545795166119,\n 1758370782583567,\n 714746174550637,\n 1472693650165135,\n 898994790308209,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2585203586724508,\n 2547572356138185,\n 1693106465353609,\n 912330357530760,\n 2723035471635610,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1811196219982022,\n 1068969825533602,\n 289602974833439,\n 1988956043611592,\n 863562343398367,\n ]),\n xy2d: FieldElement51::from_limbs([\n 906282429780072,\n 2108672665779781,\n 432396390473936,\n 150625823801893,\n 1708930497638539,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 925664675702309,\n 2273216662253932,\n 4083236455546587,\n 601157008940112,\n 2623617868729744,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1479786007267725,\n 1738881859066675,\n 68646196476567,\n 2146507056100328,\n 1247662817535471,\n ]),\n xy2d: FieldElement51::from_limbs([\n 52035296774456,\n 939969390708103,\n 312023458773250,\n 59873523517659,\n 1231345905848899,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2895154920100990,\n 2541986621181021,\n 2013561737429022,\n 2571447883196794,\n 2645536492181409,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 129358342392716,\n 1932811617704777,\n 1176749390799681,\n 398040349861790,\n 1170779668090425,\n ]),\n xy2d: FieldElement51::from_limbs([\n 2051980782668029,\n 121859921510665,\n 2048329875753063,\n 1235229850149665,\n 519062146124755,\n ]),\n },\n ]),\n LookupTable([\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3859970785658325,\n 2667608874045675,\n 1350468408164765,\n 2038620059057678,\n 3278704299674360,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1837656083115103,\n 1510134048812070,\n 906263674192061,\n 1821064197805734,\n 565375124676301,\n ]),\n xy2d: FieldElement51::from_limbs([\n 578027192365650,\n 2034800251375322,\n 2128954087207123,\n 478816193810521,\n 2196171989962750,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1633188840273120,\n 3104586986058956,\n 1548762607215795,\n 1266275218902681,\n 3359018017010381,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 462189358480054,\n 1784816734159228,\n 1611334301651368,\n 1303938263943540,\n 707589560319424,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1038829280972848,\n 38176604650029,\n 753193246598573,\n 1136076426528122,\n 595709990562434,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3660251634545082,\n 2194984964010832,\n 2198361797561729,\n 1061962440055713,\n 1645147963442934,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 4701053362120,\n 1647641066302348,\n 1047553002242085,\n 1923635013395977,\n 206970314902065,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1750479161778571,\n 1362553355169293,\n 1891721260220598,\n 966109370862782,\n 1024913988299801,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2464498862816952,\n 1117950018299774,\n 1873945661751056,\n 3655602735669306,\n 2382695896337945,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 636808533673210,\n 1262201711667560,\n 390951380330599,\n 1663420692697294,\n 561951321757406,\n ]),\n xy2d: FieldElement51::from_limbs([\n 520731594438141,\n 1446301499955692,\n 273753264629267,\n 1565101517999256,\n 1019411827004672,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3178327305714638,\n 3443653291096626,\n 734233225181170,\n 2435838701226518,\n 4042225960010590,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1464651961852572,\n 1483737295721717,\n 1519450561335517,\n 1161429831763785,\n 405914998179977,\n ]),\n xy2d: FieldElement51::from_limbs([\n 996126634382301,\n 796204125879525,\n 127517800546509,\n 344155944689303,\n 615279846169038,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2990523894660505,\n 2188666632415295,\n 1961313708559162,\n 1506545807547587,\n 3403101452654988,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 622917337413835,\n 1218989177089035,\n 1284857712846592,\n 970502061709359,\n 351025208117090,\n ]),\n xy2d: FieldElement51::from_limbs([\n 2067814584765580,\n 1677855129927492,\n 2086109782475197,\n 235286517313238,\n 1416314046739645,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2838644076315587,\n 2559244195637442,\n 458399356043425,\n 2853867838192310,\n 3280348017100490,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 678489922928203,\n 2016657584724032,\n 90977383049628,\n 1026831907234582,\n 615271492942522,\n ]),\n xy2d: FieldElement51::from_limbs([\n 301225714012278,\n 1094837270268560,\n 1202288391010439,\n 644352775178361,\n 1647055902137983,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1210746697896459,\n 1416608304244708,\n 2938287290903104,\n 3496931005119382,\n 3303038150540984,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1135604073198207,\n 1683322080485474,\n 769147804376683,\n 2086688130589414,\n 900445683120379,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1971518477615628,\n 401909519527336,\n 448627091057375,\n 1409486868273821,\n 1214789035034363,\n ]),\n },\n ]),\n LookupTable([\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1364039144731711,\n 1897497433586190,\n 2203097701135459,\n 2397261210496499,\n 1349844460790698,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1045230323257973,\n 818206601145807,\n 630513189076103,\n 1672046528998132,\n 807204017562437,\n ]),\n xy2d: FieldElement51::from_limbs([\n 439961968385997,\n 386362664488986,\n 1382706320807688,\n 309894000125359,\n 2207801346498567,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3480804500082836,\n 3172443782216110,\n 2375775707596425,\n 2933223806901024,\n 1400559197080972,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2003766096898049,\n 170074059235165,\n 1141124258967971,\n 1485419893480973,\n 1573762821028725,\n ]),\n xy2d: FieldElement51::from_limbs([\n 729905708611432,\n 1270323270673202,\n 123353058984288,\n 426460209632942,\n 2195574535456672,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1271140255321216,\n 2044363183174497,\n 2303925201319937,\n 3696920060379952,\n 3194341800024331,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1761608437466135,\n 583360847526804,\n 1586706389685493,\n 2157056599579261,\n 1170692369685772,\n ]),\n xy2d: FieldElement51::from_limbs([\n 871476219910823,\n 1878769545097794,\n 2241832391238412,\n 548957640601001,\n 690047440233174,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2548994545820755,\n 1366347803776819,\n 3552985325930849,\n 561849853336293,\n 1533554921345731,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 999628998628371,\n 1132836708493400,\n 2084741674517453,\n 469343353015612,\n 678782988708035,\n ]),\n xy2d: FieldElement51::from_limbs([\n 2189427607417022,\n 699801937082607,\n 412764402319267,\n 1478091893643349,\n 2244675696854460,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3964091869651792,\n 2456213404310121,\n 3657538451018088,\n 2660781114515010,\n 3112882032961968,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 508561155940631,\n 966928475686665,\n 2236717801150132,\n 424543858577297,\n 2089272956986143,\n ]),\n xy2d: FieldElement51::from_limbs([\n 221245220129925,\n 1156020201681217,\n 491145634799213,\n 542422431960839,\n 828100817819207,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2405556784925632,\n 1299874139923976,\n 2644898978945750,\n 1058234455773021,\n 996989038681183,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 559086812798481,\n 573177704212711,\n 1629737083816402,\n 1399819713462595,\n 1646954378266038,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1887963056288059,\n 228507035730124,\n 1468368348640282,\n 930557653420194,\n 613513962454686,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1224529808187534,\n 1577022856702685,\n 2206946542980843,\n 625883007765001,\n 2531730607197406,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1076287717051609,\n 1114455570543035,\n 187297059715481,\n 250446884292121,\n 1885187512550540,\n ]),\n xy2d: FieldElement51::from_limbs([\n 902497362940219,\n 76749815795675,\n 1657927525633846,\n 1420238379745202,\n 1340321636548352,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1129576631190765,\n 3533793823712575,\n 996844254743017,\n 2509676177174497,\n 3402650555740265,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 628740660038789,\n 1943038498527841,\n 467786347793886,\n 1093341428303375,\n 235413859513003,\n ]),\n xy2d: FieldElement51::from_limbs([\n 237425418909360,\n 469614029179605,\n 1512389769174935,\n 1241726368345357,\n 441602891065214,\n ]),\n },\n ]),\n LookupTable([\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3988217766743784,\n 726531315520507,\n 1833335034432527,\n 1629442561574747,\n 2876218732971333,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1960754663920689,\n 497040957888962,\n 1909832851283095,\n 1271432136996826,\n 2219780368020940,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1537037379417136,\n 1358865369268262,\n 2130838645654099,\n 828733687040705,\n 1999987652890901,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 629042105241795,\n 1098854999137608,\n 887281544569320,\n 3674901833560025,\n 2259711072636808,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1811562332665373,\n 1501882019007673,\n 2213763501088999,\n 359573079719636,\n 36370565049116,\n ]),\n xy2d: FieldElement51::from_limbs([\n 218907117361280,\n 1209298913016966,\n 1944312619096112,\n 1130690631451061,\n 1342327389191701,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1369976867854685,\n 1396479602419169,\n 4017456468084104,\n 2203659200586298,\n 3250127649802489,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2230701885562825,\n 1348173180338974,\n 2172856128624598,\n 1426538746123771,\n 444193481326151,\n ]),\n xy2d: FieldElement51::from_limbs([\n 784210426627951,\n 918204562375674,\n 1284546780452985,\n 1324534636134684,\n 1872449409642708,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2571438643225542,\n 2848082470493653,\n 2037902696412607,\n 1557219121643918,\n 341938082688094,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1901860206695915,\n 2004489122065736,\n 1625847061568236,\n 973529743399879,\n 2075287685312905,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1371853944110545,\n 1042332820512553,\n 1949855697918254,\n 1791195775521505,\n 37487364849293,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 687200189577836,\n 1082536651125675,\n 2896024754556794,\n 2592723009743198,\n 2595381160432643,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2082717129583892,\n 27829425539422,\n 145655066671970,\n 1690527209845512,\n 1865260509673478,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1059729620568824,\n 2163709103470266,\n 1440302280256872,\n 1769143160546397,\n 869830310425069,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3861316033464273,\n 777277757338816,\n 2101121130363987,\n 550762194946473,\n 1905542338659364,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2024821921041576,\n 426948675450149,\n 595133284085473,\n 471860860885970,\n 600321679413000,\n ]),\n xy2d: FieldElement51::from_limbs([\n 598474602406721,\n 1468128276358244,\n 1191923149557635,\n 1501376424093216,\n 1281662691293476,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1721138489890688,\n 1264336102277790,\n 2684864359106535,\n 1359988423149465,\n 3813671107094695,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 719520245587143,\n 393380711632345,\n 132350400863381,\n 1543271270810729,\n 1819543295798660,\n ]),\n xy2d: FieldElement51::from_limbs([\n 396397949784152,\n 1811354474471839,\n 1362679985304303,\n 2117033964846756,\n 498041172552279,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1812471844975748,\n 1856491995543149,\n 126579494584102,\n 3288044672967868,\n 1975108050082549,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 650623932407995,\n 1137551288410575,\n 2125223403615539,\n 1725658013221271,\n 2134892965117796,\n ]),\n xy2d: FieldElement51::from_limbs([\n 522584000310195,\n 1241762481390450,\n 1743702789495384,\n 2227404127826575,\n 1686746002148897,\n ]),\n },\n ]),\n LookupTable([\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 427904865186293,\n 1703211129693455,\n 1585368107547509,\n 3688784302429584,\n 3012988348299225,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 318101947455002,\n 248138407995851,\n 1481904195303927,\n 309278454311197,\n 1258516760217879,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1275068538599310,\n 513726919533379,\n 349926553492294,\n 688428871968420,\n 1702400196000666,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3313663849950481,\n 3213411074010628,\n 2573659446386085,\n 3297400443644764,\n 1985130202504037,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1558816436882417,\n 1962896332636523,\n 1337709822062152,\n 1501413830776938,\n 294436165831932,\n ]),\n xy2d: FieldElement51::from_limbs([\n 818359826554971,\n 1862173000996177,\n 626821592884859,\n 573655738872376,\n 1749691246745455,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1988022651432119,\n 3333911312271288,\n 1834020786104820,\n 3706626690108935,\n 692929915223121,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2146513703733331,\n 584788900394667,\n 464965657279958,\n 2183973639356127,\n 238371159456790,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1129007025494441,\n 2197883144413266,\n 265142755578169,\n 971864464758890,\n 1983715884903702,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1291366624493056,\n 2633256531874362,\n 1711482489312443,\n 1815233647702022,\n 3144079596677715,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 444548969917454,\n 1452286453853356,\n 2113731441506810,\n 645188273895859,\n 810317625309512,\n ]),\n xy2d: FieldElement51::from_limbs([\n 2242724082797924,\n 1373354730327868,\n 1006520110883049,\n 2147330369940688,\n 1151816104883620,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3997520014069025,\n 4163522956860564,\n 2056329390702073,\n 2607026987995097,\n 3131032608056347,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 163723479936298,\n 115424889803150,\n 1156016391581227,\n 1894942220753364,\n 1970549419986329,\n ]),\n xy2d: FieldElement51::from_limbs([\n 681981452362484,\n 267208874112496,\n 1374683991933094,\n 638600984916117,\n 646178654558546,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2265178468539480,\n 2358037120714814,\n 1944412051589650,\n 4093776581610705,\n 2482502633520820,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 260683893467075,\n 854060306077237,\n 913639551980112,\n 4704576840123,\n 280254810808712,\n ]),\n xy2d: FieldElement51::from_limbs([\n 715374893080287,\n 1173334812210491,\n 1806524662079626,\n 1894596008000979,\n 398905715033393,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2751826223412909,\n 3848231101880618,\n 1420380351989369,\n 3237011375206737,\n 392444930785632,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2096421546958141,\n 1922523000950363,\n 789831022876840,\n 427295144688779,\n 320923973161730,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1927770723575450,\n 1485792977512719,\n 1850996108474547,\n 551696031508956,\n 2126047405475647,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2112099158080129,\n 2994370617594963,\n 2258284371762679,\n 1951119898618915,\n 2344890196388664,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 383905201636970,\n 859946997631870,\n 855623867637644,\n 1017125780577795,\n 794250831877809,\n ]),\n xy2d: FieldElement51::from_limbs([\n 77571826285752,\n 999304298101753,\n 487841111777762,\n 1038031143212339,\n 339066367948762,\n ]),\n },\n ]),\n LookupTable([\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2926794589205781,\n 2517835660016036,\n 826951213393477,\n 1405007746162285,\n 1781791018620876,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1001412661522686,\n 348196197067298,\n 1666614366723946,\n 888424995032760,\n 580747687801357,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1939560076207777,\n 1409892634407635,\n 552574736069277,\n 383854338280405,\n 190706709864139,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2177087163428741,\n 1439255351721944,\n 3459870654068041,\n 2230616362004768,\n 1396886392021913,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 676962063230039,\n 1880275537148808,\n 2046721011602706,\n 888463247083003,\n 1318301552024067,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1466980508178206,\n 617045217998949,\n 652303580573628,\n 757303753529064,\n 207583137376902,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3762856566592150,\n 2357202940576524,\n 2745234706458093,\n 1091943425335975,\n 1802717338077427,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1853982405405128,\n 1878664056251147,\n 1528011020803992,\n 1019626468153565,\n 1128438412189035,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1963939888391106,\n 293456433791664,\n 697897559513649,\n 985882796904380,\n 796244541237972,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2668570812315008,\n 2641455366112301,\n 1314476859406755,\n 1749382513022778,\n 3413705412424739,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1428358296490651,\n 1027115282420478,\n 304840698058337,\n 441410174026628,\n 1819358356278573,\n ]),\n xy2d: FieldElement51::from_limbs([\n 204943430200135,\n 1554861433819175,\n 216426658514651,\n 264149070665950,\n 2047097371738319,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1934415182909015,\n 1393285083565062,\n 2768209145458208,\n 3409490548679139,\n 2372839480279515,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 662035583584445,\n 286736105093098,\n 1131773000510616,\n 818494214211439,\n 472943792054479,\n ]),\n xy2d: FieldElement51::from_limbs([\n 665784778135882,\n 1893179629898606,\n 808313193813106,\n 276797254706413,\n 1563426179676396,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 945205108984213,\n 2778077376644543,\n 1324180513733565,\n 1666970227868664,\n 2405347422974421,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2031433403516252,\n 203996615228162,\n 170487168837083,\n 981513604791390,\n 843573964916831,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1476570093962618,\n 838514669399805,\n 1857930577281364,\n 2017007352225784,\n 317085545220047,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1461557121912823,\n 1600674043318359,\n 2157134900399597,\n 1670641601940616,\n 2379565397488531,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1293543509393474,\n 2143624609202546,\n 1058361566797508,\n 214097127393994,\n 946888515472729,\n ]),\n xy2d: FieldElement51::from_limbs([\n 357067959932916,\n 1290876214345711,\n 521245575443703,\n 1494975468601005,\n 800942377643885,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2817916472785262,\n 820247422481739,\n 994464017954148,\n 2578957425371613,\n 2344391131796991,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 617256647603209,\n 1652107761099439,\n 1857213046645471,\n 1085597175214970,\n 817432759830522,\n ]),\n xy2d: FieldElement51::from_limbs([\n 771808161440705,\n 1323510426395069,\n 680497615846440,\n 851580615547985,\n 1320806384849017,\n ]),\n },\n ]),\n LookupTable([\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1219260086131896,\n 2898968820282063,\n 2331400938444953,\n 2161724213426747,\n 2656661710745446,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1327968293887866,\n 1335500852943256,\n 1401587164534264,\n 558137311952440,\n 1551360549268902,\n ]),\n xy2d: FieldElement51::from_limbs([\n 417621685193956,\n 1429953819744454,\n 396157358457099,\n 1940470778873255,\n 214000046234152,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1268047918491954,\n 2172375426948536,\n 1533916099229249,\n 1761293575457130,\n 3842422480712013,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1627072914981959,\n 2211603081280073,\n 1912369601616504,\n 1191770436221309,\n 2187309757525860,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1149147819689533,\n 378692712667677,\n 828475842424202,\n 2218619146419342,\n 70688125792186,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3551539230764990,\n 3690416477138006,\n 3788528892189659,\n 2053896748919837,\n 3260220846276494,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2040723824657366,\n 399555637875075,\n 632543375452995,\n 872649937008051,\n 1235394727030233,\n ]),\n xy2d: FieldElement51::from_limbs([\n 2211311599327900,\n 2139787259888175,\n 938706616835350,\n 12609661139114,\n 2081897930719789,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1324994503390431,\n 2588782144267879,\n 1183998925654176,\n 3343454479598522,\n 2300527487656566,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1845522914617879,\n 1222198248335542,\n 150841072760134,\n 1927029069940982,\n 1189913404498011,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1079559557592645,\n 2215338383666441,\n 1903569501302605,\n 49033973033940,\n 305703433934152,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2346453219102138,\n 3637921163538246,\n 3313930291577009,\n 2288353761164521,\n 3085469462634093,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1432015813136298,\n 440364795295369,\n 1395647062821501,\n 1976874522764578,\n 934452372723352,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1296625309219774,\n 2068273464883862,\n 1858621048097805,\n 1492281814208508,\n 2235868981918946,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1490330266465551,\n 1858795661361448,\n 3688040948655011,\n 2546373032584894,\n 3459939824714180,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1282462923712748,\n 741885683986255,\n 2027754642827561,\n 518989529541027,\n 1826610009555945,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1525827120027511,\n 723686461809551,\n 1597702369236987,\n 244802101764964,\n 1502833890372311,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2365421849929742,\n 3485539881431101,\n 2925909765963743,\n 2114345180342964,\n 2418564326541511,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2041668749310338,\n 2184405322203901,\n 1633400637611036,\n 2110682505536899,\n 2048144390084644,\n ]),\n xy2d: FieldElement51::from_limbs([\n 503058759232932,\n 760293024620937,\n 2027152777219493,\n 666858468148475,\n 1539184379870952,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1916168475367211,\n 3167426246226591,\n 883217071712574,\n 363427871374304,\n 1976029821251593,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 678039535434506,\n 570587290189340,\n 1605302676614120,\n 2147762562875701,\n 1706063797091704,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1439489648586438,\n 2194580753290951,\n 832380563557396,\n 561521973970522,\n 584497280718389,\n ]),\n },\n ]),\n LookupTable([\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2439789269177838,\n 681223515948274,\n 1933493571072456,\n 1872921007304880,\n 2739962177820919,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1413466089534451,\n 410844090765630,\n 1397263346404072,\n 408227143123410,\n 1594561803147811,\n ]),\n xy2d: FieldElement51::from_limbs([\n 2102170800973153,\n 719462588665004,\n 1479649438510153,\n 1097529543970028,\n 1302363283777685,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3193865531532443,\n 3321113493038208,\n 2007341951411050,\n 2322773230131539,\n 1419433790163705,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1146565545556377,\n 1661971299445212,\n 406681704748893,\n 564452436406089,\n 1109109865829139,\n ]),\n xy2d: FieldElement51::from_limbs([\n 2214421081775077,\n 1165671861210569,\n 1890453018796184,\n 3556249878661,\n 442116172656317,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3005630360306059,\n 1666955059895018,\n 1530775289309243,\n 3371786842789394,\n 2164156153857579,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 615171919212796,\n 1523849404854568,\n 854560460547503,\n 2067097370290715,\n 1765325848586042,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1094538949313667,\n 1796592198908825,\n 870221004284388,\n 2025558921863561,\n 1699010892802384,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1951351290725195,\n 1916457206844795,\n 2449824998123274,\n 1909076887557594,\n 1938542290318919,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1014323197538413,\n 869150639940606,\n 1756009942696599,\n 1334952557375672,\n 1544945379082874,\n ]),\n xy2d: FieldElement51::from_limbs([\n 764055910920305,\n 1603590757375439,\n 146805246592357,\n 1843313433854297,\n 954279890114939,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 80113526615731,\n 764536758732259,\n 3306939158785481,\n 2721052465444637,\n 2869697326116762,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 74497112547268,\n 740094153192149,\n 1745254631717581,\n 727713886503130,\n 1283034364416928,\n ]),\n xy2d: FieldElement51::from_limbs([\n 525892105991110,\n 1723776830270342,\n 1476444848991936,\n 573789489857760,\n 133864092632978,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2794411533877810,\n 1986812262899320,\n 1162535242465837,\n 2733298779828712,\n 2796400347268869,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 64123227344372,\n 1239927720647794,\n 1360722983445904,\n 222610813654661,\n 62429487187991,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1793193323953132,\n 91096687857833,\n 70945970938921,\n 2158587638946380,\n 1537042406482111,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1895854577604590,\n 3646695522634664,\n 1728548428495943,\n 3392664713925397,\n 2815445147288308,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 141358280486863,\n 91435889572504,\n 1087208572552643,\n 1829599652522921,\n 1193307020643647,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1611230858525381,\n 950720175540785,\n 499589887488610,\n 2001656988495019,\n 88977313255908,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3440880315164906,\n 2184348804772596,\n 3292618539427567,\n 2018318290311833,\n 1712060030915354,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 873966876953756,\n 1090638350350440,\n 1708559325189137,\n 672344594801910,\n 1320437969700239,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1508590048271766,\n 1131769479776094,\n 101550868699323,\n 428297785557897,\n 561791648661744,\n ]),\n },\n ]),\n LookupTable([\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3008217384184691,\n 2489682092917849,\n 2136263418594015,\n 1701968045454886,\n 2955512998822720,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1781187809325462,\n 1697624151492346,\n 1381393690939988,\n 175194132284669,\n 1483054666415238,\n ]),\n xy2d: FieldElement51::from_limbs([\n 2175517777364616,\n 708781536456029,\n 955668231122942,\n 1967557500069555,\n 2021208005604118,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3366935780292116,\n 2476017186636029,\n 915967306279221,\n 593866251291540,\n 2813546907893254,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1443163092879439,\n 391875531646162,\n 2180847134654632,\n 464538543018753,\n 1594098196837178,\n ]),\n xy2d: FieldElement51::from_limbs([\n 850858855888869,\n 319436476624586,\n 327807784938441,\n 740785849558761,\n 17128415486016,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2132756334090048,\n 2788047633840893,\n 2300706964962114,\n 2860273011285942,\n 3513489358708031,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1525176236978354,\n 974205476721062,\n 293436255662638,\n 148269621098039,\n 137961998433963,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1121075518299410,\n 2071745529082111,\n 1265567917414828,\n 1648196578317805,\n 496232102750820,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2374121042985030,\n 3274721891178932,\n 2001275453369483,\n 2017441881607947,\n 3245005694463250,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 654925550560074,\n 1168810995576858,\n 575655959430926,\n 905758704861388,\n 496774564663534,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1954109525779738,\n 2117022646152485,\n 338102630417180,\n 1194140505732026,\n 107881734943492,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1714785840001267,\n 4288299832366837,\n 1876380234251965,\n 2056717182974196,\n 1645855254384642,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 106431476499341,\n 62482972120563,\n 1513446655109411,\n 807258751769522,\n 538491469114,\n ]),\n xy2d: FieldElement51::from_limbs([\n 2002850762893643,\n 1243624520538135,\n 1486040410574605,\n 2184752338181213,\n 378495998083531,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 922510868424903,\n 1089502620807680,\n 402544072617374,\n 1131446598479839,\n 1290278588136533,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1867998812076769,\n 715425053580701,\n 39968586461416,\n 2173068014586163,\n 653822651801304,\n ]),\n xy2d: FieldElement51::from_limbs([\n 162892278589453,\n 182585796682149,\n 75093073137630,\n 497037941226502,\n 133871727117371,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 4166396390264918,\n 1608999621851577,\n 1987629837704609,\n 1519655314857977,\n 1819193753409464,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1949315551096831,\n 1069003344994464,\n 1939165033499916,\n 1548227205730856,\n 1933767655861407,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1730519386931635,\n 1393284965610134,\n 1597143735726030,\n 416032382447158,\n 1429665248828629,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 360275475604546,\n 2799635544748326,\n 2467160717872776,\n 2848446553564254,\n 2584509464110332,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 47602113726801,\n 1522314509708010,\n 437706261372925,\n 814035330438027,\n 335930650933545,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1291597595523886,\n 1058020588994081,\n 402837842324045,\n 1363323695882781,\n 2105763393033193,\n ]),\n },\n ]),\n LookupTable([\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2361321796251793,\n 3967057562270386,\n 1112231216891515,\n 2046641005101484,\n 2386048970842261,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2156991030936798,\n 2227544497153325,\n 1869050094431622,\n 754875860479115,\n 1754242344267058,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1846089562873800,\n 98894784984326,\n 1412430299204844,\n 171351226625762,\n 1100604760929008,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2335972195815721,\n 2751510784385293,\n 425749630620777,\n 1762872794206857,\n 2864642415813208,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 868309334532756,\n 1703010512741873,\n 1952690008738057,\n 4325269926064,\n 2071083554962116,\n ]),\n xy2d: FieldElement51::from_limbs([\n 523094549451158,\n 401938899487815,\n 1407690589076010,\n 2022387426254453,\n 158660516411257,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 612867287630009,\n 2700012425789062,\n 2823428891104443,\n 1466796750919375,\n 1728478129663858,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1723848973783452,\n 2208822520534681,\n 1718748322776940,\n 1974268454121942,\n 1194212502258141,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1254114807944608,\n 977770684047110,\n 2010756238954993,\n 1783628927194099,\n 1525962994408256,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2484263871921055,\n 1948628555342433,\n 1835348780427694,\n 1031609499437291,\n 2316271920603621,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 767338676040683,\n 754089548318405,\n 1523192045639075,\n 435746025122062,\n 512692508440385,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1255955808701983,\n 1700487367990941,\n 1166401238800299,\n 1175121994891534,\n 1190934801395380,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2600943821853521,\n 1337012557669161,\n 1475912332999108,\n 3573418268585706,\n 2299411105589567,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 877519947135419,\n 2172838026132651,\n 272304391224129,\n 1655143327559984,\n 886229406429814,\n ]),\n xy2d: FieldElement51::from_limbs([\n 375806028254706,\n 214463229793940,\n 572906353144089,\n 572168269875638,\n 697556386112979,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1168827102357825,\n 823864273033637,\n 4323338565789945,\n 788062026895923,\n 2851378154428610,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1948116082078088,\n 2054898304487796,\n 2204939184983900,\n 210526805152138,\n 786593586607626,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1915320147894736,\n 156481169009469,\n 655050471180417,\n 592917090415421,\n 2165897438660879,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1726336468579724,\n 1119932070398949,\n 1929199510967666,\n 2285718602008207,\n 1836837863503149,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 829996854845988,\n 217061778005138,\n 1686565909803640,\n 1346948817219846,\n 1723823550730181,\n ]),\n xy2d: FieldElement51::from_limbs([\n 384301494966394,\n 687038900403062,\n 2211195391021739,\n 254684538421383,\n 1245698430589680,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1247567493562669,\n 4229981908141095,\n 2435671288478202,\n 806570235643434,\n 2540261331753164,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1449077384734201,\n 38285445457996,\n 2136537659177832,\n 2146493000841573,\n 725161151123125,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1201928866368855,\n 800415690605445,\n 1703146756828343,\n 997278587541744,\n 1858284414104014,\n ]),\n },\n ]),\n LookupTable([\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2608268623334125,\n 3034173730618399,\n 1718002439402869,\n 3644022065904502,\n 663171266061950,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 759628738230460,\n 1012693474275852,\n 353780233086498,\n 246080061387552,\n 2030378857679162,\n ]),\n xy2d: FieldElement51::from_limbs([\n 2040672435071076,\n 888593182036908,\n 1298443657189359,\n 1804780278521327,\n 354070726137060,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1894938527423184,\n 3715012855162525,\n 2726210319182898,\n 2499094776718546,\n 877975941029127,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 207937160991127,\n 12966911039119,\n 820997788283092,\n 1010440472205286,\n 1701372890140810,\n ]),\n xy2d: FieldElement51::from_limbs([\n 218882774543183,\n 533427444716285,\n 1233243976733245,\n 435054256891319,\n 1509568989549904,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 4140638349397055,\n 3303977572025869,\n 3465353617009382,\n 2420981822812579,\n 2715174081801119,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 299137589460312,\n 1594371588983567,\n 868058494039073,\n 257771590636681,\n 1805012993142921,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1806842755664364,\n 2098896946025095,\n 1356630998422878,\n 1458279806348064,\n 347755825962072,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1402334161391744,\n 3811883484731547,\n 1008585416617746,\n 1147797150908892,\n 1420416683642459,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 665506704253369,\n 273770475169863,\n 799236974202630,\n 848328990077558,\n 1811448782807931,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1468412523962641,\n 771866649897997,\n 1931766110147832,\n 799561180078482,\n 524837559150077,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2223212657821831,\n 2882216061048914,\n 2144451165500327,\n 3068710944633039,\n 3276150872095279,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1266603897524861,\n 156378408858100,\n 1275649024228779,\n 447738405888420,\n 253186462063095,\n ]),\n xy2d: FieldElement51::from_limbs([\n 2022215964509735,\n 136144366993649,\n 1800716593296582,\n 1193970603800203,\n 871675847064218,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1862751661970309,\n 851596246739884,\n 1519315554814041,\n 3794598280232697,\n 3669775149586767,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1228168094547481,\n 334133883362894,\n 587567568420081,\n 433612590281181,\n 603390400373205,\n ]),\n xy2d: FieldElement51::from_limbs([\n 121893973206505,\n 1843345804916664,\n 1703118377384911,\n 497810164760654,\n 101150811654673,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2710146069631716,\n 2542709749304591,\n 1452768413850678,\n 2802722688939463,\n 1537286854336537,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 584322311184395,\n 380661238802118,\n 114839394528060,\n 655082270500073,\n 2111856026034852,\n ]),\n xy2d: FieldElement51::from_limbs([\n 996965581008991,\n 2148998626477022,\n 1012273164934654,\n 1073876063914522,\n 1688031788934939,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3175286832534829,\n 2085106799623354,\n 2779882615305384,\n 1606206360876187,\n 2987706905397772,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1697697887804317,\n 1335343703828273,\n 831288615207040,\n 949416685250051,\n 288760277392022,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1419122478109648,\n 1325574567803701,\n 602393874111094,\n 2107893372601700,\n 1314159682671307,\n ]),\n },\n ]),\n LookupTable([\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2201150872731785,\n 2180241023425241,\n 2349463270108411,\n 1633405770247823,\n 3100744856129234,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1173339555550611,\n 818605084277583,\n 47521504364289,\n 924108720564965,\n 735423405754506,\n ]),\n xy2d: FieldElement51::from_limbs([\n 830104860549448,\n 1886653193241086,\n 1600929509383773,\n 1475051275443631,\n 286679780900937,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3828911108518224,\n 3282698983453994,\n 2396700729978777,\n 4216472406664814,\n 2820189914640497,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 278388655910247,\n 487143369099838,\n 927762205508727,\n 181017540174210,\n 1616886700741287,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1191033906638969,\n 940823957346562,\n 1606870843663445,\n 861684761499847,\n 658674867251089,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1875032594195527,\n 1427106132796197,\n 2976536204647406,\n 3153660325729987,\n 2887068310954007,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 622869792298357,\n 1903919278950367,\n 1922588621661629,\n 1520574711600434,\n 1087100760174640,\n ]),\n xy2d: FieldElement51::from_limbs([\n 25465949416618,\n 1693639527318811,\n 1526153382657203,\n 125943137857169,\n 145276964043999,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2466539671654587,\n 920212862967914,\n 4191701364657517,\n 3463662605460468,\n 2336897329405367,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2006245852772938,\n 734762734836159,\n 254642929763427,\n 1406213292755966,\n 239303749517686,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1619678837192149,\n 1919424032779215,\n 1357391272956794,\n 1525634040073113,\n 1310226789796241,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3292563523447371,\n 1704449869235351,\n 2857062884141577,\n 1998838089036354,\n 1312142911487502,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1996723311435669,\n 1844342766567060,\n 985455700466044,\n 1165924681400960,\n 311508689870129,\n ]),\n xy2d: FieldElement51::from_limbs([\n 43173156290518,\n 2202883069785309,\n 1137787467085917,\n 1733636061944606,\n 1394992037553852,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 670078326344559,\n 2807454838744604,\n 2723759199967685,\n 2141455487356408,\n 849015953823125,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2197214573372804,\n 794254097241315,\n 1030190060513737,\n 267632515541902,\n 2040478049202624,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1812516004670529,\n 1609256702920783,\n 1706897079364493,\n 258549904773295,\n 996051247540686,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1540374301420565,\n 1764656898914615,\n 1810104162020396,\n 3175608592848336,\n 2916189887881826,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1323460699404750,\n 1262690757880991,\n 871777133477900,\n 1060078894988977,\n 1712236889662886,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1696163952057966,\n 1391710137550823,\n 608793846867416,\n 1034391509472039,\n 1780770894075012,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1367603834210822,\n 4383788460268472,\n 890353773628143,\n 1908908219165595,\n 2522636708938139,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 597536315471731,\n 40375058742586,\n 1942256403956049,\n 1185484645495932,\n 312666282024145,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1919411405316294,\n 1234508526402192,\n 1066863051997083,\n 1008444703737597,\n 1348810787701552,\n ]),\n },\n ]),\n LookupTable([\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2102881477513865,\n 3822074379630609,\n 1573617900503707,\n 2270462449417831,\n 2232324307922097,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1853931367696942,\n 8107973870707,\n 350214504129299,\n 775206934582587,\n 1752317649166792,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1417148368003523,\n 721357181628282,\n 505725498207811,\n 373232277872983,\n 261634707184480,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2186733281493248,\n 2250694917008620,\n 1014829812957440,\n 2731797975137637,\n 2335366007561721,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1268116367301224,\n 560157088142809,\n 802626839600444,\n 2210189936605713,\n 1129993785579988,\n ]),\n xy2d: FieldElement51::from_limbs([\n 615183387352312,\n 917611676109240,\n 878893615973325,\n 978940963313282,\n 938686890583575,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 522024729211672,\n 3296859129001056,\n 1892245413707789,\n 1907891107684253,\n 2059998109500714,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1799679152208884,\n 912132775900387,\n 25967768040979,\n 432130448590461,\n 274568990261996,\n ]),\n xy2d: FieldElement51::from_limbs([\n 98698809797682,\n 2144627600856209,\n 1907959298569602,\n 811491302610148,\n 1262481774981493,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1791451399743152,\n 1713538728337276,\n 2370149810942738,\n 1882306388849953,\n 158235232210248,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1217809823321928,\n 2173947284933160,\n 1986927836272325,\n 1388114931125539,\n 12686131160169,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1650875518872272,\n 1136263858253897,\n 1732115601395988,\n 734312880662190,\n 1252904681142109,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2624786269799113,\n 2777230729143418,\n 2116279931702134,\n 2753222527273063,\n 1907002872974924,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 803147181835288,\n 868941437997146,\n 316299302989663,\n 943495589630550,\n 571224287904572,\n ]),\n xy2d: FieldElement51::from_limbs([\n 227742695588364,\n 1776969298667369,\n 628602552821802,\n 457210915378118,\n 2041906378111140,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 815000523470260,\n 3164885502413555,\n 3303859931956420,\n 1345536665214222,\n 541623413135555,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1580216071604333,\n 1877997504342444,\n 857147161260913,\n 703522726778478,\n 2182763974211603,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1870080310923419,\n 71988220958492,\n 1783225432016732,\n 615915287105016,\n 1035570475990230,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2982787564515398,\n 857613889540279,\n 1083813157271766,\n 1002817255970169,\n 1719228484436074,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 377616581647602,\n 1581980403078513,\n 804044118130621,\n 2034382823044191,\n 643844048472185,\n ]),\n xy2d: FieldElement51::from_limbs([\n 176957326463017,\n 1573744060478586,\n 528642225008045,\n 1816109618372371,\n 1515140189765006,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1888911448245718,\n 3638910709296328,\n 4176303607751676,\n 1731539523700948,\n 2230378382645454,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 443392177002051,\n 233793396845137,\n 2199506622312416,\n 1011858706515937,\n 974676837063129,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1846351103143623,\n 1949984838808427,\n 671247021915253,\n 1946756846184401,\n 1929296930380217,\n ]),\n },\n ]),\n LookupTable([\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 849646212451983,\n 1410198775302919,\n 2325567699868943,\n 1641663456615811,\n 3014056086137659,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 692017667358279,\n 723305578826727,\n 1638042139863265,\n 748219305990306,\n 334589200523901,\n ]),\n xy2d: FieldElement51::from_limbs([\n 22893968530686,\n 2235758574399251,\n 1661465835630252,\n 925707319443452,\n 1203475116966621,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3053098849470395,\n 3985092410411378,\n 1664508947088595,\n 2719548934677170,\n 3899298398220870,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 903105258014366,\n 427141894933047,\n 561187017169777,\n 1884330244401954,\n 1914145708422219,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1344191060517578,\n 1960935031767890,\n 1518838929955259,\n 1781502350597190,\n 1564784025565682,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2925523165433334,\n 1979969272514922,\n 3427087126180756,\n 1187589090978665,\n 1881897672213940,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1917185587363432,\n 1098342571752737,\n 5935801044414,\n 2000527662351839,\n 1538640296181569,\n ]),\n xy2d: FieldElement51::from_limbs([\n 2495540013192,\n 678856913479236,\n 224998292422872,\n 219635787698590,\n 1972465269000940,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 271413961212179,\n 3604851875156899,\n 2596511104968730,\n 2014925838520661,\n 2006221033113941,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 194583029968109,\n 514316781467765,\n 829677956235672,\n 1676415686873082,\n 810104584395840,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1980510813313589,\n 1948645276483975,\n 152063780665900,\n 129968026417582,\n 256984195613935,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1860190562533083,\n 1936576191345085,\n 2712900106391212,\n 1811043097042829,\n 3209286562992083,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 796664815624365,\n 1543160838872951,\n 1500897791837765,\n 1667315977988401,\n 599303877030711,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1151480509533204,\n 2136010406720455,\n 738796060240027,\n 319298003765044,\n 1150614464349587,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1731069268103131,\n 2987442261301335,\n 1364750481334267,\n 2669032653668119,\n 3178908082812908,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1017222050227968,\n 1987716148359,\n 2234319589635701,\n 621282683093392,\n 2132553131763026,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1567828528453324,\n 1017807205202360,\n 565295260895298,\n 829541698429100,\n 307243822276582,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 249079270936229,\n 1501514259790706,\n 3199709537890096,\n 944551802437486,\n 2804458577667728,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2089966982947227,\n 1854140343916181,\n 2151980759220007,\n 2139781292261749,\n 158070445864917,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1338766321464554,\n 1906702607371284,\n 1519569445519894,\n 115384726262267,\n 1393058953390992,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3616421371950629,\n 3764188048593604,\n 1926731583198685,\n 2041482526432505,\n 3172200936019022,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1884844597333588,\n 601480070269079,\n 620203503079537,\n 1079527400117915,\n 1202076693132015,\n ]),\n xy2d: FieldElement51::from_limbs([\n 840922919763324,\n 727955812569642,\n 1303406629750194,\n 522898432152867,\n 294161410441865,\n ]),\n },\n ]),\n LookupTable([\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2605560604520539,\n 1598361541848742,\n 3374705511887547,\n 4174333403844152,\n 2670907514351827,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 359856369838236,\n 180914355488683,\n 861726472646627,\n 218807937262986,\n 575626773232501,\n ]),\n xy2d: FieldElement51::from_limbs([\n 755467689082474,\n 909202735047934,\n 730078068932500,\n 936309075711518,\n 2007798262842972,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1609384177904054,\n 2614544999293875,\n 1335318541768200,\n 3052765584121496,\n 2799677792952659,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 984339177776787,\n 815727786505884,\n 1645154585713747,\n 1659074964378553,\n 1686601651984156,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1697863093781930,\n 599794399429786,\n 1104556219769607,\n 830560774794755,\n 12812858601017,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1168737550514982,\n 897832437380552,\n 463140296333799,\n 2554364413707795,\n 2008360505135500,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1856930662813910,\n 678090852002597,\n 1920179140755167,\n 1259527833759868,\n 55540971895511,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1158643631044921,\n 476554103621892,\n 178447851439725,\n 1305025542653569,\n 103433927680625,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2176793111709008,\n 3828525530035639,\n 2009350167273522,\n 2012390194631546,\n 2125297410909580,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 825403285195098,\n 2144208587560784,\n 1925552004644643,\n 1915177840006985,\n 1015952128947864,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1807108316634472,\n 1534392066433717,\n 347342975407218,\n 1153820745616376,\n 7375003497471,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3234860815484973,\n 2683011703586488,\n 2201903782961092,\n 3069193724749589,\n 2214616493042166,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 228567918409756,\n 865093958780220,\n 358083886450556,\n 159617889659320,\n 1360637926292598,\n ]),\n xy2d: FieldElement51::from_limbs([\n 234147501399755,\n 2229469128637390,\n 2175289352258889,\n 1397401514549353,\n 1885288963089922,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3363562226636810,\n 2504649386192636,\n 3300514047508588,\n 2397910909286693,\n 1237505378776769,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1113790697840279,\n 1051167139966244,\n 1045930658550944,\n 2011366241542643,\n 1686166824620755,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1054097349305049,\n 1872495070333352,\n 182121071220717,\n 1064378906787311,\n 100273572924182,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3558210666856834,\n 1627717417672446,\n 2302783034773665,\n 1109249951172249,\n 3122001602766640,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 104233794644221,\n 1548919791188248,\n 2224541913267306,\n 2054909377116478,\n 1043803389015153,\n ]),\n xy2d: FieldElement51::from_limbs([\n 216762189468802,\n 707284285441622,\n 190678557969733,\n 973969342604308,\n 1403009538434867,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3530824104723725,\n 2596576648903557,\n 2525521909702446,\n 4086000250496689,\n 634517197663803,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 343805853118335,\n 1302216857414201,\n 566872543223541,\n 2051138939539004,\n 321428858384280,\n ]),\n xy2d: FieldElement51::from_limbs([\n 470067171324852,\n 1618629234173951,\n 2000092177515639,\n 7307679772789,\n 1117521120249968,\n ]),\n },\n ]),\n LookupTable([\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2529951391976704,\n 1810282338562946,\n 1771599529530998,\n 3635459223356879,\n 2937173228157088,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 577009397403102,\n 1791440261786291,\n 2177643735971638,\n 174546149911960,\n 1412505077782326,\n ]),\n xy2d: FieldElement51::from_limbs([\n 893719721537457,\n 1201282458018197,\n 1522349501711173,\n 58011597740583,\n 1130406465887139,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 412607348255434,\n 1280455764199780,\n 2233277987330768,\n 2265979894086913,\n 2583384512102412,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 262483770854550,\n 990511055108216,\n 526885552771698,\n 571664396646158,\n 354086190278723,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1820352417585487,\n 24495617171480,\n 1547899057533253,\n 10041836186225,\n 480457105094042,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2023310314989233,\n 2889705151211129,\n 2106474638900686,\n 2809620524769320,\n 1687858215057825,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1144168702609745,\n 604444390410187,\n 1544541121756138,\n 1925315550126027,\n 626401428894002,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1922168257351784,\n 2018674099908659,\n 1776454117494445,\n 956539191509034,\n 36031129147635,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2796444352433270,\n 1039872944430373,\n 3128550222815858,\n 2962457525011798,\n 3468752501170219,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 58242421545916,\n 2035812695641843,\n 2118491866122923,\n 1191684463816273,\n 46921517454099,\n ]),\n xy2d: FieldElement51::from_limbs([\n 272268252444639,\n 1374166457774292,\n 2230115177009552,\n 1053149803909880,\n 1354288411641016,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1857910905368338,\n 1754729879288912,\n 3137745277795125,\n 1516096106802165,\n 1602902393369811,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1193437069800958,\n 901107149704790,\n 999672920611411,\n 477584824802207,\n 364239578697845,\n ]),\n xy2d: FieldElement51::from_limbs([\n 886299989548838,\n 1538292895758047,\n 1590564179491896,\n 1944527126709657,\n 837344427345298,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3006358179063534,\n 1712186480903617,\n 3955456640022779,\n 3002110732175033,\n 2770795853936147,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1309847803895382,\n 1462151862813074,\n 211370866671570,\n 1544595152703681,\n 1027691798954090,\n ]),\n xy2d: FieldElement51::from_limbs([\n 803217563745370,\n 1884799722343599,\n 1357706345069218,\n 2244955901722095,\n 730869460037413,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2941099284981214,\n 1831210565161070,\n 3626987155270686,\n 3358084791231418,\n 1893781834054268,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 696351368613042,\n 1494385251239250,\n 738037133616932,\n 636385507851544,\n 927483222611406,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1949114198209333,\n 1104419699537997,\n 783495707664463,\n 1747473107602770,\n 2002634765788641,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1607325776830197,\n 2782683755100581,\n 1451089452727894,\n 3833490970768671,\n 496100432831153,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1068900648804224,\n 2006891997072550,\n 1134049269345549,\n 1638760646180091,\n 2055396084625778,\n ]),\n xy2d: FieldElement51::from_limbs([\n 2222475519314561,\n 1870703901472013,\n 1884051508440561,\n 1344072275216753,\n 1318025677799069,\n ]),\n },\n ]),\n LookupTable([\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 155711679280637,\n 681100400509288,\n 389811735211209,\n 2135723811340709,\n 2660533024889373,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 7813206966729,\n 194444201427550,\n 2071405409526507,\n 1065605076176312,\n 1645486789731291,\n ]),\n xy2d: FieldElement51::from_limbs([\n 16625790644959,\n 1647648827778410,\n 1579910185572704,\n 436452271048548,\n 121070048451050,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3289062842237779,\n 2820185594063076,\n 2549752917829677,\n 3810384325616458,\n 2238221839292470,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 190565267697443,\n 672855706028058,\n 338796554369226,\n 337687268493904,\n 853246848691734,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1763863028400139,\n 766498079432444,\n 1321118624818005,\n 69494294452268,\n 858786744165651,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3543856582248253,\n 1456632109855637,\n 3352431060735432,\n 1386133165675320,\n 3484698163879000,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 366253102478259,\n 525676242508811,\n 1449610995265438,\n 1183300845322183,\n 185960306491545,\n ]),\n xy2d: FieldElement51::from_limbs([\n 28315355815982,\n 460422265558930,\n 1799675876678724,\n 1969256312504498,\n 1051823843138725,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2408714813047231,\n 3857948219405196,\n 1665208410108429,\n 2569443092377519,\n 1383783705665319,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 54684536365732,\n 2210010038536222,\n 1194984798155308,\n 535239027773705,\n 1516355079301361,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1484387703771650,\n 198537510937949,\n 2186282186359116,\n 617687444857508,\n 647477376402122,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2147715541830533,\n 2751832352131065,\n 2898179830570073,\n 2604027669016369,\n 1488268620408051,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 159386186465542,\n 1877626593362941,\n 618737197060512,\n 1026674284330807,\n 1158121760792685,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1744544377739822,\n 1964054180355661,\n 1685781755873170,\n 2169740670377448,\n 1286112621104591,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2333777063470241,\n 3919742931398333,\n 3920783633320113,\n 1605016835177614,\n 1353960708075544,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1602253788689063,\n 439542044889886,\n 2220348297664483,\n 657877410752869,\n 157451572512238,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1029287186166717,\n 65860128430192,\n 525298368814832,\n 1491902500801986,\n 1461064796385400,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2660016802414475,\n 2121095722306988,\n 913562102267595,\n 1879708920318308,\n 2492861262121979,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1185483484383269,\n 1356339572588553,\n 584932367316448,\n 102132779946470,\n 1792922621116791,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1966196870701923,\n 2230044620318636,\n 1425982460745905,\n 261167817826569,\n 46517743394330,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2358877405280588,\n 3136759755857592,\n 2279106683482647,\n 2224911448949389,\n 3216151871930471,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1730194207717538,\n 431790042319772,\n 1831515233279467,\n 1372080552768581,\n 1074513929381760,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1450880638731607,\n 1019861580989005,\n 1229729455116861,\n 1174945729836143,\n 826083146840706,\n ]),\n },\n ]),\n LookupTable([\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1899935429242705,\n 1602068751520477,\n 940583196550370,\n 2334230882739107,\n 1540863155745695,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2136688454840028,\n 2099509000964294,\n 1690800495246475,\n 1217643678575476,\n 828720645084218,\n ]),\n xy2d: FieldElement51::from_limbs([\n 765548025667841,\n 462473984016099,\n 998061409979798,\n 546353034089527,\n 2212508972466858,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2298375097456408,\n 3144370785258318,\n 1281983193144089,\n 1491520128287375,\n 75847005908304,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1801436127943107,\n 1734436817907890,\n 1268728090345068,\n 167003097070711,\n 2233597765834956,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1997562060465113,\n 1048700225534011,\n 7615603985628,\n 1855310849546841,\n 2242557647635213,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1161017320376250,\n 2744424393854291,\n 2169815802355236,\n 3228296595417790,\n 1770879511019628,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1357044908364776,\n 729130645262438,\n 1762469072918979,\n 1365633616878458,\n 181282906404941,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1080413443139865,\n 1155205815510486,\n 1848782073549786,\n 622566975152580,\n 124965574467971,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1184526762066993,\n 247622751762817,\n 2943928830891604,\n 3071818503097743,\n 2188697339828084,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2020536369003019,\n 202261491735136,\n 1053169669150884,\n 2056531979272544,\n 778165514694311,\n ]),\n xy2d: FieldElement51::from_limbs([\n 237404399610207,\n 1308324858405118,\n 1229680749538400,\n 720131409105291,\n 1958958863624906,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2767383321724075,\n 2269456792542436,\n 1717918437373988,\n 1568052070792483,\n 2298775616809171,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 281527309158085,\n 36970532401524,\n 866906920877543,\n 2222282602952734,\n 1289598729589882,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1278207464902042,\n 494742455008756,\n 1262082121427081,\n 1577236621659884,\n 1888786707293291,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 353042527954210,\n 1830056151907359,\n 1111731275799225,\n 2426760769524072,\n 404312815582674,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2064251142068628,\n 1666421603389706,\n 1419271365315441,\n 468767774902855,\n 191535130366583,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1716987058588002,\n 1859366439773457,\n 1767194234188234,\n 64476199777924,\n 1117233614485261,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3236091949205521,\n 2386938060636506,\n 2220652137473166,\n 1722843421165029,\n 2442282371698157,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 298845952651262,\n 1166086588952562,\n 1179896526238434,\n 1347812759398693,\n 1412945390096208,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1143239552672925,\n 906436640714209,\n 2177000572812152,\n 2075299936108548,\n 325186347798433,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2972824668060020,\n 2936287674948563,\n 3625238557779406,\n 2193186935276994,\n 1387043709851261,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 418098668140962,\n 715065997721283,\n 1471916138376055,\n 2168570337288357,\n 937812682637044,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1043584187226485,\n 2143395746619356,\n 2209558562919611,\n 482427979307092,\n 847556718384018,\n ]),\n },\n ]),\n LookupTable([\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1248731221520740,\n 1465200936117687,\n 2792603306395388,\n 2304778448366139,\n 2513234303861356,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1057329623869501,\n 620334067429122,\n 461700859268034,\n 2012481616501857,\n 297268569108938,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1055352180870759,\n 1553151421852298,\n 1510903185371259,\n 1470458349428097,\n 1226259419062731,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3744788603986897,\n 3042126439258578,\n 3441906842094992,\n 3641194565844440,\n 3872208010289441,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 47000654413729,\n 1004754424173864,\n 1868044813557703,\n 173236934059409,\n 588771199737015,\n ]),\n xy2d: FieldElement51::from_limbs([\n 30498470091663,\n 1082245510489825,\n 576771653181956,\n 806509986132686,\n 1317634017056939,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2672107869436803,\n 3745154677001249,\n 2417006535213335,\n 4136645508605033,\n 2065456951573058,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1115636332012334,\n 1854340990964155,\n 83792697369514,\n 1972177451994021,\n 457455116057587,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1698968457310898,\n 1435137169051090,\n 1083661677032510,\n 938363267483709,\n 340103887207182,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1995325341336555,\n 911500251774648,\n 2415810569088940,\n 855378419194761,\n 3825401211214090,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 241719380661528,\n 310028521317150,\n 1215881323380194,\n 1408214976493624,\n 2141142156467363,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1315157046163473,\n 727368447885818,\n 1363466668108618,\n 1668921439990361,\n 1398483384337907,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2326829491984875,\n 3267188020145720,\n 1849729037055211,\n 4191614430138232,\n 2696204044080201,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2053597130993710,\n 2024431685856332,\n 2233550957004860,\n 2012407275509545,\n 872546993104440,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1217269667678610,\n 599909351968693,\n 1390077048548598,\n 1471879360694802,\n 739586172317596,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3970118453066023,\n 1560510726633957,\n 3156262694845170,\n 1418028351780051,\n 2346204163137185,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2132502667405250,\n 214379346175414,\n 1502748313768060,\n 1960071701057800,\n 1353971822643138,\n ]),\n xy2d: FieldElement51::from_limbs([\n 319394212043702,\n 2127459436033571,\n 717646691535162,\n 663366796076914,\n 318459064945314,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2657789238608841,\n 1960452633787082,\n 2919148848086913,\n 3744474074452359,\n 1451061489880786,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 947085906234007,\n 323284730494107,\n 1485778563977200,\n 728576821512394,\n 901584347702286,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1575783124125742,\n 2126210792434375,\n 1569430791264065,\n 1402582372904727,\n 1891780248341114,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3090232019245924,\n 4249503325136911,\n 3270591693593114,\n 1662001808174330,\n 2330127946643001,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 739152638255629,\n 2074935399403557,\n 505483666745895,\n 1611883356514088,\n 628654635394878,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1822054032121349,\n 643057948186973,\n 7306757352712,\n 577249257962099,\n 284735863382083,\n ]),\n },\n ]),\n LookupTable([\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3618358370049178,\n 1448606567552085,\n 3730680834630016,\n 2417602993041145,\n 1115718458123497,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 204146226972102,\n 1630511199034723,\n 2215235214174763,\n 174665910283542,\n 956127674017216,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1562934578796716,\n 1070893489712745,\n 11324610642270,\n 958989751581897,\n 2172552325473805,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1770564423056008,\n 2987323445349813,\n 1326060113795288,\n 1509650369341127,\n 2317692235267932,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 623682558650637,\n 1337866509471512,\n 990313350206649,\n 1314236615762469,\n 1164772974270275,\n ]),\n xy2d: FieldElement51::from_limbs([\n 223256821462517,\n 723690150104139,\n 1000261663630601,\n 933280913953265,\n 254872671543046,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1969087237026022,\n 2876595539132372,\n 1335555107635968,\n 2069986355593023,\n 3963899963027150,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1236103475266979,\n 1837885883267218,\n 1026072585230455,\n 1025865513954973,\n 1801964901432134,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1115241013365517,\n 1712251818829143,\n 2148864332502771,\n 2096001471438138,\n 2235017246626125,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3551068012286861,\n 2047148477845620,\n 2165648650132450,\n 1612539282026145,\n 2765997725314138,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 118352772338543,\n 1067608711804704,\n 1434796676193498,\n 1683240170548391,\n 230866769907437,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1850689576796636,\n 1601590730430274,\n 1139674615958142,\n 1954384401440257,\n 76039205311,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1723387471374172,\n 3249101280723658,\n 2785727448808904,\n 2272728458379212,\n 1756575222802512,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2146711623855116,\n 503278928021499,\n 625853062251406,\n 1109121378393107,\n 1033853809911861,\n ]),\n xy2d: FieldElement51::from_limbs([\n 571005965509422,\n 2005213373292546,\n 1016697270349626,\n 56607856974274,\n 914438579435146,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1346698876211176,\n 2076651707527589,\n 3336561384795453,\n 2517134292513653,\n 1068954492309670,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1769967932677654,\n 1695893319756416,\n 1151863389675920,\n 1781042784397689,\n 400287774418285,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1851867764003121,\n 403841933237558,\n 820549523771987,\n 761292590207581,\n 1743735048551143,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 410915148140008,\n 2107072311871739,\n 3256167275561751,\n 2351484709082008,\n 1180818713503223,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 285945406881439,\n 648174397347453,\n 1098403762631981,\n 1366547441102991,\n 1505876883139217,\n ]),\n xy2d: FieldElement51::from_limbs([\n 672095903120153,\n 1675918957959872,\n 636236529315028,\n 1569297300327696,\n 2164144194785875,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1902708175321798,\n 3287143344600686,\n 1178560808893262,\n 2552895497743394,\n 1280977479761117,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1615357281742403,\n 404257611616381,\n 2160201349780978,\n 1160947379188955,\n 1578038619549541,\n ]),\n xy2d: FieldElement51::from_limbs([\n 2013087639791217,\n 822734930507457,\n 1785668418619014,\n 1668650702946164,\n 389450875221715,\n ]),\n },\n ]),\n LookupTable([\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2705718263383616,\n 2358206633614248,\n 2072540975937134,\n 308588860670238,\n 1304394580755385,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1295082798350326,\n 2091844511495996,\n 1851348972587817,\n 3375039684596,\n 789440738712837,\n ]),\n xy2d: FieldElement51::from_limbs([\n 2083069137186154,\n 848523102004566,\n 993982213589257,\n 1405313299916317,\n 1532824818698468,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3747761112537659,\n 1397203457344778,\n 4026750030752190,\n 2391102557240943,\n 2318403398028034,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1782411379088302,\n 1096724939964781,\n 27593390721418,\n 542241850291353,\n 1540337798439873,\n ]),\n xy2d: FieldElement51::from_limbs([\n 693543956581437,\n 171507720360750,\n 1557908942697227,\n 1074697073443438,\n 1104093109037196,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 345288228393400,\n 3351443383432420,\n 2386681722088990,\n 1740551994106739,\n 2500011992985018,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 231429562203065,\n 1526290236421172,\n 2021375064026423,\n 1520954495658041,\n 806337791525116,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1079623667189886,\n 872403650198613,\n 766894200588288,\n 2163700860774109,\n 2023464507911816,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 854645372543796,\n 1936406001954827,\n 2403260476226501,\n 3077125552956802,\n 1554306377287555,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1497138821904622,\n 1044820250515590,\n 1742593886423484,\n 1237204112746837,\n 849047450816987,\n ]),\n xy2d: FieldElement51::from_limbs([\n 667962773375330,\n 1897271816877105,\n 1399712621683474,\n 1143302161683099,\n 2081798441209593,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2378947665252234,\n 1936114012888109,\n 1704424366552046,\n 3108474694401560,\n 2968403435020606,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1072409664800960,\n 2146937497077528,\n 1508780108920651,\n 935767602384853,\n 1112800433544068,\n ]),\n xy2d: FieldElement51::from_limbs([\n 333549023751292,\n 280219272863308,\n 2104176666454852,\n 1036466864875785,\n 536135186520207,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2625466093568366,\n 2398257055215356,\n 2555916080813104,\n 2667888562832962,\n 3510376944868638,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1186115062588401,\n 2251609796968486,\n 1098944457878953,\n 1153112761201374,\n 1791625503417267,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1870078460219737,\n 2129630962183380,\n 852283639691142,\n 292865602592851,\n 401904317342226,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1361070124828016,\n 815664541425524,\n 3278598711049919,\n 1951790935390646,\n 2807674705520038,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1546301003424277,\n 459094500062839,\n 1097668518375311,\n 1780297770129643,\n 720763293687608,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1212405311403990,\n 1536693382542438,\n 61028431067459,\n 1863929423417129,\n 1223219538638038,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1294303766540260,\n 3435357279640341,\n 3134071170918340,\n 2315654383110622,\n 2213283684565086,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 339050984211414,\n 601386726509773,\n 413735232134068,\n 966191255137228,\n 1839475899458159,\n ]),\n xy2d: FieldElement51::from_limbs([\n 235605972169408,\n 2174055643032978,\n 1538335001838863,\n 1281866796917192,\n 1815940222628465,\n ]),\n },\n ]),\n LookupTable([\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1632352921721536,\n 1833328609514701,\n 2092779091951987,\n 4175756015558474,\n 2210068022482918,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 35271216625062,\n 1712350667021807,\n 983664255668860,\n 98571260373038,\n 1232645608559836,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1998172393429622,\n 1798947921427073,\n 784387737563581,\n 1589352214827263,\n 1589861734168180,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1733739258725305,\n 2283515530744786,\n 2453769758904107,\n 3243892858242237,\n 1194308773174555,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 846415389605137,\n 746163495539180,\n 829658752826080,\n 592067705956946,\n 957242537821393,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1758148849754419,\n 619249044817679,\n 168089007997045,\n 1371497636330523,\n 1867101418880350,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2578433797894864,\n 2513559319756263,\n 1700682323676192,\n 1577907266349064,\n 3469447477068264,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1714182387328607,\n 1477856482074168,\n 574895689942184,\n 2159118410227270,\n 1555532449716575,\n ]),\n xy2d: FieldElement51::from_limbs([\n 853828206885131,\n 998498946036955,\n 1835887550391235,\n 207627336608048,\n 258363815956050,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2392941288336925,\n 3488528558590503,\n 2894901233585134,\n 1646615130509172,\n 1208239602291765,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1501663228068911,\n 1354879465566912,\n 1444432675498247,\n 897812463852601,\n 855062598754348,\n ]),\n xy2d: FieldElement51::from_limbs([\n 714380763546606,\n 1032824444965790,\n 1774073483745338,\n 1063840874947367,\n 1738680636537158,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1640635546696233,\n 2884968766877360,\n 2212651044092395,\n 2282390772269100,\n 2620315074574625,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1171650314802029,\n 1567085444565577,\n 1453660792008405,\n 757914533009261,\n 1619511342778196,\n ]),\n xy2d: FieldElement51::from_limbs([\n 420958967093237,\n 971103481109486,\n 2169549185607107,\n 1301191633558497,\n 1661514101014240,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3158923465503550,\n 1332556122804145,\n 4075855067109735,\n 3619414031128206,\n 1982558335973171,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1121533090144639,\n 1021251337022187,\n 110469995947421,\n 1511059774758394,\n 2110035908131662,\n ]),\n xy2d: FieldElement51::from_limbs([\n 303213233384524,\n 2061932261128138,\n 352862124777736,\n 40828818670255,\n 249879468482660,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 856559257852200,\n 2760317478634258,\n 3629993581580163,\n 3975258940632376,\n 1962275756614520,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1445691340537320,\n 40614383122127,\n 402104303144865,\n 485134269878232,\n 1659439323587426,\n ]),\n xy2d: FieldElement51::from_limbs([\n 20057458979482,\n 1183363722525800,\n 2140003847237215,\n 2053873950687614,\n 2112017736174909,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2228654250927986,\n 3735391177100515,\n 1368661293910955,\n 3328311098862539,\n 526650682059607,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 709481497028540,\n 531682216165724,\n 316963769431931,\n 1814315888453765,\n 258560242424104,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1053447823660455,\n 1955135194248683,\n 1010900954918985,\n 1182614026976701,\n 1240051576966610,\n ]),\n },\n ]),\n LookupTable([\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1957943897155478,\n 1788667368028035,\n 2389492723714354,\n 2252839333292309,\n 3078204576998275,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1848942433095597,\n 1582009882530495,\n 1849292741020143,\n 1068498323302788,\n 2001402229799484,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1528282417624269,\n 2142492439828191,\n 2179662545816034,\n 362568973150328,\n 1591374675250271,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2411826493119617,\n 2484141002903963,\n 2149181472355544,\n 598041771119831,\n 2435658815595421,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2013278155187349,\n 662660471354454,\n 793981225706267,\n 411706605985744,\n 804490933124791,\n ]),\n xy2d: FieldElement51::from_limbs([\n 2051892037280204,\n 488391251096321,\n 2230187337030708,\n 930221970662692,\n 679002758255210,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1530723630438670,\n 875873929577927,\n 2593359947955236,\n 2701702933216000,\n 1055551308214178,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1461835919309432,\n 1955256480136428,\n 180866187813063,\n 1551979252664528,\n 557743861963950,\n ]),\n xy2d: FieldElement51::from_limbs([\n 359179641731115,\n 1324915145732949,\n 902828372691474,\n 294254275669987,\n 1887036027752957,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 4295071423139571,\n 2038225437857463,\n 1317528426475850,\n 1398989128982787,\n 2027639881006861,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2072902725256516,\n 312132452743412,\n 309930885642209,\n 996244312618453,\n 1590501300352303,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1397254305160710,\n 695734355138021,\n 2233992044438756,\n 1776180593969996,\n 1085588199351115,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2692366865016258,\n 2506694600041928,\n 2745669038615469,\n 1556322069683365,\n 3819256354004466,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1950722461391320,\n 1907845598854797,\n 1822757481635527,\n 2121567704750244,\n 73811931471221,\n ]),\n xy2d: FieldElement51::from_limbs([\n 387139307395758,\n 2058036430315676,\n 1220915649965325,\n 1794832055328951,\n 1230009312169328,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1765973779329498,\n 2911143873132225,\n 2271621715291913,\n 3553728154996461,\n 3368065817761132,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1127572801181483,\n 1224743760571696,\n 1276219889847274,\n 1529738721702581,\n 1589819666871853,\n ]),\n xy2d: FieldElement51::from_limbs([\n 2181229378964934,\n 2190885205260020,\n 1511536077659137,\n 1246504208580490,\n 668883326494241,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2689666469258543,\n 2920826224880015,\n 2333696811665585,\n 523874406393177,\n 2496851874620484,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1975438052228868,\n 1071801519999806,\n 594652299224319,\n 1877697652668809,\n 1489635366987285,\n ]),\n xy2d: FieldElement51::from_limbs([\n 958592545673770,\n 233048016518599,\n 851568750216589,\n 567703851596087,\n 1740300006094761,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2014540178270324,\n 192672779514432,\n 2465676996326778,\n 2194819933853410,\n 1716422829364835,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1540769606609725,\n 2148289943846077,\n 1597804156127445,\n 1230603716683868,\n 815423458809453,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1738560251245018,\n 1779576754536888,\n 1783765347671392,\n 1880170990446751,\n 1088225159617541,\n ]),\n },\n ]),\n LookupTable([\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2911103727614740,\n 1956447718227572,\n 1830568515922666,\n 3092868863429656,\n 1669607124206367,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1143465490433355,\n 1532194726196059,\n 1093276745494697,\n 481041706116088,\n 2121405433561163,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1686424298744462,\n 1451806974487153,\n 266296068846582,\n 1834686947542675,\n 1720762336132256,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3141016840074207,\n 3295090436969907,\n 3107924901237156,\n 1669272323124635,\n 1603340330827879,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1206396181488998,\n 333158148435054,\n 1402633492821422,\n 1120091191722026,\n 1945474114550509,\n ]),\n xy2d: FieldElement51::from_limbs([\n 766720088232571,\n 1512222781191002,\n 1189719893490790,\n 2091302129467914,\n 2141418006894941,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2671463460991841,\n 1998875112167986,\n 3678399683938955,\n 3406728169064757,\n 2738338345823434,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 938160078005954,\n 1421776319053174,\n 1941643234741774,\n 180002183320818,\n 1414380336750546,\n ]),\n xy2d: FieldElement51::from_limbs([\n 398001940109652,\n 1577721237663248,\n 1012748649830402,\n 1540516006905144,\n 1011684812884559,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1653276489969611,\n 2257881638852872,\n 1921777941170835,\n 1604139841794531,\n 3113010867325889,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 996661541407379,\n 1455877387952927,\n 744312806857277,\n 139213896196746,\n 1000282908547789,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1450817495603008,\n 1476865707053229,\n 1030490562252053,\n 620966950353376,\n 1744760161539058,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2811528223687828,\n 2288856475326432,\n 2038622963352005,\n 1637244893271723,\n 3278365165924196,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 962165956135846,\n 1116599660248791,\n 182090178006815,\n 1455605467021751,\n 196053588803284,\n ]),\n xy2d: FieldElement51::from_limbs([\n 796863823080135,\n 1897365583584155,\n 420466939481601,\n 2165972651724672,\n 932177357788289,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 877047233620613,\n 1375632631944375,\n 2895573425567369,\n 2911822552533124,\n 2271153746017078,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2216943882299338,\n 394841323190322,\n 2222656898319671,\n 558186553950529,\n 1077236877025190,\n ]),\n xy2d: FieldElement51::from_limbs([\n 801118384953213,\n 1914330175515892,\n 574541023311511,\n 1471123787903705,\n 1526158900256288,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3201417702772463,\n 2207116611267330,\n 3164719852826535,\n 2752958352884036,\n 2314162374456719,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1474518386765335,\n 1760793622169197,\n 1157399790472736,\n 1622864308058898,\n 165428294422792,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1961673048027128,\n 102619413083113,\n 1051982726768458,\n 1603657989805485,\n 1941613251499678,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1401939116319247,\n 2587106153588320,\n 2323846009771033,\n 862423201496005,\n 3102318568216632,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1234706593321979,\n 1083343891215917,\n 898273974314935,\n 1640859118399498,\n 157578398571149,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1143483057726416,\n 1992614991758919,\n 674268662140796,\n 1773370048077526,\n 674318359920189,\n ]),\n },\n ]),\n LookupTable([\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1835401379538542,\n 173900035308392,\n 818247630716732,\n 4013900225838034,\n 1021506399448290,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1506632088156630,\n 2127481795522179,\n 513812919490255,\n 140643715928370,\n 442476620300318,\n ]),\n xy2d: FieldElement51::from_limbs([\n 2056683376856736,\n 219094741662735,\n 2193541883188309,\n 1841182310235800,\n 556477468664293,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3566819241596075,\n 1049075855992602,\n 4318372866671791,\n 2518704280870781,\n 2040482348591519,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 94096246544434,\n 922482381166992,\n 24517828745563,\n 2139430508542503,\n 2097139044231004,\n ]),\n xy2d: FieldElement51::from_limbs([\n 537697207950515,\n 1399352016347350,\n 1563663552106345,\n 2148749520888918,\n 549922092988516,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1747985413252415,\n 680511052635695,\n 1809559829982725,\n 2846074064615302,\n 2453472984431229,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 323583936109569,\n 1973572998577657,\n 1192219029966558,\n 79354804385273,\n 1374043025560347,\n ]),\n xy2d: FieldElement51::from_limbs([\n 213277331329947,\n 416202017849623,\n 1950535221091783,\n 1313441578103244,\n 2171386783823658,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2440888617915079,\n 993969372859109,\n 3147669935222235,\n 3799101348983503,\n 1477373024911349,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1620578418245010,\n 541035331188469,\n 2235785724453865,\n 2154865809088198,\n 1974627268751826,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1346805451740245,\n 1350981335690626,\n 942744349501813,\n 2155094562545502,\n 1012483751693409,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2107080134091762,\n 1132567062788208,\n 1824935377687210,\n 769194804343737,\n 1857941799971888,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1074666112436467,\n 249279386739593,\n 1174337926625354,\n 1559013532006480,\n 1472287775519121,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1872620123779532,\n 1892932666768992,\n 1921559078394978,\n 1270573311796160,\n 1438913646755037,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3089190001333428,\n 3264053113908846,\n 989780015893986,\n 1351393287739814,\n 2580427560230798,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1028328827183114,\n 1711043289969857,\n 1350832470374933,\n 1923164689604327,\n 1495656368846911,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1900828492104143,\n 430212361082163,\n 687437570852799,\n 832514536673512,\n 1685641495940794,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3094432661621646,\n 605670026766215,\n 290836444839585,\n 2415010588577604,\n 2213815011799644,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1176336383453996,\n 1725477294339771,\n 12700622672454,\n 678015708818208,\n 162724078519879,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1448049969043497,\n 1789411762943521,\n 385587766217753,\n 90201620913498,\n 832999441066823,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2767886146978542,\n 2240508292484615,\n 3603469341851756,\n 3475055379001735,\n 3002035638112385,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1263624896582495,\n 1102602401673328,\n 526302183714372,\n 2152015839128799,\n 1483839308490010,\n ]),\n xy2d: FieldElement51::from_limbs([\n 442991718646863,\n 1599275157036458,\n 1925389027579192,\n 899514691371390,\n 350263251085160,\n ]),\n },\n ]),\n LookupTable([\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1689713572022124,\n 2845654372939621,\n 3229894858477217,\n 1985127338729498,\n 3927868934032873,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1557207018622683,\n 340631692799603,\n 1477725909476187,\n 614735951619419,\n 2033237123746766,\n ]),\n xy2d: FieldElement51::from_limbs([\n 968764929340557,\n 1225534776710944,\n 662967304013036,\n 1155521416178595,\n 791142883466590,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1487081286167458,\n 3244839255500182,\n 1792378982844639,\n 2950452258685122,\n 2153908693179753,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1123181311102823,\n 685575944875442,\n 507605465509927,\n 1412590462117473,\n 568017325228626,\n ]),\n xy2d: FieldElement51::from_limbs([\n 560258797465417,\n 2193971151466401,\n 1824086900849026,\n 579056363542056,\n 1690063960036441,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1918407319222397,\n 2605567366745211,\n 1930426334528098,\n 1564816146005724,\n 4113142195393344,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2131325168777276,\n 1176636658428908,\n 1756922641512981,\n 1390243617176012,\n 1966325177038383,\n ]),\n xy2d: FieldElement51::from_limbs([\n 2063958120364491,\n 2140267332393533,\n 699896251574968,\n 273268351312140,\n 375580724713232,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2024297515263178,\n 2668759143407935,\n 3330814048702549,\n 2423412039258430,\n 1031677520051052,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2033900009388450,\n 1744902869870788,\n 2190580087917640,\n 1949474984254121,\n 231049754293748,\n ]),\n xy2d: FieldElement51::from_limbs([\n 343868674606581,\n 550155864008088,\n 1450580864229630,\n 481603765195050,\n 896972360018042,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2151139328380127,\n 2566545695770176,\n 2311556639460451,\n 1676664391494650,\n 2048348075599360,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1528930066340597,\n 1605003907059576,\n 1055061081337675,\n 1458319101947665,\n 1234195845213142,\n ]),\n xy2d: FieldElement51::from_limbs([\n 830430507734812,\n 1780282976102377,\n 1425386760709037,\n 362399353095425,\n 2168861579799910,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3407562046415562,\n 980662895504005,\n 2053766700883521,\n 2742766027762854,\n 2762205690726604,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1683750316716132,\n 652278688286128,\n 1221798761193539,\n 1897360681476669,\n 319658166027343,\n ]),\n xy2d: FieldElement51::from_limbs([\n 618808732869972,\n 72755186759744,\n 2060379135624181,\n 1730731526741822,\n 48862757828238,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3714971784278753,\n 3394840525452699,\n 614590986558882,\n 1409210575145591,\n 1882816996436803,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2230133264691131,\n 563950955091024,\n 2042915975426398,\n 827314356293472,\n 672028980152815,\n ]),\n xy2d: FieldElement51::from_limbs([\n 264204366029760,\n 1654686424479449,\n 2185050199932931,\n 2207056159091748,\n 506015669043634,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1784446333136550,\n 1973746527984364,\n 334856327359575,\n 3408569589569858,\n 3275749938360725,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2065270940578383,\n 31477096270353,\n 306421879113491,\n 181958643936686,\n 1907105536686083,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1496516440779464,\n 1748485652986458,\n 872778352227340,\n 818358834654919,\n 97932669284220,\n ]),\n },\n ]),\n LookupTable([\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2723435829455580,\n 2924255216478824,\n 1804995246884102,\n 1842309243470804,\n 3753662318666930,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1013216974933691,\n 538921919682598,\n 1915776722521558,\n 1742822441583877,\n 1886550687916656,\n ]),\n xy2d: FieldElement51::from_limbs([\n 2094270000643336,\n 303971879192276,\n 40801275554748,\n 649448917027930,\n 1818544418535447,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2241737709499146,\n 549397817447461,\n 838180519319392,\n 1725686958520781,\n 3957438894582995,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1216074541925116,\n 50120933933509,\n 1565829004133810,\n 721728156134580,\n 349206064666188,\n ]),\n xy2d: FieldElement51::from_limbs([\n 948617110470858,\n 346222547451945,\n 1126511960599975,\n 1759386906004538,\n 493053284802266,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1454933046815146,\n 3126495827951610,\n 1467170975468587,\n 1432316382418897,\n 2111710746366763,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2105387117364450,\n 1996463405126433,\n 1303008614294500,\n 851908115948209,\n 1353742049788635,\n ]),\n xy2d: FieldElement51::from_limbs([\n 750300956351719,\n 1487736556065813,\n 15158817002104,\n 1511998221598392,\n 971739901354129,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1874648163531674,\n 2124487685930551,\n 1810030029384882,\n 918400043048335,\n 2838148440985898,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1235084464747900,\n 1166111146432082,\n 1745394857881591,\n 1405516473883040,\n 4463504151617,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1663810156463827,\n 327797390285791,\n 1341846161759410,\n 1964121122800605,\n 1747470312055380,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 660005247548214,\n 2071860029952887,\n 3610548013635355,\n 911703252219106,\n 3266179736709079,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2206641276178231,\n 1690587809721504,\n 1600173622825126,\n 2156096097634421,\n 1106822408548216,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1344788193552206,\n 1949552134239140,\n 1735915881729557,\n 675891104100469,\n 1834220014427292,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1920949492387945,\n 2410685102072778,\n 2322108077349280,\n 2877838278583064,\n 3719881539786256,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 622221042073383,\n 1210146474039168,\n 1742246422343683,\n 1403839361379025,\n 417189490895736,\n ]),\n xy2d: FieldElement51::from_limbs([\n 22727256592983,\n 168471543384997,\n 1324340989803650,\n 1839310709638189,\n 504999476432775,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3565040332441556,\n 1721896294296941,\n 2304063388272514,\n 2065069734239231,\n 3056710287109878,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1337466662091884,\n 1287645354669772,\n 2018019646776184,\n 652181229374245,\n 898011753211715,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1969792547910734,\n 779969968247557,\n 2011350094423418,\n 1823964252907487,\n 1058949448296945,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2459143550747250,\n 1118176942430252,\n 3010694408233412,\n 806764629546265,\n 1157700123092949,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1273565321399022,\n 1638509681964574,\n 759235866488935,\n 666015124346707,\n 897983460943405,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1717263794012298,\n 1059601762860786,\n 1837819172257618,\n 1054130665797229,\n 680893204263559,\n ]),\n },\n ]),\n LookupTable([\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2237039662793603,\n 2249022333361206,\n 2058613546633703,\n 2401253908530527,\n 2215176649164581,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 79472182719605,\n 1851130257050174,\n 1825744808933107,\n 821667333481068,\n 781795293511946,\n ]),\n xy2d: FieldElement51::from_limbs([\n 755822026485370,\n 152464789723500,\n 1178207602290608,\n 410307889503239,\n 156581253571278,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3669985309815545,\n 2736319981413860,\n 3898537095128197,\n 3653287498355512,\n 1349185550126960,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1495380034400429,\n 325049476417173,\n 46346894893933,\n 1553408840354856,\n 828980101835683,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1280337889310282,\n 2070832742866672,\n 1640940617225222,\n 2098284908289951,\n 450929509534434,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2659503167684029,\n 2378371955168899,\n 2537839641198868,\n 1999255076709337,\n 2030511179441770,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1254958221100483,\n 1153235960999843,\n 942907704968834,\n 637105404087392,\n 1149293270147267,\n ]),\n xy2d: FieldElement51::from_limbs([\n 894249020470196,\n 400291701616810,\n 406878712230981,\n 1599128793487393,\n 1145868722604026,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3749755063888563,\n 2361916158338507,\n 1128535642171975,\n 1900106496009660,\n 2381592531146157,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 452487513298665,\n 1352120549024569,\n 1173495883910956,\n 1999111705922009,\n 367328130454226,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1717539401269642,\n 1475188995688487,\n 891921989653942,\n 836824441505699,\n 1885988485608364,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3493583935107776,\n 2439136865632830,\n 3370281625921440,\n 2680547565621609,\n 2282158712612572,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2022432361201842,\n 1088816090685051,\n 1977843398539868,\n 1854834215890724,\n 564238862029357,\n ]),\n xy2d: FieldElement51::from_limbs([\n 938868489100585,\n 1100285072929025,\n 1017806255688848,\n 1957262154788833,\n 152787950560442,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3119119231364171,\n 2872271776627789,\n 2477832016990963,\n 2593801257642876,\n 1761675818237335,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1295072362439987,\n 931227904689414,\n 1355731432641687,\n 922235735834035,\n 892227229410209,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1680989767906154,\n 535362787031440,\n 2136691276706570,\n 1942228485381244,\n 1267350086882274,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2617818047455756,\n 2684460443440843,\n 2378209521329782,\n 1973842949591661,\n 2897427157127624,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 535509430575217,\n 546885533737322,\n 1524675609547799,\n 2138095752851703,\n 1260738089896827,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1159906385590467,\n 2198530004321610,\n 714559485023225,\n 81880727882151,\n 1484020820037082,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1377485731340769,\n 2046328105512000,\n 1802058637158797,\n 2313945950453421,\n 1356993908853900,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2013612215646735,\n 1830770575920375,\n 536135310219832,\n 609272325580394,\n 270684344495013,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1237542585982777,\n 2228682050256790,\n 1385281931622824,\n 593183794882890,\n 493654978552689,\n ]),\n },\n ]),\n LookupTable([\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2299141301692989,\n 1891414891220256,\n 983894663308928,\n 2427961581972066,\n 3378060928864955,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1694030170963455,\n 502038567066200,\n 1691160065225467,\n 949628319562187,\n 275110186693066,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1124515748676336,\n 1661673816593408,\n 1499640319059718,\n 1584929449166988,\n 558148594103306,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1784525599998356,\n 1619698033617383,\n 2097300287550715,\n 2510065271789004,\n 1905684794832757,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1288941072872766,\n 931787902039402,\n 190731008859042,\n 2006859954667190,\n 1005931482221702,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1465551264822703,\n 152905080555927,\n 680334307368453,\n 173227184634745,\n 666407097159852,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2111017076203943,\n 3630560299479595,\n 1248583954016455,\n 3604089008549670,\n 1895180776543895,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 171348223915638,\n 662766099800389,\n 462338943760497,\n 466917763340314,\n 656911292869115,\n ]),\n xy2d: FieldElement51::from_limbs([\n 488623681976577,\n 866497561541722,\n 1708105560937768,\n 1673781214218839,\n 1506146329818807,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2412225278142205,\n 950394373239688,\n 2682296937026182,\n 711676555398831,\n 320964687779005,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 988979367990485,\n 1359729327576302,\n 1301834257246029,\n 294141160829308,\n 29348272277475,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1434382743317910,\n 100082049942065,\n 221102347892623,\n 186982837860588,\n 1305765053501834,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2205916462268190,\n 2751663643476068,\n 961960554686615,\n 2409862576442233,\n 1841471168298304,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1191737341426592,\n 1847042034978363,\n 1382213545049056,\n 1039952395710448,\n 788812858896859,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1346965964571152,\n 1291881610839830,\n 2142916164336056,\n 786821641205979,\n 1571709146321039,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 787164375951248,\n 2454669019058437,\n 3608390234717387,\n 1431233331032509,\n 786341368775957,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 492448143532951,\n 304105152670757,\n 1761767168301056,\n 233782684697790,\n 1981295323106089,\n ]),\n xy2d: FieldElement51::from_limbs([\n 665807507761866,\n 1343384868355425,\n 895831046139653,\n 439338948736892,\n 1986828765695105,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3007896024559801,\n 1721699973539148,\n 2510565115413133,\n 1390588532210644,\n 1212530909934781,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 852891097972275,\n 1816988871354562,\n 1543772755726524,\n 1174710635522444,\n 202129090724628,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1205281565824323,\n 22430498399418,\n 992947814485516,\n 1392458699738672,\n 688441466734558,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3302427242100220,\n 1955849529137134,\n 2171162376368357,\n 2343545681983462,\n 447733118757825,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1287181461435438,\n 622722465530711,\n 880952150571872,\n 741035693459198,\n 311565274989772,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1003649078149734,\n 545233927396469,\n 1849786171789880,\n 1318943684880434,\n 280345687170552,\n ]),\n },\n ]),\n]);\n\n/// Odd multiples of the basepoint `[B, 3B, 5B, 7B, 9B, 11B, 13B, 15B, ..., 127B]`.\n#[cfg(feature = \"precomputed-tables\")]\n#[allow(dead_code)]\npub(crate) const AFFINE_ODD_MULTIPLES_OF_BASEPOINT: NafLookupTable8<AffineNielsPoint> =\n NafLookupTable8([\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3540182452943730,\n 2497478415033846,\n 2521227595762870,\n 1462984067271729,\n 2389212253076811,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 62697248952638,\n 204681361388450,\n 631292143396476,\n 338455783676468,\n 1213667448819585,\n ]),\n xy2d: FieldElement51::from_limbs([\n 301289933810280,\n 1259582250014073,\n 1422107436869536,\n 796239922652654,\n 1953934009299142,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1601611775252272,\n 1720807796594148,\n 1132070835939856,\n 3512254832574799,\n 2147779492816910,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 316559037616741,\n 2177824224946892,\n 1459442586438991,\n 1461528397712656,\n 751590696113597,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1850748884277385,\n 1200145853858453,\n 1068094770532492,\n 672251375690438,\n 1586055907191707,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 769950342298400,\n 2384754244604994,\n 3095885746880802,\n 3225892188161580,\n 2977876099231263,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 425251763115706,\n 608463272472562,\n 442562545713235,\n 837766094556764,\n 374555092627893,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1086255230780037,\n 274979815921559,\n 1960002765731872,\n 929474102396301,\n 1190409889297339,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2916800678241215,\n 2065379846933858,\n 2622030924071124,\n 2602788184473875,\n 1233371373142984,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2019367628972465,\n 676711900706637,\n 110710997811333,\n 1108646842542025,\n 517791959672113,\n ]),\n xy2d: FieldElement51::from_limbs([\n 965130719900578,\n 247011430587952,\n 526356006571389,\n 91986625355052,\n 2157223321444601,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1802695059464988,\n 1664899123557221,\n 2845359304426105,\n 2160434469266658,\n 3179370264440279,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1725674970513508,\n 1933645953859181,\n 1542344539275782,\n 1767788773573747,\n 1297447965928905,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1381809363726107,\n 1430341051343062,\n 2061843536018959,\n 1551778050872521,\n 2036394857967624,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 4222693909998302,\n 2779866139518454,\n 1619374932191226,\n 2207306624415883,\n 1169170329061080,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2070390218572616,\n 1458919061857835,\n 624171843017421,\n 1055332792707765,\n 433987520732508,\n ]),\n xy2d: FieldElement51::from_limbs([\n 893653801273833,\n 1168026499324677,\n 1242553501121234,\n 1306366254304474,\n 1086752658510815,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2465253816303469,\n 3191571337672685,\n 1159882208056013,\n 2569188183312765,\n 621213314200686,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1971678598905747,\n 338026507889165,\n 762398079972271,\n 655096486107477,\n 42299032696322,\n ]),\n xy2d: FieldElement51::from_limbs([\n 177130678690680,\n 1754759263300204,\n 1864311296286618,\n 1180675631479880,\n 1292726903152791,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1913163449625248,\n 2712579013977241,\n 2193883288642313,\n 1008900146920800,\n 1721983679009502,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1070401523076875,\n 1272492007800961,\n 1910153608563310,\n 2075579521696771,\n 1191169788841221,\n ]),\n xy2d: FieldElement51::from_limbs([\n 692896803108118,\n 500174642072499,\n 2068223309439677,\n 1162190621851337,\n 1426986007309901,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1819621230288238,\n 2735700366193240,\n 1755134670739586,\n 3080648199451191,\n 4172807995775876,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 992069868904071,\n 799011518185730,\n 1777586403832768,\n 1134820506145684,\n 1999461475558530,\n ]),\n xy2d: FieldElement51::from_limbs([\n 425204543703124,\n 2040469794090382,\n 1651690622153809,\n 1500530168597569,\n 1253908377065966,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2105824306960939,\n 1387520302709358,\n 3633176580451016,\n 2211816663841753,\n 1629085891776489,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1485201376284999,\n 1022406647424656,\n 504181009209019,\n 962621520820995,\n 590876713147230,\n ]),\n xy2d: FieldElement51::from_limbs([\n 265873406365287,\n 1192742653492898,\n 88553098803050,\n 525037770869640,\n 1266933811251234,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3552316659826612,\n 1254279525791875,\n 1609927932077699,\n 3578654071679972,\n 3750681296069893,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 37186803519861,\n 1404297334376301,\n 578519728836650,\n 1740727951192592,\n 2095534282477028,\n ]),\n xy2d: FieldElement51::from_limbs([\n 833234263154399,\n 2023862470013762,\n 1854137933982069,\n 853924318090959,\n 1589812702805850,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3679150557957763,\n 1319179453661745,\n 497496853611112,\n 2665464286942351,\n 1208137952365560,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1654513078530905,\n 907489875842908,\n 126098711296368,\n 1726320004173677,\n 28269495058173,\n ]),\n xy2d: FieldElement51::from_limbs([\n 114436686957443,\n 532739313025996,\n 115428841215897,\n 2191499400074366,\n 370280402676434,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1111146849833253,\n 2016430049079759,\n 1860522747477948,\n 3537164738290194,\n 4137142824844184,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 429069864577128,\n 975327637149449,\n 237881983565075,\n 1654761232378630,\n 2122527599091807,\n ]),\n xy2d: FieldElement51::from_limbs([\n 2093793463548278,\n 754827233241879,\n 1420389751719629,\n 1829952782588138,\n 2011865756773717,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 676293365438898,\n 2850296017886344,\n 1205350322490195,\n 2763699392265669,\n 2133931188538142,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 48340340349120,\n 1299261101494832,\n 1137329686775218,\n 1534848106674340,\n 1351662218216799,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1904520614137939,\n 1590301001714014,\n 215781420985270,\n 2043534301034629,\n 1970888949300424,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2365217962409710,\n 2061307169694064,\n 1887478590157603,\n 2169639621284316,\n 2373810867477200,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1020052624656948,\n 1260412094216707,\n 366721640607121,\n 585331442306596,\n 345876457758061,\n ]),\n xy2d: FieldElement51::from_limbs([\n 975390299880933,\n 1066555195234642,\n 12651997758352,\n 1184252205433068,\n 1058378155074223,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1431537716602643,\n 2024827957433813,\n 3746434518400495,\n 1087794891033550,\n 2156817571680455,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 929288033346881,\n 255179964546973,\n 711057989588035,\n 208899572612840,\n 185348357387383,\n ]),\n xy2d: FieldElement51::from_limbs([\n 823689746424808,\n 47266130989546,\n 209403309368097,\n 1100966895202707,\n 710792075292719,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2311213117823762,\n 3296668540922318,\n 2004276520649823,\n 1861500579441125,\n 3148029033359833,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1563693677475261,\n 1843782073741194,\n 1950700654453170,\n 911540858113949,\n 2085151496302359,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1427880892005482,\n 106216431121745,\n 42608394782284,\n 1217295886989793,\n 1514235272796882,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3544335535746750,\n 2367994491347456,\n 2567261456502612,\n 1854058085060971,\n 2263545563461076,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 787426011300053,\n 2105981035769060,\n 1130476291127206,\n 1748659348100075,\n 53470983013756,\n ]),\n xy2d: FieldElement51::from_limbs([\n 553548273865386,\n 5927805718390,\n 65184587381926,\n 633576679686953,\n 576048559439973,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 993787326657446,\n 3868807161609258,\n 1615796046728943,\n 2514644292681953,\n 2059021068660907,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 251010270518880,\n 1681684095763484,\n 1521949356387564,\n 431593457045116,\n 1855308922422910,\n ]),\n xy2d: FieldElement51::from_limbs([\n 618490909691959,\n 1257497595618257,\n 202952467594088,\n 35577762721238,\n 1494883566841973,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1673474571932262,\n 2409784519770613,\n 2636095316260487,\n 2761112584601925,\n 3333713288149876,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1600640202645197,\n 1019569075331823,\n 1041916487915822,\n 1680448171313267,\n 2126903137527901,\n ]),\n xy2d: FieldElement51::from_limbs([\n 894964745143659,\n 106116880092678,\n 1009869382959477,\n 317866368542032,\n 1986983122763912,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1765281781276487,\n 2863247187455184,\n 2589075472439062,\n 1386435905543054,\n 2182338478845320,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1144730936996693,\n 2213315231278180,\n 1489676672185125,\n 665039429138074,\n 1131283313040268,\n ]),\n xy2d: FieldElement51::from_limbs([\n 2004734176670602,\n 1738311085075235,\n 418866995976618,\n 1050782508034394,\n 577747313404652,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2185209688340293,\n 1309276076461009,\n 2514740038571278,\n 3994889904012999,\n 3018098826231021,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1405936970888515,\n 1754621155316654,\n 1211862168554999,\n 1813045702919083,\n 997853418197172,\n ]),\n xy2d: FieldElement51::from_limbs([\n 82037622045021,\n 1646398333621944,\n 613095452763466,\n 1312329542583705,\n 81014679202721,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2389287991277873,\n 403851022333257,\n 1597473361477193,\n 2953351602509212,\n 2135174663049062,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1826548187201150,\n 302299893734126,\n 1475477168615781,\n 842617616347376,\n 1438600873676130,\n ]),\n xy2d: FieldElement51::from_limbs([\n 663049852468609,\n 1649295727846569,\n 1048009692742781,\n 628866177992421,\n 1914360327429204,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1795645928096646,\n 306878154408959,\n 2924901319092394,\n 2801261341654799,\n 1653782432983523,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2077597317438627,\n 212642017882064,\n 674844477518888,\n 875487498687554,\n 2060550250171182,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1420448018683809,\n 1032663994771382,\n 1341927003385267,\n 1340360916546159,\n 1988547473895228,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1082660122598844,\n 2545055705583789,\n 3888919679589007,\n 1670283344995811,\n 3403239134794618,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 90430593339788,\n 1838338032241275,\n 571293238480915,\n 1639938867416883,\n 257378872001111,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1528535658865034,\n 1516636853043960,\n 787000569996728,\n 1464531394704506,\n 1684822625133795,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 811329918113934,\n 2783463529007378,\n 1769095754634835,\n 2970819621866866,\n 881037178164325,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1784566501964517,\n 433890943689325,\n 1186055625589419,\n 1496077405487512,\n 1731807117886548,\n ]),\n xy2d: FieldElement51::from_limbs([\n 424909811816304,\n 1355993963741797,\n 409606483251841,\n 455665350637068,\n 1617009023642808,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2478728492077816,\n 2780289048655501,\n 2328687177473769,\n 4107341333582032,\n 1316147724308250,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1617420574301156,\n 1741273341070467,\n 667135503486508,\n 2100436564640123,\n 1032223920000865,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1753947659404033,\n 247279202390193,\n 1819288880178945,\n 737334285670249,\n 1037873664856104,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1762568490530034,\n 673742465299012,\n 2054571050635888,\n 2040165159255111,\n 3040123733327257,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1627187989987422,\n 1686331580821752,\n 1309895873498183,\n 719718719104086,\n 300063199808722,\n ]),\n xy2d: FieldElement51::from_limbs([\n 238176707016164,\n 1440454788877048,\n 203336037573144,\n 1437789888677072,\n 101522256664211,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1895216760098480,\n 1934324337975022,\n 3677350688973167,\n 2536415965456176,\n 714678003308640,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 508185358728815,\n 1691320535341855,\n 2168887448239256,\n 1035124393070661,\n 1936603999698584,\n ]),\n xy2d: FieldElement51::from_limbs([\n 390562831571647,\n 1390223890708972,\n 1383183990676371,\n 435998174196410,\n 1882086414390730,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3747620842612921,\n 2081794785291195,\n 3284594056262745,\n 2090090346797895,\n 2581692978935809,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 244144781251265,\n 1290834426417077,\n 1888701171101942,\n 1233922456644870,\n 241117402207491,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1266169390045455,\n 1148042013187970,\n 878921907853942,\n 1815738019658093,\n 908920199341621,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2521768507305118,\n 953557056811112,\n 2015863732865770,\n 1358382511861315,\n 2835421647899992,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2239837206240498,\n 330928973149665,\n 422268062913642,\n 1481280019493032,\n 619879520439841,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1360166735366017,\n 1770556573948510,\n 1395061284191031,\n 1814003148068126,\n 522781147076884,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2611794802645686,\n 707234844948070,\n 1314059396506491,\n 2919250341703934,\n 2161831667832785,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 934831784182383,\n 433734253968318,\n 1660867106725771,\n 1968393082772831,\n 873946300968490,\n ]),\n xy2d: FieldElement51::from_limbs([\n 26306827827554,\n 430884999378685,\n 1504310424376419,\n 1761358720837522,\n 542195685418530,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1762131062631725,\n 3123952634417535,\n 3619918390837537,\n 2909990877347294,\n 1411594230004385,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 538272372224622,\n 1425714779586199,\n 588313661410172,\n 1497062084392578,\n 1602174047128512,\n ]),\n xy2d: FieldElement51::from_limbs([\n 907490361939255,\n 1963620338391363,\n 626927432296975,\n 1250748516081414,\n 959901171882527,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1335066153744413,\n 2887804660779657,\n 2653073855954038,\n 2765226981667422,\n 938831784476763,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 296699434737224,\n 2047543711075683,\n 2076451038937139,\n 227783599906901,\n 1602062110967627,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1574834773194203,\n 1384279952062839,\n 393652417255803,\n 2166968242848859,\n 1552890441390820,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1619646774410947,\n 1576090644023562,\n 3035228391320965,\n 1735328519940543,\n 2355324535937066,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1024074573633446,\n 957088456885874,\n 1690425531356997,\n 2102187380180052,\n 1082544623222033,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1871906170635853,\n 1719383891167200,\n 1584032250247862,\n 823764804192117,\n 2244048510084261,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 642147846489775,\n 3334304977145699,\n 305205716788147,\n 2589176626729533,\n 2224680511484174,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1734162377166545,\n 260713621840346,\n 157174591942595,\n 952544272517991,\n 222818702471733,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1213115494182947,\n 286778704335711,\n 2130189536016490,\n 308349182281342,\n 1217623948685491,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3360052266973635,\n 1843486583624091,\n 1561693837124349,\n 1084041964025479,\n 1866270922024009,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 460705465481210,\n 1968151453817859,\n 497005926994844,\n 625618055866751,\n 2176893440866887,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1655800250476757,\n 2036588542300609,\n 666447448675243,\n 1615721995750683,\n 1508669225186765,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2245948203759141,\n 1058306669699396,\n 1452898014240582,\n 3961024141962768,\n 1633235287338608,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 986647273684279,\n 1507266907811370,\n 1260572633649005,\n 2071672342077446,\n 695976026010857,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1312356620823495,\n 1635278548098567,\n 901946076841033,\n 585120475533168,\n 1240667113237384,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2313723935779695,\n 1506054666773895,\n 996040223525031,\n 636592914999692,\n 1497801917020297,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 292042016419794,\n 1158932298133044,\n 2062611870323738,\n 1946058478962569,\n 1749165808126286,\n ]),\n xy2d: FieldElement51::from_limbs([\n 654683942212830,\n 1526897351349087,\n 2006818439922838,\n 2194919327350361,\n 1451960776874416,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3015041017808905,\n 2951823141773809,\n 2584865668253675,\n 2508192032998563,\n 2582137700042019,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1628123495344283,\n 2072923641214546,\n 1647225812023982,\n 855655925244679,\n 1758126430071140,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1615895096489599,\n 275295258643784,\n 937665541219916,\n 1313496726746346,\n 1186468946422626,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1603070202850694,\n 2072127623773242,\n 1692648737212158,\n 2493373404187852,\n 1248948672117105,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 11167836031898,\n 596565174397990,\n 2196351068723859,\n 314744641791907,\n 1102014997250781,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1409047922401191,\n 69960384467966,\n 688103515547600,\n 1309746102488044,\n 150292892873778,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1986083055103168,\n 691715819340300,\n 1361811659746933,\n 3459052030333434,\n 1063594696046061,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1201987338414749,\n 2198784582460616,\n 1203335513981498,\n 489243077045066,\n 2205278143582433,\n ]),\n xy2d: FieldElement51::from_limbs([\n 2034744376624534,\n 2077387101466387,\n 148448542974969,\n 1502697574577258,\n 473186584705655,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 472016956315960,\n 720786972252993,\n 2840633661190043,\n 3150798753357827,\n 2816563335499153,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 253464247569755,\n 168314237403057,\n 511780806170295,\n 1058862316549135,\n 1646858476817137,\n ]),\n xy2d: FieldElement51::from_limbs([\n 595092995922219,\n 1491311840717691,\n 291581784452778,\n 1569186646367854,\n 1031385061400544,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3483137021572755,\n 1526955102024322,\n 2778006642704458,\n 457549634924205,\n 1097420237736736,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1246991699537710,\n 81367319519439,\n 530844036072196,\n 163656863755855,\n 1950742455979290,\n ]),\n xy2d: FieldElement51::from_limbs([\n 191532664076407,\n 539378506082089,\n 1021612562876554,\n 1026603384732632,\n 1773368780410653,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 4144620731387879,\n 590179521333342,\n 4034023318016108,\n 2255745030335426,\n 2699746851701250,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2206599697359952,\n 553895797384417,\n 181689161933786,\n 1153123447919104,\n 778568064152659,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1706307000059211,\n 1885601289314487,\n 889758608505788,\n 550131729999853,\n 1006862664714268,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3210197754285058,\n 2048500453422630,\n 3403309827888207,\n 927154428508963,\n 4199813798872019,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 992058915374933,\n 476120535358775,\n 1973648780784340,\n 2025282643598818,\n 2182318983793230,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1343440812005821,\n 1316045839091795,\n 1884951299078063,\n 1765919609219175,\n 2197567554627988,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3129247779382818,\n 4415026969054274,\n 1900265885969643,\n 1528796215447059,\n 2172730393748688,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1773355092297603,\n 64654329538271,\n 1332124041660957,\n 748492100858001,\n 895500006200535,\n ]),\n xy2d: FieldElement51::from_limbs([\n 2000840647851980,\n 546565968824914,\n 420633283457524,\n 195470736374507,\n 1958689297569520,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 743138980705446,\n 3411117504637167,\n 2591389959690621,\n 2380042066577202,\n 3022267940115114,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 165947002229363,\n 115186103724967,\n 1068573292121517,\n 1842565776920938,\n 1969395681111987,\n ]),\n xy2d: FieldElement51::from_limbs([\n 553322266190633,\n 234265665613185,\n 484544650202821,\n 1238773526575826,\n 2017991917953668,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2581954631514051,\n 1245093644265357,\n 3537016673825374,\n 1834216551713857,\n 923978372152807,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1855378315339552,\n 890045579230758,\n 1764718173975590,\n 197904186055854,\n 1718129022310327,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1278162928734862,\n 1894118254109862,\n 987503995465517,\n 177406744098996,\n 781538103127693,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1996603431230215,\n 1191888797552937,\n 1207440075928499,\n 2765853449051137,\n 2525314961343288,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 808903879370889,\n 990820108751280,\n 1084429472258867,\n 1078562781312589,\n 254514692695625,\n ]),\n xy2d: FieldElement51::from_limbs([\n 615855140068469,\n 586046731175395,\n 693470779212674,\n 1964537100203868,\n 1350330550265229,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3344544372023708,\n 720386671449874,\n 2480841360702110,\n 2036034126860286,\n 2015744690201389,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1337446193390478,\n 1984110761311871,\n 746489405020285,\n 407347127604128,\n 1740475330360596,\n ]),\n xy2d: FieldElement51::from_limbs([\n 140840424783613,\n 1063284623568331,\n 1136446106453878,\n 372042229029799,\n 442607248430694,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2330781679120937,\n 376801425148230,\n 2032603686676107,\n 1488926293635130,\n 1317278311532959,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1290116731380016,\n 2166899563471713,\n 831997001838078,\n 870954980505220,\n 2108537278055823,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1912719171026343,\n 846194720551034,\n 2043988124740726,\n 993234269653961,\n 421229796383281,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2651184584992902,\n 2775702557638963,\n 2539786009779572,\n 2575974880015305,\n 2122619079836732,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1154054290132562,\n 931753998725577,\n 1647742001778052,\n 865765466488226,\n 1083816107290025,\n ]),\n xy2d: FieldElement51::from_limbs([\n 986341121095108,\n 1522330369638573,\n 1990880546211047,\n 501525962272123,\n 198539304862139,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1496414019192687,\n 3991034436173951,\n 3380311659062196,\n 2854747485359158,\n 3346958036643152,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 805612068303425,\n 1891790027761335,\n 1587008567571549,\n 722120737390201,\n 378156757163816,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1588994517921951,\n 977362751042302,\n 1329302387067714,\n 2069348224564088,\n 1586007159625211,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2490539421551682,\n 1985699850375015,\n 2331762317128172,\n 4145097393776678,\n 2521049460190674,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 615817553313996,\n 2245962768078178,\n 482564324326173,\n 2101336843140780,\n 1240914880829407,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1438242482238189,\n 874267817785463,\n 1620810389770625,\n 866155221338671,\n 1040426546798301,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 2403083624110300,\n 2548561409802975,\n 2492699136535911,\n 2358289519456539,\n 3203964320363148,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1913986535403097,\n 1977163223054199,\n 1972905914623196,\n 1650122133472502,\n 1905849310819035,\n ]),\n xy2d: FieldElement51::from_limbs([\n 858174816360838,\n 614595356564037,\n 1099584959044836,\n 636998087084906,\n 1070393269058348,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3666695924830668,\n 3585640662737501,\n 2372994528684236,\n 2628565977288995,\n 3482812783469694,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1994161359147952,\n 2198039369802658,\n 62790022842537,\n 1522306785848169,\n 951223194802833,\n ]),\n xy2d: FieldElement51::from_limbs([\n 852296621440717,\n 431889737774209,\n 370755457746189,\n 437604073958073,\n 627857326892757,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1794955764684156,\n 2586904290013612,\n 1322647643615887,\n 856117964085888,\n 2652432778663153,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 933592377399646,\n 78031722952813,\n 926049890685253,\n 1471649501316246,\n 33789909190376,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1479319468832059,\n 203906207621608,\n 659828362330083,\n 44358398435755,\n 1273573524210803,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1592342143350813,\n 3227219208247713,\n 2345240352078765,\n 2577750109932929,\n 2933512841197243,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2184946892642995,\n 1517382324576002,\n 1557940277419806,\n 2170635134813213,\n 747314658627002,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1823193620577742,\n 1135817878516419,\n 1731253819308581,\n 1031652967267804,\n 2123506616999453,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1346190246005805,\n 2052692552023851,\n 1718128041785940,\n 2491557332978474,\n 3474370880388305,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 424776012994573,\n 281050757243423,\n 626466040846420,\n 990194703866532,\n 38571969885982,\n ]),\n xy2d: FieldElement51::from_limbs([\n 192408346595466,\n 1054889725292349,\n 584097975693004,\n 1447909807397749,\n 2134645004369136,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3169895788615063,\n 3503097743181446,\n 601598510029975,\n 1422812237223371,\n 2121009661378329,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1603348391996783,\n 2066143816131699,\n 1789627290363958,\n 2145705961178118,\n 1985578641438222,\n ]),\n xy2d: FieldElement51::from_limbs([\n 352633958653380,\n 856927627345554,\n 793925083122702,\n 93551575767286,\n 1222010153634215,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1756866499986349,\n 911731956999969,\n 2707505543214075,\n 4006920335263786,\n 822501008147910,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1094036422864347,\n 1897208881572508,\n 1503607738246960,\n 1901060196071406,\n 294068411105729,\n ]),\n xy2d: FieldElement51::from_limbs([\n 587776484399576,\n 1116861711228807,\n 343398777436088,\n 936544065763093,\n 1643746750211060,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 3477749685790410,\n 267997399528836,\n 2953780922004404,\n 3252368924080907,\n 3787792887348381,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 2042368155872443,\n 41662387210459,\n 1676313264498480,\n 1333968523426810,\n 1765708383352310,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1453394896690938,\n 1585795827439909,\n 1469309456804303,\n 1294645324464404,\n 2042954198665899,\n ]),\n },\n AffineNielsPoint {\n y_plus_x: FieldElement51::from_limbs([\n 1810069207599881,\n 1358344669503239,\n 1989371257548167,\n 2316270051121225,\n 3019675451276507,\n ]),\n y_minus_x: FieldElement51::from_limbs([\n 1866114438287676,\n 1663420339568364,\n 1437691317033088,\n 538298302628038,\n 1212711449614363,\n ]),\n xy2d: FieldElement51::from_limbs([\n 1769235035677897,\n 1562012115317882,\n 31277513664750,\n 536198657928416,\n 1976134212537183,\n ]),\n },\n ]);\n\n/// Precomputed NafLookupTable5 for ED25519_BASEPOINT_128_POINT\n/// Contains odd multiples [1B', 3B', 5B', 7B', 9B', 11B', 13B', 15B']\n/// where B' = B * 2^128\n#[cfg(feature = \"precomputed-tables\")]\npub(crate) const AFFINE_ODD_MULTIPLES_OF_BASEPOINT_128: NafLookupTable5<ProjectiveNielsPoint> =\n NafLookupTable5([\n ProjectiveNielsPoint {\n Y_plus_X: FieldElement51::from_limbs([\n 2736169168844485,\n 2938750579674528,\n 1463894987748877,\n 2841718686871730,\n 1985876684518203,\n ]),\n Y_minus_X: FieldElement51::from_limbs([\n 1840579227511262,\n 953261538178031,\n 1834370441150886,\n 1427497321143347,\n 1725682124853989,\n ]),\n Z: FieldElement51::from_limbs([\n 445134475408207,\n 1820906444767788,\n 40212681131971,\n 1448661247201044,\n 965705781338211,\n ]),\n T2d: FieldElement51::from_limbs([\n 773498901840598,\n 1322244500169520,\n 2247887491217152,\n 438555850765425,\n 2003166138168448,\n ]),\n },\n ProjectiveNielsPoint {\n Y_plus_X: FieldElement51::from_limbs([\n 4052979773311382,\n 2779314608743045,\n 2025864608050267,\n 4239124274918649,\n 2047715283211872,\n ]),\n Y_minus_X: FieldElement51::from_limbs([\n 46708290287836,\n 854678853922811,\n 473843612020374,\n 93416542836491,\n 36887865609850,\n ]),\n Z: FieldElement51::from_limbs([\n 1415283798768778,\n 558152993015714,\n 1009343863091429,\n 202683238470016,\n 1437237189863098,\n ]),\n T2d: FieldElement51::from_limbs([\n 798901183048341,\n 2088882963129737,\n 1959766260461794,\n 785983100035341,\n 1898332425873393,\n ]),\n },\n ProjectiveNielsPoint {\n Y_plus_X: FieldElement51::from_limbs([\n 1485884064040933,\n 3544995893699855,\n 3336498043486695,\n 1676518325863799,\n 3924305903599551,\n ]),\n Y_minus_X: FieldElement51::from_limbs([\n 773665168496622,\n 1762929435191211,\n 1242066992989018,\n 976919579682600,\n 1755245776095155,\n ]),\n Z: FieldElement51::from_limbs([\n 364043412623079,\n 1742274550500525,\n 1826931625194320,\n 1613487341804061,\n 1706694369057824,\n ]),\n T2d: FieldElement51::from_limbs([\n 612881112626481,\n 1851646735104528,\n 442596889481956,\n 1350586815509012,\n 139462310881258,\n ]),\n },\n ProjectiveNielsPoint {\n Y_plus_X: FieldElement51::from_limbs([\n 1368397133953923,\n 257295989327092,\n 2151475747930859,\n 4157544636401722,\n 2431868518957253,\n ]),\n Y_minus_X: FieldElement51::from_limbs([\n 1086943799443606,\n 2156492892436322,\n 1304912429279094,\n 2236825713899676,\n 956336603451346,\n ]),\n Z: FieldElement51::from_limbs([\n 1435533833442335,\n 2143693239375794,\n 284803180569965,\n 1526121151845459,\n 1146944306085907,\n ]),\n T2d: FieldElement51::from_limbs([\n 746985711541365,\n 1325962113197906,\n 2066433367845509,\n 352065757310156,\n 1030077083459185,\n ]),\n },\n ProjectiveNielsPoint {\n Y_plus_X: FieldElement51::from_limbs([\n 3242158246905157,\n 1655285217271758,\n 979176760705656,\n 2239696862950768,\n 2581654422853147,\n ]),\n Y_minus_X: FieldElement51::from_limbs([\n 1546547740539545,\n 1712475305386299,\n 1360625165812971,\n 1346151673524691,\n 1382871190753080,\n ]),\n Z: FieldElement51::from_limbs([\n 1301309314400143,\n 754500097438053,\n 1939065018255086,\n 827616229574117,\n 877330897268831,\n ]),\n T2d: FieldElement51::from_limbs([\n 1197188348633815,\n 659807996092455,\n 1711852247689765,\n 558583377269877,\n 99988890374241,\n ]),\n },\n ProjectiveNielsPoint {\n Y_plus_X: FieldElement51::from_limbs([\n 2217993410898728,\n 2786874281837735,\n 277442167258821,\n 2384554073376980,\n 2273131766789461,\n ]),\n Y_minus_X: FieldElement51::from_limbs([\n 109972040445858,\n 950690845410797,\n 17504561734371,\n 523897781536666,\n 750596827295120,\n ]),\n Z: FieldElement51::from_limbs([\n 54891282232941,\n 1760155098862594,\n 331491218058708,\n 1646635945464764,\n 1039579529390631,\n ]),\n T2d: FieldElement51::from_limbs([\n 1742119867631979,\n 1920835943375882,\n 1823982243967588,\n 8235830273089,\n 868879199166457,\n ]),\n },\n ProjectiveNielsPoint {\n Y_plus_X: FieldElement51::from_limbs([\n 3550694783929828,\n 2336047885420235,\n 1565306465484489,\n 3136433856071917,\n 1830368149412737,\n ]),\n Y_minus_X: FieldElement51::from_limbs([\n 1774723137461971,\n 2098439526999162,\n 1474163710169650,\n 779998216757295,\n 806943695140007,\n ]),\n Z: FieldElement51::from_limbs([\n 2031052346670915,\n 25708785675631,\n 1400901524447834,\n 748277746457979,\n 1216527237136724,\n ]),\n T2d: FieldElement51::from_limbs([\n 1889193855982501,\n 1710313274081557,\n 2073215834484008,\n 1044022860024178,\n 773075805930498,\n ]),\n },\n ProjectiveNielsPoint {\n Y_plus_X: FieldElement51::from_limbs([\n 2127006969359196,\n 2117739369058606,\n 3577576537383903,\n 2671841131559038,\n 4063127780311805,\n ]),\n Y_minus_X: FieldElement51::from_limbs([\n 1402473726670403,\n 2118415406774282,\n 135582654390618,\n 892801005112916,\n 2121295222735022,\n ]),\n Z: FieldElement51::from_limbs([\n 1578281559293828,\n 2156602763973009,\n 2209233981554667,\n 288157485447820,\n 729847524631017,\n ]),\n T2d: FieldElement51::from_limbs([\n 1551520416538582,\n 1392706341252901,\n 2044032904069908,\n 1190995531234982,\n 442600800298007,\n ]),\n },\n ]);\n"},{"id":59,"name":{"Local":"/rustc/library/core/src/num/niche_types.rs"},"crate_name":"core","contents":null},{"id":60,"name":{"Local":"/rustc/library/core/src/ops/control_flow.rs"},"crate_name":"core","contents":null}],"item_names":[{"key":{"Type":0},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Ident":["Scalar52",0]}]},{"key":{"Fun":0},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"HashConsedValue":[334,{"Adt":{"id":{"Adt":0},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}}]},"kind":"InherentImplBlock"}}},{"Ident":["add",0]}]},{"key":{"Fun":1},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["sub",0]}]},{"key":{"Fun":2},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["mul",0]}]},{"key":{"Fun":3},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["square",0]}]},{"key":{"Fun":4},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["montgomery_mul",0]}]},{"key":{"Fun":5},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["montgomery_square",0]}]},{"key":{"Fun":6},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["montgomery_reduce",0]}]},{"key":{"Fun":7},"value":[{"Ident":["curve25519",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["montgomery_invert",0]}]},{"key":{"Fun":8},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["as_montgomery",0]}]},{"key":{"Fun":9},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["from_montgomery",0]}]},{"key":{"Fun":10},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["from_bytes_wide",0]}]},{"key":{"Type":1},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["range",0]},{"Ident":["Range",0]}]},{"key":{"Type":2},"value":[{"Ident":["core",0]},{"Ident":["option",0]},{"Ident":["Option",0]}]},{"key":{"Global":0},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["ZERO",0]}]},{"key":{"TraitImpl":0},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["collect",0]},{"Impl":{"Trait":0}}]},{"key":{"Fun":11},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["collect",0]},{"Impl":{"Trait":0}},{"Ident":["into_iter",0]}]},{"key":{"TraitDecl":0},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]}]},{"key":{"TraitImpl":1},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Impl":{"Trait":1}}]},{"key":{"TraitDecl":1},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Ident":["Step",0]}]},{"key":{"TraitImpl":2},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Impl":{"Trait":2}}]},{"key":{"Fun":12},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Impl":{"Trait":1}},{"Ident":["next",0]}]},{"key":{"TraitImpl":3},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Trait":3}}]},{"key":{"Fun":13},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Trait":3}},{"Ident":["index",0]}]},{"key":{"Global":1},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["add",0]},{"Ident":["{promoted_const}",0]}]},{"key":{"TraitImpl":4},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Trait":4}}]},{"key":{"Fun":14},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Trait":4}},{"Ident":["index_mut",0]}]},{"key":{"Type":3},"value":[{"Ident":["subtle",0]},{"Ident":["Choice",0]}]},{"key":{"TraitImpl":5},"value":[{"Ident":["subtle",0]},{"Impl":{"Trait":5}}]},{"key":{"Fun":15},"value":[{"Ident":["subtle",0]},{"Impl":{"Trait":5}},{"Ident":["from",0]}]},{"key":{"Fun":16},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["conditional_add_l",0]}]},{"key":{"Fun":17},"value":[{"Ident":["core",0]},{"Ident":["num",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"HashConsedValue":[454,{"Literal":{"UInt":"U64"}}]},"kind":"InherentImplBlock"}}},{"Ident":["wrapping_sub",0]}]},{"key":{"Fun":18},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["mul_internal",0]}]},{"key":{"Global":2},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["mul",0]},{"Ident":["{promoted_const}",0]}]},{"key":{"Fun":19},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["square_internal",0]}]},{"key":{"Global":3},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["square",0]},{"Ident":["{promoted_const}",0]}]},{"key":{"Fun":20},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["montgomery_reduce",0]},{"Ident":["part1",0]}]},{"key":{"Fun":21},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["montgomery_reduce",0]},{"Ident":["part2",0]}]},{"key":{"Global":4},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["montgomery_reduce",0]},{"Ident":["{promoted_const}",0]}]},{"key":{"Fun":22},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Ident":["m",0]}]},{"key":{"Fun":23},"value":[{"Ident":["curve25519",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["montgomery_invert",0]},{"Ident":["square_multiply",0]}]},{"key":{"Global":5},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["as_montgomery",0]},{"Ident":["{promoted_const}",0]}]},{"key":{"Global":6},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["from_bytes_wide",0]},{"Ident":["{promoted_const}",1]}]},{"key":{"Global":7},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["from_bytes_wide",0]},{"Ident":["{promoted_const}",0]}]},{"key":{"Fun":24},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["ZERO",0]}]},{"key":{"TraitDecl":2},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["collect",0]},{"Ident":["IntoIterator",0]}]},{"key":{"Global":8},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["collect",0]},{"Impl":{"Trait":0}},{"Ident":["{vtable}",0]}]},{"key":{"Type":4},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["{vtable}",0]}]},{"key":{"Fun":25},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["next",0]}]},{"key":{"Fun":26},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["next_chunk",0]}]},{"key":{"Type":5},"value":[{"Ident":["core",0]},{"Ident":["result",0]},{"Ident":["Result",0]}]},{"key":{"Type":6},"value":[{"Ident":["core",0]},{"Ident":["array",0]},{"Ident":["iter",0]},{"Ident":["IntoIter",0]}]},{"key":{"Fun":27},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["size_hint",0]}]},{"key":{"Fun":28},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["count",0]}]},{"key":{"TraitDecl":3},"value":[{"Ident":["core",0]},{"Ident":["marker",0]},{"Ident":["Destruct",0]}]},{"key":{"Fun":29},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["last",0]}]},{"key":{"Fun":30},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["advance_by",0]}]},{"key":{"Type":7},"value":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["nonzero",0]},{"Ident":["NonZero",0]}]},{"key":{"TraitDecl":4},"value":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["nonzero",0]},{"Ident":["ZeroablePrimitive",0]}]},{"key":{"TraitImpl":6},"value":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["nonzero",0]},{"Impl":{"Trait":6}}]},{"key":{"Fun":31},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["nth",0]}]},{"key":{"Fun":32},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["step_by",0]}]},{"key":{"Type":8},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["step_by",0]},{"Ident":["StepBy",0]}]},{"key":{"Fun":33},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["chain",0]}]},{"key":{"Type":9},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["chain",0]},{"Ident":["Chain",0]}]},{"key":{"Fun":34},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["zip",0]}]},{"key":{"Type":10},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["zip",0]},{"Ident":["Zip",0]}]},{"key":{"Fun":35},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["intersperse",0]}]},{"key":{"TraitDecl":5},"value":[{"Ident":["core",0]},{"Ident":["clone",0]},{"Ident":["Clone",0]}]},{"key":{"Type":11},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["intersperse",0]},{"Ident":["Intersperse",0]}]},{"key":{"Fun":36},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["intersperse_with",0]}]},{"key":{"TraitDecl":6},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["function",0]},{"Ident":["FnMut",0]}]},{"key":{"TraitDecl":7},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["function",0]},{"Ident":["FnOnce",0]}]},{"key":{"Type":12},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["intersperse",0]},{"Ident":["IntersperseWith",0]}]},{"key":{"Fun":37},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["map",0]}]},{"key":{"Type":13},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["map",0]},{"Ident":["Map",0]}]},{"key":{"Fun":38},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["for_each",0]}]},{"key":{"Fun":39},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["filter",0]}]},{"key":{"Type":14},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["filter",0]},{"Ident":["Filter",0]}]},{"key":{"Fun":40},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["filter_map",0]}]},{"key":{"Type":15},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["filter_map",0]},{"Ident":["FilterMap",0]}]},{"key":{"Fun":41},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["enumerate",0]}]},{"key":{"Type":16},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["enumerate",0]},{"Ident":["Enumerate",0]}]},{"key":{"Fun":42},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["peekable",0]}]},{"key":{"Type":17},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["peekable",0]},{"Ident":["Peekable",0]}]},{"key":{"Fun":43},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["skip_while",0]}]},{"key":{"Type":18},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["skip_while",0]},{"Ident":["SkipWhile",0]}]},{"key":{"Fun":44},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["take_while",0]}]},{"key":{"Type":19},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["take_while",0]},{"Ident":["TakeWhile",0]}]},{"key":{"Fun":45},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["map_while",0]}]},{"key":{"Type":20},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["map_while",0]},{"Ident":["MapWhile",0]}]},{"key":{"Fun":46},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["skip",0]}]},{"key":{"Type":21},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["skip",0]},{"Ident":["Skip",0]}]},{"key":{"Fun":47},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["take",0]}]},{"key":{"Type":22},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["take",0]},{"Ident":["Take",0]}]},{"key":{"Fun":48},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["scan",0]}]},{"key":{"Type":23},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["scan",0]},{"Ident":["Scan",0]}]},{"key":{"Fun":49},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["flat_map",0]}]},{"key":{"Type":24},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["flatten",0]},{"Ident":["FlatMap",0]}]},{"key":{"Fun":50},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["flatten",0]}]},{"key":{"Type":25},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["flatten",0]},{"Ident":["Flatten",0]}]},{"key":{"Fun":51},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["map_windows",0]}]},{"key":{"Type":26},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["map_windows",0]},{"Ident":["MapWindows",0]}]},{"key":{"Fun":52},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["fuse",0]}]},{"key":{"Type":27},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["fuse",0]},{"Ident":["Fuse",0]}]},{"key":{"Fun":53},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["inspect",0]}]},{"key":{"Type":28},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["inspect",0]},{"Ident":["Inspect",0]}]},{"key":{"Fun":54},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["by_ref",0]}]},{"key":{"Fun":55},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["collect",0]}]},{"key":{"TraitDecl":8},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["collect",0]},{"Ident":["FromIterator",0]}]},{"key":{"Fun":56},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["try_collect",0]}]},{"key":{"TraitDecl":9},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["try_trait",0]},{"Ident":["Try",0]}]},{"key":{"TraitDecl":10},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["try_trait",0]},{"Ident":["Residual",0]}]},{"key":{"Fun":57},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["collect_into",0]}]},{"key":{"TraitDecl":11},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["collect",0]},{"Ident":["Extend",0]}]},{"key":{"Fun":58},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["partition",0]}]},{"key":{"TraitDecl":12},"value":[{"Ident":["core",0]},{"Ident":["default",0]},{"Ident":["Default",0]}]},{"key":{"Fun":59},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["partition_in_place",0]}]},{"key":{"TraitDecl":13},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["double_ended",0]},{"Ident":["DoubleEndedIterator",0]}]},{"key":{"Fun":60},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["is_partitioned",0]}]},{"key":{"Fun":61},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["try_fold",0]}]},{"key":{"Fun":62},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["try_for_each",0]}]},{"key":{"Fun":63},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["fold",0]}]},{"key":{"Fun":64},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["reduce",0]}]},{"key":{"Fun":65},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["try_reduce",0]}]},{"key":{"Fun":66},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["all",0]}]},{"key":{"Fun":67},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["any",0]}]},{"key":{"Fun":68},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["find",0]}]},{"key":{"Fun":69},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["find_map",0]}]},{"key":{"Fun":70},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["try_find",0]}]},{"key":{"Fun":71},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["position",0]}]},{"key":{"Fun":72},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["rposition",0]}]},{"key":{"TraitDecl":14},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["exact_size",0]},{"Ident":["ExactSizeIterator",0]}]},{"key":{"Fun":73},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["max",0]}]},{"key":{"TraitDecl":15},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["Ord",0]}]},{"key":{"Fun":74},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["min",0]}]},{"key":{"Fun":75},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["max_by_key",0]}]},{"key":{"Fun":76},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["max_by",0]}]},{"key":{"Type":29},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["Ordering",0]}]},{"key":{"Fun":77},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["min_by_key",0]}]},{"key":{"Fun":78},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["min_by",0]}]},{"key":{"Fun":79},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["rev",0]}]},{"key":{"Type":30},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["rev",0]},{"Ident":["Rev",0]}]},{"key":{"Fun":80},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["unzip",0]}]},{"key":{"Fun":81},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["copied",0]}]},{"key":{"TraitDecl":16},"value":[{"Ident":["core",0]},{"Ident":["marker",0]},{"Ident":["Copy",0]}]},{"key":{"Type":31},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["copied",0]},{"Ident":["Copied",0]}]},{"key":{"Fun":82},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["cloned",0]}]},{"key":{"Type":32},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["cloned",0]},{"Ident":["Cloned",0]}]},{"key":{"Fun":83},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["cycle",0]}]},{"key":{"Type":33},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["cycle",0]},{"Ident":["Cycle",0]}]},{"key":{"Fun":84},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["array_chunks",0]}]},{"key":{"Type":34},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["array_chunks",0]},{"Ident":["ArrayChunks",0]}]},{"key":{"Fun":85},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["sum",0]}]},{"key":{"TraitDecl":17},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["accum",0]},{"Ident":["Sum",0]}]},{"key":{"Fun":86},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["product",0]}]},{"key":{"TraitDecl":18},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["accum",0]},{"Ident":["Product",0]}]},{"key":{"Fun":87},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["cmp",0]}]},{"key":{"Fun":88},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["cmp_by",0]}]},{"key":{"Fun":89},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["partial_cmp",0]}]},{"key":{"TraitDecl":19},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialOrd",0]}]},{"key":{"Fun":90},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["partial_cmp_by",0]}]},{"key":{"Fun":91},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["eq",0]}]},{"key":{"TraitDecl":20},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialEq",0]}]},{"key":{"Fun":92},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["eq_by",0]}]},{"key":{"Fun":93},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["ne",0]}]},{"key":{"Fun":94},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["lt",0]}]},{"key":{"Fun":95},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["le",0]}]},{"key":{"Fun":96},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["gt",0]}]},{"key":{"Fun":97},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["ge",0]}]},{"key":{"Fun":98},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["is_sorted",0]}]},{"key":{"Fun":99},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["is_sorted_by",0]}]},{"key":{"Fun":100},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["is_sorted_by_key",0]}]},{"key":{"Fun":101},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["__iterator_get_unchecked",0]}]},{"key":{"TraitDecl":21},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["zip",0]},{"Ident":["TrustedRandomAccessNoCoerce",0]}]},{"key":{"Global":9},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Impl":{"Trait":1}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":102},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Impl":{"Trait":1}},{"Ident":["size_hint",0]}]},{"key":{"Fun":103},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Impl":{"Trait":1}},{"Ident":["count",0]}]},{"key":{"Fun":104},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Impl":{"Trait":1}},{"Ident":["last",0]}]},{"key":{"Fun":105},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Impl":{"Trait":1}},{"Ident":["advance_by",0]}]},{"key":{"Fun":106},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Impl":{"Trait":1}},{"Ident":["nth",0]}]},{"key":{"Fun":107},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Impl":{"Trait":1}},{"Ident":["max",0]}]},{"key":{"Fun":108},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Impl":{"Trait":1}},{"Ident":["min",0]}]},{"key":{"Fun":109},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Impl":{"Trait":1}},{"Ident":["is_sorted",0]}]},{"key":{"Fun":110},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Impl":{"Trait":1}},{"Ident":["__iterator_get_unchecked",0]}]},{"key":{"Fun":111},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Ident":["Step",0]},{"Ident":["steps_between",0]}]},{"key":{"Fun":112},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Ident":["Step",0]},{"Ident":["forward_checked",0]}]},{"key":{"Fun":113},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Ident":["Step",0]},{"Ident":["forward",0]}]},{"key":{"Fun":114},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Ident":["Step",0]},{"Ident":["forward_unchecked",0]}]},{"key":{"Fun":115},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Ident":["Step",0]},{"Ident":["backward_checked",0]}]},{"key":{"Fun":116},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Ident":["Step",0]},{"Ident":["backward",0]}]},{"key":{"Fun":117},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Ident":["Step",0]},{"Ident":["backward_unchecked",0]}]},{"key":{"TraitImpl":7},"value":[{"Ident":["core",0]},{"Ident":["clone",0]},{"Ident":["impls",0]},{"Impl":{"Trait":7}}]},{"key":{"TraitImpl":8},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["impls",0]},{"Impl":{"Trait":8}}]},{"key":{"Fun":118},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Impl":{"Trait":2}},{"Ident":["steps_between",0]}]},{"key":{"Fun":119},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Impl":{"Trait":2}},{"Ident":["forward_checked",0]}]},{"key":{"Fun":120},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Impl":{"Trait":2}},{"Ident":["forward",0]}]},{"key":{"Fun":121},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Impl":{"Trait":2}},{"Ident":["forward_unchecked",0]}]},{"key":{"Fun":122},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Impl":{"Trait":2}},{"Ident":["backward_checked",0]}]},{"key":{"Fun":123},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Impl":{"Trait":2}},{"Ident":["backward",0]}]},{"key":{"Fun":124},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Impl":{"Trait":2}},{"Ident":["backward_unchecked",0]}]},{"key":{"TraitDecl":22},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["index",0]},{"Ident":["Index",0]}]},{"key":{"Global":10},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Trait":3}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":125},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["add",0]},{"Ident":["{promoted_const}",0]}]},{"key":{"TraitDecl":23},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["index",0]},{"Ident":["IndexMut",0]}]},{"key":{"Global":11},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Trait":4}},{"Ident":["{vtable}",0]}]},{"key":{"TraitDecl":24},"value":[{"Ident":["core",0]},{"Ident":["convert",0]},{"Ident":["From",0]}]},{"key":{"Global":12},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["conditional_add_l",0]},{"Ident":["{promoted_const}",1]}]},{"key":{"Global":13},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["conditional_add_l",0]},{"Ident":["{promoted_const}",0]}]},{"key":{"TraitImpl":9},"value":[{"Ident":["subtle",0]},{"Impl":{"Trait":9}}]},{"key":{"Fun":126},"value":[{"Ident":["subtle",0]},{"Impl":{"Trait":9}},{"Ident":["conditional_select",0]}]},{"key":{"Fun":127},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["mul",0]},{"Ident":["{promoted_const}",0]}]},{"key":{"Fun":128},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["square",0]},{"Ident":["{promoted_const}",0]}]},{"key":{"Fun":129},"value":[{"Ident":["core",0]},{"Ident":["num",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":454},"kind":"InherentImplBlock"}}},{"Ident":["wrapping_mul",0]}]},{"key":{"Global":14},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["constants",0]},{"Ident":["LFACTOR",0]}]},{"key":{"Global":15},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["montgomery_reduce",0]},{"Ident":["part1",0]},{"Ident":["{promoted_const}",0]}]},{"key":{"Fun":130},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["montgomery_reduce",0]},{"Ident":["{promoted_const}",0]}]},{"key":{"Fun":131},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["as_montgomery",0]},{"Ident":["{promoted_const}",0]}]},{"key":{"Fun":132},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["from_bytes_wide",0]},{"Ident":["{promoted_const}",1]}]},{"key":{"Fun":133},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["from_bytes_wide",0]},{"Ident":["{promoted_const}",0]}]},{"key":{"Type":35},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["collect",0]},{"Ident":["IntoIterator",0]},{"Ident":["{vtable}",0]}]},{"key":{"Fun":134},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["collect",0]},{"Ident":["IntoIterator",0]},{"Ident":["into_iter",0]}]},{"key":{"Fun":135},"value":[{"Ident":["core",0]},{"Ident":["marker",0]},{"Ident":["Destruct",0]},{"Ident":["drop_glue",0]}]},{"key":{"TraitDecl":25},"value":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["nonzero",0]},{"Ident":["private",0]},{"Ident":["Sealed",0]}]},{"key":{"TraitImpl":10},"value":[{"Ident":["core",0]},{"Ident":["marker",0]},{"Impl":{"Trait":10}}]},{"key":{"TraitImpl":11},"value":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["nonzero",0]},{"Impl":{"Trait":11}}]},{"key":{"Type":36},"value":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["niche_types",0]},{"Ident":["NonZeroUsizeInner",0]}]},{"key":{"TraitImpl":12},"value":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["niche_types",0]},{"Impl":{"Trait":12}}]},{"key":{"Fun":136},"value":[{"Ident":["core",0]},{"Ident":["clone",0]},{"Ident":["Clone",0]},{"Ident":["clone",0]}]},{"key":{"Fun":137},"value":[{"Ident":["core",0]},{"Ident":["clone",0]},{"Ident":["Clone",0]},{"Ident":["clone_from",0]}]},{"key":{"Type":37},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["function",0]},{"Ident":["FnMut",0]},{"Ident":["{vtable}",0]}]},{"key":{"Fun":138},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["function",0]},{"Ident":["FnMut",0]},{"Ident":["call_mut",0]}]},{"key":{"Type":38},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["function",0]},{"Ident":["FnOnce",0]},{"Ident":["{vtable}",0]}]},{"key":{"Fun":139},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["function",0]},{"Ident":["FnOnce",0]},{"Ident":["call_once",0]}]},{"key":{"Fun":140},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["collect",0]},{"Ident":["FromIterator",0]},{"Ident":["from_iter",0]}]},{"key":{"TraitDecl":26},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["try_trait",0]},{"Ident":["FromResidual",0]}]},{"key":{"Fun":141},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["try_trait",0]},{"Ident":["Try",0]},{"Ident":["from_output",0]}]},{"key":{"Fun":142},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["try_trait",0]},{"Ident":["Try",0]},{"Ident":["branch",0]}]},{"key":{"Type":39},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["control_flow",0]},{"Ident":["ControlFlow",0]}]},{"key":{"Fun":143},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["collect",0]},{"Ident":["Extend",0]},{"Ident":["extend",0]}]},{"key":{"Fun":144},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["collect",0]},{"Ident":["Extend",0]},{"Ident":["extend_one",0]}]},{"key":{"Fun":145},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["collect",0]},{"Ident":["Extend",0]},{"Ident":["extend_reserve",0]}]},{"key":{"Fun":146},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["collect",0]},{"Ident":["Extend",0]},{"Ident":["extend_one_unchecked",0]}]},{"key":{"Fun":147},"value":[{"Ident":["core",0]},{"Ident":["default",0]},{"Ident":["Default",0]},{"Ident":["default",0]}]},{"key":{"Type":40},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["double_ended",0]},{"Ident":["DoubleEndedIterator",0]},{"Ident":["{vtable}",0]}]},{"key":{"Fun":148},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["double_ended",0]},{"Ident":["DoubleEndedIterator",0]},{"Ident":["next_back",0]}]},{"key":{"Fun":149},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["double_ended",0]},{"Ident":["DoubleEndedIterator",0]},{"Ident":["advance_back_by",0]}]},{"key":{"Fun":150},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["double_ended",0]},{"Ident":["DoubleEndedIterator",0]},{"Ident":["nth_back",0]}]},{"key":{"Fun":151},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["double_ended",0]},{"Ident":["DoubleEndedIterator",0]},{"Ident":["try_rfold",0]}]},{"key":{"Fun":152},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["double_ended",0]},{"Ident":["DoubleEndedIterator",0]},{"Ident":["rfold",0]}]},{"key":{"Fun":153},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["double_ended",0]},{"Ident":["DoubleEndedIterator",0]},{"Ident":["rfind",0]}]},{"key":{"Type":41},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["exact_size",0]},{"Ident":["ExactSizeIterator",0]},{"Ident":["{vtable}",0]}]},{"key":{"Fun":154},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["exact_size",0]},{"Ident":["ExactSizeIterator",0]},{"Ident":["len",0]}]},{"key":{"Fun":155},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["exact_size",0]},{"Ident":["ExactSizeIterator",0]},{"Ident":["is_empty",0]}]},{"key":{"TraitDecl":27},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["Eq",0]}]},{"key":{"Fun":156},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["Ord",0]},{"Ident":["cmp",0]}]},{"key":{"Fun":157},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["Ord",0]},{"Ident":["max",0]}]},{"key":{"Fun":158},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["Ord",0]},{"Ident":["min",0]}]},{"key":{"Fun":159},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["Ord",0]},{"Ident":["clamp",0]}]},{"key":{"Fun":160},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["accum",0]},{"Ident":["Sum",0]},{"Ident":["sum",0]}]},{"key":{"Fun":161},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["accum",0]},{"Ident":["Product",0]},{"Ident":["product",0]}]},{"key":{"Type":42},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialOrd",0]},{"Ident":["{vtable}",0]}]},{"key":{"Fun":162},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialOrd",0]},{"Ident":["partial_cmp",0]}]},{"key":{"Fun":163},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialOrd",0]},{"Ident":["lt",0]}]},{"key":{"Fun":164},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialOrd",0]},{"Ident":["le",0]}]},{"key":{"Fun":165},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialOrd",0]},{"Ident":["gt",0]}]},{"key":{"Fun":166},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialOrd",0]},{"Ident":["ge",0]}]},{"key":{"Fun":167},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialOrd",0]},{"Ident":["__chaining_lt",0]}]},{"key":{"Fun":168},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialOrd",0]},{"Ident":["__chaining_le",0]}]},{"key":{"Fun":169},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialOrd",0]},{"Ident":["__chaining_gt",0]}]},{"key":{"Fun":170},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialOrd",0]},{"Ident":["__chaining_ge",0]}]},{"key":{"Type":43},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialEq",0]},{"Ident":["{vtable}",0]}]},{"key":{"Fun":171},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialEq",0]},{"Ident":["eq",0]}]},{"key":{"Fun":172},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialEq",0]},{"Ident":["ne",0]}]},{"key":{"Fun":173},"value":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["zip",0]},{"Ident":["TrustedRandomAccessNoCoerce",0]},{"Ident":["size",0]}]},{"key":{"Fun":174},"value":[{"Ident":["core",0]},{"Ident":["clone",0]},{"Ident":["impls",0]},{"Impl":{"Trait":7}},{"Ident":["clone",0]}]},{"key":{"Global":16},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["impls",0]},{"Impl":{"Trait":8}},{"Ident":["{vtable}",0]}]},{"key":{"TraitImpl":13},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["impls",0]},{"Impl":{"Trait":13}}]},{"key":{"Fun":175},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["impls",0]},{"Impl":{"Trait":8}},{"Ident":["partial_cmp",0]}]},{"key":{"Fun":176},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["impls",0]},{"Impl":{"Trait":8}},{"Ident":["lt",0]}]},{"key":{"Fun":177},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["impls",0]},{"Impl":{"Trait":8}},{"Ident":["le",0]}]},{"key":{"Fun":178},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["impls",0]},{"Impl":{"Trait":8}},{"Ident":["gt",0]}]},{"key":{"Fun":179},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["impls",0]},{"Impl":{"Trait":8}},{"Ident":["ge",0]}]},{"key":{"Fun":180},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["impls",0]},{"Impl":{"Trait":8}},{"Ident":["__chaining_lt",0]}]},{"key":{"Fun":181},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["impls",0]},{"Impl":{"Trait":8}},{"Ident":["__chaining_le",0]}]},{"key":{"Fun":182},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["impls",0]},{"Impl":{"Trait":8}},{"Ident":["__chaining_gt",0]}]},{"key":{"Fun":183},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["impls",0]},{"Impl":{"Trait":8}},{"Ident":["__chaining_ge",0]}]},{"key":{"Type":44},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["index",0]},{"Ident":["Index",0]},{"Ident":["{vtable}",0]}]},{"key":{"Fun":184},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["index",0]},{"Ident":["Index",0]},{"Ident":["index",0]}]},{"key":{"Global":17},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["constants",0]},{"Ident":["L",0]}]},{"key":{"Type":45},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["index",0]},{"Ident":["IndexMut",0]},{"Ident":["{vtable}",0]}]},{"key":{"Fun":185},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["index",0]},{"Ident":["IndexMut",0]},{"Ident":["index_mut",0]}]},{"key":{"Fun":186},"value":[{"Ident":["core",0]},{"Ident":["convert",0]},{"Ident":["From",0]},{"Ident":["from",0]}]},{"key":{"Fun":187},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["conditional_add_l",0]},{"Ident":["{promoted_const}",1]}]},{"key":{"Fun":188},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["conditional_add_l",0]},{"Ident":["{promoted_const}",0]}]},{"key":{"TraitDecl":28},"value":[{"Ident":["subtle",0]},{"Ident":["ConditionallySelectable",0]}]},{"key":{"TraitImpl":14},"value":[{"Ident":["core",0]},{"Ident":["marker",0]},{"Impl":{"Trait":14}}]},{"key":{"Fun":189},"value":[{"Ident":["subtle",0]},{"Impl":{"Trait":9}},{"Ident":["conditional_assign",0]}]},{"key":{"Fun":190},"value":[{"Ident":["subtle",0]},{"Impl":{"Trait":9}},{"Ident":["conditional_swap",0]}]},{"key":{"Global":18},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["constants",0]},{"Ident":["RR",0]}]},{"key":{"Fun":191},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["constants",0]},{"Ident":["LFACTOR",0]}]},{"key":{"Fun":192},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["montgomery_reduce",0]},{"Ident":["part1",0]},{"Ident":["{promoted_const}",0]}]},{"key":{"Global":19},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["constants",0]},{"Ident":["R",0]}]},{"key":{"Type":46},"value":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["nonzero",0]},{"Ident":["private",0]},{"Ident":["Sealed",0]},{"Ident":["{vtable}",0]}]},{"key":{"Global":20},"value":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["nonzero",0]},{"Impl":{"Trait":11}},{"Ident":["{vtable}",0]}]},{"key":{"TraitImpl":15},"value":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["niche_types",0]},{"Impl":{"Trait":15}}]},{"key":{"Fun":193},"value":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["try_trait",0]},{"Ident":["FromResidual",0]},{"Ident":["from_residual",0]}]},{"key":{"Fun":194},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["Eq",0]},{"Ident":["assert_receiver_is_total_eq",0]}]},{"key":{"Fun":195},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["Eq",0]},{"Ident":["assert_fields_are_eq",0]}]},{"key":{"Global":21},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["impls",0]},{"Impl":{"Trait":13}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":196},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["impls",0]},{"Impl":{"Trait":13}},{"Ident":["eq",0]}]},{"key":{"Fun":197},"value":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["impls",0]},{"Impl":{"Trait":13}},{"Ident":["ne",0]}]},{"key":{"Fun":198},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["constants",0]},{"Ident":["L",0]}]},{"key":{"Fun":199},"value":[{"Ident":["subtle",0]},{"Ident":["ConditionallySelectable",0]},{"Ident":["conditional_select",0]}]},{"key":{"Fun":200},"value":[{"Ident":["subtle",0]},{"Ident":["ConditionallySelectable",0]},{"Ident":["conditional_assign",0]}]},{"key":{"Fun":201},"value":[{"Ident":["subtle",0]},{"Ident":["ConditionallySelectable",0]},{"Ident":["conditional_swap",0]}]},{"key":{"TraitImpl":16},"value":[{"Ident":["core",0]},{"Ident":["clone",0]},{"Ident":["impls",0]},{"Impl":{"Trait":16}}]},{"key":{"Fun":202},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["constants",0]},{"Ident":["RR",0]}]},{"key":{"Fun":203},"value":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["constants",0]},{"Ident":["R",0]}]},{"key":{"Fun":204},"value":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["niche_types",0]},{"Impl":{"Trait":15}},{"Ident":["clone",0]}]},{"key":{"Fun":205},"value":[{"Ident":["core",0]},{"Ident":["clone",0]},{"Ident":["impls",0]},{"Impl":{"Trait":16}},{"Ident":["clone",0]}]}],"assoc_item_names":[{"types":["Item"],"methods":["next","next_chunk","size_hint","count","last","advance_by","nth","step_by","chain","zip","intersperse","intersperse_with","map","for_each","filter","filter_map","enumerate","peekable","skip_while","take_while","map_while","skip","take","scan","flat_map","flatten","map_windows","fuse","inspect","by_ref","collect","try_collect","collect_into","partition","partition_in_place","is_partitioned","try_fold","try_for_each","fold","reduce","try_reduce","all","any","find","find_map","try_find","position","rposition","max","min","max_by_key","max_by","min_by_key","min_by","rev","unzip","copied","cloned","cycle","array_chunks","sum","product","cmp","cmp_by","partial_cmp","partial_cmp_by","eq","eq_by","ne","lt","le","gt","ge","is_sorted","is_sorted_by","is_sorted_by_key","__iterator_get_unchecked"],"consts":[]},{"types":[],"methods":["steps_between","forward_checked","forward","forward_unchecked","backward_checked","backward","backward_unchecked"],"consts":[]},{"types":["Item","IntoIter"],"methods":["into_iter"],"consts":[]},{"types":[],"methods":["drop_glue"],"consts":[]},{"types":["NonZeroInner"],"methods":[],"consts":[]},{"types":[],"methods":["clone","clone_from"],"consts":[]},{"types":[],"methods":["call_mut"],"consts":[]},{"types":["Output"],"methods":["call_once"],"consts":[]},{"types":[],"methods":["from_iter"],"consts":[]},{"types":["Output","Residual","Self_Clause1_TryType"],"methods":["from_output","branch"],"consts":[]},{"types":["TryType"],"methods":[],"consts":[]},{"types":[],"methods":["extend","extend_one","extend_reserve","extend_one_unchecked"],"consts":[]},{"types":[],"methods":["default"],"consts":[]},{"types":[],"methods":["next_back","advance_back_by","nth_back","try_rfold","rfold","rfind"],"consts":[]},{"types":[],"methods":["len","is_empty"],"consts":[]},{"types":[],"methods":["cmp","max","min","clamp"],"consts":[]},{"types":[],"methods":[],"consts":[]},{"types":[],"methods":["sum"],"consts":[]},{"types":[],"methods":["product"],"consts":[]},{"types":[],"methods":["partial_cmp","lt","le","gt","ge","__chaining_lt","__chaining_le","__chaining_gt","__chaining_ge"],"consts":[]},{"types":[],"methods":["eq","ne"],"consts":[]},{"types":[],"methods":["size"],"consts":["MAY_HAVE_SIDE_EFFECT"]},{"types":["Output"],"methods":["index"],"consts":[]},{"types":[],"methods":["index_mut"],"consts":[]},{"types":[],"methods":["from"],"consts":[]},{"types":[],"methods":[],"consts":[]},{"types":[],"methods":["from_residual"],"consts":[]},{"types":[],"methods":["assert_receiver_is_total_eq","assert_fields_are_eq"],"consts":[]},{"types":[],"methods":["conditional_select","conditional_assign","conditional_swap"],"consts":[]}],"short_names":[{"key":{"TraitImpl":0},"value":[{"Ident":["impl_IntoIterator_for_T",0]}]},{"key":{"Fun":11},"value":[{"Impl":{"Trait":0}},{"Ident":["into_iter",0]}]},{"key":{"TraitImpl":1},"value":[{"Ident":["impl_Iterator_for_Range",0]}]},{"key":{"TraitImpl":2},"value":[{"Ident":["impl_Step_for_usize",0]}]},{"key":{"Fun":12},"value":[{"Impl":{"Trait":1}},{"Ident":["next",0]}]},{"key":{"TraitImpl":3},"value":[{"Ident":["impl_Index_usize_for_Scalar52",0]}]},{"key":{"Fun":13},"value":[{"Impl":{"Trait":3}},{"Ident":["index",0]}]},{"key":{"TraitImpl":4},"value":[{"Ident":["impl_IndexMut_usize_for_Scalar52",0]}]},{"key":{"Fun":14},"value":[{"Impl":{"Trait":4}},{"Ident":["index_mut",0]}]},{"key":{"TraitImpl":5},"value":[{"Ident":["impl_From_u8_for_Choice",0]}]},{"key":{"Fun":15},"value":[{"Impl":{"Trait":5}},{"Ident":["from",0]}]},{"key":{"Global":8},"value":[{"Impl":{"Trait":0}},{"Ident":["{vtable}",0]}]},{"key":{"TraitImpl":6},"value":[{"Ident":["impl_ZeroablePrimitive_for_usize",0]}]},{"key":{"Global":9},"value":[{"Impl":{"Trait":1}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":102},"value":[{"Impl":{"Trait":1}},{"Ident":["size_hint",0]}]},{"key":{"Fun":103},"value":[{"Impl":{"Trait":1}},{"Ident":["count",0]}]},{"key":{"Fun":104},"value":[{"Impl":{"Trait":1}},{"Ident":["last",0]}]},{"key":{"Fun":105},"value":[{"Impl":{"Trait":1}},{"Ident":["advance_by",0]}]},{"key":{"Fun":106},"value":[{"Impl":{"Trait":1}},{"Ident":["nth",0]}]},{"key":{"Fun":107},"value":[{"Impl":{"Trait":1}},{"Ident":["max",0]}]},{"key":{"Fun":108},"value":[{"Impl":{"Trait":1}},{"Ident":["min",0]}]},{"key":{"Fun":109},"value":[{"Impl":{"Trait":1}},{"Ident":["is_sorted",0]}]},{"key":{"Fun":110},"value":[{"Impl":{"Trait":1}},{"Ident":["__iterator_get_unchecked",0]}]},{"key":{"TraitImpl":7},"value":[{"Ident":["impl_Clone_for_usize",0]}]},{"key":{"TraitImpl":8},"value":[{"Ident":["impl_PartialOrd_usize_for_usize",0]}]},{"key":{"Fun":118},"value":[{"Impl":{"Trait":2}},{"Ident":["steps_between",0]}]},{"key":{"Fun":119},"value":[{"Impl":{"Trait":2}},{"Ident":["forward_checked",0]}]},{"key":{"Fun":120},"value":[{"Impl":{"Trait":2}},{"Ident":["forward",0]}]},{"key":{"Fun":121},"value":[{"Impl":{"Trait":2}},{"Ident":["forward_unchecked",0]}]},{"key":{"Fun":122},"value":[{"Impl":{"Trait":2}},{"Ident":["backward_checked",0]}]},{"key":{"Fun":123},"value":[{"Impl":{"Trait":2}},{"Ident":["backward",0]}]},{"key":{"Fun":124},"value":[{"Impl":{"Trait":2}},{"Ident":["backward_unchecked",0]}]},{"key":{"Global":10},"value":[{"Impl":{"Trait":3}},{"Ident":["{vtable}",0]}]},{"key":{"Global":11},"value":[{"Impl":{"Trait":4}},{"Ident":["{vtable}",0]}]},{"key":{"TraitImpl":9},"value":[{"Ident":["impl_ConditionallySelectable_for_u64",0]}]},{"key":{"Fun":126},"value":[{"Impl":{"Trait":9}},{"Ident":["conditional_select",0]}]},{"key":{"TraitImpl":10},"value":[{"Ident":["impl_Copy_for_usize",0]}]},{"key":{"TraitImpl":11},"value":[{"Ident":["impl_Sealed_for_usize",0]}]},{"key":{"TraitImpl":12},"value":[{"Ident":["impl_Copy_for_NonZeroUsizeInner",0]}]},{"key":{"Fun":174},"value":[{"Impl":{"Trait":7}},{"Ident":["clone",0]}]},{"key":{"Global":16},"value":[{"Impl":{"Trait":8}},{"Ident":["{vtable}",0]}]},{"key":{"TraitImpl":13},"value":[{"Ident":["impl_PartialEq_usize_for_usize",0]}]},{"key":{"Fun":175},"value":[{"Impl":{"Trait":8}},{"Ident":["partial_cmp",0]}]},{"key":{"Fun":176},"value":[{"Impl":{"Trait":8}},{"Ident":["lt",0]}]},{"key":{"Fun":177},"value":[{"Impl":{"Trait":8}},{"Ident":["le",0]}]},{"key":{"Fun":178},"value":[{"Impl":{"Trait":8}},{"Ident":["gt",0]}]},{"key":{"Fun":179},"value":[{"Impl":{"Trait":8}},{"Ident":["ge",0]}]},{"key":{"Fun":180},"value":[{"Impl":{"Trait":8}},{"Ident":["__chaining_lt",0]}]},{"key":{"Fun":181},"value":[{"Impl":{"Trait":8}},{"Ident":["__chaining_le",0]}]},{"key":{"Fun":182},"value":[{"Impl":{"Trait":8}},{"Ident":["__chaining_gt",0]}]},{"key":{"Fun":183},"value":[{"Impl":{"Trait":8}},{"Ident":["__chaining_ge",0]}]},{"key":{"TraitImpl":14},"value":[{"Ident":["impl_Copy_for_u64",0]}]},{"key":{"Fun":189},"value":[{"Impl":{"Trait":9}},{"Ident":["conditional_assign",0]}]},{"key":{"Fun":190},"value":[{"Impl":{"Trait":9}},{"Ident":["conditional_swap",0]}]},{"key":{"Global":20},"value":[{"Impl":{"Trait":11}},{"Ident":["{vtable}",0]}]},{"key":{"TraitImpl":15},"value":[{"Ident":["impl_Clone_for_NonZeroUsizeInner",0]}]},{"key":{"Global":21},"value":[{"Impl":{"Trait":13}},{"Ident":["{vtable}",0]}]},{"key":{"Fun":196},"value":[{"Impl":{"Trait":13}},{"Ident":["eq",0]}]},{"key":{"Fun":197},"value":[{"Impl":{"Trait":13}},{"Ident":["ne",0]}]},{"key":{"TraitImpl":16},"value":[{"Ident":["impl_Clone_for_u64",0]}]},{"key":{"Fun":204},"value":[{"Impl":{"Trait":15}},{"Ident":["clone",0]}]},{"key":{"Fun":205},"value":[{"Impl":{"Trait":16}},{"Ident":["clone",0]}]},{"key":{"Fun":38},"value":[{"Ident":["for_each",0]}]},{"key":{"TraitDecl":20},"value":[{"Ident":["PartialEq",0]}]},{"key":{"Global":17},"value":[{"Ident":["L",0]}]},{"key":{"Fun":198},"value":[{"Ident":["L",0]}]},{"key":{"Type":10},"value":[{"Ident":["Zip",0]}]},{"key":{"Fun":36},"value":[{"Ident":["intersperse_with",0]}]},{"key":{"TraitDecl":26},"value":[{"Ident":["FromResidual",0]}]},{"key":{"Type":8},"value":[{"Ident":["StepBy",0]}]},{"key":{"TraitDecl":18},"value":[{"Ident":["Product",0]}]},{"key":{"Fun":137},"value":[{"Ident":["clone_from",0]}]},{"key":{"Fun":69},"value":[{"Ident":["find_map",0]}]},{"key":{"Fun":16},"value":[{"Ident":["conditional_add_l",0]}]},{"key":{"Fun":42},"value":[{"Ident":["peekable",0]}]},{"key":{"Fun":33},"value":[{"Ident":["chain",0]}]},{"key":{"Fun":61},"value":[{"Ident":["try_fold",0]}]},{"key":{"Fun":22},"value":[{"Ident":["m",0]}]},{"key":{"TraitDecl":17},"value":[{"Ident":["Sum",0]}]},{"key":{"TraitDecl":24},"value":[{"Ident":["From",0]}]},{"key":{"Fun":142},"value":[{"Ident":["branch",0]}]},{"key":{"Fun":145},"value":[{"Ident":["extend_reserve",0]}]},{"key":{"Fun":0},"value":[{"Ident":["add",0]}]},{"key":{"Fun":150},"value":[{"Ident":["nth_back",0]}]},{"key":{"Fun":55},"value":[{"Ident":["collect",0]}]},{"key":{"Fun":154},"value":[{"Ident":["len",0]}]},{"key":{"Global":18},"value":[{"Ident":["RR",0]}]},{"key":{"Fun":202},"value":[{"Ident":["RR",0]}]},{"key":{"Fun":40},"value":[{"Ident":["filter_map",0]}]},{"key":{"Fun":138},"value":[{"Ident":["call_mut",0]}]},{"key":{"Fun":151},"value":[{"Ident":["try_rfold",0]}]},{"key":{"Fun":64},"value":[{"Ident":["reduce",0]}]},{"key":{"Fun":139},"value":[{"Ident":["call_once",0]}]},{"key":{"Fun":140},"value":[{"Ident":["from_iter",0]}]},{"key":{"Type":33},"value":[{"Ident":["Cycle",0]}]},{"key":{"TraitDecl":15},"value":[{"Ident":["Ord",0]}]},{"key":{"Fun":67},"value":[{"Ident":["any",0]}]},{"key":{"Fun":68},"value":[{"Ident":["find",0]}]},{"key":{"Fun":47},"value":[{"Ident":["take",0]}]},{"key":{"Type":24},"value":[{"Ident":["FlatMap",0]}]},{"key":{"Type":18},"value":[{"Ident":["SkipWhile",0]}]},{"key":{"Type":22},"value":[{"Ident":["Take",0]}]},{"key":{"TraitDecl":28},"value":[{"Ident":["ConditionallySelectable",0]}]},{"key":{"Fun":57},"value":[{"Ident":["collect_into",0]}]},{"key":{"Global":14},"value":[{"Ident":["LFACTOR",0]}]},{"key":{"Fun":191},"value":[{"Ident":["LFACTOR",0]}]},{"key":{"Type":3},"value":[{"Ident":["Choice",0]}]},{"key":{"TraitDecl":2},"value":[{"Ident":["IntoIterator",0]}]},{"key":{"Fun":54},"value":[{"Ident":["by_ref",0]}]},{"key":{"TraitDecl":25},"value":[{"Ident":["Sealed",0]}]},{"key":{"TraitDecl":10},"value":[{"Ident":["Residual",0]}]},{"key":{"Fun":32},"value":[{"Ident":["step_by",0]}]},{"key":{"Fun":53},"value":[{"Ident":["inspect",0]}]},{"key":{"TraitDecl":16},"value":[{"Ident":["Copy",0]}]},{"key":{"Type":16},"value":[{"Ident":["Enumerate",0]}]},{"key":{"Fun":8},"value":[{"Ident":["as_montgomery",0]}]},{"key":{"Type":21},"value":[{"Ident":["Skip",0]}]},{"key":{"Type":36},"value":[{"Ident":["NonZeroUsizeInner",0]}]},{"key":{"Fun":149},"value":[{"Ident":["advance_back_by",0]}]},{"key":{"Fun":71},"value":[{"Ident":["position",0]}]},{"key":{"TraitDecl":3},"value":[{"Ident":["Destruct",0]}]},{"key":{"Type":30},"value":[{"Ident":["Rev",0]}]},{"key":{"Fun":155},"value":[{"Ident":["is_empty",0]}]},{"key":{"Fun":52},"value":[{"Ident":["fuse",0]}]},{"key":{"Fun":92},"value":[{"Ident":["eq_by",0]}]},{"key":{"Fun":135},"value":[{"Ident":["drop_glue",0]}]},{"key":{"Fun":129},"value":[{"Ident":["wrapping_mul",0]}]},{"key":{"Fun":78},"value":[{"Ident":["min_by",0]}]},{"key":{"TraitDecl":8},"value":[{"Ident":["FromIterator",0]}]},{"key":{"Fun":44},"value":[{"Ident":["take_while",0]}]},{"key":{"TraitDecl":4},"value":[{"Ident":["ZeroablePrimitive",0]}]},{"key":{"Fun":58},"value":[{"Ident":["partition",0]}]},{"key":{"Type":0},"value":[{"Ident":["Scalar52",0]}]},{"key":{"Fun":17},"value":[{"Ident":["wrapping_sub",0]}]},{"key":{"Type":14},"value":[{"Ident":["Filter",0]}]},{"key":{"Fun":81},"value":[{"Ident":["copied",0]}]},{"key":{"Fun":56},"value":[{"Ident":["try_collect",0]}]},{"key":{"Fun":20},"value":[{"Ident":["part1",0]}]},{"key":{"Type":5},"value":[{"Ident":["Result",0]}]},{"key":{"Fun":46},"value":[{"Ident":["skip",0]}]},{"key":{"Type":1},"value":[{"Ident":["Range",0]}]},{"key":{"Type":20},"value":[{"Ident":["MapWhile",0]}]},{"key":{"Fun":50},"value":[{"Ident":["flatten",0]}]},{"key":{"Type":25},"value":[{"Ident":["Flatten",0]}]},{"key":{"TraitDecl":13},"value":[{"Ident":["DoubleEndedIterator",0]}]},{"key":{"Type":17},"value":[{"Ident":["Peekable",0]}]},{"key":{"Type":26},"value":[{"Ident":["MapWindows",0]}]},{"key":{"Type":31},"value":[{"Ident":["Copied",0]}]},{"key":{"Type":34},"value":[{"Ident":["ArrayChunks",0]}]},{"key":{"Fun":72},"value":[{"Ident":["rposition",0]}]},{"key":{"Fun":70},"value":[{"Ident":["try_find",0]}]},{"key":{"Fun":51},"value":[{"Ident":["map_windows",0]}]},{"key":{"Fun":77},"value":[{"Ident":["min_by_key",0]}]},{"key":{"Fun":43},"value":[{"Ident":["skip_while",0]}]},{"key":{"Type":2},"value":[{"Ident":["Option",0]}]},{"key":{"Fun":34},"value":[{"Ident":["zip",0]}]},{"key":{"Fun":2},"value":[{"Ident":["mul",0]}]},{"key":{"Fun":3},"value":[{"Ident":["square",0]}]},{"key":{"Fun":83},"value":[{"Ident":["cycle",0]}]},{"key":{"Fun":82},"value":[{"Ident":["cloned",0]}]},{"key":{"Fun":84},"value":[{"Ident":["array_chunks",0]}]},{"key":{"Fun":26},"value":[{"Ident":["next_chunk",0]}]},{"key":{"Fun":193},"value":[{"Ident":["from_residual",0]}]},{"key":{"TraitDecl":7},"value":[{"Ident":["FnOnce",0]}]},{"key":{"Type":19},"value":[{"Ident":["TakeWhile",0]}]},{"key":{"Fun":35},"value":[{"Ident":["intersperse",0]}]},{"key":{"Type":29},"value":[{"Ident":["Ordering",0]}]},{"key":{"Fun":66},"value":[{"Ident":["all",0]}]},{"key":{"TraitDecl":22},"value":[{"Ident":["Index",0]}]},{"key":{"TraitDecl":14},"value":[{"Ident":["ExactSizeIterator",0]}]},{"key":{"TraitDecl":1},"value":[{"Ident":["Step",0]}]},{"key":{"TraitDecl":27},"value":[{"Ident":["Eq",0]}]},{"key":{"Fun":88},"value":[{"Ident":["cmp_by",0]}]},{"key":{"Fun":21},"value":[{"Ident":["part2",0]}]},{"key":{"Fun":63},"value":[{"Ident":["fold",0]}]},{"key":{"Fun":141},"value":[{"Ident":["from_output",0]}]},{"key":{"Fun":152},"value":[{"Ident":["rfold",0]}]},{"key":{"Fun":62},"value":[{"Ident":["try_for_each",0]}]},{"key":{"Fun":99},"value":[{"Ident":["is_sorted_by",0]}]},{"key":{"Fun":143},"value":[{"Ident":["extend",0]}]},{"key":{"Fun":39},"value":[{"Ident":["filter",0]}]},{"key":{"Fun":6},"value":[{"Ident":["montgomery_reduce",0]}]},{"key":{"Type":7},"value":[{"Ident":["NonZero",0]}]},{"key":{"Fun":49},"value":[{"Ident":["flat_map",0]}]},{"key":{"TraitDecl":9},"value":[{"Ident":["Try",0]}]},{"key":{"Fun":146},"value":[{"Ident":["extend_one_unchecked",0]}]},{"key":{"Fun":90},"value":[{"Ident":["partial_cmp_by",0]}]},{"key":{"TraitDecl":11},"value":[{"Ident":["Extend",0]}]},{"key":{"Type":9},"value":[{"Ident":["Chain",0]}]},{"key":{"TraitDecl":5},"value":[{"Ident":["Clone",0]}]},{"key":{"TraitDecl":23},"value":[{"Ident":["IndexMut",0]}]},{"key":{"Fun":65},"value":[{"Ident":["try_reduce",0]}]},{"key":{"Fun":23},"value":[{"Ident":["square_multiply",0]}]},{"key":{"Fun":60},"value":[{"Ident":["is_partitioned",0]}]},{"key":{"Fun":75},"value":[{"Ident":["max_by_key",0]}]},{"key":{"Fun":79},"value":[{"Ident":["rev",0]}]},{"key":{"Type":6},"value":[{"Ident":["IntoIter",0]}]},{"key":{"Global":0},"value":[{"Ident":["ZERO",0]}]},{"key":{"Fun":24},"value":[{"Ident":["ZERO",0]}]},{"key":{"Fun":80},"value":[{"Ident":["unzip",0]}]},{"key":{"Fun":159},"value":[{"Ident":["clamp",0]}]},{"key":{"Global":19},"value":[{"Ident":["R",0]}]},{"key":{"Fun":203},"value":[{"Ident":["R",0]}]},{"key":{"Fun":147},"value":[{"Ident":["default",0]}]},{"key":{"Fun":18},"value":[{"Ident":["mul_internal",0]}]},{"key":{"Fun":4},"value":[{"Ident":["montgomery_mul",0]}]},{"key":{"Fun":41},"value":[{"Ident":["enumerate",0]}]},{"key":{"Type":12},"value":[{"Ident":["IntersperseWith",0]}]},{"key":{"Fun":7},"value":[{"Ident":["montgomery_invert",0]}]},{"key":{"TraitDecl":0},"value":[{"Ident":["Iterator",0]}]},{"key":{"Type":15},"value":[{"Ident":["FilterMap",0]}]},{"key":{"Fun":37},"value":[{"Ident":["map",0]}]},{"key":{"Fun":48},"value":[{"Ident":["scan",0]}]},{"key":{"Type":23},"value":[{"Ident":["Scan",0]}]},{"key":{"Type":32},"value":[{"Ident":["Cloned",0]}]},{"key":{"Fun":19},"value":[{"Ident":["square_internal",0]}]},{"key":{"TraitDecl":21},"value":[{"Ident":["TrustedRandomAccessNoCoerce",0]}]},{"key":{"Fun":5},"value":[{"Ident":["montgomery_square",0]}]},{"key":{"Type":39},"value":[{"Ident":["ControlFlow",0]}]},{"key":{"Fun":195},"value":[{"Ident":["assert_fields_are_eq",0]}]},{"key":{"Fun":76},"value":[{"Ident":["max_by",0]}]},{"key":{"Fun":144},"value":[{"Ident":["extend_one",0]}]},{"key":{"TraitDecl":19},"value":[{"Ident":["PartialOrd",0]}]},{"key":{"Fun":10},"value":[{"Ident":["from_bytes_wide",0]}]},{"key":{"Fun":153},"value":[{"Ident":["rfind",0]}]},{"key":{"Type":11},"value":[{"Ident":["Intersperse",0]}]},{"key":{"Type":13},"value":[{"Ident":["Map",0]}]},{"key":{"TraitDecl":12},"value":[{"Ident":["Default",0]}]},{"key":{"Fun":59},"value":[{"Ident":["partition_in_place",0]}]},{"key":{"Fun":1},"value":[{"Ident":["sub",0]}]},{"key":{"Fun":45},"value":[{"Ident":["map_while",0]}]},{"key":{"Fun":9},"value":[{"Ident":["from_montgomery",0]}]},{"key":{"TraitDecl":6},"value":[{"Ident":["FnMut",0]}]},{"key":{"Fun":100},"value":[{"Ident":["is_sorted_by_key",0]}]},{"key":{"Type":28},"value":[{"Ident":["Inspect",0]}]},{"key":{"Fun":194},"value":[{"Ident":["assert_receiver_is_total_eq",0]}]},{"key":{"Fun":173},"value":[{"Ident":["size",0]}]},{"key":{"Fun":148},"value":[{"Ident":["next_back",0]}]},{"key":{"Type":27},"value":[{"Ident":["Fuse",0]}]}],"type_decls":[{"def_id":0,"item_meta":{"name":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Ident":["Scalar52",0]}],"span":{"data":{"file_id":0,"beg":{"line":26,"col":0},"end":{"line":26,"col":34}},"generated_from_span":null},"source_text":"pub struct Scalar52(pub [u64; 5]);","attr_info":{"attributes":[{"DocComment":" The `Scalar52` struct represents an element in"},{"DocComment":" \\\\(\\mathbb Z / \\ell \\mathbb Z\\\\) as 5 \\\\(52\\\\)-bit limbs."}],"inline":null,"rename":null,"public":true},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":{"Struct":[{"span":{"data":{"file_id":0,"beg":{"line":26,"col":20},"end":{"line":26,"col":32}},"generated_from_span":null},"attr_info":{"attributes":[],"inline":null,"rename":null,"public":true},"name":null,"ty":{"HashConsedValue":[456,{"Array":[{"Deduplicated":454},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","5"]}}},"ty":{"HashConsedValue":[455,{"Literal":{"UInt":"Usize"}}]}}]}]}}]},"layout":[{"key":"x86_64-unknown-linux-gnu","value":{"size":40,"align":8,"discriminator":{"Known":0},"uninhabited":false,"variant_layouts":[{"field_offsets":[0],"uninhabited":false,"tagger":[]}],"repr":{"repr_algo":"Rust","align_modif":null,"transparent":false,"explicit_discr_type":false}}}],"ptr_metadata":"None"},{"def_id":1,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["range",0]},{"Ident":["Range",0]}],"span":{"data":{"file_id":6,"beg":{"line":82,"col":0},"end":{"line":82,"col":21}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" A (half-open) range bounded inclusively below and exclusively above"},{"DocComment":" (`start..end`)."},{"DocComment":""},{"DocComment":" The range `start..end` contains all values with `start <= x < end`."},{"DocComment":" It is empty if `start >= end`."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" The `start..end` syntax is a `Range`:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" assert_eq!((3..5), std::ops::Range { start: 3, end: 5 });"},{"DocComment":" assert_eq!(3 + 4 + 5, (3..6).sum());"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let arr = [0, 1, 2, 3, 4];"},{"DocComment":" assert_eq!(arr[ .. ], [0, 1, 2, 3, 4]);"},{"DocComment":" assert_eq!(arr[ .. 3], [0, 1, 2 ]);"},{"DocComment":" assert_eq!(arr[ ..=3], [0, 1, 2, 3 ]);"},{"DocComment":" assert_eq!(arr[1.. ], [ 1, 2, 3, 4]);"},{"DocComment":" assert_eq!(arr[1.. 3], [ 1, 2 ]); // This is a `Range`"},{"DocComment":" assert_eq!(arr[1..=3], [ 1, 2, 3 ]);"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"Range"},"generics":{"regions":[],"types":[{"index":0,"name":"Idx"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":{"Struct":[{"span":{"data":{"file_id":6,"beg":{"line":85,"col":4},"end":{"line":85,"col":18}},"generated_from_span":null},"attr_info":{"attributes":[{"DocComment":" The lower bound of the range (inclusive)."}],"inline":null,"rename":null,"public":true},"name":"start","ty":{"HashConsedValue":[5334,{"TypeVar":{"Free":0}}]}},{"span":{"data":{"file_id":6,"beg":{"line":88,"col":4},"end":{"line":88,"col":16}},"generated_from_span":null},"attr_info":{"attributes":[{"DocComment":" The upper bound of the range (exclusive)."}],"inline":null,"rename":null,"public":true},"name":"end","ty":{"Deduplicated":5334}}]},"layout":[],"ptr_metadata":"None"},{"def_id":2,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["option",0]},{"Ident":["Option",0]}],"span":{"data":{"file_id":9,"beg":{"line":597,"col":0},"end":{"line":597,"col":18}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" The `Option` type. See [the module level documentation](self) for more."}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"Option"},"generics":{"regions":[],"types":[{"index":0,"name":"T"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":{"Enum":[{"id":0,"span":{"data":{"file_id":9,"beg":{"line":601,"col":4},"end":{"line":601,"col":8}},"generated_from_span":null},"attr_info":{"attributes":[{"DocComment":" No value."}],"inline":null,"rename":null,"public":true},"name":"None","fields":[],"discriminant":{"Scalar":{"Signed":["Isize","0"]}}},{"id":1,"span":{"data":{"file_id":9,"beg":{"line":605,"col":4},"end":{"line":605,"col":8}},"generated_from_span":null},"attr_info":{"attributes":[{"DocComment":" Some value of type `T`."}],"inline":null,"rename":null,"public":true},"name":"Some","fields":[{"span":{"data":{"file_id":9,"beg":{"line":605,"col":55},"end":{"line":605,"col":56}},"generated_from_span":null},"attr_info":{"attributes":[],"inline":null,"rename":null,"public":true},"name":null,"ty":{"Deduplicated":5334}}],"discriminant":{"Scalar":{"Signed":["Isize","1"]}}}]},"layout":[],"ptr_metadata":"None"},{"def_id":3,"item_meta":{"name":[{"Ident":["subtle",0]},{"Ident":["Choice",0]}],"span":{"data":{"file_id":15,"beg":{"line":120,"col":0},"end":{"line":120,"col":17}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" The `Choice` struct represents a choice for use in conditional assignment."},{"DocComment":""},{"DocComment":" It is a wrapper around a `u8`, which should have the value either `1` (true)"},{"DocComment":" or `0` (false)."},{"DocComment":""},{"DocComment":" The conversion from `u8` to `Choice` passes the value through an optimization"},{"DocComment":" barrier, as a best-effort attempt to prevent the compiler from inferring that"},{"DocComment":" the `Choice` value is a boolean. This strategy is based on Tim Maclean's"},{"DocComment":" [work on `rust-timing-shield`][rust-timing-shield], which attempts to provide"},{"DocComment":" a more comprehensive approach for preventing software side-channels in Rust"},{"DocComment":" code."},{"DocComment":""},{"DocComment":" The `Choice` struct implements operators for AND, OR, XOR, and NOT, to allow"},{"DocComment":" combining `Choice` values. These operations do not short-circuit."},{"DocComment":""},{"DocComment":" [rust-timing-shield]:"},{"DocComment":" https://www.chosenplaintext.ca/open-source/rust-timing-shield/security"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":"Opaque","layout":[{"key":"x86_64-unknown-linux-gnu","value":{"size":1,"align":1,"discriminator":{"Known":0},"uninhabited":false,"variant_layouts":[{"field_offsets":[0],"uninhabited":false,"tagger":[]}],"repr":{"repr_algo":"Rust","align_modif":null,"transparent":false,"explicit_discr_type":false}}}],"ptr_metadata":"None"},null,{"def_id":5,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["result",0]},{"Ident":["Result",0]}],"span":{"data":{"file_id":18,"beg":{"line":557,"col":0},"end":{"line":557,"col":21}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" `Result` is a type that represents either success ([`Ok`]) or failure ([`Err`])."},{"DocComment":""},{"DocComment":" See the [module documentation](self) for details."}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"Result"},"generics":{"regions":[],"types":[{"index":0,"name":"T"},{"index":1,"name":"E"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":{"Enum":[{"id":0,"span":{"data":{"file_id":18,"beg":{"line":561,"col":4},"end":{"line":561,"col":6}},"generated_from_span":null},"attr_info":{"attributes":[{"DocComment":" Contains the success value"}],"inline":null,"rename":null,"public":true},"name":"Ok","fields":[{"span":{"data":{"file_id":18,"beg":{"line":561,"col":53},"end":{"line":561,"col":54}},"generated_from_span":null},"attr_info":{"attributes":[],"inline":null,"rename":null,"public":true},"name":null,"ty":{"Deduplicated":5334}}],"discriminant":{"Scalar":{"Signed":["Isize","0"]}}},{"id":1,"span":{"data":{"file_id":18,"beg":{"line":566,"col":4},"end":{"line":566,"col":7}},"generated_from_span":null},"attr_info":{"attributes":[{"DocComment":" Contains the error value"}],"inline":null,"rename":null,"public":true},"name":"Err","fields":[{"span":{"data":{"file_id":18,"beg":{"line":566,"col":54},"end":{"line":566,"col":55}},"generated_from_span":null},"attr_info":{"attributes":[],"inline":null,"rename":null,"public":true},"name":null,"ty":{"HashConsedValue":[5335,{"TypeVar":{"Free":1}}]}}],"discriminant":{"Scalar":{"Signed":["Isize","1"]}}}]},"layout":[],"ptr_metadata":"None"},{"def_id":6,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["array",0]},{"Ident":["iter",0]},{"Ident":["IntoIter",0]}],"span":{"data":{"file_id":19,"beg":{"line":20,"col":0},"end":{"line":20,"col":38}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" A by-value [array] iterator."}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"ArrayIntoIter"},"generics":{"regions":[],"types":[{"index":0,"name":"T"}],"const_generics":[{"index":0,"name":"N","ty":{"Deduplicated":455}}],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":"Opaque","layout":[],"ptr_metadata":"None"},{"def_id":7,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["nonzero",0]},{"Ident":["NonZero",0]}],"span":{"data":{"file_id":22,"beg":{"line":128,"col":0},"end":{"line":128,"col":40}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" A value that is known not to equal zero."},{"DocComment":""},{"DocComment":" This enables some memory layout optimization."},{"DocComment":" For example, `Option<NonZero<u32>>` is the same size as `u32`:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use core::{num::NonZero};"},{"DocComment":""},{"DocComment":" assert_eq!(size_of::<Option<NonZero<u32>>>(), size_of::<u32>());"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" # Layout"},{"DocComment":""},{"DocComment":" `NonZero<T>` is guaranteed to have the same layout and bit validity as `T`"},{"DocComment":" with the exception that the all-zero bit pattern is invalid."},{"DocComment":" `Option<NonZero<T>>` is guaranteed to be compatible with `T`, including in"},{"DocComment":" FFI."},{"DocComment":""},{"DocComment":" Thanks to the [null pointer optimization], `NonZero<T>` and"},{"DocComment":" `Option<NonZero<T>>` are guaranteed to have the same size and alignment:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::num::NonZero;"},{"DocComment":""},{"DocComment":" assert_eq!(size_of::<NonZero<u32>>(), size_of::<Option<NonZero<u32>>>());"},{"DocComment":" assert_eq!(align_of::<NonZero<u32>>(), align_of::<Option<NonZero<u32>>>());"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" [null pointer optimization]: crate::option#representation"},{"DocComment":""},{"DocComment":" # Note on generic usage"},{"DocComment":""},{"DocComment":" `NonZero<T>` can only be used with some standard library primitive types"},{"DocComment":" (such as `u8`, `i32`, and etc.). The type parameter `T` must implement the"},{"DocComment":" internal trait [`ZeroablePrimitive`], which is currently permanently unstable"},{"DocComment":" and cannot be implemented by users. Therefore, you cannot use `NonZero<T>`"},{"DocComment":" with your own types, nor can you implement traits for all `NonZero<T>`,"},{"DocComment":" only for concrete types."}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"NonZero"},"generics":{"regions":[],"types":[{"index":0,"name":"T"},{"index":1,"name":"Clause0_NonZeroInner"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":"Opaque","layout":[],"ptr_metadata":"None"},{"def_id":8,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["step_by",0]},{"Ident":["StepBy",0]}],"span":{"data":{"file_id":23,"beg":{"line":16,"col":0},"end":{"line":16,"col":20}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" An iterator for stepping iterators by a custom amount."},{"DocComment":""},{"DocComment":" This `struct` is created by the [`step_by`] method on [`Iterator`]. See"},{"DocComment":" its documentation for more."},{"DocComment":""},{"DocComment":" [`step_by`]: Iterator::step_by"},{"DocComment":" [`Iterator`]: trait.Iterator.html"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"I"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":"Opaque","layout":[],"ptr_metadata":"None"},{"def_id":9,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["chain",0]},{"Ident":["Chain",0]}],"span":{"data":{"file_id":25,"beg":{"line":23,"col":0},"end":{"line":23,"col":22}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" An iterator that links two iterators together, in a chain."},{"DocComment":""},{"DocComment":" This `struct` is created by [`chain`] or [`Iterator::chain`]. See their"},{"DocComment":" documentation for more."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::iter::Chain;"},{"DocComment":" use std::slice::Iter;"},{"DocComment":""},{"DocComment":" let a1 = [1, 2, 3];"},{"DocComment":" let a2 = [4, 5, 6];"},{"DocComment":" let iter: Chain<Iter<'_, _>, Iter<'_, _>> = a1.iter().chain(a2.iter());"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"A"},{"index":1,"name":"B"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":"Opaque","layout":[],"ptr_metadata":"None"},{"def_id":10,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["zip",0]},{"Ident":["Zip",0]}],"span":{"data":{"file_id":26,"beg":{"line":13,"col":0},"end":{"line":13,"col":20}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" An iterator that iterates two other iterators simultaneously."},{"DocComment":""},{"DocComment":" This `struct` is created by [`zip`] or [`Iterator::zip`]."},{"DocComment":" See their documentation for more."}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"A"},{"index":1,"name":"B"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":"Opaque","layout":[],"ptr_metadata":"None"},{"def_id":11,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["intersperse",0]},{"Ident":["Intersperse",0]}],"span":{"data":{"file_id":28,"beg":{"line":9,"col":0},"end":{"line":9,"col":35}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" An iterator adapter that places a separator between all elements."},{"DocComment":""},{"DocComment":" This `struct` is created by [`Iterator::intersperse`]. See its documentation"},{"DocComment":" for more information."}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"I"},{"index":1,"name":"Clause0_Item"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":"Opaque","layout":[],"ptr_metadata":"None"},{"def_id":12,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["intersperse",0]},{"Ident":["IntersperseWith",0]}],"span":{"data":{"file_id":28,"beg":{"line":83,"col":0},"end":{"line":83,"col":32}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" An iterator adapter that places a separator between all elements."},{"DocComment":""},{"DocComment":" This `struct` is created by [`Iterator::intersperse_with`]. See its"},{"DocComment":" documentation for more information."}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"I"},{"index":1,"name":"G"},{"index":2,"name":"Clause0_Item"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":"Opaque","layout":[],"ptr_metadata":"None"},{"def_id":13,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["map",0]},{"Ident":["Map",0]}],"span":{"data":{"file_id":30,"beg":{"line":61,"col":0},"end":{"line":61,"col":20}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" An iterator that maps the values of `iter` with `f`."},{"DocComment":""},{"DocComment":" This `struct` is created by the [`map`] method on [`Iterator`]. See its"},{"DocComment":" documentation for more."},{"DocComment":""},{"DocComment":" [`map`]: Iterator::map"},{"DocComment":" [`Iterator`]: trait.Iterator.html"},{"DocComment":""},{"DocComment":" # Notes about side effects"},{"DocComment":""},{"DocComment":" The [`map`] iterator implements [`DoubleEndedIterator`], meaning that"},{"DocComment":" you can also [`map`] backwards:"},{"DocComment":""},{"DocComment":" ```rust"},{"DocComment":" let v: Vec<i32> = [1, 2, 3].into_iter().map(|x| x + 1).rev().collect();"},{"DocComment":""},{"DocComment":" assert_eq!(v, [4, 3, 2]);"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" [`DoubleEndedIterator`]: trait.DoubleEndedIterator.html"},{"DocComment":""},{"DocComment":" But if your closure has state, iterating backwards may act in a way you do"},{"DocComment":" not expect. Let's go through an example. First, in the forward direction:"},{"DocComment":""},{"DocComment":" ```rust"},{"DocComment":" let mut c = 0;"},{"DocComment":""},{"DocComment":" for pair in ['a', 'b', 'c'].into_iter()"},{"DocComment":" .map(|letter| { c += 1; (letter, c) }) {"},{"DocComment":" println!(\"{pair:?}\");"},{"DocComment":" }"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" This will print `('a', 1), ('b', 2), ('c', 3)`."},{"DocComment":""},{"DocComment":" Now consider this twist where we add a call to `rev`. This version will"},{"DocComment":" print `('c', 1), ('b', 2), ('a', 3)`. Note that the letters are reversed,"},{"DocComment":" but the values of the counter still go in order. This is because `map()` is"},{"DocComment":" still being called lazily on each item, but we are popping items off the"},{"DocComment":" back of the vector now, instead of shifting them from the front."},{"DocComment":""},{"DocComment":" ```rust"},{"DocComment":" let mut c = 0;"},{"DocComment":""},{"DocComment":" for pair in ['a', 'b', 'c'].into_iter()"},{"DocComment":" .map(|letter| { c += 1; (letter, c) })"},{"DocComment":" .rev() {"},{"DocComment":" println!(\"{pair:?}\");"},{"DocComment":" }"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"I"},{"index":1,"name":"F"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":"Opaque","layout":[],"ptr_metadata":"None"},{"def_id":14,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["filter",0]},{"Ident":["Filter",0]}],"span":{"data":{"file_id":31,"beg":{"line":21,"col":0},"end":{"line":21,"col":23}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" An iterator that filters the elements of `iter` with `predicate`."},{"DocComment":""},{"DocComment":" This `struct` is created by the [`filter`] method on [`Iterator`]. See its"},{"DocComment":" documentation for more."},{"DocComment":""},{"DocComment":" [`filter`]: Iterator::filter"},{"DocComment":" [`Iterator`]: trait.Iterator.html"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"I"},{"index":1,"name":"P"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":"Opaque","layout":[],"ptr_metadata":"None"},{"def_id":15,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["filter_map",0]},{"Ident":["FilterMap",0]}],"span":{"data":{"file_id":32,"beg":{"line":18,"col":0},"end":{"line":18,"col":26}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" An iterator that uses `f` to both filter and map elements from `iter`."},{"DocComment":""},{"DocComment":" This `struct` is created by the [`filter_map`] method on [`Iterator`]. See its"},{"DocComment":" documentation for more."},{"DocComment":""},{"DocComment":" [`filter_map`]: Iterator::filter_map"},{"DocComment":" [`Iterator`]: trait.Iterator.html"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"I"},{"index":1,"name":"F"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":"Opaque","layout":[],"ptr_metadata":"None"},{"def_id":16,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["enumerate",0]},{"Ident":["Enumerate",0]}],"span":{"data":{"file_id":33,"beg":{"line":18,"col":0},"end":{"line":18,"col":23}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" An iterator that yields the current count and the element during iteration."},{"DocComment":""},{"DocComment":" This `struct` is created by the [`enumerate`] method on [`Iterator`]. See its"},{"DocComment":" documentation for more."},{"DocComment":""},{"DocComment":" [`enumerate`]: Iterator::enumerate"},{"DocComment":" [`Iterator`]: trait.Iterator.html"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"Enumerate"},"generics":{"regions":[],"types":[{"index":0,"name":"I"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":"Opaque","layout":[],"ptr_metadata":"None"},{"def_id":17,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["peekable",0]},{"Ident":["Peekable",0]}],"span":{"data":{"file_id":34,"beg":{"line":17,"col":0},"end":{"line":17,"col":32}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" An iterator with a `peek()` that returns an optional reference to the next"},{"DocComment":" element."},{"DocComment":""},{"DocComment":" This `struct` is created by the [`peekable`] method on [`Iterator`]. See its"},{"DocComment":" documentation for more."},{"DocComment":""},{"DocComment":" [`peekable`]: Iterator::peekable"},{"DocComment":" [`Iterator`]: trait.Iterator.html"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"IterPeekable"},"generics":{"regions":[],"types":[{"index":0,"name":"I"},{"index":1,"name":"Clause0_Item"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":"Opaque","layout":[],"ptr_metadata":"None"},{"def_id":18,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["skip_while",0]},{"Ident":["SkipWhile",0]}],"span":{"data":{"file_id":35,"beg":{"line":17,"col":0},"end":{"line":17,"col":26}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" An iterator that rejects elements while `predicate` returns `true`."},{"DocComment":""},{"DocComment":" This `struct` is created by the [`skip_while`] method on [`Iterator`]. See its"},{"DocComment":" documentation for more."},{"DocComment":""},{"DocComment":" [`skip_while`]: Iterator::skip_while"},{"DocComment":" [`Iterator`]: trait.Iterator.html"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"I"},{"index":1,"name":"P"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":"Opaque","layout":[],"ptr_metadata":"None"},{"def_id":19,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["take_while",0]},{"Ident":["TakeWhile",0]}],"span":{"data":{"file_id":36,"beg":{"line":17,"col":0},"end":{"line":17,"col":26}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" An iterator that only accepts elements while `predicate` returns `true`."},{"DocComment":""},{"DocComment":" This `struct` is created by the [`take_while`] method on [`Iterator`]. See its"},{"DocComment":" documentation for more."},{"DocComment":""},{"DocComment":" [`take_while`]: Iterator::take_while"},{"DocComment":" [`Iterator`]: trait.Iterator.html"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"I"},{"index":1,"name":"P"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":"Opaque","layout":[],"ptr_metadata":"None"},{"def_id":20,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["map_while",0]},{"Ident":["MapWhile",0]}],"span":{"data":{"file_id":37,"beg":{"line":17,"col":0},"end":{"line":17,"col":25}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" An iterator that only accepts elements while `predicate` returns `Some(_)`."},{"DocComment":""},{"DocComment":" This `struct` is created by the [`map_while`] method on [`Iterator`]. See its"},{"DocComment":" documentation for more."},{"DocComment":""},{"DocComment":" [`map_while`]: Iterator::map_while"},{"DocComment":" [`Iterator`]: trait.Iterator.html"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"I"},{"index":1,"name":"P"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":"Opaque","layout":[],"ptr_metadata":"None"},{"def_id":21,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["skip",0]},{"Ident":["Skip",0]}],"span":{"data":{"file_id":38,"beg":{"line":21,"col":0},"end":{"line":21,"col":18}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" An iterator that skips over `n` elements of `iter`."},{"DocComment":""},{"DocComment":" This `struct` is created by the [`skip`] method on [`Iterator`]. See its"},{"DocComment":" documentation for more."},{"DocComment":""},{"DocComment":" [`skip`]: Iterator::skip"},{"DocComment":" [`Iterator`]: trait.Iterator.html"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"I"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":"Opaque","layout":[],"ptr_metadata":"None"},{"def_id":22,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["take",0]},{"Ident":["Take",0]}],"span":{"data":{"file_id":39,"beg":{"line":17,"col":0},"end":{"line":17,"col":18}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" An iterator that only iterates over the first `n` iterations of `iter`."},{"DocComment":""},{"DocComment":" This `struct` is created by the [`take`] method on [`Iterator`]. See its"},{"DocComment":" documentation for more."},{"DocComment":""},{"DocComment":" [`take`]: Iterator::take"},{"DocComment":" [`Iterator`]: trait.Iterator.html"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"I"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":"Opaque","layout":[],"ptr_metadata":"None"},{"def_id":23,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["scan",0]},{"Ident":["Scan",0]}],"span":{"data":{"file_id":40,"beg":{"line":17,"col":0},"end":{"line":17,"col":25}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" An iterator to maintain state while iterating another iterator."},{"DocComment":""},{"DocComment":" This `struct` is created by the [`scan`] method on [`Iterator`]. See its"},{"DocComment":" documentation for more."},{"DocComment":""},{"DocComment":" [`scan`]: Iterator::scan"},{"DocComment":" [`Iterator`]: trait.Iterator.html"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"I"},{"index":1,"name":"St"},{"index":2,"name":"F"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":"Opaque","layout":[],"ptr_metadata":"None"},{"def_id":24,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["flatten",0]},{"Ident":["FlatMap",0]}],"span":{"data":{"file_id":41,"beg":{"line":17,"col":0},"end":{"line":17,"col":41}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" An iterator that maps each element to an iterator, and yields the elements"},{"DocComment":" of the produced iterators."},{"DocComment":""},{"DocComment":" This `struct` is created by [`Iterator::flat_map`]. See its documentation"},{"DocComment":" for more."}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"I"},{"index":1,"name":"U"},{"index":2,"name":"F"},{"index":3,"name":"Clause0_Item"},{"index":4,"name":"Clause0_IntoIter"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":"Opaque","layout":[],"ptr_metadata":"None"},{"def_id":25,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["flatten",0]},{"Ident":["Flatten",0]}],"span":{"data":{"file_id":41,"beg":{"line":184,"col":0},"end":{"line":184,"col":51}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" An iterator that flattens one level of nesting in an iterator of things"},{"DocComment":" that can be turned into iterators."},{"DocComment":""},{"DocComment":" This `struct` is created by the [`flatten`] method on [`Iterator`]. See its"},{"DocComment":" documentation for more."},{"DocComment":""},{"DocComment":" [`flatten`]: Iterator::flatten()"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"I"},{"index":1,"name":"Clause0_Item"},{"index":2,"name":"Clause1_Item"},{"index":3,"name":"Clause1_IntoIter"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":"Opaque","layout":[],"ptr_metadata":"None"},{"def_id":26,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["map_windows",0]},{"Ident":["MapWindows",0]}],"span":{"data":{"file_id":42,"beg":{"line":11,"col":0},"end":{"line":11,"col":53}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" An iterator over the mapped windows of another iterator."},{"DocComment":""},{"DocComment":" This `struct` is created by the [`Iterator::map_windows`]. See its"},{"DocComment":" documentation for more information."}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"I"},{"index":1,"name":"F"},{"index":2,"name":"Clause0_Item"}],"const_generics":[{"index":0,"name":"N","ty":{"Deduplicated":455}}],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":"Opaque","layout":[],"ptr_metadata":"None"},{"def_id":27,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["fuse",0]},{"Ident":["Fuse",0]}],"span":{"data":{"file_id":43,"beg":{"line":17,"col":0},"end":{"line":17,"col":18}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" An iterator that yields `None` forever after the underlying iterator"},{"DocComment":" yields `None` once."},{"DocComment":""},{"DocComment":" This `struct` is created by [`Iterator::fuse`]. See its documentation"},{"DocComment":" for more."}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"I"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":"Opaque","layout":[],"ptr_metadata":"None"},{"def_id":28,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["inspect",0]},{"Ident":["Inspect",0]}],"span":{"data":{"file_id":44,"beg":{"line":18,"col":0},"end":{"line":18,"col":24}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" An iterator that calls a function with a reference to each element before"},{"DocComment":" yielding it."},{"DocComment":""},{"DocComment":" This `struct` is created by the [`inspect`] method on [`Iterator`]. See its"},{"DocComment":" documentation for more."},{"DocComment":""},{"DocComment":" [`inspect`]: Iterator::inspect"},{"DocComment":" [`Iterator`]: trait.Iterator.html"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"I"},{"index":1,"name":"F"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":"Opaque","layout":[],"ptr_metadata":"None"},{"def_id":29,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["Ordering",0]}],"span":{"data":{"file_id":49,"beg":{"line":405,"col":0},"end":{"line":405,"col":17}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" An `Ordering` is the result of a comparison between two values."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::cmp::Ordering;"},{"DocComment":""},{"DocComment":" assert_eq!(1.cmp(&2), Ordering::Less);"},{"DocComment":""},{"DocComment":" assert_eq!(1.cmp(&1), Ordering::Equal);"},{"DocComment":""},{"DocComment":" assert_eq!(2.cmp(&1), Ordering::Greater);"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"Ordering"},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":{"Enum":[{"id":0,"span":{"data":{"file_id":49,"beg":{"line":408,"col":4},"end":{"line":408,"col":8}},"generated_from_span":null},"attr_info":{"attributes":[{"DocComment":" An ordering where a compared value is less than another."}],"inline":null,"rename":null,"public":true},"name":"Less","fields":[],"discriminant":{"Scalar":{"Signed":["I8","-1"]}}},{"id":1,"span":{"data":{"file_id":49,"beg":{"line":411,"col":4},"end":{"line":411,"col":9}},"generated_from_span":null},"attr_info":{"attributes":[{"DocComment":" An ordering where a compared value is equal to another."}],"inline":null,"rename":null,"public":true},"name":"Equal","fields":[],"discriminant":{"Scalar":{"Signed":["I8","0"]}}},{"id":2,"span":{"data":{"file_id":49,"beg":{"line":414,"col":4},"end":{"line":414,"col":11}},"generated_from_span":null},"attr_info":{"attributes":[{"DocComment":" An ordering where a compared value is greater than another."}],"inline":null,"rename":null,"public":true},"name":"Greater","fields":[],"discriminant":{"Scalar":{"Signed":["I8","1"]}}}]},"layout":[{"key":"x86_64-unknown-linux-gnu","value":{"size":1,"align":1,"discriminator":{"Branch":{"offset":0,"int_ty":{"Signed":"I8"},"children":[[{"start":{"Signed":["I8","-1"]},"end":{"Signed":["I8","-1"]}},{"Known":0}],[{"start":{"Signed":["I8","0"]},"end":{"Signed":["I8","0"]}},{"Known":1}],[{"start":{"Signed":["I8","1"]},"end":{"Signed":["I8","1"]}},{"Known":2}]],"fallback":"Invalid"}},"uninhabited":false,"variant_layouts":[{"field_offsets":[],"uninhabited":false,"tagger":[[0,{"Signed":["I8","-1"]}]]},{"field_offsets":[],"uninhabited":false,"tagger":[[0,{"Signed":["I8","0"]}]]},{"field_offsets":[],"uninhabited":false,"tagger":[[0,{"Signed":["I8","1"]}]]}],"repr":{"repr_algo":"Rust","align_modif":null,"transparent":false,"explicit_discr_type":true}}}],"ptr_metadata":"None"},{"def_id":30,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["rev",0]},{"Ident":["Rev",0]}],"span":{"data":{"file_id":50,"beg":{"line":15,"col":0},"end":{"line":15,"col":17}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" A double-ended iterator with the direction inverted."},{"DocComment":""},{"DocComment":" This `struct` is created by the [`rev`] method on [`Iterator`]. See its"},{"DocComment":" documentation for more."},{"DocComment":""},{"DocComment":" [`rev`]: Iterator::rev"},{"DocComment":" [`Iterator`]: trait.Iterator.html"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"T"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":"Opaque","layout":[],"ptr_metadata":"None"},{"def_id":31,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["copied",0]},{"Ident":["Copied",0]}],"span":{"data":{"file_id":51,"beg":{"line":19,"col":0},"end":{"line":19,"col":20}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" An iterator that copies the elements of an underlying iterator."},{"DocComment":""},{"DocComment":" This `struct` is created by the [`copied`] method on [`Iterator`]. See its"},{"DocComment":" documentation for more."},{"DocComment":""},{"DocComment":" [`copied`]: Iterator::copied"},{"DocComment":" [`Iterator`]: trait.Iterator.html"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"I"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":"Opaque","layout":[],"ptr_metadata":"None"},{"def_id":32,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["cloned",0]},{"Ident":["Cloned",0]}],"span":{"data":{"file_id":52,"beg":{"line":18,"col":0},"end":{"line":18,"col":20}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" An iterator that clones the elements of an underlying iterator."},{"DocComment":""},{"DocComment":" This `struct` is created by the [`cloned`] method on [`Iterator`]. See its"},{"DocComment":" documentation for more."},{"DocComment":""},{"DocComment":" [`cloned`]: Iterator::cloned"},{"DocComment":" [`Iterator`]: trait.Iterator.html"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"I"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":"Opaque","layout":[],"ptr_metadata":"None"},{"def_id":33,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["cycle",0]},{"Ident":["Cycle",0]}],"span":{"data":{"file_id":53,"beg":{"line":15,"col":0},"end":{"line":15,"col":19}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" An iterator that repeats endlessly."},{"DocComment":""},{"DocComment":" This `struct` is created by the [`cycle`] method on [`Iterator`]. See its"},{"DocComment":" documentation for more."},{"DocComment":""},{"DocComment":" [`cycle`]: Iterator::cycle"},{"DocComment":" [`Iterator`]: trait.Iterator.html"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"I"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":"Opaque","layout":[],"ptr_metadata":"None"},{"def_id":34,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["array_chunks",0]},{"Ident":["ArrayChunks",0]}],"span":{"data":{"file_id":54,"beg":{"line":19,"col":0},"end":{"line":19,"col":51}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" An iterator over `N` elements of the iterator at a time."},{"DocComment":""},{"DocComment":" The chunks do not overlap. If `N` does not divide the length of the"},{"DocComment":" iterator, then the last up to `N-1` elements will be omitted."},{"DocComment":""},{"DocComment":" This `struct` is created by the [`array_chunks`][Iterator::array_chunks]"},{"DocComment":" method on [`Iterator`]. See its documentation for more."}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"I"},{"index":1,"name":"Clause0_Item"}],"const_generics":[{"index":0,"name":"N","ty":{"Deduplicated":455}}],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":"Opaque","layout":[],"ptr_metadata":"None"},null,{"def_id":36,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["niche_types",0]},{"Ident":["NonZeroUsizeInner",0]}],"span":{"data":{"file_id":59,"beg":{"line":20,"col":8},"end":{"line":20,"col":55}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":"Opaque","layout":[{"key":"x86_64-unknown-linux-gnu","value":{"size":8,"align":8,"discriminator":{"Known":0},"uninhabited":false,"variant_layouts":[{"field_offsets":[0],"uninhabited":false,"tagger":[]}],"repr":{"repr_algo":"Rust","align_modif":null,"transparent":true,"explicit_discr_type":false}}}],"ptr_metadata":"None"},null,null,{"def_id":39,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["control_flow",0]},{"Ident":["ControlFlow",0]}],"span":{"data":{"file_id":60,"beg":{"line":89,"col":0},"end":{"line":89,"col":31}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Used to tell an operation whether it should exit early or go on as usual."},{"DocComment":""},{"DocComment":" This is used when exposing things (like graph traversals or visitors) where"},{"DocComment":" you want the user to be able to choose whether to exit early."},{"DocComment":" Having the enum makes it clearer -- no more wondering \"wait, what did `false`"},{"DocComment":" mean again?\" -- and allows including a value."},{"DocComment":""},{"DocComment":" Similar to [`Option`] and [`Result`], this enum can be used with the `?` operator"},{"DocComment":" to return immediately if the [`Break`] variant is present or otherwise continue normally"},{"DocComment":" with the value inside the [`Continue`] variant."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" Early-exiting from [`Iterator::try_for_each`]:"},{"DocComment":" ```"},{"DocComment":" use std::ops::ControlFlow;"},{"DocComment":""},{"DocComment":" let r = (2..100).try_for_each(|x| {"},{"DocComment":" if 403 % x == 0 {"},{"DocComment":" return ControlFlow::Break(x)"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" ControlFlow::Continue(())"},{"DocComment":" });"},{"DocComment":" assert_eq!(r, ControlFlow::Break(13));"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" A basic tree traversal:"},{"DocComment":" ```"},{"DocComment":" use std::ops::ControlFlow;"},{"DocComment":""},{"DocComment":" pub struct TreeNode<T> {"},{"DocComment":" value: T,"},{"DocComment":" left: Option<Box<TreeNode<T>>>,"},{"DocComment":" right: Option<Box<TreeNode<T>>>,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl<T> TreeNode<T> {"},{"DocComment":" pub fn traverse_inorder<B>(&self, f: &mut impl FnMut(&T) -> ControlFlow<B>) -> ControlFlow<B> {"},{"DocComment":" if let Some(left) = &self.left {"},{"DocComment":" left.traverse_inorder(f)?;"},{"DocComment":" }"},{"DocComment":" f(&self.value)?;"},{"DocComment":" if let Some(right) = &self.right {"},{"DocComment":" right.traverse_inorder(f)?;"},{"DocComment":" }"},{"DocComment":" ControlFlow::Continue(())"},{"DocComment":" }"},{"DocComment":" fn leaf(value: T) -> Option<Box<TreeNode<T>>> {"},{"DocComment":" Some(Box::new(Self { value, left: None, right: None }))"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" let node = TreeNode {"},{"DocComment":" value: 0,"},{"DocComment":" left: TreeNode::leaf(1),"},{"DocComment":" right: Some(Box::new(TreeNode {"},{"DocComment":" value: -1,"},{"DocComment":" left: TreeNode::leaf(5),"},{"DocComment":" right: TreeNode::leaf(2),"},{"DocComment":" }))"},{"DocComment":" };"},{"DocComment":" let mut sum = 0;"},{"DocComment":""},{"DocComment":" let res = node.traverse_inorder(&mut |val| {"},{"DocComment":" if *val < 0 {"},{"DocComment":" ControlFlow::Break(*val)"},{"DocComment":" } else {"},{"DocComment":" sum += *val;"},{"DocComment":" ControlFlow::Continue(())"},{"DocComment":" }"},{"DocComment":" });"},{"DocComment":" assert_eq!(res, ControlFlow::Break(-1));"},{"DocComment":" assert_eq!(sum, 6);"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" [`Break`]: ControlFlow::Break"},{"DocComment":" [`Continue`]: ControlFlow::Continue"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"ControlFlow"},"generics":{"regions":[],"types":[{"index":0,"name":"B"},{"index":1,"name":"C"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"src":"TopLevel","kind":{"Enum":[{"id":0,"span":{"data":{"file_id":60,"beg":{"line":93,"col":4},"end":{"line":93,"col":12}},"generated_from_span":null},"attr_info":{"attributes":[{"DocComment":" Move on to the next phase of the operation as normal."}],"inline":null,"rename":null,"public":true},"name":"Continue","fields":[{"span":{"data":{"file_id":60,"beg":{"line":93,"col":13},"end":{"line":93,"col":14}},"generated_from_span":null},"attr_info":{"attributes":[],"inline":null,"rename":null,"public":true},"name":null,"ty":{"Deduplicated":5335}}],"discriminant":{"Scalar":{"Signed":["Isize","0"]}}},{"id":1,"span":{"data":{"file_id":60,"beg":{"line":97,"col":4},"end":{"line":97,"col":9}},"generated_from_span":null},"attr_info":{"attributes":[{"DocComment":" Exit the operation without running subsequent phases."}],"inline":null,"rename":null,"public":true},"name":"Break","fields":[{"span":{"data":{"file_id":60,"beg":{"line":97,"col":10},"end":{"line":97,"col":11}},"generated_from_span":null},"attr_info":{"attributes":[],"inline":null,"rename":null,"public":true},"name":null,"ty":{"Deduplicated":5334}}],"discriminant":{"Scalar":{"Signed":["Isize","1"]}}}]},"layout":[],"ptr_metadata":"None"},null,null,null,null,null,null,null],"fun_decls":[{"def_id":0,"item_meta":{"name":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["add",0]}],"span":{"data":{"file_id":0,"beg":{"line":172,"col":4},"end":{"line":185,"col":5}},"generated_from_span":null},"source_text":"pub fn add(a: &Scalar52, b: &Scalar52) -> Scalar52 {\n let mut sum = Scalar52::ZERO;\n let mask = (1u64 << 52) - 1;\n\n // a + b\n let mut carry: u64 = 0;\n for i in 0..5 {\n carry = a[i] + b[i] + (carry >> 52);\n sum[i] = carry & mask;\n }\n\n // subtract l if the sum is >= l\n Scalar52::sub(&sum, &constants::L)\n }","attr_info":{"attributes":[{"DocComment":" Compute `a + b` (mod l)"}],"inline":null,"rename":null,"public":true},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"},{"index":1,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"HashConsedValue":[5386,{"Ref":[{"Var":{"Free":0}},{"Deduplicated":334},"Shared"]}]},{"HashConsedValue":[5387,{"Ref":[{"Var":{"Free":1}},{"Deduplicated":334},"Shared"]}]}],"output":{"Deduplicated":334}},"src":"TopLevel","is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":0,"beg":{"line":172,"col":4},"end":{"line":185,"col":5}},"generated_from_span":null},"bound_body_regions":34,"locals":{"arg_count":2,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":0,"beg":{"line":172,"col":46},"end":{"line":172,"col":54}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":1,"name":"a","span":{"data":{"file_id":0,"beg":{"line":172,"col":15},"end":{"line":172,"col":16}},"generated_from_span":null},"ty":{"HashConsedValue":[463,{"Ref":[{"Body":1},{"Deduplicated":334},"Shared"]}]}},{"index":2,"name":"b","span":{"data":{"file_id":0,"beg":{"line":172,"col":29},"end":{"line":172,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[464,{"Ref":[{"Body":2},{"Deduplicated":334},"Shared"]}]}},{"index":3,"name":"sum","span":{"data":{"file_id":0,"beg":{"line":173,"col":12},"end":{"line":173,"col":19}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":4,"name":"mask","span":{"data":{"file_id":0,"beg":{"line":174,"col":12},"end":{"line":174,"col":16}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":5,"name":null,"span":{"data":{"file_id":0,"beg":{"line":174,"col":19},"end":{"line":174,"col":31}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":6,"name":null,"span":{"data":{"file_id":0,"beg":{"line":174,"col":19},"end":{"line":174,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":7,"name":"carry","span":{"data":{"file_id":0,"beg":{"line":177,"col":12},"end":{"line":177,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":8,"name":null,"span":{"data":{"file_id":0,"beg":{"line":178,"col":17},"end":{"line":178,"col":21}},"generated_from_span":null},"ty":{"HashConsedValue":[569,{"Adt":{"id":{"Adt":1},"generics":{"regions":[],"types":[{"Deduplicated":455}],"const_generics":[],"trait_refs":[]}}}]}},{"index":9,"name":null,"span":{"data":{"file_id":0,"beg":{"line":178,"col":17},"end":{"line":178,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":569}},{"index":10,"name":"iter","span":{"data":{"file_id":0,"beg":{"line":178,"col":17},"end":{"line":178,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":569}},{"index":11,"name":null,"span":{"data":{"file_id":0,"beg":{"line":178,"col":17},"end":{"line":178,"col":21}},"generated_from_span":null},"ty":{"HashConsedValue":[596,{"Adt":{"id":{"Adt":2},"generics":{"regions":[],"types":[{"Deduplicated":455}],"const_generics":[],"trait_refs":[]}}}]}},{"index":12,"name":null,"span":{"data":{"file_id":0,"beg":{"line":178,"col":17},"end":{"line":178,"col":21}},"generated_from_span":null},"ty":{"HashConsedValue":[599,{"Ref":[{"Body":4},{"Deduplicated":569},"Mut"]}]}},{"index":13,"name":null,"span":{"data":{"file_id":0,"beg":{"line":178,"col":17},"end":{"line":178,"col":21}},"generated_from_span":null},"ty":{"HashConsedValue":[600,{"Ref":[{"Body":5},{"Deduplicated":569},"Mut"]}]}},{"index":14,"name":"i","span":{"data":{"file_id":0,"beg":{"line":178,"col":12},"end":{"line":178,"col":13}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":15,"name":null,"span":{"data":{"file_id":0,"beg":{"line":179,"col":20},"end":{"line":179,"col":31}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":16,"name":null,"span":{"data":{"file_id":0,"beg":{"line":179,"col":20},"end":{"line":179,"col":24}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":17,"name":null,"span":{"data":{"file_id":0,"beg":{"line":179,"col":21},"end":{"line":179,"col":24}},"generated_from_span":null},"ty":{"HashConsedValue":[605,{"Ref":[{"Body":7},{"Deduplicated":454},"Shared"]}]}},{"index":18,"name":null,"span":{"data":{"file_id":0,"beg":{"line":179,"col":20},"end":{"line":179,"col":21}},"generated_from_span":null},"ty":{"HashConsedValue":[606,{"Ref":[{"Body":8},{"Deduplicated":334},"Shared"]}]}},{"index":19,"name":null,"span":{"data":{"file_id":0,"beg":{"line":179,"col":22},"end":{"line":179,"col":23}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":20,"name":null,"span":{"data":{"file_id":0,"beg":{"line":179,"col":27},"end":{"line":179,"col":31}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":21,"name":null,"span":{"data":{"file_id":0,"beg":{"line":179,"col":28},"end":{"line":179,"col":31}},"generated_from_span":null},"ty":{"HashConsedValue":[607,{"Ref":[{"Body":9},{"Deduplicated":454},"Shared"]}]}},{"index":22,"name":null,"span":{"data":{"file_id":0,"beg":{"line":179,"col":27},"end":{"line":179,"col":28}},"generated_from_span":null},"ty":{"HashConsedValue":[608,{"Ref":[{"Body":10},{"Deduplicated":334},"Shared"]}]}},{"index":23,"name":null,"span":{"data":{"file_id":0,"beg":{"line":179,"col":29},"end":{"line":179,"col":30}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":24,"name":null,"span":{"data":{"file_id":0,"beg":{"line":179,"col":20},"end":{"line":179,"col":31}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":25,"name":null,"span":{"data":{"file_id":0,"beg":{"line":179,"col":34},"end":{"line":179,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":26,"name":null,"span":{"data":{"file_id":0,"beg":{"line":179,"col":35},"end":{"line":179,"col":40}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":27,"name":null,"span":{"data":{"file_id":0,"beg":{"line":179,"col":20},"end":{"line":179,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":28,"name":null,"span":{"data":{"file_id":0,"beg":{"line":180,"col":21},"end":{"line":180,"col":26}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":29,"name":null,"span":{"data":{"file_id":0,"beg":{"line":180,"col":29},"end":{"line":180,"col":33}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":30,"name":null,"span":{"data":{"file_id":0,"beg":{"line":180,"col":15},"end":{"line":180,"col":18}},"generated_from_span":null},"ty":{"HashConsedValue":[611,{"Ref":[{"Body":12},{"Deduplicated":454},"Mut"]}]}},{"index":31,"name":null,"span":{"data":{"file_id":0,"beg":{"line":180,"col":12},"end":{"line":180,"col":15}},"generated_from_span":null},"ty":{"HashConsedValue":[614,{"Ref":[{"Body":14},{"Deduplicated":334},"Mut"]}]}},{"index":32,"name":null,"span":{"data":{"file_id":0,"beg":{"line":180,"col":16},"end":{"line":180,"col":17}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":33,"name":null,"span":{"data":{"file_id":0,"beg":{"line":184,"col":22},"end":{"line":184,"col":26}},"generated_from_span":null},"ty":{"HashConsedValue":[615,{"Ref":[{"Body":15},{"Deduplicated":334},"Shared"]}]}},{"index":34,"name":null,"span":{"data":{"file_id":0,"beg":{"line":184,"col":22},"end":{"line":184,"col":26}},"generated_from_span":null},"ty":{"HashConsedValue":[616,{"Ref":[{"Body":16},{"Deduplicated":334},"Shared"]}]}},{"index":35,"name":null,"span":{"data":{"file_id":0,"beg":{"line":184,"col":28},"end":{"line":184,"col":41}},"generated_from_span":null},"ty":{"HashConsedValue":[617,{"Ref":[{"Body":17},{"Deduplicated":334},"Shared"]}]}},{"index":36,"name":null,"span":{"data":{"file_id":0,"beg":{"line":184,"col":28},"end":{"line":184,"col":41}},"generated_from_span":null},"ty":{"HashConsedValue":[618,{"Ref":[{"Body":18},{"Deduplicated":334},"Shared"]}]}},{"index":37,"name":null,"span":{"data":{"file_id":0,"beg":{"line":184,"col":28},"end":{"line":184,"col":41}},"generated_from_span":null},"ty":{"HashConsedValue":[619,{"Ref":[{"Body":19},{"Deduplicated":334},"Shared"]}]}},{"index":38,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"HashConsedValue":[990,{"Ref":[{"Body":24},{"Deduplicated":334},"Shared"]}]}},{"index":39,"name":null,"span":{"data":{"file_id":0,"beg":{"line":184,"col":28},"end":{"line":184,"col":41}},"generated_from_span":null},"ty":{"HashConsedValue":[1450,{"Ref":[{"Body":33},{"Deduplicated":334},"Shared"]}]}},{"index":40,"name":null,"span":{"data":{"file_id":0,"beg":{"line":184,"col":29},"end":{"line":184,"col":41}},"generated_from_span":null},"ty":{"Deduplicated":334}}]},"body":{"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":185,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":0,"beg":{"line":173,"col":12},"end":{"line":173,"col":19}},"generated_from_span":null},"id":2,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":173,"col":12},"end":{"line":173,"col":19}},"generated_from_span":null},"id":5,"kind":{"StorageLive":24},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":173,"col":12},"end":{"line":173,"col":19}},"generated_from_span":null},"id":8,"kind":{"StorageLive":27},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":173,"col":12},"end":{"line":173,"col":19}},"generated_from_span":null},"id":9,"kind":{"StorageLive":37},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":173,"col":12},"end":{"line":173,"col":19}},"generated_from_span":null},"id":10,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":173,"col":22},"end":{"line":173,"col":36}},"generated_from_span":null},"id":11,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":334}},{"Use":[{"Copy":{"kind":{"Global":{"id":0,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":334}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":174,"col":12},"end":{"line":174,"col":16}},"generated_from_span":null},"id":12,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":174,"col":19},"end":{"line":174,"col":31}},"generated_from_span":null},"id":13,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":174,"col":19},"end":{"line":174,"col":31}},"generated_from_span":null},"id":17,"kind":{"Assign":[{"kind":{"Local":5},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Shl":"Panic"},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","1"]}}},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","52"]}}},"ty":{"HashConsedValue":[622,{"Literal":{"Int":"I32"}}]}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":174,"col":19},"end":{"line":174,"col":35}},"generated_from_span":null},"id":18,"kind":{"Assign":[{"kind":{"Local":6},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Sub":"Panic"},{"Copy":{"kind":{"Local":5},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","1"]}}},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":174,"col":19},"end":{"line":174,"col":35}},"generated_from_span":null},"id":20,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":454}},{"Use":[{"Move":{"kind":{"Local":6},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":174,"col":34},"end":{"line":174,"col":35}},"generated_from_span":null},"id":21,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":177,"col":12},"end":{"line":177,"col":21}},"generated_from_span":null},"id":22,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":177,"col":29},"end":{"line":177,"col":30}},"generated_from_span":null},"id":23,"kind":{"Assign":[{"kind":{"Local":7},"ty":{"Deduplicated":454}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":["a + b"]},{"span":{"data":{"file_id":0,"beg":{"line":178,"col":17},"end":{"line":178,"col":21}},"generated_from_span":null},"id":25,"kind":{"StorageLive":8},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":178,"col":17},"end":{"line":178,"col":21}},"generated_from_span":null},"id":26,"kind":{"StorageLive":9},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":178,"col":17},"end":{"line":178,"col":21}},"generated_from_span":null},"id":27,"kind":{"Assign":[{"kind":{"Local":9},"ty":{"Deduplicated":569}},{"Aggregate":[{"Adt":[{"id":{"Adt":1},"generics":{"regions":[],"types":[{"Deduplicated":455}],"const_generics":[],"trait_refs":[]}},null,null]},[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":455}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","5"]}}},"ty":{"Deduplicated":455}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":178,"col":17},"end":{"line":178,"col":21}},"generated_from_span":null},"id":28,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":11}},"generics":{"regions":[],"types":[{"Deduplicated":569},{"Deduplicated":455}],"const_generics":[],"trait_refs":[{"HashConsedValue":[5158,{"kind":{"TraitImpl":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":455}],"const_generics":[],"trait_refs":[{"HashConsedValue":[960,{"kind":{"TraitImpl":{"id":2,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":455}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":0,"generics":{"regions":[],"types":[{"Deduplicated":569},{"Deduplicated":455}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"args":[{"Move":{"kind":{"Local":9},"ty":{"Deduplicated":569}}}],"dest":{"kind":{"Local":8},"ty":{"Deduplicated":569}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":178,"col":20},"end":{"line":178,"col":21}},"generated_from_span":null},"id":29,"kind":{"StorageDead":9},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":178,"col":17},"end":{"line":178,"col":21}},"generated_from_span":null},"id":30,"kind":{"StorageLive":10},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":178,"col":17},"end":{"line":178,"col":21}},"generated_from_span":null},"id":31,"kind":{"Assign":[{"kind":{"Local":10},"ty":{"Deduplicated":569}},{"Use":[{"Move":{"kind":{"Local":8},"ty":{"Deduplicated":569}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":178,"col":8},"end":{"line":181,"col":9}},"generated_from_span":null},"id":111,"kind":{"Loop":{"span":{"data":{"file_id":0,"beg":{"line":178,"col":8},"end":{"line":181,"col":9}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":0,"beg":{"line":178,"col":17},"end":{"line":178,"col":21}},"generated_from_span":null},"id":33,"kind":{"StorageLive":11},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":178,"col":17},"end":{"line":178,"col":21}},"generated_from_span":null},"id":34,"kind":{"StorageLive":12},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":178,"col":17},"end":{"line":178,"col":21}},"generated_from_span":null},"id":35,"kind":{"StorageLive":13},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":178,"col":17},"end":{"line":178,"col":21}},"generated_from_span":null},"id":36,"kind":{"Assign":[{"kind":{"Local":13},"ty":{"Deduplicated":600}},{"Ref":{"place":{"kind":{"Local":10},"ty":{"Deduplicated":569}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"HashConsedValue":[476,{"Adt":{"id":"Tuple","generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}}]}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":178,"col":17},"end":{"line":178,"col":21}},"generated_from_span":null},"id":37,"kind":{"Assign":[{"kind":{"Local":12},"ty":{"Deduplicated":599}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":13},"ty":{"Deduplicated":600}},"Deref"]},"ty":{"Deduplicated":569}},"kind":"TwoPhaseMut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":178,"col":17},"end":{"line":178,"col":21}},"generated_from_span":null},"id":38,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":12}},"generics":{"regions":[{"Body":21}],"types":[{"Deduplicated":455}],"const_generics":[],"trait_refs":[{"Deduplicated":960}]}}},"args":[{"Move":{"kind":{"Local":12},"ty":{"Deduplicated":599}}}],"dest":{"kind":{"Local":11},"ty":{"Deduplicated":596}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":178,"col":20},"end":{"line":178,"col":21}},"generated_from_span":null},"id":39,"kind":{"StorageDead":12},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":178,"col":17},"end":{"line":178,"col":21}},"generated_from_span":null},"id":44,"kind":{"Switch":{"Match":[{"kind":{"Local":11},"ty":{"Deduplicated":596}},[[[0],{"span":{"data":{"file_id":0,"beg":{"line":178,"col":17},"end":{"line":178,"col":21}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":0,"beg":{"line":178,"col":17},"end":{"line":178,"col":21}},"generated_from_span":null},"id":41,"kind":{"Break":0},"comments_before":[]}]}],[[1],{"span":{"data":{"file_id":0,"beg":{"line":178,"col":17},"end":{"line":178,"col":21}},"generated_from_span":null},"statements":[]}]],null]}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":178,"col":12},"end":{"line":178,"col":13}},"generated_from_span":null},"id":45,"kind":{"StorageLive":14},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":178,"col":12},"end":{"line":178,"col":13}},"generated_from_span":null},"id":46,"kind":{"Assign":[{"kind":{"Local":14},"ty":{"Deduplicated":455}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":11},"ty":{"Deduplicated":596}},{"Field":[{"Adt":[2,1]},0]}]},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":179,"col":20},"end":{"line":179,"col":31}},"generated_from_span":null},"id":47,"kind":{"StorageLive":15},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":179,"col":20},"end":{"line":179,"col":24}},"generated_from_span":null},"id":48,"kind":{"StorageLive":16},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":179,"col":21},"end":{"line":179,"col":24}},"generated_from_span":null},"id":49,"kind":{"StorageLive":17},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":179,"col":20},"end":{"line":179,"col":21}},"generated_from_span":null},"id":50,"kind":{"StorageLive":18},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":179,"col":20},"end":{"line":179,"col":21}},"generated_from_span":null},"id":51,"kind":{"Assign":[{"kind":{"Local":18},"ty":{"Deduplicated":606}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":179,"col":22},"end":{"line":179,"col":23}},"generated_from_span":null},"id":52,"kind":{"StorageLive":19},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":179,"col":22},"end":{"line":179,"col":23}},"generated_from_span":null},"id":53,"kind":{"Assign":[{"kind":{"Local":19},"ty":{"Deduplicated":455}},{"Use":[{"Copy":{"kind":{"Local":14},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":179,"col":21},"end":{"line":179,"col":24}},"generated_from_span":null},"id":54,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":23}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":18},"ty":{"Deduplicated":606}}},{"Move":{"kind":{"Local":19},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":17},"ty":{"Deduplicated":605}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":179,"col":20},"end":{"line":179,"col":24}},"generated_from_span":null},"id":55,"kind":{"Assign":[{"kind":{"Local":16},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":17},"ty":{"Deduplicated":605}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":179,"col":23},"end":{"line":179,"col":24}},"generated_from_span":null},"id":56,"kind":{"StorageDead":19},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":179,"col":23},"end":{"line":179,"col":24}},"generated_from_span":null},"id":57,"kind":{"StorageDead":18},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":179,"col":27},"end":{"line":179,"col":31}},"generated_from_span":null},"id":58,"kind":{"StorageLive":20},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":179,"col":28},"end":{"line":179,"col":31}},"generated_from_span":null},"id":59,"kind":{"StorageLive":21},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":179,"col":27},"end":{"line":179,"col":28}},"generated_from_span":null},"id":60,"kind":{"StorageLive":22},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":179,"col":27},"end":{"line":179,"col":28}},"generated_from_span":null},"id":61,"kind":{"Assign":[{"kind":{"Local":22},"ty":{"Deduplicated":608}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":464}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":179,"col":29},"end":{"line":179,"col":30}},"generated_from_span":null},"id":62,"kind":{"StorageLive":23},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":179,"col":29},"end":{"line":179,"col":30}},"generated_from_span":null},"id":63,"kind":{"Assign":[{"kind":{"Local":23},"ty":{"Deduplicated":455}},{"Use":[{"Copy":{"kind":{"Local":14},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":179,"col":28},"end":{"line":179,"col":31}},"generated_from_span":null},"id":64,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":30}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":22},"ty":{"Deduplicated":608}}},{"Move":{"kind":{"Local":23},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":21},"ty":{"Deduplicated":607}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":179,"col":27},"end":{"line":179,"col":31}},"generated_from_span":null},"id":65,"kind":{"Assign":[{"kind":{"Local":20},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":21},"ty":{"Deduplicated":607}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":179,"col":30},"end":{"line":179,"col":31}},"generated_from_span":null},"id":66,"kind":{"StorageDead":23},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":179,"col":30},"end":{"line":179,"col":31}},"generated_from_span":null},"id":67,"kind":{"StorageDead":22},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":179,"col":20},"end":{"line":179,"col":31}},"generated_from_span":null},"id":68,"kind":{"Assign":[{"kind":{"Local":24},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":16},"ty":{"Deduplicated":454}}},{"Copy":{"kind":{"Local":20},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":179,"col":20},"end":{"line":179,"col":31}},"generated_from_span":null},"id":70,"kind":{"Assign":[{"kind":{"Local":15},"ty":{"Deduplicated":454}},{"Use":[{"Move":{"kind":{"Local":24},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":179,"col":30},"end":{"line":179,"col":31}},"generated_from_span":null},"id":71,"kind":{"StorageDead":20},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":179,"col":30},"end":{"line":179,"col":31}},"generated_from_span":null},"id":72,"kind":{"StorageDead":16},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":179,"col":34},"end":{"line":179,"col":47}},"generated_from_span":null},"id":73,"kind":{"StorageLive":25},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":179,"col":35},"end":{"line":179,"col":40}},"generated_from_span":null},"id":74,"kind":{"StorageLive":26},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":179,"col":35},"end":{"line":179,"col":40}},"generated_from_span":null},"id":75,"kind":{"Assign":[{"kind":{"Local":26},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":7},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":179,"col":34},"end":{"line":179,"col":47}},"generated_from_span":null},"id":79,"kind":{"Assign":[{"kind":{"Local":25},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Shr":"Panic"},{"Move":{"kind":{"Local":26},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","52"]}}},"ty":{"Deduplicated":622}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":179,"col":46},"end":{"line":179,"col":47}},"generated_from_span":null},"id":80,"kind":{"StorageDead":26},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":179,"col":20},"end":{"line":179,"col":47}},"generated_from_span":null},"id":81,"kind":{"Assign":[{"kind":{"Local":27},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":15},"ty":{"Deduplicated":454}}},{"Copy":{"kind":{"Local":25},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":179,"col":12},"end":{"line":179,"col":47}},"generated_from_span":null},"id":83,"kind":{"Assign":[{"kind":{"Local":7},"ty":{"Deduplicated":454}},{"Use":[{"Move":{"kind":{"Local":27},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":179,"col":46},"end":{"line":179,"col":47}},"generated_from_span":null},"id":84,"kind":{"StorageDead":25},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":179,"col":46},"end":{"line":179,"col":47}},"generated_from_span":null},"id":85,"kind":{"StorageDead":15},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":179,"col":47},"end":{"line":179,"col":48}},"generated_from_span":null},"id":86,"kind":{"StorageDead":21},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":179,"col":47},"end":{"line":179,"col":48}},"generated_from_span":null},"id":87,"kind":{"StorageDead":17},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":180,"col":21},"end":{"line":180,"col":26}},"generated_from_span":null},"id":88,"kind":{"StorageLive":28},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":180,"col":21},"end":{"line":180,"col":26}},"generated_from_span":null},"id":89,"kind":{"Assign":[{"kind":{"Local":28},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":7},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":180,"col":29},"end":{"line":180,"col":33}},"generated_from_span":null},"id":90,"kind":{"StorageLive":29},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":180,"col":29},"end":{"line":180,"col":33}},"generated_from_span":null},"id":91,"kind":{"Assign":[{"kind":{"Local":29},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":4},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":180,"col":15},"end":{"line":180,"col":18}},"generated_from_span":null},"id":92,"kind":{"StorageLive":30},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":180,"col":12},"end":{"line":180,"col":15}},"generated_from_span":null},"id":93,"kind":{"StorageLive":31},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":180,"col":12},"end":{"line":180,"col":15}},"generated_from_span":null},"id":94,"kind":{"Assign":[{"kind":{"Local":31},"ty":{"Deduplicated":614}},{"Ref":{"place":{"kind":{"Local":3},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":180,"col":16},"end":{"line":180,"col":17}},"generated_from_span":null},"id":95,"kind":{"StorageLive":32},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":180,"col":16},"end":{"line":180,"col":17}},"generated_from_span":null},"id":96,"kind":{"Assign":[{"kind":{"Local":32},"ty":{"Deduplicated":455}},{"Use":[{"Copy":{"kind":{"Local":14},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":180,"col":15},"end":{"line":180,"col":18}},"generated_from_span":null},"id":97,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":14}},"generics":{"regions":[{"Body":32}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":31},"ty":{"Deduplicated":614}}},{"Move":{"kind":{"Local":32},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":30},"ty":{"Deduplicated":611}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":180,"col":17},"end":{"line":180,"col":18}},"generated_from_span":null},"id":98,"kind":{"StorageDead":32},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":180,"col":17},"end":{"line":180,"col":18}},"generated_from_span":null},"id":99,"kind":{"StorageDead":31},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":180,"col":12},"end":{"line":180,"col":33}},"generated_from_span":null},"id":100,"kind":{"Assign":[{"kind":{"Projection":[{"kind":{"Local":30},"ty":{"Deduplicated":611}},"Deref"]},"ty":{"Deduplicated":454}},{"BinaryOp":["BitAnd",{"Move":{"kind":{"Local":28},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":29},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":180,"col":32},"end":{"line":180,"col":33}},"generated_from_span":null},"id":101,"kind":{"StorageDead":29},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":180,"col":32},"end":{"line":180,"col":33}},"generated_from_span":null},"id":102,"kind":{"StorageDead":28},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":180,"col":33},"end":{"line":180,"col":34}},"generated_from_span":null},"id":103,"kind":{"StorageDead":30},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":181,"col":8},"end":{"line":181,"col":9}},"generated_from_span":null},"id":105,"kind":{"StorageDead":14},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":181,"col":8},"end":{"line":181,"col":9}},"generated_from_span":null},"id":106,"kind":{"StorageDead":13},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":181,"col":8},"end":{"line":181,"col":9}},"generated_from_span":null},"id":107,"kind":{"StorageDead":11},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":178,"col":8},"end":{"line":181,"col":9}},"generated_from_span":null},"id":110,"kind":{"Continue":0},"comments_before":[]}]}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"id":112,"kind":{"StorageLive":38},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":184,"col":28},"end":{"line":184,"col":41}},"generated_from_span":null},"id":113,"kind":{"StorageLive":39},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":184,"col":29},"end":{"line":184,"col":41}},"generated_from_span":null},"id":114,"kind":{"StorageLive":40},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":184,"col":29},"end":{"line":184,"col":41}},"generated_from_span":null},"id":115,"kind":{"Assign":[{"kind":{"Local":40},"ty":{"Deduplicated":334}},{"Use":[{"Copy":{"kind":{"Global":{"id":17,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":334}}},"Yes"]}]},"comments_before":["subtract l if the sum is >= l"]},{"span":{"data":{"file_id":0,"beg":{"line":184,"col":28},"end":{"line":184,"col":41}},"generated_from_span":null},"id":116,"kind":{"Assign":[{"kind":{"Local":39},"ty":{"Deduplicated":1450}},{"Ref":{"place":{"kind":{"Local":40},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":184,"col":28},"end":{"line":184,"col":41}},"generated_from_span":null},"id":117,"kind":{"Assign":[{"kind":{"Local":38},"ty":{"Deduplicated":990}},{"Use":[{"Move":{"kind":{"Local":39},"ty":{"Deduplicated":1450}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":181,"col":8},"end":{"line":181,"col":9}},"generated_from_span":null},"id":119,"kind":{"StorageDead":13},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":181,"col":8},"end":{"line":181,"col":9}},"generated_from_span":null},"id":120,"kind":{"StorageDead":11},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":181,"col":8},"end":{"line":181,"col":9}},"generated_from_span":null},"id":122,"kind":{"StorageDead":10},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":181,"col":8},"end":{"line":181,"col":9}},"generated_from_span":null},"id":123,"kind":{"StorageDead":8},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":184,"col":22},"end":{"line":184,"col":26}},"generated_from_span":null},"id":125,"kind":{"StorageLive":33},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":184,"col":22},"end":{"line":184,"col":26}},"generated_from_span":null},"id":126,"kind":{"StorageLive":34},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":184,"col":22},"end":{"line":184,"col":26}},"generated_from_span":null},"id":127,"kind":{"Assign":[{"kind":{"Local":34},"ty":{"Deduplicated":616}},{"Ref":{"place":{"kind":{"Local":3},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":184,"col":22},"end":{"line":184,"col":26}},"generated_from_span":null},"id":128,"kind":{"Assign":[{"kind":{"Local":33},"ty":{"Deduplicated":615}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":34},"ty":{"Deduplicated":616}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":184,"col":28},"end":{"line":184,"col":41}},"generated_from_span":null},"id":129,"kind":{"StorageLive":35},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":184,"col":28},"end":{"line":184,"col":41}},"generated_from_span":null},"id":130,"kind":{"StorageLive":36},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":184,"col":28},"end":{"line":184,"col":41}},"generated_from_span":null},"id":131,"kind":{"Assign":[{"kind":{"Local":37},"ty":{"Deduplicated":619}},{"Use":[{"Move":{"kind":{"Local":38},"ty":{"Deduplicated":990}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":184,"col":28},"end":{"line":184,"col":41}},"generated_from_span":null},"id":132,"kind":{"Assign":[{"kind":{"Local":36},"ty":{"Deduplicated":618}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":37},"ty":{"Deduplicated":619}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":184,"col":28},"end":{"line":184,"col":41}},"generated_from_span":null},"id":133,"kind":{"Assign":[{"kind":{"Local":35},"ty":{"Deduplicated":617}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":36},"ty":{"Deduplicated":618}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":184,"col":8},"end":{"line":184,"col":42}},"generated_from_span":null},"id":134,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":1}},"generics":{"regions":[{"Body":27},{"Body":28}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":33},"ty":{"Deduplicated":615}}},{"Move":{"kind":{"Local":35},"ty":{"Deduplicated":617}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":334}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":184,"col":41},"end":{"line":184,"col":42}},"generated_from_span":null},"id":135,"kind":{"StorageDead":36},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":184,"col":41},"end":{"line":184,"col":42}},"generated_from_span":null},"id":136,"kind":{"StorageDead":35},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":184,"col":41},"end":{"line":184,"col":42}},"generated_from_span":null},"id":137,"kind":{"StorageDead":34},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":184,"col":41},"end":{"line":184,"col":42}},"generated_from_span":null},"id":138,"kind":{"StorageDead":33},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":185,"col":4},"end":{"line":185,"col":5}},"generated_from_span":null},"id":139,"kind":{"StorageDead":7},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":185,"col":4},"end":{"line":185,"col":5}},"generated_from_span":null},"id":140,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":185,"col":4},"end":{"line":185,"col":5}},"generated_from_span":null},"id":141,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":185,"col":5},"end":{"line":185,"col":5}},"generated_from_span":null},"id":142,"kind":"Return","comments_before":[]}]},"comments":[[177,["a + b"]],[184,["subtract l if the sum is >= l"]]]}}},{"def_id":1,"item_meta":{"name":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["sub",0]}],"span":{"data":{"file_id":0,"beg":{"line":188,"col":4},"end":{"line":202,"col":5}},"generated_from_span":null},"source_text":"pub fn sub(a: &Scalar52, b: &Scalar52) -> Scalar52 {\n let mut difference = Scalar52::ZERO;\n let mask = (1u64 << 52) - 1;\n\n // a - b\n let mut borrow: u64 = 0;\n for i in 0..5 {\n borrow = a[i].wrapping_sub(b[i] + (borrow >> 63));\n difference[i] = borrow & mask;\n }\n\n // conditionally add l if the difference is negative\n difference.conditional_add_l(Choice::from((borrow >> 63) as u8));\n difference\n }","attr_info":{"attributes":[{"DocComment":" Compute `a - b` (mod l)"}],"inline":null,"rename":null,"public":true},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"},{"index":1,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5386},{"Deduplicated":5387}],"output":{"Deduplicated":334}},"src":"TopLevel","is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":0,"beg":{"line":188,"col":4},"end":{"line":202,"col":5}},"generated_from_span":null},"bound_body_regions":26,"locals":{"arg_count":2,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":0,"beg":{"line":188,"col":46},"end":{"line":188,"col":54}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":1,"name":"a","span":{"data":{"file_id":0,"beg":{"line":188,"col":15},"end":{"line":188,"col":16}},"generated_from_span":null},"ty":{"Deduplicated":463}},{"index":2,"name":"b","span":{"data":{"file_id":0,"beg":{"line":188,"col":29},"end":{"line":188,"col":30}},"generated_from_span":null},"ty":{"Deduplicated":464}},{"index":3,"name":"difference","span":{"data":{"file_id":0,"beg":{"line":189,"col":12},"end":{"line":189,"col":26}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":4,"name":"mask","span":{"data":{"file_id":0,"beg":{"line":190,"col":12},"end":{"line":190,"col":16}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":5,"name":null,"span":{"data":{"file_id":0,"beg":{"line":190,"col":19},"end":{"line":190,"col":31}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":6,"name":null,"span":{"data":{"file_id":0,"beg":{"line":190,"col":19},"end":{"line":190,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":7,"name":"borrow","span":{"data":{"file_id":0,"beg":{"line":193,"col":12},"end":{"line":193,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":8,"name":null,"span":{"data":{"file_id":0,"beg":{"line":194,"col":17},"end":{"line":194,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":569}},{"index":9,"name":null,"span":{"data":{"file_id":0,"beg":{"line":194,"col":17},"end":{"line":194,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":569}},{"index":10,"name":"iter","span":{"data":{"file_id":0,"beg":{"line":194,"col":17},"end":{"line":194,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":569}},{"index":11,"name":null,"span":{"data":{"file_id":0,"beg":{"line":194,"col":17},"end":{"line":194,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":596}},{"index":12,"name":null,"span":{"data":{"file_id":0,"beg":{"line":194,"col":17},"end":{"line":194,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":599}},{"index":13,"name":null,"span":{"data":{"file_id":0,"beg":{"line":194,"col":17},"end":{"line":194,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":600}},{"index":14,"name":"i","span":{"data":{"file_id":0,"beg":{"line":194,"col":12},"end":{"line":194,"col":13}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":15,"name":null,"span":{"data":{"file_id":0,"beg":{"line":195,"col":21},"end":{"line":195,"col":61}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":16,"name":null,"span":{"data":{"file_id":0,"beg":{"line":195,"col":21},"end":{"line":195,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":17,"name":null,"span":{"data":{"file_id":0,"beg":{"line":195,"col":22},"end":{"line":195,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":605}},{"index":18,"name":null,"span":{"data":{"file_id":0,"beg":{"line":195,"col":21},"end":{"line":195,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":606}},{"index":19,"name":null,"span":{"data":{"file_id":0,"beg":{"line":195,"col":23},"end":{"line":195,"col":24}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":20,"name":null,"span":{"data":{"file_id":0,"beg":{"line":195,"col":39},"end":{"line":195,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":21,"name":null,"span":{"data":{"file_id":0,"beg":{"line":195,"col":39},"end":{"line":195,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":22,"name":null,"span":{"data":{"file_id":0,"beg":{"line":195,"col":40},"end":{"line":195,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":607}},{"index":23,"name":null,"span":{"data":{"file_id":0,"beg":{"line":195,"col":39},"end":{"line":195,"col":40}},"generated_from_span":null},"ty":{"Deduplicated":608}},{"index":24,"name":null,"span":{"data":{"file_id":0,"beg":{"line":195,"col":41},"end":{"line":195,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":25,"name":null,"span":{"data":{"file_id":0,"beg":{"line":195,"col":46},"end":{"line":195,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":26,"name":null,"span":{"data":{"file_id":0,"beg":{"line":195,"col":47},"end":{"line":195,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":27,"name":null,"span":{"data":{"file_id":0,"beg":{"line":195,"col":39},"end":{"line":195,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":28,"name":null,"span":{"data":{"file_id":0,"beg":{"line":196,"col":28},"end":{"line":196,"col":34}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":29,"name":null,"span":{"data":{"file_id":0,"beg":{"line":196,"col":37},"end":{"line":196,"col":41}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":30,"name":null,"span":{"data":{"file_id":0,"beg":{"line":196,"col":22},"end":{"line":196,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":611}},{"index":31,"name":null,"span":{"data":{"file_id":0,"beg":{"line":196,"col":12},"end":{"line":196,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":614}},{"index":32,"name":null,"span":{"data":{"file_id":0,"beg":{"line":196,"col":23},"end":{"line":196,"col":24}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":33,"name":null,"span":{"data":{"file_id":0,"beg":{"line":200,"col":8},"end":{"line":200,"col":72}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":34,"name":null,"span":{"data":{"file_id":0,"beg":{"line":200,"col":8},"end":{"line":200,"col":18}},"generated_from_span":null},"ty":{"HashConsedValue":[1007,{"Ref":[{"Body":15},{"Deduplicated":334},"Mut"]}]}},{"index":35,"name":null,"span":{"data":{"file_id":0,"beg":{"line":200,"col":37},"end":{"line":200,"col":71}},"generated_from_span":null},"ty":{"HashConsedValue":[1015,{"Adt":{"id":{"Adt":3},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}}]}},{"index":36,"name":null,"span":{"data":{"file_id":0,"beg":{"line":200,"col":50},"end":{"line":200,"col":70}},"generated_from_span":null},"ty":{"HashConsedValue":[1016,{"Literal":{"UInt":"U8"}}]}},{"index":37,"name":null,"span":{"data":{"file_id":0,"beg":{"line":200,"col":50},"end":{"line":200,"col":64}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":38,"name":null,"span":{"data":{"file_id":0,"beg":{"line":200,"col":51},"end":{"line":200,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":454}}]},"body":{"span":{"data":{"file_id":0,"beg":{"line":189,"col":12},"end":{"line":202,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":0,"beg":{"line":189,"col":12},"end":{"line":189,"col":26}},"generated_from_span":null},"id":145,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":189,"col":12},"end":{"line":189,"col":26}},"generated_from_span":null},"id":150,"kind":{"StorageLive":27},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":189,"col":12},"end":{"line":189,"col":26}},"generated_from_span":null},"id":153,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":189,"col":29},"end":{"line":189,"col":43}},"generated_from_span":null},"id":154,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":334}},{"Use":[{"Copy":{"kind":{"Global":{"id":0,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":334}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":190,"col":12},"end":{"line":190,"col":16}},"generated_from_span":null},"id":155,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":190,"col":19},"end":{"line":190,"col":31}},"generated_from_span":null},"id":156,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":190,"col":19},"end":{"line":190,"col":31}},"generated_from_span":null},"id":160,"kind":{"Assign":[{"kind":{"Local":5},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Shl":"Panic"},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","1"]}}},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","52"]}}},"ty":{"Deduplicated":622}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":190,"col":19},"end":{"line":190,"col":35}},"generated_from_span":null},"id":161,"kind":{"Assign":[{"kind":{"Local":6},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Sub":"Panic"},{"Copy":{"kind":{"Local":5},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","1"]}}},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":190,"col":19},"end":{"line":190,"col":35}},"generated_from_span":null},"id":163,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":454}},{"Use":[{"Move":{"kind":{"Local":6},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":190,"col":34},"end":{"line":190,"col":35}},"generated_from_span":null},"id":164,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":193,"col":12},"end":{"line":193,"col":22}},"generated_from_span":null},"id":165,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":193,"col":30},"end":{"line":193,"col":31}},"generated_from_span":null},"id":166,"kind":{"Assign":[{"kind":{"Local":7},"ty":{"Deduplicated":454}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":["a - b"]},{"span":{"data":{"file_id":0,"beg":{"line":194,"col":17},"end":{"line":194,"col":21}},"generated_from_span":null},"id":168,"kind":{"StorageLive":8},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":194,"col":17},"end":{"line":194,"col":21}},"generated_from_span":null},"id":169,"kind":{"StorageLive":9},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":194,"col":17},"end":{"line":194,"col":21}},"generated_from_span":null},"id":170,"kind":{"Assign":[{"kind":{"Local":9},"ty":{"Deduplicated":569}},{"Aggregate":[{"Adt":[{"id":{"Adt":1},"generics":{"regions":[],"types":[{"Deduplicated":455}],"const_generics":[],"trait_refs":[]}},null,null]},[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":455}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","5"]}}},"ty":{"Deduplicated":455}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":194,"col":17},"end":{"line":194,"col":21}},"generated_from_span":null},"id":171,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":11}},"generics":{"regions":[],"types":[{"Deduplicated":569},{"Deduplicated":455}],"const_generics":[],"trait_refs":[{"Deduplicated":5158}]}}},"args":[{"Move":{"kind":{"Local":9},"ty":{"Deduplicated":569}}}],"dest":{"kind":{"Local":8},"ty":{"Deduplicated":569}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":194,"col":20},"end":{"line":194,"col":21}},"generated_from_span":null},"id":172,"kind":{"StorageDead":9},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":194,"col":17},"end":{"line":194,"col":21}},"generated_from_span":null},"id":173,"kind":{"StorageLive":10},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":194,"col":17},"end":{"line":194,"col":21}},"generated_from_span":null},"id":174,"kind":{"Assign":[{"kind":{"Local":10},"ty":{"Deduplicated":569}},{"Use":[{"Move":{"kind":{"Local":8},"ty":{"Deduplicated":569}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":194,"col":8},"end":{"line":197,"col":9}},"generated_from_span":null},"id":255,"kind":{"Loop":{"span":{"data":{"file_id":0,"beg":{"line":194,"col":8},"end":{"line":197,"col":9}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":0,"beg":{"line":194,"col":17},"end":{"line":194,"col":21}},"generated_from_span":null},"id":176,"kind":{"StorageLive":11},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":194,"col":17},"end":{"line":194,"col":21}},"generated_from_span":null},"id":177,"kind":{"StorageLive":12},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":194,"col":17},"end":{"line":194,"col":21}},"generated_from_span":null},"id":178,"kind":{"StorageLive":13},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":194,"col":17},"end":{"line":194,"col":21}},"generated_from_span":null},"id":179,"kind":{"Assign":[{"kind":{"Local":13},"ty":{"Deduplicated":600}},{"Ref":{"place":{"kind":{"Local":10},"ty":{"Deduplicated":569}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":194,"col":17},"end":{"line":194,"col":21}},"generated_from_span":null},"id":180,"kind":{"Assign":[{"kind":{"Local":12},"ty":{"Deduplicated":599}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":13},"ty":{"Deduplicated":600}},"Deref"]},"ty":{"Deduplicated":569}},"kind":"TwoPhaseMut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":194,"col":17},"end":{"line":194,"col":21}},"generated_from_span":null},"id":181,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":12}},"generics":{"regions":[{"Body":17}],"types":[{"Deduplicated":455}],"const_generics":[],"trait_refs":[{"Deduplicated":960}]}}},"args":[{"Move":{"kind":{"Local":12},"ty":{"Deduplicated":599}}}],"dest":{"kind":{"Local":11},"ty":{"Deduplicated":596}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":194,"col":20},"end":{"line":194,"col":21}},"generated_from_span":null},"id":182,"kind":{"StorageDead":12},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":194,"col":17},"end":{"line":194,"col":21}},"generated_from_span":null},"id":187,"kind":{"Switch":{"Match":[{"kind":{"Local":11},"ty":{"Deduplicated":596}},[[[0],{"span":{"data":{"file_id":0,"beg":{"line":194,"col":17},"end":{"line":194,"col":21}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":0,"beg":{"line":194,"col":17},"end":{"line":194,"col":21}},"generated_from_span":null},"id":184,"kind":{"Break":0},"comments_before":[]}]}],[[1],{"span":{"data":{"file_id":0,"beg":{"line":194,"col":17},"end":{"line":194,"col":21}},"generated_from_span":null},"statements":[]}]],null]}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":194,"col":12},"end":{"line":194,"col":13}},"generated_from_span":null},"id":188,"kind":{"StorageLive":14},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":194,"col":12},"end":{"line":194,"col":13}},"generated_from_span":null},"id":189,"kind":{"Assign":[{"kind":{"Local":14},"ty":{"Deduplicated":455}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":11},"ty":{"Deduplicated":596}},{"Field":[{"Adt":[2,1]},0]}]},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":21},"end":{"line":195,"col":61}},"generated_from_span":null},"id":190,"kind":{"StorageLive":15},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":21},"end":{"line":195,"col":25}},"generated_from_span":null},"id":191,"kind":{"StorageLive":16},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":22},"end":{"line":195,"col":25}},"generated_from_span":null},"id":192,"kind":{"StorageLive":17},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":21},"end":{"line":195,"col":22}},"generated_from_span":null},"id":193,"kind":{"StorageLive":18},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":21},"end":{"line":195,"col":22}},"generated_from_span":null},"id":194,"kind":{"Assign":[{"kind":{"Local":18},"ty":{"Deduplicated":606}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":23},"end":{"line":195,"col":24}},"generated_from_span":null},"id":195,"kind":{"StorageLive":19},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":23},"end":{"line":195,"col":24}},"generated_from_span":null},"id":196,"kind":{"Assign":[{"kind":{"Local":19},"ty":{"Deduplicated":455}},{"Use":[{"Copy":{"kind":{"Local":14},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":22},"end":{"line":195,"col":25}},"generated_from_span":null},"id":197,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":19}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":18},"ty":{"Deduplicated":606}}},{"Move":{"kind":{"Local":19},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":17},"ty":{"Deduplicated":605}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":21},"end":{"line":195,"col":25}},"generated_from_span":null},"id":198,"kind":{"Assign":[{"kind":{"Local":16},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":17},"ty":{"Deduplicated":605}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":24},"end":{"line":195,"col":25}},"generated_from_span":null},"id":199,"kind":{"StorageDead":19},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":24},"end":{"line":195,"col":25}},"generated_from_span":null},"id":200,"kind":{"StorageDead":18},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":39},"end":{"line":195,"col":60}},"generated_from_span":null},"id":201,"kind":{"StorageLive":20},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":39},"end":{"line":195,"col":43}},"generated_from_span":null},"id":202,"kind":{"StorageLive":21},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":40},"end":{"line":195,"col":43}},"generated_from_span":null},"id":203,"kind":{"StorageLive":22},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":39},"end":{"line":195,"col":40}},"generated_from_span":null},"id":204,"kind":{"StorageLive":23},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":39},"end":{"line":195,"col":40}},"generated_from_span":null},"id":205,"kind":{"Assign":[{"kind":{"Local":23},"ty":{"Deduplicated":608}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":464}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":41},"end":{"line":195,"col":42}},"generated_from_span":null},"id":206,"kind":{"StorageLive":24},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":41},"end":{"line":195,"col":42}},"generated_from_span":null},"id":207,"kind":{"Assign":[{"kind":{"Local":24},"ty":{"Deduplicated":455}},{"Use":[{"Copy":{"kind":{"Local":14},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":40},"end":{"line":195,"col":43}},"generated_from_span":null},"id":208,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":21}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":23},"ty":{"Deduplicated":608}}},{"Move":{"kind":{"Local":24},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":22},"ty":{"Deduplicated":607}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":39},"end":{"line":195,"col":43}},"generated_from_span":null},"id":209,"kind":{"Assign":[{"kind":{"Local":21},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":22},"ty":{"Deduplicated":607}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":42},"end":{"line":195,"col":43}},"generated_from_span":null},"id":210,"kind":{"StorageDead":24},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":42},"end":{"line":195,"col":43}},"generated_from_span":null},"id":211,"kind":{"StorageDead":23},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":46},"end":{"line":195,"col":60}},"generated_from_span":null},"id":212,"kind":{"StorageLive":25},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":47},"end":{"line":195,"col":53}},"generated_from_span":null},"id":213,"kind":{"StorageLive":26},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":47},"end":{"line":195,"col":53}},"generated_from_span":null},"id":214,"kind":{"Assign":[{"kind":{"Local":26},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":7},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":46},"end":{"line":195,"col":60}},"generated_from_span":null},"id":218,"kind":{"Assign":[{"kind":{"Local":25},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Shr":"Panic"},{"Move":{"kind":{"Local":26},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","63"]}}},"ty":{"Deduplicated":622}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":59},"end":{"line":195,"col":60}},"generated_from_span":null},"id":219,"kind":{"StorageDead":26},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":39},"end":{"line":195,"col":60}},"generated_from_span":null},"id":220,"kind":{"Assign":[{"kind":{"Local":27},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":21},"ty":{"Deduplicated":454}}},{"Copy":{"kind":{"Local":25},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":39},"end":{"line":195,"col":60}},"generated_from_span":null},"id":222,"kind":{"Assign":[{"kind":{"Local":20},"ty":{"Deduplicated":454}},{"Use":[{"Move":{"kind":{"Local":27},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":59},"end":{"line":195,"col":60}},"generated_from_span":null},"id":223,"kind":{"StorageDead":25},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":59},"end":{"line":195,"col":60}},"generated_from_span":null},"id":224,"kind":{"StorageDead":21},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":21},"end":{"line":195,"col":61}},"generated_from_span":null},"id":225,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":17}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":16},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":20},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":15},"ty":{"Deduplicated":454}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":60},"end":{"line":195,"col":61}},"generated_from_span":null},"id":226,"kind":{"StorageDead":20},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":60},"end":{"line":195,"col":61}},"generated_from_span":null},"id":227,"kind":{"StorageDead":16},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":12},"end":{"line":195,"col":61}},"generated_from_span":null},"id":228,"kind":{"Assign":[{"kind":{"Local":7},"ty":{"Deduplicated":454}},{"Use":[{"Move":{"kind":{"Local":15},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":60},"end":{"line":195,"col":61}},"generated_from_span":null},"id":229,"kind":{"StorageDead":15},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":61},"end":{"line":195,"col":62}},"generated_from_span":null},"id":230,"kind":{"StorageDead":22},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":195,"col":61},"end":{"line":195,"col":62}},"generated_from_span":null},"id":231,"kind":{"StorageDead":17},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":196,"col":28},"end":{"line":196,"col":34}},"generated_from_span":null},"id":232,"kind":{"StorageLive":28},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":196,"col":28},"end":{"line":196,"col":34}},"generated_from_span":null},"id":233,"kind":{"Assign":[{"kind":{"Local":28},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":7},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":196,"col":37},"end":{"line":196,"col":41}},"generated_from_span":null},"id":234,"kind":{"StorageLive":29},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":196,"col":37},"end":{"line":196,"col":41}},"generated_from_span":null},"id":235,"kind":{"Assign":[{"kind":{"Local":29},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":4},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":196,"col":22},"end":{"line":196,"col":25}},"generated_from_span":null},"id":236,"kind":{"StorageLive":30},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":196,"col":12},"end":{"line":196,"col":22}},"generated_from_span":null},"id":237,"kind":{"StorageLive":31},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":196,"col":12},"end":{"line":196,"col":22}},"generated_from_span":null},"id":238,"kind":{"Assign":[{"kind":{"Local":31},"ty":{"Deduplicated":614}},{"Ref":{"place":{"kind":{"Local":3},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":196,"col":23},"end":{"line":196,"col":24}},"generated_from_span":null},"id":239,"kind":{"StorageLive":32},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":196,"col":23},"end":{"line":196,"col":24}},"generated_from_span":null},"id":240,"kind":{"Assign":[{"kind":{"Local":32},"ty":{"Deduplicated":455}},{"Use":[{"Copy":{"kind":{"Local":14},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":196,"col":22},"end":{"line":196,"col":25}},"generated_from_span":null},"id":241,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":14}},"generics":{"regions":[{"Body":25}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":31},"ty":{"Deduplicated":614}}},{"Move":{"kind":{"Local":32},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":30},"ty":{"Deduplicated":611}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":196,"col":24},"end":{"line":196,"col":25}},"generated_from_span":null},"id":242,"kind":{"StorageDead":32},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":196,"col":24},"end":{"line":196,"col":25}},"generated_from_span":null},"id":243,"kind":{"StorageDead":31},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":196,"col":12},"end":{"line":196,"col":41}},"generated_from_span":null},"id":244,"kind":{"Assign":[{"kind":{"Projection":[{"kind":{"Local":30},"ty":{"Deduplicated":611}},"Deref"]},"ty":{"Deduplicated":454}},{"BinaryOp":["BitAnd",{"Move":{"kind":{"Local":28},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":29},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":196,"col":40},"end":{"line":196,"col":41}},"generated_from_span":null},"id":245,"kind":{"StorageDead":29},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":196,"col":40},"end":{"line":196,"col":41}},"generated_from_span":null},"id":246,"kind":{"StorageDead":28},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":196,"col":41},"end":{"line":196,"col":42}},"generated_from_span":null},"id":247,"kind":{"StorageDead":30},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":197,"col":8},"end":{"line":197,"col":9}},"generated_from_span":null},"id":249,"kind":{"StorageDead":14},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":197,"col":8},"end":{"line":197,"col":9}},"generated_from_span":null},"id":250,"kind":{"StorageDead":13},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":197,"col":8},"end":{"line":197,"col":9}},"generated_from_span":null},"id":251,"kind":{"StorageDead":11},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":194,"col":8},"end":{"line":197,"col":9}},"generated_from_span":null},"id":254,"kind":{"Continue":0},"comments_before":[]}]}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":197,"col":8},"end":{"line":197,"col":9}},"generated_from_span":null},"id":257,"kind":{"StorageDead":13},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":197,"col":8},"end":{"line":197,"col":9}},"generated_from_span":null},"id":258,"kind":{"StorageDead":11},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":197,"col":8},"end":{"line":197,"col":9}},"generated_from_span":null},"id":260,"kind":{"StorageDead":10},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":197,"col":8},"end":{"line":197,"col":9}},"generated_from_span":null},"id":261,"kind":{"StorageDead":8},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":200,"col":8},"end":{"line":200,"col":72}},"generated_from_span":null},"id":263,"kind":{"StorageLive":33},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":200,"col":8},"end":{"line":200,"col":18}},"generated_from_span":null},"id":264,"kind":{"StorageLive":34},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":200,"col":8},"end":{"line":200,"col":18}},"generated_from_span":null},"id":265,"kind":{"Assign":[{"kind":{"Local":34},"ty":{"Deduplicated":1007}},{"Ref":{"place":{"kind":{"Local":3},"ty":{"Deduplicated":334}},"kind":"TwoPhaseMut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":["conditionally add l if the difference is negative"]},{"span":{"data":{"file_id":0,"beg":{"line":200,"col":37},"end":{"line":200,"col":71}},"generated_from_span":null},"id":266,"kind":{"StorageLive":35},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":200,"col":50},"end":{"line":200,"col":70}},"generated_from_span":null},"id":267,"kind":{"StorageLive":36},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":200,"col":50},"end":{"line":200,"col":64}},"generated_from_span":null},"id":268,"kind":{"StorageLive":37},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":200,"col":51},"end":{"line":200,"col":57}},"generated_from_span":null},"id":269,"kind":{"StorageLive":38},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":200,"col":51},"end":{"line":200,"col":57}},"generated_from_span":null},"id":270,"kind":{"Assign":[{"kind":{"Local":38},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":7},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":200,"col":50},"end":{"line":200,"col":64}},"generated_from_span":null},"id":274,"kind":{"Assign":[{"kind":{"Local":37},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Shr":"Panic"},{"Move":{"kind":{"Local":38},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","63"]}}},"ty":{"Deduplicated":622}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":200,"col":63},"end":{"line":200,"col":64}},"generated_from_span":null},"id":275,"kind":{"StorageDead":38},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":200,"col":50},"end":{"line":200,"col":70}},"generated_from_span":null},"id":276,"kind":{"Assign":[{"kind":{"Local":36},"ty":{"Deduplicated":1016}},{"UnaryOp":[{"Cast":{"Scalar":[{"UInt":"U64"},{"UInt":"U8"}]}},{"Move":{"kind":{"Local":37},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":200,"col":69},"end":{"line":200,"col":70}},"generated_from_span":null},"id":277,"kind":{"StorageDead":37},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":200,"col":37},"end":{"line":200,"col":71}},"generated_from_span":null},"id":278,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":15}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":36},"ty":{"Deduplicated":1016}}}],"dest":{"kind":{"Local":35},"ty":{"Deduplicated":1015}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":200,"col":70},"end":{"line":200,"col":71}},"generated_from_span":null},"id":279,"kind":{"StorageDead":36},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":200,"col":8},"end":{"line":200,"col":72}},"generated_from_span":null},"id":280,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":16}},"generics":{"regions":[{"Body":23}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":34},"ty":{"Deduplicated":1007}}},{"Move":{"kind":{"Local":35},"ty":{"Deduplicated":1015}}}],"dest":{"kind":{"Local":33},"ty":{"Deduplicated":454}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":200,"col":71},"end":{"line":200,"col":72}},"generated_from_span":null},"id":281,"kind":{"StorageDead":35},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":200,"col":71},"end":{"line":200,"col":72}},"generated_from_span":null},"id":282,"kind":{"StorageDead":34},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":200,"col":72},"end":{"line":200,"col":73}},"generated_from_span":null},"id":283,"kind":{"StorageDead":33},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":201,"col":8},"end":{"line":201,"col":18}},"generated_from_span":null},"id":284,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":334}},{"Use":[{"Copy":{"kind":{"Local":3},"ty":{"Deduplicated":334}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":202,"col":4},"end":{"line":202,"col":5}},"generated_from_span":null},"id":285,"kind":{"StorageDead":7},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":202,"col":4},"end":{"line":202,"col":5}},"generated_from_span":null},"id":286,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":202,"col":4},"end":{"line":202,"col":5}},"generated_from_span":null},"id":287,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":202,"col":5},"end":{"line":202,"col":5}},"generated_from_span":null},"id":288,"kind":"Return","comments_before":[]}]},"comments":[[193,["a - b"]],[200,["conditionally add l if the difference is negative"]]]}}},{"def_id":2,"item_meta":{"name":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["mul",0]}],"span":{"data":{"file_id":0,"beg":{"line":314,"col":4},"end":{"line":328,"col":5}},"generated_from_span":null},"source_text":"pub fn mul(a: &Scalar52, b: &Scalar52) -> Scalar52 {\n let mut ab_limbs = Scalar52::mul_internal(a, b);\n let mut ab = Scalar52::montgomery_reduce(&ab_limbs);\n let mut rr_limbs = Scalar52::mul_internal(&ab, &constants::RR);\n let product = Scalar52::montgomery_reduce(&rr_limbs);\n\n #[cfg(feature = \"zeroize\")]\n {\n ab_limbs.zeroize();\n ab.zeroize();\n rr_limbs.zeroize();\n }\n\n product\n }","attr_info":{"attributes":[{"DocComment":" Compute `a * b` (mod l)"},{"Unknown":{"path":"allow","args":"unused_mut"}}],"inline":"Never","rename":null,"public":true},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"},{"index":1,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5386},{"Deduplicated":5387}],"output":{"Deduplicated":334}},"src":"TopLevel","is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":0,"beg":{"line":314,"col":4},"end":{"line":328,"col":5}},"generated_from_span":null},"bound_body_regions":29,"locals":{"arg_count":2,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":0,"beg":{"line":314,"col":46},"end":{"line":314,"col":54}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":1,"name":"a","span":{"data":{"file_id":0,"beg":{"line":314,"col":15},"end":{"line":314,"col":16}},"generated_from_span":null},"ty":{"Deduplicated":463}},{"index":2,"name":"b","span":{"data":{"file_id":0,"beg":{"line":314,"col":29},"end":{"line":314,"col":30}},"generated_from_span":null},"ty":{"Deduplicated":464}},{"index":3,"name":"ab_limbs","span":{"data":{"file_id":0,"beg":{"line":315,"col":12},"end":{"line":315,"col":24}},"generated_from_span":null},"ty":{"HashConsedValue":[1221,{"Array":[{"HashConsedValue":[1220,{"Literal":{"UInt":"U128"}}]},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","9"]}}},"ty":{"Deduplicated":455}}]}]}},{"index":4,"name":null,"span":{"data":{"file_id":0,"beg":{"line":315,"col":50},"end":{"line":315,"col":51}},"generated_from_span":null},"ty":{"HashConsedValue":[1222,{"Ref":[{"Body":3},{"Deduplicated":334},"Shared"]}]}},{"index":5,"name":null,"span":{"data":{"file_id":0,"beg":{"line":315,"col":53},"end":{"line":315,"col":54}},"generated_from_span":null},"ty":{"HashConsedValue":[1223,{"Ref":[{"Body":4},{"Deduplicated":334},"Shared"]}]}},{"index":6,"name":"ab","span":{"data":{"file_id":0,"beg":{"line":316,"col":12},"end":{"line":316,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":7,"name":null,"span":{"data":{"file_id":0,"beg":{"line":316,"col":49},"end":{"line":316,"col":58}},"generated_from_span":null},"ty":{"HashConsedValue":[1226,{"Ref":[{"Body":6},{"Deduplicated":1221},"Shared"]}]}},{"index":8,"name":null,"span":{"data":{"file_id":0,"beg":{"line":316,"col":49},"end":{"line":316,"col":58}},"generated_from_span":null},"ty":{"HashConsedValue":[1227,{"Ref":[{"Body":7},{"Deduplicated":1221},"Shared"]}]}},{"index":9,"name":"rr_limbs","span":{"data":{"file_id":0,"beg":{"line":317,"col":12},"end":{"line":317,"col":24}},"generated_from_span":null},"ty":{"Deduplicated":1221}},{"index":10,"name":null,"span":{"data":{"file_id":0,"beg":{"line":317,"col":50},"end":{"line":317,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":606}},{"index":11,"name":null,"span":{"data":{"file_id":0,"beg":{"line":317,"col":50},"end":{"line":317,"col":53}},"generated_from_span":null},"ty":{"HashConsedValue":[1228,{"Ref":[{"Body":9},{"Deduplicated":334},"Shared"]}]}},{"index":12,"name":null,"span":{"data":{"file_id":0,"beg":{"line":317,"col":55},"end":{"line":317,"col":69}},"generated_from_span":null},"ty":{"Deduplicated":608}},{"index":13,"name":null,"span":{"data":{"file_id":0,"beg":{"line":317,"col":55},"end":{"line":317,"col":69}},"generated_from_span":null},"ty":{"HashConsedValue":[1229,{"Ref":[{"Body":11},{"Deduplicated":334},"Shared"]}]}},{"index":14,"name":"product","span":{"data":{"file_id":0,"beg":{"line":318,"col":12},"end":{"line":318,"col":19}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":15,"name":null,"span":{"data":{"file_id":0,"beg":{"line":318,"col":50},"end":{"line":318,"col":59}},"generated_from_span":null},"ty":{"HashConsedValue":[1230,{"Ref":[{"Body":12},{"Deduplicated":1221},"Shared"]}]}},{"index":16,"name":null,"span":{"data":{"file_id":0,"beg":{"line":318,"col":50},"end":{"line":318,"col":59}},"generated_from_span":null},"ty":{"HashConsedValue":[1231,{"Ref":[{"Body":13},{"Deduplicated":1221},"Shared"]}]}},{"index":17,"name":null,"span":{"data":{"file_id":0,"beg":{"line":317,"col":55},"end":{"line":317,"col":69}},"generated_from_span":null},"ty":{"HashConsedValue":[1232,{"Ref":[{"Body":14},{"Deduplicated":334},"Shared"]}]}},{"index":18,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"HashConsedValue":[1240,{"Ref":[{"Body":21},{"Deduplicated":334},"Shared"]}]}},{"index":19,"name":null,"span":{"data":{"file_id":0,"beg":{"line":317,"col":55},"end":{"line":317,"col":69}},"generated_from_span":null},"ty":{"HashConsedValue":[1280,{"Ref":[{"Body":28},{"Deduplicated":334},"Shared"]}]}},{"index":20,"name":null,"span":{"data":{"file_id":0,"beg":{"line":317,"col":56},"end":{"line":317,"col":69}},"generated_from_span":null},"ty":{"Deduplicated":334}}]},"body":{"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":328,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":0,"beg":{"line":315,"col":12},"end":{"line":315,"col":24}},"generated_from_span":null},"id":289,"kind":{"StorageLive":17},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":315,"col":12},"end":{"line":315,"col":24}},"generated_from_span":null},"id":290,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":315,"col":50},"end":{"line":315,"col":51}},"generated_from_span":null},"id":291,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":315,"col":50},"end":{"line":315,"col":51}},"generated_from_span":null},"id":292,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":1222}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":315,"col":53},"end":{"line":315,"col":54}},"generated_from_span":null},"id":293,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":315,"col":53},"end":{"line":315,"col":54}},"generated_from_span":null},"id":294,"kind":{"Assign":[{"kind":{"Local":5},"ty":{"Deduplicated":1223}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":464}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":315,"col":27},"end":{"line":315,"col":55}},"generated_from_span":null},"id":295,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":18}},"generics":{"regions":[{"Body":17},{"Body":18}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":1222}}},{"Move":{"kind":{"Local":5},"ty":{"Deduplicated":1223}}}],"dest":{"kind":{"Local":3},"ty":{"Deduplicated":1221}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":315,"col":54},"end":{"line":315,"col":55}},"generated_from_span":null},"id":296,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":315,"col":54},"end":{"line":315,"col":55}},"generated_from_span":null},"id":297,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":316,"col":12},"end":{"line":316,"col":18}},"generated_from_span":null},"id":298,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":316,"col":49},"end":{"line":316,"col":58}},"generated_from_span":null},"id":299,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":316,"col":49},"end":{"line":316,"col":58}},"generated_from_span":null},"id":300,"kind":{"StorageLive":8},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":316,"col":49},"end":{"line":316,"col":58}},"generated_from_span":null},"id":301,"kind":{"Assign":[{"kind":{"Local":8},"ty":{"Deduplicated":1227}},{"Ref":{"place":{"kind":{"Local":3},"ty":{"Deduplicated":1221}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":316,"col":49},"end":{"line":316,"col":58}},"generated_from_span":null},"id":302,"kind":{"Assign":[{"kind":{"Local":7},"ty":{"Deduplicated":1226}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":8},"ty":{"Deduplicated":1227}},"Deref"]},"ty":{"Deduplicated":1221}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":316,"col":21},"end":{"line":316,"col":59}},"generated_from_span":null},"id":303,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":6}},"generics":{"regions":[{"Body":20}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":7},"ty":{"Deduplicated":1226}}}],"dest":{"kind":{"Local":6},"ty":{"Deduplicated":334}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"id":304,"kind":{"StorageLive":18},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":317,"col":55},"end":{"line":317,"col":69}},"generated_from_span":null},"id":305,"kind":{"StorageLive":19},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":317,"col":56},"end":{"line":317,"col":69}},"generated_from_span":null},"id":306,"kind":{"StorageLive":20},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":317,"col":56},"end":{"line":317,"col":69}},"generated_from_span":null},"id":307,"kind":{"Assign":[{"kind":{"Local":20},"ty":{"Deduplicated":334}},{"Use":[{"Copy":{"kind":{"Global":{"id":18,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":334}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":317,"col":55},"end":{"line":317,"col":69}},"generated_from_span":null},"id":308,"kind":{"Assign":[{"kind":{"Local":19},"ty":{"Deduplicated":1280}},{"Ref":{"place":{"kind":{"Local":20},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":317,"col":55},"end":{"line":317,"col":69}},"generated_from_span":null},"id":309,"kind":{"Assign":[{"kind":{"Local":18},"ty":{"Deduplicated":1240}},{"Use":[{"Move":{"kind":{"Local":19},"ty":{"Deduplicated":1280}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":316,"col":58},"end":{"line":316,"col":59}},"generated_from_span":null},"id":310,"kind":{"StorageDead":7},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":316,"col":59},"end":{"line":316,"col":60}},"generated_from_span":null},"id":311,"kind":{"StorageDead":8},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":317,"col":12},"end":{"line":317,"col":24}},"generated_from_span":null},"id":312,"kind":{"StorageLive":9},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":317,"col":50},"end":{"line":317,"col":53}},"generated_from_span":null},"id":313,"kind":{"StorageLive":10},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":317,"col":50},"end":{"line":317,"col":53}},"generated_from_span":null},"id":314,"kind":{"StorageLive":11},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":317,"col":50},"end":{"line":317,"col":53}},"generated_from_span":null},"id":315,"kind":{"Assign":[{"kind":{"Local":11},"ty":{"Deduplicated":1228}},{"Ref":{"place":{"kind":{"Local":6},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":317,"col":50},"end":{"line":317,"col":53}},"generated_from_span":null},"id":316,"kind":{"Assign":[{"kind":{"Local":10},"ty":{"Deduplicated":606}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":11},"ty":{"Deduplicated":1228}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":317,"col":55},"end":{"line":317,"col":69}},"generated_from_span":null},"id":317,"kind":{"StorageLive":12},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":317,"col":55},"end":{"line":317,"col":69}},"generated_from_span":null},"id":318,"kind":{"StorageLive":13},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":317,"col":55},"end":{"line":317,"col":69}},"generated_from_span":null},"id":319,"kind":{"Assign":[{"kind":{"Local":17},"ty":{"Deduplicated":1232}},{"Use":[{"Move":{"kind":{"Local":18},"ty":{"Deduplicated":1240}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":317,"col":55},"end":{"line":317,"col":69}},"generated_from_span":null},"id":320,"kind":{"Assign":[{"kind":{"Local":13},"ty":{"Deduplicated":1229}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":17},"ty":{"Deduplicated":1232}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":317,"col":55},"end":{"line":317,"col":69}},"generated_from_span":null},"id":321,"kind":{"Assign":[{"kind":{"Local":12},"ty":{"Deduplicated":608}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":13},"ty":{"Deduplicated":1229}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":317,"col":27},"end":{"line":317,"col":70}},"generated_from_span":null},"id":322,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":18}},"generics":{"regions":[{"Body":24},{"Body":25}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":10},"ty":{"Deduplicated":606}}},{"Move":{"kind":{"Local":12},"ty":{"Deduplicated":608}}}],"dest":{"kind":{"Local":9},"ty":{"Deduplicated":1221}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":317,"col":69},"end":{"line":317,"col":70}},"generated_from_span":null},"id":323,"kind":{"StorageDead":12},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":317,"col":69},"end":{"line":317,"col":70}},"generated_from_span":null},"id":324,"kind":{"StorageDead":10},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":317,"col":70},"end":{"line":317,"col":71}},"generated_from_span":null},"id":325,"kind":{"StorageDead":13},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":317,"col":70},"end":{"line":317,"col":71}},"generated_from_span":null},"id":326,"kind":{"StorageDead":11},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":318,"col":12},"end":{"line":318,"col":19}},"generated_from_span":null},"id":327,"kind":{"StorageLive":14},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":318,"col":50},"end":{"line":318,"col":59}},"generated_from_span":null},"id":328,"kind":{"StorageLive":15},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":318,"col":50},"end":{"line":318,"col":59}},"generated_from_span":null},"id":329,"kind":{"StorageLive":16},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":318,"col":50},"end":{"line":318,"col":59}},"generated_from_span":null},"id":330,"kind":{"Assign":[{"kind":{"Local":16},"ty":{"Deduplicated":1231}},{"Ref":{"place":{"kind":{"Local":9},"ty":{"Deduplicated":1221}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":318,"col":50},"end":{"line":318,"col":59}},"generated_from_span":null},"id":331,"kind":{"Assign":[{"kind":{"Local":15},"ty":{"Deduplicated":1230}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":16},"ty":{"Deduplicated":1231}},"Deref"]},"ty":{"Deduplicated":1221}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":318,"col":22},"end":{"line":318,"col":60}},"generated_from_span":null},"id":332,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":6}},"generics":{"regions":[{"Body":27}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":15},"ty":{"Deduplicated":1230}}}],"dest":{"kind":{"Local":14},"ty":{"Deduplicated":334}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":318,"col":59},"end":{"line":318,"col":60}},"generated_from_span":null},"id":333,"kind":{"StorageDead":15},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":318,"col":60},"end":{"line":318,"col":61}},"generated_from_span":null},"id":334,"kind":{"StorageDead":16},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":327,"col":8},"end":{"line":327,"col":15}},"generated_from_span":null},"id":335,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":334}},{"Use":[{"Copy":{"kind":{"Local":14},"ty":{"Deduplicated":334}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":328,"col":4},"end":{"line":328,"col":5}},"generated_from_span":null},"id":336,"kind":{"StorageDead":14},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":328,"col":4},"end":{"line":328,"col":5}},"generated_from_span":null},"id":337,"kind":{"StorageDead":9},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":328,"col":4},"end":{"line":328,"col":5}},"generated_from_span":null},"id":338,"kind":{"StorageDead":6},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":328,"col":4},"end":{"line":328,"col":5}},"generated_from_span":null},"id":339,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":328,"col":5},"end":{"line":328,"col":5}},"generated_from_span":null},"id":340,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":3,"item_meta":{"name":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["square",0]}],"span":{"data":{"file_id":0,"beg":{"line":334,"col":4},"end":{"line":348,"col":5}},"generated_from_span":null},"source_text":"pub fn square(&self) -> Scalar52 {\n let mut aa_limbs = Scalar52::square_internal(self);\n let mut aa = Scalar52::montgomery_reduce(&aa_limbs);\n let mut rr_limbs = Scalar52::mul_internal(&aa, &constants::RR);\n let square = Scalar52::montgomery_reduce(&rr_limbs);\n\n #[cfg(feature = \"zeroize\")]\n {\n aa_limbs.zeroize();\n aa.zeroize();\n rr_limbs.zeroize();\n }\n\n square\n }","attr_info":{"attributes":[{"DocComment":" Compute `a^2` (mod l)"},{"Unknown":{"path":"allow","args":"unused_mut"}},{"Unknown":{"path":"allow","args":"dead_code"}}],"inline":"Never","rename":null,"public":true},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5386}],"output":{"Deduplicated":334}},"src":"TopLevel","is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":0,"beg":{"line":334,"col":4},"end":{"line":348,"col":5}},"generated_from_span":null},"bound_body_regions":25,"locals":{"arg_count":1,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":0,"beg":{"line":334,"col":28},"end":{"line":334,"col":36}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":1,"name":"self","span":{"data":{"file_id":0,"beg":{"line":334,"col":18},"end":{"line":334,"col":23}},"generated_from_span":null},"ty":{"Deduplicated":463}},{"index":2,"name":"aa_limbs","span":{"data":{"file_id":0,"beg":{"line":335,"col":12},"end":{"line":335,"col":24}},"generated_from_span":null},"ty":{"Deduplicated":1221}},{"index":3,"name":null,"span":{"data":{"file_id":0,"beg":{"line":335,"col":53},"end":{"line":335,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":464}},{"index":4,"name":"aa","span":{"data":{"file_id":0,"beg":{"line":336,"col":12},"end":{"line":336,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":5,"name":null,"span":{"data":{"file_id":0,"beg":{"line":336,"col":49},"end":{"line":336,"col":58}},"generated_from_span":null},"ty":{"HashConsedValue":[1242,{"Ref":[{"Body":4},{"Deduplicated":1221},"Shared"]}]}},{"index":6,"name":null,"span":{"data":{"file_id":0,"beg":{"line":336,"col":49},"end":{"line":336,"col":58}},"generated_from_span":null},"ty":{"HashConsedValue":[1225,{"Ref":[{"Body":5},{"Deduplicated":1221},"Shared"]}]}},{"index":7,"name":"rr_limbs","span":{"data":{"file_id":0,"beg":{"line":337,"col":12},"end":{"line":337,"col":24}},"generated_from_span":null},"ty":{"Deduplicated":1221}},{"index":8,"name":null,"span":{"data":{"file_id":0,"beg":{"line":337,"col":50},"end":{"line":337,"col":53}},"generated_from_span":null},"ty":{"HashConsedValue":[1243,{"Ref":[{"Body":6},{"Deduplicated":334},"Shared"]}]}},{"index":9,"name":null,"span":{"data":{"file_id":0,"beg":{"line":337,"col":50},"end":{"line":337,"col":53}},"generated_from_span":null},"ty":{"HashConsedValue":[1244,{"Ref":[{"Body":7},{"Deduplicated":334},"Shared"]}]}},{"index":10,"name":null,"span":{"data":{"file_id":0,"beg":{"line":337,"col":55},"end":{"line":337,"col":69}},"generated_from_span":null},"ty":{"Deduplicated":606}},{"index":11,"name":null,"span":{"data":{"file_id":0,"beg":{"line":337,"col":55},"end":{"line":337,"col":69}},"generated_from_span":null},"ty":{"Deduplicated":1228}},{"index":12,"name":"square","span":{"data":{"file_id":0,"beg":{"line":338,"col":12},"end":{"line":338,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":13,"name":null,"span":{"data":{"file_id":0,"beg":{"line":338,"col":49},"end":{"line":338,"col":58}},"generated_from_span":null},"ty":{"HashConsedValue":[1245,{"Ref":[{"Body":10},{"Deduplicated":1221},"Shared"]}]}},{"index":14,"name":null,"span":{"data":{"file_id":0,"beg":{"line":338,"col":49},"end":{"line":338,"col":58}},"generated_from_span":null},"ty":{"HashConsedValue":[1246,{"Ref":[{"Body":11},{"Deduplicated":1221},"Shared"]}]}},{"index":15,"name":null,"span":{"data":{"file_id":0,"beg":{"line":337,"col":55},"end":{"line":337,"col":69}},"generated_from_span":null},"ty":{"HashConsedValue":[1247,{"Ref":[{"Body":12},{"Deduplicated":334},"Shared"]}]}},{"index":16,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":617}},{"index":17,"name":null,"span":{"data":{"file_id":0,"beg":{"line":337,"col":55},"end":{"line":337,"col":69}},"generated_from_span":null},"ty":{"Deduplicated":990}},{"index":18,"name":null,"span":{"data":{"file_id":0,"beg":{"line":337,"col":56},"end":{"line":337,"col":69}},"generated_from_span":null},"ty":{"Deduplicated":334}}]},"body":{"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":348,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":0,"beg":{"line":335,"col":12},"end":{"line":335,"col":24}},"generated_from_span":null},"id":341,"kind":{"StorageLive":15},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":335,"col":12},"end":{"line":335,"col":24}},"generated_from_span":null},"id":342,"kind":{"StorageLive":2},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":335,"col":53},"end":{"line":335,"col":57}},"generated_from_span":null},"id":343,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":335,"col":53},"end":{"line":335,"col":57}},"generated_from_span":null},"id":344,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":464}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":335,"col":27},"end":{"line":335,"col":58}},"generated_from_span":null},"id":345,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":19}},"generics":{"regions":[{"Body":14}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":3},"ty":{"Deduplicated":464}}}],"dest":{"kind":{"Local":2},"ty":{"Deduplicated":1221}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":335,"col":57},"end":{"line":335,"col":58}},"generated_from_span":null},"id":346,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":336,"col":12},"end":{"line":336,"col":18}},"generated_from_span":null},"id":347,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":336,"col":49},"end":{"line":336,"col":58}},"generated_from_span":null},"id":348,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":336,"col":49},"end":{"line":336,"col":58}},"generated_from_span":null},"id":349,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":336,"col":49},"end":{"line":336,"col":58}},"generated_from_span":null},"id":350,"kind":{"Assign":[{"kind":{"Local":6},"ty":{"Deduplicated":1225}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":1221}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":336,"col":49},"end":{"line":336,"col":58}},"generated_from_span":null},"id":351,"kind":{"Assign":[{"kind":{"Local":5},"ty":{"Deduplicated":1242}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":6},"ty":{"Deduplicated":1225}},"Deref"]},"ty":{"Deduplicated":1221}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":336,"col":21},"end":{"line":336,"col":59}},"generated_from_span":null},"id":352,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":6}},"generics":{"regions":[{"Body":16}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":5},"ty":{"Deduplicated":1242}}}],"dest":{"kind":{"Local":4},"ty":{"Deduplicated":334}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"id":353,"kind":{"StorageLive":16},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":337,"col":55},"end":{"line":337,"col":69}},"generated_from_span":null},"id":354,"kind":{"StorageLive":17},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":337,"col":56},"end":{"line":337,"col":69}},"generated_from_span":null},"id":355,"kind":{"StorageLive":18},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":337,"col":56},"end":{"line":337,"col":69}},"generated_from_span":null},"id":356,"kind":{"Assign":[{"kind":{"Local":18},"ty":{"Deduplicated":334}},{"Use":[{"Copy":{"kind":{"Global":{"id":18,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":334}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":337,"col":55},"end":{"line":337,"col":69}},"generated_from_span":null},"id":357,"kind":{"Assign":[{"kind":{"Local":17},"ty":{"Deduplicated":990}},{"Ref":{"place":{"kind":{"Local":18},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":337,"col":55},"end":{"line":337,"col":69}},"generated_from_span":null},"id":358,"kind":{"Assign":[{"kind":{"Local":16},"ty":{"Deduplicated":617}},{"Use":[{"Move":{"kind":{"Local":17},"ty":{"Deduplicated":990}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":336,"col":58},"end":{"line":336,"col":59}},"generated_from_span":null},"id":359,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":336,"col":59},"end":{"line":336,"col":60}},"generated_from_span":null},"id":360,"kind":{"StorageDead":6},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":337,"col":12},"end":{"line":337,"col":24}},"generated_from_span":null},"id":361,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":337,"col":50},"end":{"line":337,"col":53}},"generated_from_span":null},"id":362,"kind":{"StorageLive":8},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":337,"col":50},"end":{"line":337,"col":53}},"generated_from_span":null},"id":363,"kind":{"StorageLive":9},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":337,"col":50},"end":{"line":337,"col":53}},"generated_from_span":null},"id":364,"kind":{"Assign":[{"kind":{"Local":9},"ty":{"Deduplicated":1244}},{"Ref":{"place":{"kind":{"Local":4},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":337,"col":50},"end":{"line":337,"col":53}},"generated_from_span":null},"id":365,"kind":{"Assign":[{"kind":{"Local":8},"ty":{"Deduplicated":1243}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":9},"ty":{"Deduplicated":1244}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":337,"col":55},"end":{"line":337,"col":69}},"generated_from_span":null},"id":366,"kind":{"StorageLive":10},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":337,"col":55},"end":{"line":337,"col":69}},"generated_from_span":null},"id":367,"kind":{"StorageLive":11},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":337,"col":55},"end":{"line":337,"col":69}},"generated_from_span":null},"id":368,"kind":{"Assign":[{"kind":{"Local":15},"ty":{"Deduplicated":1247}},{"Use":[{"Move":{"kind":{"Local":16},"ty":{"Deduplicated":617}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":337,"col":55},"end":{"line":337,"col":69}},"generated_from_span":null},"id":369,"kind":{"Assign":[{"kind":{"Local":11},"ty":{"Deduplicated":1228}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":15},"ty":{"Deduplicated":1247}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":337,"col":55},"end":{"line":337,"col":69}},"generated_from_span":null},"id":370,"kind":{"Assign":[{"kind":{"Local":10},"ty":{"Deduplicated":606}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":11},"ty":{"Deduplicated":1228}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":337,"col":27},"end":{"line":337,"col":70}},"generated_from_span":null},"id":371,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":18}},"generics":{"regions":[{"Body":20},{"Body":21}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":8},"ty":{"Deduplicated":1243}}},{"Move":{"kind":{"Local":10},"ty":{"Deduplicated":606}}}],"dest":{"kind":{"Local":7},"ty":{"Deduplicated":1221}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":337,"col":69},"end":{"line":337,"col":70}},"generated_from_span":null},"id":372,"kind":{"StorageDead":10},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":337,"col":69},"end":{"line":337,"col":70}},"generated_from_span":null},"id":373,"kind":{"StorageDead":8},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":337,"col":70},"end":{"line":337,"col":71}},"generated_from_span":null},"id":374,"kind":{"StorageDead":11},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":337,"col":70},"end":{"line":337,"col":71}},"generated_from_span":null},"id":375,"kind":{"StorageDead":9},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":338,"col":12},"end":{"line":338,"col":18}},"generated_from_span":null},"id":376,"kind":{"StorageLive":12},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":338,"col":49},"end":{"line":338,"col":58}},"generated_from_span":null},"id":377,"kind":{"StorageLive":13},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":338,"col":49},"end":{"line":338,"col":58}},"generated_from_span":null},"id":378,"kind":{"StorageLive":14},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":338,"col":49},"end":{"line":338,"col":58}},"generated_from_span":null},"id":379,"kind":{"Assign":[{"kind":{"Local":14},"ty":{"Deduplicated":1246}},{"Ref":{"place":{"kind":{"Local":7},"ty":{"Deduplicated":1221}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":338,"col":49},"end":{"line":338,"col":58}},"generated_from_span":null},"id":380,"kind":{"Assign":[{"kind":{"Local":13},"ty":{"Deduplicated":1245}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":14},"ty":{"Deduplicated":1246}},"Deref"]},"ty":{"Deduplicated":1221}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":338,"col":21},"end":{"line":338,"col":59}},"generated_from_span":null},"id":381,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":6}},"generics":{"regions":[{"Body":23}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":13},"ty":{"Deduplicated":1245}}}],"dest":{"kind":{"Local":12},"ty":{"Deduplicated":334}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":338,"col":58},"end":{"line":338,"col":59}},"generated_from_span":null},"id":382,"kind":{"StorageDead":13},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":338,"col":59},"end":{"line":338,"col":60}},"generated_from_span":null},"id":383,"kind":{"StorageDead":14},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":347,"col":8},"end":{"line":347,"col":14}},"generated_from_span":null},"id":384,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":334}},{"Use":[{"Copy":{"kind":{"Local":12},"ty":{"Deduplicated":334}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":348,"col":4},"end":{"line":348,"col":5}},"generated_from_span":null},"id":385,"kind":{"StorageDead":12},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":348,"col":4},"end":{"line":348,"col":5}},"generated_from_span":null},"id":386,"kind":{"StorageDead":7},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":348,"col":4},"end":{"line":348,"col":5}},"generated_from_span":null},"id":387,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":348,"col":4},"end":{"line":348,"col":5}},"generated_from_span":null},"id":388,"kind":{"StorageDead":2},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":348,"col":5},"end":{"line":348,"col":5}},"generated_from_span":null},"id":389,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":4,"item_meta":{"name":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["montgomery_mul",0]}],"span":{"data":{"file_id":0,"beg":{"line":353,"col":4},"end":{"line":361,"col":5}},"generated_from_span":null},"source_text":"pub fn montgomery_mul(a: &Scalar52, b: &Scalar52) -> Scalar52 {\n let mut limbs = Scalar52::mul_internal(a, b);\n let product = Scalar52::montgomery_reduce(&limbs);\n\n #[cfg(feature = \"zeroize\")]\n limbs.zeroize();\n\n product\n }","attr_info":{"attributes":[{"DocComment":" Compute `(a * b) / R` (mod l), where R is the Montgomery modulus 2^260"},{"Unknown":{"path":"allow","args":"unused_mut"}}],"inline":"Never","rename":null,"public":true},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"},{"index":1,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5386},{"Deduplicated":5387}],"output":{"Deduplicated":334}},"src":"TopLevel","is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":0,"beg":{"line":353,"col":4},"end":{"line":361,"col":5}},"generated_from_span":null},"bound_body_regions":14,"locals":{"arg_count":2,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":0,"beg":{"line":353,"col":57},"end":{"line":353,"col":65}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":1,"name":"a","span":{"data":{"file_id":0,"beg":{"line":353,"col":26},"end":{"line":353,"col":27}},"generated_from_span":null},"ty":{"Deduplicated":463}},{"index":2,"name":"b","span":{"data":{"file_id":0,"beg":{"line":353,"col":40},"end":{"line":353,"col":41}},"generated_from_span":null},"ty":{"Deduplicated":464}},{"index":3,"name":"limbs","span":{"data":{"file_id":0,"beg":{"line":354,"col":12},"end":{"line":354,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":1221}},{"index":4,"name":null,"span":{"data":{"file_id":0,"beg":{"line":354,"col":47},"end":{"line":354,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1222}},{"index":5,"name":null,"span":{"data":{"file_id":0,"beg":{"line":354,"col":50},"end":{"line":354,"col":51}},"generated_from_span":null},"ty":{"Deduplicated":1223}},{"index":6,"name":"product","span":{"data":{"file_id":0,"beg":{"line":355,"col":12},"end":{"line":355,"col":19}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":7,"name":null,"span":{"data":{"file_id":0,"beg":{"line":355,"col":50},"end":{"line":355,"col":56}},"generated_from_span":null},"ty":{"Deduplicated":1226}},{"index":8,"name":null,"span":{"data":{"file_id":0,"beg":{"line":355,"col":50},"end":{"line":355,"col":56}},"generated_from_span":null},"ty":{"Deduplicated":1227}}]},"body":{"span":{"data":{"file_id":0,"beg":{"line":354,"col":12},"end":{"line":361,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":0,"beg":{"line":354,"col":12},"end":{"line":354,"col":21}},"generated_from_span":null},"id":390,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":354,"col":47},"end":{"line":354,"col":48}},"generated_from_span":null},"id":391,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":354,"col":47},"end":{"line":354,"col":48}},"generated_from_span":null},"id":392,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":1222}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":354,"col":50},"end":{"line":354,"col":51}},"generated_from_span":null},"id":393,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":354,"col":50},"end":{"line":354,"col":51}},"generated_from_span":null},"id":394,"kind":{"Assign":[{"kind":{"Local":5},"ty":{"Deduplicated":1223}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":464}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":354,"col":24},"end":{"line":354,"col":52}},"generated_from_span":null},"id":395,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":18}},"generics":{"regions":[{"Body":10},{"Body":11}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":1222}}},{"Move":{"kind":{"Local":5},"ty":{"Deduplicated":1223}}}],"dest":{"kind":{"Local":3},"ty":{"Deduplicated":1221}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":354,"col":51},"end":{"line":354,"col":52}},"generated_from_span":null},"id":396,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":354,"col":51},"end":{"line":354,"col":52}},"generated_from_span":null},"id":397,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":355,"col":12},"end":{"line":355,"col":19}},"generated_from_span":null},"id":398,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":355,"col":50},"end":{"line":355,"col":56}},"generated_from_span":null},"id":399,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":355,"col":50},"end":{"line":355,"col":56}},"generated_from_span":null},"id":400,"kind":{"StorageLive":8},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":355,"col":50},"end":{"line":355,"col":56}},"generated_from_span":null},"id":401,"kind":{"Assign":[{"kind":{"Local":8},"ty":{"Deduplicated":1227}},{"Ref":{"place":{"kind":{"Local":3},"ty":{"Deduplicated":1221}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":355,"col":50},"end":{"line":355,"col":56}},"generated_from_span":null},"id":402,"kind":{"Assign":[{"kind":{"Local":7},"ty":{"Deduplicated":1226}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":8},"ty":{"Deduplicated":1227}},"Deref"]},"ty":{"Deduplicated":1221}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":355,"col":22},"end":{"line":355,"col":57}},"generated_from_span":null},"id":403,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":6}},"generics":{"regions":[{"Body":13}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":7},"ty":{"Deduplicated":1226}}}],"dest":{"kind":{"Local":6},"ty":{"Deduplicated":334}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":355,"col":56},"end":{"line":355,"col":57}},"generated_from_span":null},"id":404,"kind":{"StorageDead":7},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":355,"col":57},"end":{"line":355,"col":58}},"generated_from_span":null},"id":405,"kind":{"StorageDead":8},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":360,"col":8},"end":{"line":360,"col":15}},"generated_from_span":null},"id":406,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":334}},{"Use":[{"Copy":{"kind":{"Local":6},"ty":{"Deduplicated":334}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":361,"col":4},"end":{"line":361,"col":5}},"generated_from_span":null},"id":407,"kind":{"StorageDead":6},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":361,"col":4},"end":{"line":361,"col":5}},"generated_from_span":null},"id":408,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":361,"col":5},"end":{"line":361,"col":5}},"generated_from_span":null},"id":409,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":5,"item_meta":{"name":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["montgomery_square",0]}],"span":{"data":{"file_id":0,"beg":{"line":366,"col":4},"end":{"line":374,"col":5}},"generated_from_span":null},"source_text":"pub fn montgomery_square(&self) -> Scalar52 {\n let mut limbs = Scalar52::square_internal(self);\n let square = Scalar52::montgomery_reduce(&limbs);\n\n #[cfg(feature = \"zeroize\")]\n limbs.zeroize();\n\n square\n }","attr_info":{"attributes":[{"DocComment":" Compute `(a^2) / R` (mod l) in Montgomery form, where R is the Montgomery modulus 2^260"},{"Unknown":{"path":"allow","args":"unused_mut"}}],"inline":"Never","rename":null,"public":true},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5386}],"output":{"Deduplicated":334}},"src":"TopLevel","is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":0,"beg":{"line":366,"col":4},"end":{"line":374,"col":5}},"generated_from_span":null},"bound_body_regions":10,"locals":{"arg_count":1,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":0,"beg":{"line":366,"col":39},"end":{"line":366,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":1,"name":"self","span":{"data":{"file_id":0,"beg":{"line":366,"col":29},"end":{"line":366,"col":34}},"generated_from_span":null},"ty":{"Deduplicated":463}},{"index":2,"name":"limbs","span":{"data":{"file_id":0,"beg":{"line":367,"col":12},"end":{"line":367,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":1221}},{"index":3,"name":null,"span":{"data":{"file_id":0,"beg":{"line":367,"col":50},"end":{"line":367,"col":54}},"generated_from_span":null},"ty":{"Deduplicated":464}},{"index":4,"name":"square","span":{"data":{"file_id":0,"beg":{"line":368,"col":12},"end":{"line":368,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":5,"name":null,"span":{"data":{"file_id":0,"beg":{"line":368,"col":49},"end":{"line":368,"col":55}},"generated_from_span":null},"ty":{"Deduplicated":1242}},{"index":6,"name":null,"span":{"data":{"file_id":0,"beg":{"line":368,"col":49},"end":{"line":368,"col":55}},"generated_from_span":null},"ty":{"Deduplicated":1225}}]},"body":{"span":{"data":{"file_id":0,"beg":{"line":367,"col":12},"end":{"line":374,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":0,"beg":{"line":367,"col":12},"end":{"line":367,"col":21}},"generated_from_span":null},"id":410,"kind":{"StorageLive":2},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":367,"col":50},"end":{"line":367,"col":54}},"generated_from_span":null},"id":411,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":367,"col":50},"end":{"line":367,"col":54}},"generated_from_span":null},"id":412,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":464}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":367,"col":24},"end":{"line":367,"col":55}},"generated_from_span":null},"id":413,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":19}},"generics":{"regions":[{"Body":7}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":3},"ty":{"Deduplicated":464}}}],"dest":{"kind":{"Local":2},"ty":{"Deduplicated":1221}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":367,"col":54},"end":{"line":367,"col":55}},"generated_from_span":null},"id":414,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":368,"col":12},"end":{"line":368,"col":18}},"generated_from_span":null},"id":415,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":368,"col":49},"end":{"line":368,"col":55}},"generated_from_span":null},"id":416,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":368,"col":49},"end":{"line":368,"col":55}},"generated_from_span":null},"id":417,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":368,"col":49},"end":{"line":368,"col":55}},"generated_from_span":null},"id":418,"kind":{"Assign":[{"kind":{"Local":6},"ty":{"Deduplicated":1225}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":1221}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":368,"col":49},"end":{"line":368,"col":55}},"generated_from_span":null},"id":419,"kind":{"Assign":[{"kind":{"Local":5},"ty":{"Deduplicated":1242}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":6},"ty":{"Deduplicated":1225}},"Deref"]},"ty":{"Deduplicated":1221}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":368,"col":21},"end":{"line":368,"col":56}},"generated_from_span":null},"id":420,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":6}},"generics":{"regions":[{"Body":9}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":5},"ty":{"Deduplicated":1242}}}],"dest":{"kind":{"Local":4},"ty":{"Deduplicated":334}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":368,"col":55},"end":{"line":368,"col":56}},"generated_from_span":null},"id":421,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":368,"col":56},"end":{"line":368,"col":57}},"generated_from_span":null},"id":422,"kind":{"StorageDead":6},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":373,"col":8},"end":{"line":373,"col":14}},"generated_from_span":null},"id":423,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":334}},{"Use":[{"Copy":{"kind":{"Local":4},"ty":{"Deduplicated":334}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":374,"col":4},"end":{"line":374,"col":5}},"generated_from_span":null},"id":424,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":374,"col":4},"end":{"line":374,"col":5}},"generated_from_span":null},"id":425,"kind":{"StorageDead":2},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":374,"col":5},"end":{"line":374,"col":5}},"generated_from_span":null},"id":426,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":6,"item_meta":{"name":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["montgomery_reduce",0]}],"span":{"data":{"file_id":0,"beg":{"line":276,"col":4},"end":{"line":309,"col":5}},"generated_from_span":null},"source_text":"pub (crate) fn montgomery_reduce(limbs: &[u128; 9]) -> Scalar52 {\n\n #[inline(always)]\n fn part1(sum: u128) -> (u128, u64) {\n let p = (sum as u64).wrapping_mul(constants::LFACTOR) & ((1u64 << 52) - 1);\n ((sum + m(p, constants::L[0])) >> 52, p)\n }\n\n #[inline(always)]\n fn part2(sum: u128) -> (u128, u64) {\n let w = (sum as u64) & ((1u64 << 52) - 1);\n (sum >> 52, w)\n }\n\n // note: l[3] is zero, so its multiples can be skipped\n let l = &constants::L;\n\n // the first half computes the Montgomery adjustment factor n, and begins adding n*l to make limbs divisible by R\n let (carry, n0) = part1( limbs[0]);\n let (carry, n1) = part1(carry + limbs[1] + m(n0, l[1]));\n let (carry, n2) = part1(carry + limbs[2] + m(n0, l[2]) + m(n1, l[1]));\n let (carry, n3) = part1(carry + limbs[3] + m(n1, l[2]) + m(n2, l[1]));\n let (carry, n4) = part1(carry + limbs[4] + m(n0, l[4]) + m(n2, l[2]) + m(n3, l[1]));\n\n // limbs is divisible by R now, so we can divide by R by simply storing the upper half as the result\n let (carry, r0) = part2(carry + limbs[5] + m(n1, l[4]) + m(n3, l[2]) + m(n4, l[1]));\n let (carry, r1) = part2(carry + limbs[6] + m(n2,l[4]) + m(n4, l[2]));\n let (carry, r2) = part2(carry + limbs[7] + m(n3, l[4]) );\n let (carry, r3) = part2(carry + limbs[8] + m(n4, l[4]));\n let r4 = carry as u64;\n\n // result may be >= l, so attempt to subtract l\n Scalar52::sub(&Scalar52([r0, r1, r2, r3, r4]), l)\n }","attr_info":{"attributes":[{"DocComment":" Compute `limbs/R` (mod l), where R is the Montgomery modulus 2^260"},{"Unknown":{"path":"rustfmt::skip","args":null}}],"inline":"Always","rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"HashConsedValue":[5388,{"Ref":[{"Var":{"Free":0}},{"Deduplicated":1221},"Shared"]}]}],"output":{"Deduplicated":334}},"src":"TopLevel","is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":0,"beg":{"line":276,"col":4},"end":{"line":309,"col":5}},"generated_from_span":null},"bound_body_regions":75,"locals":{"arg_count":1,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":0,"beg":{"line":276,"col":59},"end":{"line":276,"col":67}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":1,"name":"limbs","span":{"data":{"file_id":0,"beg":{"line":276,"col":37},"end":{"line":276,"col":42}},"generated_from_span":null},"ty":{"HashConsedValue":[1261,{"Ref":[{"Body":1},{"Deduplicated":1221},"Shared"]}]}},{"index":2,"name":"l","span":{"data":{"file_id":0,"beg":{"line":291,"col":12},"end":{"line":291,"col":13}},"generated_from_span":null},"ty":{"Deduplicated":1222}},{"index":3,"name":"carry","span":{"data":{"file_id":0,"beg":{"line":294,"col":13},"end":{"line":294,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":4,"name":"n0","span":{"data":{"file_id":0,"beg":{"line":294,"col":20},"end":{"line":294,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":5,"name":null,"span":{"data":{"file_id":0,"beg":{"line":294,"col":26},"end":{"line":294,"col":49}},"generated_from_span":null},"ty":{"HashConsedValue":[1262,{"Adt":{"id":"Tuple","generics":{"regions":[],"types":[{"Deduplicated":1220},{"Deduplicated":454}],"const_generics":[],"trait_refs":[]}}}]}},{"index":6,"name":null,"span":{"data":{"file_id":0,"beg":{"line":294,"col":40},"end":{"line":294,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":7,"name":null,"span":{"data":{"file_id":0,"beg":{"line":294,"col":46},"end":{"line":294,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":8,"name":"carry","span":{"data":{"file_id":0,"beg":{"line":295,"col":13},"end":{"line":295,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":9,"name":"n1","span":{"data":{"file_id":0,"beg":{"line":295,"col":20},"end":{"line":295,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":10,"name":null,"span":{"data":{"file_id":0,"beg":{"line":295,"col":26},"end":{"line":295,"col":63}},"generated_from_span":null},"ty":{"Deduplicated":1262}},{"index":11,"name":null,"span":{"data":{"file_id":0,"beg":{"line":295,"col":32},"end":{"line":295,"col":62}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":12,"name":null,"span":{"data":{"file_id":0,"beg":{"line":295,"col":32},"end":{"line":295,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":13,"name":null,"span":{"data":{"file_id":0,"beg":{"line":295,"col":32},"end":{"line":295,"col":37}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":14,"name":null,"span":{"data":{"file_id":0,"beg":{"line":295,"col":40},"end":{"line":295,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":15,"name":null,"span":{"data":{"file_id":0,"beg":{"line":295,"col":46},"end":{"line":295,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":16,"name":null,"span":{"data":{"file_id":0,"beg":{"line":295,"col":32},"end":{"line":295,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":17,"name":null,"span":{"data":{"file_id":0,"beg":{"line":295,"col":51},"end":{"line":295,"col":62}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":18,"name":null,"span":{"data":{"file_id":0,"beg":{"line":295,"col":53},"end":{"line":295,"col":55}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":19,"name":null,"span":{"data":{"file_id":0,"beg":{"line":295,"col":57},"end":{"line":295,"col":61}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":20,"name":null,"span":{"data":{"file_id":0,"beg":{"line":295,"col":58},"end":{"line":295,"col":61}},"generated_from_span":null},"ty":{"HashConsedValue":[1267,{"Ref":[{"Body":5},{"Deduplicated":454},"Shared"]}]}},{"index":21,"name":null,"span":{"data":{"file_id":0,"beg":{"line":295,"col":57},"end":{"line":295,"col":58}},"generated_from_span":null},"ty":{"Deduplicated":1243}},{"index":22,"name":null,"span":{"data":{"file_id":0,"beg":{"line":295,"col":32},"end":{"line":295,"col":62}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":23,"name":"carry","span":{"data":{"file_id":0,"beg":{"line":296,"col":13},"end":{"line":296,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":24,"name":"n2","span":{"data":{"file_id":0,"beg":{"line":296,"col":20},"end":{"line":296,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":25,"name":null,"span":{"data":{"file_id":0,"beg":{"line":296,"col":26},"end":{"line":296,"col":77}},"generated_from_span":null},"ty":{"Deduplicated":1262}},{"index":26,"name":null,"span":{"data":{"file_id":0,"beg":{"line":296,"col":32},"end":{"line":296,"col":76}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":27,"name":null,"span":{"data":{"file_id":0,"beg":{"line":296,"col":32},"end":{"line":296,"col":62}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":28,"name":null,"span":{"data":{"file_id":0,"beg":{"line":296,"col":32},"end":{"line":296,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":29,"name":null,"span":{"data":{"file_id":0,"beg":{"line":296,"col":32},"end":{"line":296,"col":37}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":30,"name":null,"span":{"data":{"file_id":0,"beg":{"line":296,"col":40},"end":{"line":296,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":31,"name":null,"span":{"data":{"file_id":0,"beg":{"line":296,"col":46},"end":{"line":296,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":32,"name":null,"span":{"data":{"file_id":0,"beg":{"line":296,"col":32},"end":{"line":296,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":33,"name":null,"span":{"data":{"file_id":0,"beg":{"line":296,"col":51},"end":{"line":296,"col":62}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":34,"name":null,"span":{"data":{"file_id":0,"beg":{"line":296,"col":53},"end":{"line":296,"col":55}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":35,"name":null,"span":{"data":{"file_id":0,"beg":{"line":296,"col":57},"end":{"line":296,"col":61}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":36,"name":null,"span":{"data":{"file_id":0,"beg":{"line":296,"col":58},"end":{"line":296,"col":61}},"generated_from_span":null},"ty":{"Deduplicated":605}},{"index":37,"name":null,"span":{"data":{"file_id":0,"beg":{"line":296,"col":57},"end":{"line":296,"col":58}},"generated_from_span":null},"ty":{"Deduplicated":606}},{"index":38,"name":null,"span":{"data":{"file_id":0,"beg":{"line":296,"col":32},"end":{"line":296,"col":62}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":39,"name":null,"span":{"data":{"file_id":0,"beg":{"line":296,"col":65},"end":{"line":296,"col":76}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":40,"name":null,"span":{"data":{"file_id":0,"beg":{"line":296,"col":67},"end":{"line":296,"col":69}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":41,"name":null,"span":{"data":{"file_id":0,"beg":{"line":296,"col":71},"end":{"line":296,"col":75}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":42,"name":null,"span":{"data":{"file_id":0,"beg":{"line":296,"col":72},"end":{"line":296,"col":75}},"generated_from_span":null},"ty":{"Deduplicated":607}},{"index":43,"name":null,"span":{"data":{"file_id":0,"beg":{"line":296,"col":71},"end":{"line":296,"col":72}},"generated_from_span":null},"ty":{"Deduplicated":608}},{"index":44,"name":null,"span":{"data":{"file_id":0,"beg":{"line":296,"col":32},"end":{"line":296,"col":76}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":45,"name":"carry","span":{"data":{"file_id":0,"beg":{"line":297,"col":13},"end":{"line":297,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":46,"name":"n3","span":{"data":{"file_id":0,"beg":{"line":297,"col":20},"end":{"line":297,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":47,"name":null,"span":{"data":{"file_id":0,"beg":{"line":297,"col":26},"end":{"line":297,"col":91}},"generated_from_span":null},"ty":{"Deduplicated":1262}},{"index":48,"name":null,"span":{"data":{"file_id":0,"beg":{"line":297,"col":32},"end":{"line":297,"col":90}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":49,"name":null,"span":{"data":{"file_id":0,"beg":{"line":297,"col":32},"end":{"line":297,"col":76}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":50,"name":null,"span":{"data":{"file_id":0,"beg":{"line":297,"col":32},"end":{"line":297,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":51,"name":null,"span":{"data":{"file_id":0,"beg":{"line":297,"col":32},"end":{"line":297,"col":37}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":52,"name":null,"span":{"data":{"file_id":0,"beg":{"line":297,"col":40},"end":{"line":297,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":53,"name":null,"span":{"data":{"file_id":0,"beg":{"line":297,"col":46},"end":{"line":297,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":54,"name":null,"span":{"data":{"file_id":0,"beg":{"line":297,"col":32},"end":{"line":297,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":55,"name":null,"span":{"data":{"file_id":0,"beg":{"line":297,"col":65},"end":{"line":297,"col":76}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":56,"name":null,"span":{"data":{"file_id":0,"beg":{"line":297,"col":67},"end":{"line":297,"col":69}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":57,"name":null,"span":{"data":{"file_id":0,"beg":{"line":297,"col":71},"end":{"line":297,"col":75}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":58,"name":null,"span":{"data":{"file_id":0,"beg":{"line":297,"col":72},"end":{"line":297,"col":75}},"generated_from_span":null},"ty":{"HashConsedValue":[1268,{"Ref":[{"Body":11},{"Deduplicated":454},"Shared"]}]}},{"index":59,"name":null,"span":{"data":{"file_id":0,"beg":{"line":297,"col":71},"end":{"line":297,"col":72}},"generated_from_span":null},"ty":{"Deduplicated":1247}},{"index":60,"name":null,"span":{"data":{"file_id":0,"beg":{"line":297,"col":32},"end":{"line":297,"col":76}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":61,"name":null,"span":{"data":{"file_id":0,"beg":{"line":297,"col":79},"end":{"line":297,"col":90}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":62,"name":null,"span":{"data":{"file_id":0,"beg":{"line":297,"col":81},"end":{"line":297,"col":83}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":63,"name":null,"span":{"data":{"file_id":0,"beg":{"line":297,"col":85},"end":{"line":297,"col":89}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":64,"name":null,"span":{"data":{"file_id":0,"beg":{"line":297,"col":86},"end":{"line":297,"col":89}},"generated_from_span":null},"ty":{"HashConsedValue":[1269,{"Ref":[{"Body":13},{"Deduplicated":454},"Shared"]}]}},{"index":65,"name":null,"span":{"data":{"file_id":0,"beg":{"line":297,"col":85},"end":{"line":297,"col":86}},"generated_from_span":null},"ty":{"Deduplicated":1232}},{"index":66,"name":null,"span":{"data":{"file_id":0,"beg":{"line":297,"col":32},"end":{"line":297,"col":90}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":67,"name":"carry","span":{"data":{"file_id":0,"beg":{"line":298,"col":13},"end":{"line":298,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":68,"name":"n4","span":{"data":{"file_id":0,"beg":{"line":298,"col":20},"end":{"line":298,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":69,"name":null,"span":{"data":{"file_id":0,"beg":{"line":298,"col":26},"end":{"line":298,"col":105}},"generated_from_span":null},"ty":{"Deduplicated":1262}},{"index":70,"name":null,"span":{"data":{"file_id":0,"beg":{"line":298,"col":32},"end":{"line":298,"col":104}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":71,"name":null,"span":{"data":{"file_id":0,"beg":{"line":298,"col":32},"end":{"line":298,"col":90}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":72,"name":null,"span":{"data":{"file_id":0,"beg":{"line":298,"col":32},"end":{"line":298,"col":62}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":73,"name":null,"span":{"data":{"file_id":0,"beg":{"line":298,"col":32},"end":{"line":298,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":74,"name":null,"span":{"data":{"file_id":0,"beg":{"line":298,"col":32},"end":{"line":298,"col":37}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":75,"name":null,"span":{"data":{"file_id":0,"beg":{"line":298,"col":40},"end":{"line":298,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":76,"name":null,"span":{"data":{"file_id":0,"beg":{"line":298,"col":46},"end":{"line":298,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":77,"name":null,"span":{"data":{"file_id":0,"beg":{"line":298,"col":32},"end":{"line":298,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":78,"name":null,"span":{"data":{"file_id":0,"beg":{"line":298,"col":51},"end":{"line":298,"col":62}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":79,"name":null,"span":{"data":{"file_id":0,"beg":{"line":298,"col":53},"end":{"line":298,"col":55}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":80,"name":null,"span":{"data":{"file_id":0,"beg":{"line":298,"col":57},"end":{"line":298,"col":61}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":81,"name":null,"span":{"data":{"file_id":0,"beg":{"line":298,"col":58},"end":{"line":298,"col":61}},"generated_from_span":null},"ty":{"HashConsedValue":[1270,{"Ref":[{"Body":15},{"Deduplicated":454},"Shared"]}]}},{"index":82,"name":null,"span":{"data":{"file_id":0,"beg":{"line":298,"col":57},"end":{"line":298,"col":58}},"generated_from_span":null},"ty":{"Deduplicated":616}},{"index":83,"name":null,"span":{"data":{"file_id":0,"beg":{"line":298,"col":32},"end":{"line":298,"col":62}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":84,"name":null,"span":{"data":{"file_id":0,"beg":{"line":298,"col":79},"end":{"line":298,"col":90}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":85,"name":null,"span":{"data":{"file_id":0,"beg":{"line":298,"col":81},"end":{"line":298,"col":83}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":86,"name":null,"span":{"data":{"file_id":0,"beg":{"line":298,"col":85},"end":{"line":298,"col":89}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":87,"name":null,"span":{"data":{"file_id":0,"beg":{"line":298,"col":86},"end":{"line":298,"col":89}},"generated_from_span":null},"ty":{"HashConsedValue":[1271,{"Ref":[{"Body":17},{"Deduplicated":454},"Shared"]}]}},{"index":88,"name":null,"span":{"data":{"file_id":0,"beg":{"line":298,"col":85},"end":{"line":298,"col":86}},"generated_from_span":null},"ty":{"Deduplicated":618}},{"index":89,"name":null,"span":{"data":{"file_id":0,"beg":{"line":298,"col":32},"end":{"line":298,"col":90}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":90,"name":null,"span":{"data":{"file_id":0,"beg":{"line":298,"col":93},"end":{"line":298,"col":104}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":91,"name":null,"span":{"data":{"file_id":0,"beg":{"line":298,"col":95},"end":{"line":298,"col":97}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":92,"name":null,"span":{"data":{"file_id":0,"beg":{"line":298,"col":99},"end":{"line":298,"col":103}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":93,"name":null,"span":{"data":{"file_id":0,"beg":{"line":298,"col":100},"end":{"line":298,"col":103}},"generated_from_span":null},"ty":{"HashConsedValue":[1272,{"Ref":[{"Body":19},{"Deduplicated":454},"Shared"]}]}},{"index":94,"name":null,"span":{"data":{"file_id":0,"beg":{"line":298,"col":99},"end":{"line":298,"col":100}},"generated_from_span":null},"ty":{"HashConsedValue":[1273,{"Ref":[{"Body":20},{"Deduplicated":334},"Shared"]}]}},{"index":95,"name":null,"span":{"data":{"file_id":0,"beg":{"line":298,"col":32},"end":{"line":298,"col":104}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":96,"name":"carry","span":{"data":{"file_id":0,"beg":{"line":301,"col":13},"end":{"line":301,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":97,"name":"r0","span":{"data":{"file_id":0,"beg":{"line":301,"col":20},"end":{"line":301,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":98,"name":null,"span":{"data":{"file_id":0,"beg":{"line":301,"col":26},"end":{"line":301,"col":121}},"generated_from_span":null},"ty":{"Deduplicated":1262}},{"index":99,"name":null,"span":{"data":{"file_id":0,"beg":{"line":301,"col":32},"end":{"line":301,"col":120}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":100,"name":null,"span":{"data":{"file_id":0,"beg":{"line":301,"col":32},"end":{"line":301,"col":104}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":101,"name":null,"span":{"data":{"file_id":0,"beg":{"line":301,"col":32},"end":{"line":301,"col":76}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":102,"name":null,"span":{"data":{"file_id":0,"beg":{"line":301,"col":32},"end":{"line":301,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":103,"name":null,"span":{"data":{"file_id":0,"beg":{"line":301,"col":32},"end":{"line":301,"col":37}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":104,"name":null,"span":{"data":{"file_id":0,"beg":{"line":301,"col":40},"end":{"line":301,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":105,"name":null,"span":{"data":{"file_id":0,"beg":{"line":301,"col":46},"end":{"line":301,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":106,"name":null,"span":{"data":{"file_id":0,"beg":{"line":301,"col":32},"end":{"line":301,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":107,"name":null,"span":{"data":{"file_id":0,"beg":{"line":301,"col":65},"end":{"line":301,"col":76}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":108,"name":null,"span":{"data":{"file_id":0,"beg":{"line":301,"col":67},"end":{"line":301,"col":69}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":109,"name":null,"span":{"data":{"file_id":0,"beg":{"line":301,"col":71},"end":{"line":301,"col":75}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":110,"name":null,"span":{"data":{"file_id":0,"beg":{"line":301,"col":72},"end":{"line":301,"col":75}},"generated_from_span":null},"ty":{"HashConsedValue":[1274,{"Ref":[{"Body":21},{"Deduplicated":454},"Shared"]}]}},{"index":111,"name":null,"span":{"data":{"file_id":0,"beg":{"line":301,"col":71},"end":{"line":301,"col":72}},"generated_from_span":null},"ty":{"HashConsedValue":[1275,{"Ref":[{"Body":22},{"Deduplicated":334},"Shared"]}]}},{"index":112,"name":null,"span":{"data":{"file_id":0,"beg":{"line":301,"col":32},"end":{"line":301,"col":76}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":113,"name":null,"span":{"data":{"file_id":0,"beg":{"line":301,"col":93},"end":{"line":301,"col":104}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":114,"name":null,"span":{"data":{"file_id":0,"beg":{"line":301,"col":95},"end":{"line":301,"col":97}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":115,"name":null,"span":{"data":{"file_id":0,"beg":{"line":301,"col":99},"end":{"line":301,"col":103}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":116,"name":null,"span":{"data":{"file_id":0,"beg":{"line":301,"col":100},"end":{"line":301,"col":103}},"generated_from_span":null},"ty":{"HashConsedValue":[1276,{"Ref":[{"Body":23},{"Deduplicated":454},"Shared"]}]}},{"index":117,"name":null,"span":{"data":{"file_id":0,"beg":{"line":301,"col":99},"end":{"line":301,"col":100}},"generated_from_span":null},"ty":{"Deduplicated":990}},{"index":118,"name":null,"span":{"data":{"file_id":0,"beg":{"line":301,"col":32},"end":{"line":301,"col":104}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":119,"name":null,"span":{"data":{"file_id":0,"beg":{"line":301,"col":109},"end":{"line":301,"col":120}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":120,"name":null,"span":{"data":{"file_id":0,"beg":{"line":301,"col":111},"end":{"line":301,"col":113}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":121,"name":null,"span":{"data":{"file_id":0,"beg":{"line":301,"col":115},"end":{"line":301,"col":119}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":122,"name":null,"span":{"data":{"file_id":0,"beg":{"line":301,"col":116},"end":{"line":301,"col":119}},"generated_from_span":null},"ty":{"HashConsedValue":[1277,{"Ref":[{"Body":25},{"Deduplicated":454},"Shared"]}]}},{"index":123,"name":null,"span":{"data":{"file_id":0,"beg":{"line":301,"col":115},"end":{"line":301,"col":116}},"generated_from_span":null},"ty":{"HashConsedValue":[1278,{"Ref":[{"Body":26},{"Deduplicated":334},"Shared"]}]}},{"index":124,"name":null,"span":{"data":{"file_id":0,"beg":{"line":301,"col":32},"end":{"line":301,"col":120}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":125,"name":"carry","span":{"data":{"file_id":0,"beg":{"line":302,"col":13},"end":{"line":302,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":126,"name":"r1","span":{"data":{"file_id":0,"beg":{"line":302,"col":20},"end":{"line":302,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":127,"name":null,"span":{"data":{"file_id":0,"beg":{"line":302,"col":26},"end":{"line":302,"col":121}},"generated_from_span":null},"ty":{"Deduplicated":1262}},{"index":128,"name":null,"span":{"data":{"file_id":0,"beg":{"line":302,"col":32},"end":{"line":302,"col":120}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":129,"name":null,"span":{"data":{"file_id":0,"beg":{"line":302,"col":32},"end":{"line":302,"col":89}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":130,"name":null,"span":{"data":{"file_id":0,"beg":{"line":302,"col":32},"end":{"line":302,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":131,"name":null,"span":{"data":{"file_id":0,"beg":{"line":302,"col":32},"end":{"line":302,"col":37}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":132,"name":null,"span":{"data":{"file_id":0,"beg":{"line":302,"col":40},"end":{"line":302,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":133,"name":null,"span":{"data":{"file_id":0,"beg":{"line":302,"col":46},"end":{"line":302,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":134,"name":null,"span":{"data":{"file_id":0,"beg":{"line":302,"col":32},"end":{"line":302,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":135,"name":null,"span":{"data":{"file_id":0,"beg":{"line":302,"col":79},"end":{"line":302,"col":89}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":136,"name":null,"span":{"data":{"file_id":0,"beg":{"line":302,"col":81},"end":{"line":302,"col":83}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":137,"name":null,"span":{"data":{"file_id":0,"beg":{"line":302,"col":84},"end":{"line":302,"col":88}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":138,"name":null,"span":{"data":{"file_id":0,"beg":{"line":302,"col":85},"end":{"line":302,"col":88}},"generated_from_span":null},"ty":{"HashConsedValue":[1279,{"Ref":[{"Body":27},{"Deduplicated":454},"Shared"]}]}},{"index":139,"name":null,"span":{"data":{"file_id":0,"beg":{"line":302,"col":84},"end":{"line":302,"col":85}},"generated_from_span":null},"ty":{"Deduplicated":1280}},{"index":140,"name":null,"span":{"data":{"file_id":0,"beg":{"line":302,"col":32},"end":{"line":302,"col":89}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":141,"name":null,"span":{"data":{"file_id":0,"beg":{"line":302,"col":109},"end":{"line":302,"col":120}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":142,"name":null,"span":{"data":{"file_id":0,"beg":{"line":302,"col":111},"end":{"line":302,"col":113}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":143,"name":null,"span":{"data":{"file_id":0,"beg":{"line":302,"col":115},"end":{"line":302,"col":119}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":144,"name":null,"span":{"data":{"file_id":0,"beg":{"line":302,"col":116},"end":{"line":302,"col":119}},"generated_from_span":null},"ty":{"HashConsedValue":[1281,{"Ref":[{"Body":29},{"Deduplicated":454},"Shared"]}]}},{"index":145,"name":null,"span":{"data":{"file_id":0,"beg":{"line":302,"col":115},"end":{"line":302,"col":116}},"generated_from_span":null},"ty":{"HashConsedValue":[1282,{"Ref":[{"Body":30},{"Deduplicated":334},"Shared"]}]}},{"index":146,"name":null,"span":{"data":{"file_id":0,"beg":{"line":302,"col":32},"end":{"line":302,"col":120}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":147,"name":"carry","span":{"data":{"file_id":0,"beg":{"line":303,"col":13},"end":{"line":303,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":148,"name":"r2","span":{"data":{"file_id":0,"beg":{"line":303,"col":20},"end":{"line":303,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":149,"name":null,"span":{"data":{"file_id":0,"beg":{"line":303,"col":26},"end":{"line":303,"col":121}},"generated_from_span":null},"ty":{"Deduplicated":1262}},{"index":150,"name":null,"span":{"data":{"file_id":0,"beg":{"line":303,"col":32},"end":{"line":303,"col":104}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":151,"name":null,"span":{"data":{"file_id":0,"beg":{"line":303,"col":32},"end":{"line":303,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":152,"name":null,"span":{"data":{"file_id":0,"beg":{"line":303,"col":32},"end":{"line":303,"col":37}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":153,"name":null,"span":{"data":{"file_id":0,"beg":{"line":303,"col":40},"end":{"line":303,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":154,"name":null,"span":{"data":{"file_id":0,"beg":{"line":303,"col":46},"end":{"line":303,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":155,"name":null,"span":{"data":{"file_id":0,"beg":{"line":303,"col":32},"end":{"line":303,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":156,"name":null,"span":{"data":{"file_id":0,"beg":{"line":303,"col":93},"end":{"line":303,"col":104}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":157,"name":null,"span":{"data":{"file_id":0,"beg":{"line":303,"col":95},"end":{"line":303,"col":97}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":158,"name":null,"span":{"data":{"file_id":0,"beg":{"line":303,"col":99},"end":{"line":303,"col":103}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":159,"name":null,"span":{"data":{"file_id":0,"beg":{"line":303,"col":100},"end":{"line":303,"col":103}},"generated_from_span":null},"ty":{"HashConsedValue":[1283,{"Ref":[{"Body":31},{"Deduplicated":454},"Shared"]}]}},{"index":160,"name":null,"span":{"data":{"file_id":0,"beg":{"line":303,"col":99},"end":{"line":303,"col":100}},"generated_from_span":null},"ty":{"HashConsedValue":[1284,{"Ref":[{"Body":32},{"Deduplicated":334},"Shared"]}]}},{"index":161,"name":null,"span":{"data":{"file_id":0,"beg":{"line":303,"col":32},"end":{"line":303,"col":104}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":162,"name":"carry","span":{"data":{"file_id":0,"beg":{"line":304,"col":13},"end":{"line":304,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":163,"name":"r3","span":{"data":{"file_id":0,"beg":{"line":304,"col":20},"end":{"line":304,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":164,"name":null,"span":{"data":{"file_id":0,"beg":{"line":304,"col":26},"end":{"line":304,"col":121}},"generated_from_span":null},"ty":{"Deduplicated":1262}},{"index":165,"name":null,"span":{"data":{"file_id":0,"beg":{"line":304,"col":32},"end":{"line":304,"col":120}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":166,"name":null,"span":{"data":{"file_id":0,"beg":{"line":304,"col":32},"end":{"line":304,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":167,"name":null,"span":{"data":{"file_id":0,"beg":{"line":304,"col":32},"end":{"line":304,"col":37}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":168,"name":null,"span":{"data":{"file_id":0,"beg":{"line":304,"col":40},"end":{"line":304,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":169,"name":null,"span":{"data":{"file_id":0,"beg":{"line":304,"col":46},"end":{"line":304,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":170,"name":null,"span":{"data":{"file_id":0,"beg":{"line":304,"col":32},"end":{"line":304,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":171,"name":null,"span":{"data":{"file_id":0,"beg":{"line":304,"col":109},"end":{"line":304,"col":120}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":172,"name":null,"span":{"data":{"file_id":0,"beg":{"line":304,"col":111},"end":{"line":304,"col":113}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":173,"name":null,"span":{"data":{"file_id":0,"beg":{"line":304,"col":115},"end":{"line":304,"col":119}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":174,"name":null,"span":{"data":{"file_id":0,"beg":{"line":304,"col":116},"end":{"line":304,"col":119}},"generated_from_span":null},"ty":{"HashConsedValue":[1285,{"Ref":[{"Body":33},{"Deduplicated":454},"Shared"]}]}},{"index":175,"name":null,"span":{"data":{"file_id":0,"beg":{"line":304,"col":115},"end":{"line":304,"col":116}},"generated_from_span":null},"ty":{"HashConsedValue":[1286,{"Ref":[{"Body":34},{"Deduplicated":334},"Shared"]}]}},{"index":176,"name":null,"span":{"data":{"file_id":0,"beg":{"line":304,"col":32},"end":{"line":304,"col":120}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":177,"name":"r4","span":{"data":{"file_id":0,"beg":{"line":305,"col":20},"end":{"line":305,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":178,"name":null,"span":{"data":{"file_id":0,"beg":{"line":305,"col":25},"end":{"line":305,"col":30}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":179,"name":null,"span":{"data":{"file_id":0,"beg":{"line":308,"col":22},"end":{"line":308,"col":53}},"generated_from_span":null},"ty":{"HashConsedValue":[1287,{"Ref":[{"Body":35},{"Deduplicated":334},"Shared"]}]}},{"index":180,"name":null,"span":{"data":{"file_id":0,"beg":{"line":308,"col":22},"end":{"line":308,"col":53}},"generated_from_span":null},"ty":{"HashConsedValue":[1288,{"Ref":[{"Body":36},{"Deduplicated":334},"Shared"]}]}},{"index":181,"name":null,"span":{"data":{"file_id":0,"beg":{"line":308,"col":23},"end":{"line":308,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":182,"name":null,"span":{"data":{"file_id":0,"beg":{"line":308,"col":32},"end":{"line":308,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":456}},{"index":183,"name":null,"span":{"data":{"file_id":0,"beg":{"line":308,"col":33},"end":{"line":308,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":184,"name":null,"span":{"data":{"file_id":0,"beg":{"line":308,"col":37},"end":{"line":308,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":185,"name":null,"span":{"data":{"file_id":0,"beg":{"line":308,"col":41},"end":{"line":308,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":186,"name":null,"span":{"data":{"file_id":0,"beg":{"line":308,"col":45},"end":{"line":308,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":187,"name":null,"span":{"data":{"file_id":0,"beg":{"line":308,"col":49},"end":{"line":308,"col":51}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":188,"name":null,"span":{"data":{"file_id":0,"beg":{"line":308,"col":55},"end":{"line":308,"col":56}},"generated_from_span":null},"ty":{"HashConsedValue":[1289,{"Ref":[{"Body":37},{"Deduplicated":334},"Shared"]}]}},{"index":189,"name":null,"span":{"data":{"file_id":0,"beg":{"line":291,"col":16},"end":{"line":291,"col":29}},"generated_from_span":null},"ty":{"HashConsedValue":[1290,{"Ref":[{"Body":38},{"Deduplicated":334},"Shared"]}]}},{"index":190,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"HashConsedValue":[1293,{"Ref":[{"Body":39},{"Deduplicated":334},"Shared"]}]}},{"index":191,"name":null,"span":{"data":{"file_id":0,"beg":{"line":291,"col":16},"end":{"line":291,"col":29}},"generated_from_span":null},"ty":{"HashConsedValue":[4982,{"Ref":[{"Body":74},{"Deduplicated":334},"Shared"]}]}},{"index":192,"name":null,"span":{"data":{"file_id":0,"beg":{"line":291,"col":17},"end":{"line":291,"col":29}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":193,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"HashConsedValue":[5011,{"Ref":["Erased",{"Deduplicated":1221},"Shared"]}]}},{"index":194,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"HashConsedValue":[5010,{"Ref":["Erased",{"Deduplicated":1220},"Shared"]}]}},{"index":195,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5011}},{"index":196,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5010}},{"index":197,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5011}},{"index":198,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5010}},{"index":199,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5011}},{"index":200,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5010}},{"index":201,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5011}},{"index":202,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5010}},{"index":203,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5011}},{"index":204,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5010}},{"index":205,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5011}},{"index":206,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5010}},{"index":207,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5011}},{"index":208,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5010}},{"index":209,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5011}},{"index":210,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5010}}]},"body":{"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":309,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"id":427,"kind":{"StorageLive":190},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":291,"col":16},"end":{"line":291,"col":29}},"generated_from_span":null},"id":428,"kind":{"StorageLive":191},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":291,"col":17},"end":{"line":291,"col":29}},"generated_from_span":null},"id":429,"kind":{"StorageLive":192},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":291,"col":17},"end":{"line":291,"col":29}},"generated_from_span":null},"id":430,"kind":{"Assign":[{"kind":{"Local":192},"ty":{"Deduplicated":334}},{"Use":[{"Copy":{"kind":{"Global":{"id":17,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":334}}},"Yes"]}]},"comments_before":["note: l[3] is zero, so its multiples can be skipped"]},{"span":{"data":{"file_id":0,"beg":{"line":291,"col":16},"end":{"line":291,"col":29}},"generated_from_span":null},"id":431,"kind":{"Assign":[{"kind":{"Local":191},"ty":{"Deduplicated":4982}},{"Ref":{"place":{"kind":{"Local":192},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":291,"col":16},"end":{"line":291,"col":29}},"generated_from_span":null},"id":432,"kind":{"Assign":[{"kind":{"Local":190},"ty":{"Deduplicated":1293}},{"Use":[{"Move":{"kind":{"Local":191},"ty":{"Deduplicated":4982}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":291,"col":12},"end":{"line":291,"col":13}},"generated_from_span":null},"id":435,"kind":{"StorageLive":16},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":291,"col":12},"end":{"line":291,"col":13}},"generated_from_span":null},"id":436,"kind":{"StorageLive":22},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":291,"col":12},"end":{"line":291,"col":13}},"generated_from_span":null},"id":438,"kind":{"StorageLive":32},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":291,"col":12},"end":{"line":291,"col":13}},"generated_from_span":null},"id":439,"kind":{"StorageLive":38},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":291,"col":12},"end":{"line":291,"col":13}},"generated_from_span":null},"id":440,"kind":{"StorageLive":44},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":291,"col":12},"end":{"line":291,"col":13}},"generated_from_span":null},"id":442,"kind":{"StorageLive":54},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":291,"col":12},"end":{"line":291,"col":13}},"generated_from_span":null},"id":443,"kind":{"StorageLive":60},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":291,"col":12},"end":{"line":291,"col":13}},"generated_from_span":null},"id":444,"kind":{"StorageLive":66},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":291,"col":12},"end":{"line":291,"col":13}},"generated_from_span":null},"id":446,"kind":{"StorageLive":77},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":291,"col":12},"end":{"line":291,"col":13}},"generated_from_span":null},"id":447,"kind":{"StorageLive":83},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":291,"col":12},"end":{"line":291,"col":13}},"generated_from_span":null},"id":448,"kind":{"StorageLive":89},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":291,"col":12},"end":{"line":291,"col":13}},"generated_from_span":null},"id":449,"kind":{"StorageLive":95},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":291,"col":12},"end":{"line":291,"col":13}},"generated_from_span":null},"id":451,"kind":{"StorageLive":106},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":291,"col":12},"end":{"line":291,"col":13}},"generated_from_span":null},"id":452,"kind":{"StorageLive":112},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":291,"col":12},"end":{"line":291,"col":13}},"generated_from_span":null},"id":453,"kind":{"StorageLive":118},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":291,"col":12},"end":{"line":291,"col":13}},"generated_from_span":null},"id":454,"kind":{"StorageLive":124},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":291,"col":12},"end":{"line":291,"col":13}},"generated_from_span":null},"id":456,"kind":{"StorageLive":134},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":291,"col":12},"end":{"line":291,"col":13}},"generated_from_span":null},"id":457,"kind":{"StorageLive":140},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":291,"col":12},"end":{"line":291,"col":13}},"generated_from_span":null},"id":458,"kind":{"StorageLive":146},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":291,"col":12},"end":{"line":291,"col":13}},"generated_from_span":null},"id":460,"kind":{"StorageLive":155},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":291,"col":12},"end":{"line":291,"col":13}},"generated_from_span":null},"id":461,"kind":{"StorageLive":161},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":291,"col":12},"end":{"line":291,"col":13}},"generated_from_span":null},"id":463,"kind":{"StorageLive":170},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":291,"col":12},"end":{"line":291,"col":13}},"generated_from_span":null},"id":464,"kind":{"StorageLive":176},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":291,"col":12},"end":{"line":291,"col":13}},"generated_from_span":null},"id":465,"kind":{"StorageLive":189},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":291,"col":12},"end":{"line":291,"col":13}},"generated_from_span":null},"id":466,"kind":{"StorageLive":2},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":291,"col":16},"end":{"line":291,"col":29}},"generated_from_span":null},"id":467,"kind":{"Assign":[{"kind":{"Local":189},"ty":{"Deduplicated":1290}},{"Use":[{"Move":{"kind":{"Local":190},"ty":{"Deduplicated":1293}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":291,"col":16},"end":{"line":291,"col":29}},"generated_from_span":null},"id":468,"kind":{"Assign":[{"kind":{"Local":2},"ty":{"Deduplicated":1222}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":189},"ty":{"Deduplicated":1290}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":294,"col":26},"end":{"line":294,"col":49}},"generated_from_span":null},"id":469,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":294,"col":40},"end":{"line":294,"col":48}},"generated_from_span":null},"id":470,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":294,"col":46},"end":{"line":294,"col":47}},"generated_from_span":null},"id":471,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":294,"col":46},"end":{"line":294,"col":47}},"generated_from_span":null},"id":472,"kind":{"Assign":[{"kind":{"Local":7},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":["the first half computes the Montgomery adjustment factor n, and begins adding n*l to make limbs divisible by R"]},{"span":{"data":{"file_id":0,"beg":{"line":294,"col":40},"end":{"line":294,"col":48}},"generated_from_span":null},"id":3868,"kind":{"StorageLive":193},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":294,"col":40},"end":{"line":294,"col":48}},"generated_from_span":null},"id":3869,"kind":{"Assign":[{"kind":{"Local":193},"ty":{"Deduplicated":5011}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":1261}},"Deref"]},"ty":{"Deduplicated":1221}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":294,"col":40},"end":{"line":294,"col":48}},"generated_from_span":null},"id":3870,"kind":{"StorageLive":194},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":294,"col":40},"end":{"line":294,"col":48}},"generated_from_span":null},"id":3871,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1220}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","9"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":193},"ty":{"Deduplicated":5011}}},{"Copy":{"kind":{"Local":7},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":194},"ty":{"Deduplicated":5010}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":294,"col":40},"end":{"line":294,"col":48}},"generated_from_span":null},"id":475,"kind":{"Assign":[{"kind":{"Local":6},"ty":{"Deduplicated":1220}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":194},"ty":{"Deduplicated":5010}},"Deref"]},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":294,"col":26},"end":{"line":294,"col":49}},"generated_from_span":null},"id":476,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":20}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":6},"ty":{"Deduplicated":1220}}}],"dest":{"kind":{"Local":5},"ty":{"Deduplicated":1262}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":294,"col":48},"end":{"line":294,"col":49}},"generated_from_span":null},"id":477,"kind":{"StorageDead":6},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":294,"col":13},"end":{"line":294,"col":18}},"generated_from_span":null},"id":478,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":294,"col":13},"end":{"line":294,"col":18}},"generated_from_span":null},"id":479,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":1220}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":5},"ty":{"Deduplicated":1262}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":294,"col":20},"end":{"line":294,"col":22}},"generated_from_span":null},"id":480,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":294,"col":20},"end":{"line":294,"col":22}},"generated_from_span":null},"id":481,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":5},"ty":{"Deduplicated":1262}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":294,"col":49},"end":{"line":294,"col":50}},"generated_from_span":null},"id":482,"kind":{"StorageDead":7},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":294,"col":49},"end":{"line":294,"col":50}},"generated_from_span":null},"id":483,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":26},"end":{"line":295,"col":63}},"generated_from_span":null},"id":484,"kind":{"StorageLive":10},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":32},"end":{"line":295,"col":62}},"generated_from_span":null},"id":485,"kind":{"StorageLive":11},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":32},"end":{"line":295,"col":48}},"generated_from_span":null},"id":486,"kind":{"StorageLive":12},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":32},"end":{"line":295,"col":37}},"generated_from_span":null},"id":487,"kind":{"StorageLive":13},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":32},"end":{"line":295,"col":37}},"generated_from_span":null},"id":488,"kind":{"Assign":[{"kind":{"Local":13},"ty":{"Deduplicated":1220}},{"Use":[{"Copy":{"kind":{"Local":3},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":40},"end":{"line":295,"col":48}},"generated_from_span":null},"id":489,"kind":{"StorageLive":14},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":46},"end":{"line":295,"col":47}},"generated_from_span":null},"id":490,"kind":{"StorageLive":15},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":46},"end":{"line":295,"col":47}},"generated_from_span":null},"id":491,"kind":{"Assign":[{"kind":{"Local":15},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":40},"end":{"line":295,"col":48}},"generated_from_span":null},"id":3872,"kind":{"StorageLive":195},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":40},"end":{"line":295,"col":48}},"generated_from_span":null},"id":3873,"kind":{"Assign":[{"kind":{"Local":195},"ty":{"Deduplicated":5011}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":1261}},"Deref"]},"ty":{"Deduplicated":1221}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":40},"end":{"line":295,"col":48}},"generated_from_span":null},"id":3874,"kind":{"StorageLive":196},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":40},"end":{"line":295,"col":48}},"generated_from_span":null},"id":3875,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1220}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","9"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":195},"ty":{"Deduplicated":5011}}},{"Copy":{"kind":{"Local":15},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":196},"ty":{"Deduplicated":5010}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":40},"end":{"line":295,"col":48}},"generated_from_span":null},"id":494,"kind":{"Assign":[{"kind":{"Local":14},"ty":{"Deduplicated":1220}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":196},"ty":{"Deduplicated":5010}},"Deref"]},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":32},"end":{"line":295,"col":48}},"generated_from_span":null},"id":495,"kind":{"Assign":[{"kind":{"Local":16},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":13},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":14},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":32},"end":{"line":295,"col":48}},"generated_from_span":null},"id":497,"kind":{"Assign":[{"kind":{"Local":12},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":16},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":47},"end":{"line":295,"col":48}},"generated_from_span":null},"id":498,"kind":{"StorageDead":14},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":47},"end":{"line":295,"col":48}},"generated_from_span":null},"id":499,"kind":{"StorageDead":13},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":51},"end":{"line":295,"col":62}},"generated_from_span":null},"id":500,"kind":{"StorageLive":17},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":53},"end":{"line":295,"col":55}},"generated_from_span":null},"id":501,"kind":{"StorageLive":18},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":53},"end":{"line":295,"col":55}},"generated_from_span":null},"id":502,"kind":{"Assign":[{"kind":{"Local":18},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":4},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":57},"end":{"line":295,"col":61}},"generated_from_span":null},"id":503,"kind":{"StorageLive":19},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":58},"end":{"line":295,"col":61}},"generated_from_span":null},"id":504,"kind":{"StorageLive":20},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":57},"end":{"line":295,"col":58}},"generated_from_span":null},"id":505,"kind":{"StorageLive":21},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":57},"end":{"line":295,"col":58}},"generated_from_span":null},"id":506,"kind":{"Assign":[{"kind":{"Local":21},"ty":{"Deduplicated":1243}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":1222}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":58},"end":{"line":295,"col":61}},"generated_from_span":null},"id":507,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":41}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":21},"ty":{"Deduplicated":1243}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":20},"ty":{"Deduplicated":1267}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":57},"end":{"line":295,"col":61}},"generated_from_span":null},"id":508,"kind":{"Assign":[{"kind":{"Local":19},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":20},"ty":{"Deduplicated":1267}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":60},"end":{"line":295,"col":61}},"generated_from_span":null},"id":509,"kind":{"StorageDead":21},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":51},"end":{"line":295,"col":62}},"generated_from_span":null},"id":510,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":18},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":19},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":17},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":61},"end":{"line":295,"col":62}},"generated_from_span":null},"id":511,"kind":{"StorageDead":19},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":61},"end":{"line":295,"col":62}},"generated_from_span":null},"id":512,"kind":{"StorageDead":18},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":32},"end":{"line":295,"col":62}},"generated_from_span":null},"id":513,"kind":{"Assign":[{"kind":{"Local":22},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":12},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":17},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":32},"end":{"line":295,"col":62}},"generated_from_span":null},"id":515,"kind":{"Assign":[{"kind":{"Local":11},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":22},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":61},"end":{"line":295,"col":62}},"generated_from_span":null},"id":516,"kind":{"StorageDead":17},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":61},"end":{"line":295,"col":62}},"generated_from_span":null},"id":517,"kind":{"StorageDead":12},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":26},"end":{"line":295,"col":63}},"generated_from_span":null},"id":518,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":20}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":11},"ty":{"Deduplicated":1220}}}],"dest":{"kind":{"Local":10},"ty":{"Deduplicated":1262}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":62},"end":{"line":295,"col":63}},"generated_from_span":null},"id":519,"kind":{"StorageDead":11},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":13},"end":{"line":295,"col":18}},"generated_from_span":null},"id":520,"kind":{"StorageLive":8},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":13},"end":{"line":295,"col":18}},"generated_from_span":null},"id":521,"kind":{"Assign":[{"kind":{"Local":8},"ty":{"Deduplicated":1220}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":10},"ty":{"Deduplicated":1262}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":20},"end":{"line":295,"col":22}},"generated_from_span":null},"id":522,"kind":{"StorageLive":9},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":20},"end":{"line":295,"col":22}},"generated_from_span":null},"id":523,"kind":{"Assign":[{"kind":{"Local":9},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":10},"ty":{"Deduplicated":1262}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":63},"end":{"line":295,"col":64}},"generated_from_span":null},"id":524,"kind":{"StorageDead":20},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":63},"end":{"line":295,"col":64}},"generated_from_span":null},"id":525,"kind":{"StorageDead":15},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":295,"col":63},"end":{"line":295,"col":64}},"generated_from_span":null},"id":526,"kind":{"StorageDead":10},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":26},"end":{"line":296,"col":77}},"generated_from_span":null},"id":527,"kind":{"StorageLive":25},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":32},"end":{"line":296,"col":76}},"generated_from_span":null},"id":528,"kind":{"StorageLive":26},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":32},"end":{"line":296,"col":62}},"generated_from_span":null},"id":529,"kind":{"StorageLive":27},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":32},"end":{"line":296,"col":48}},"generated_from_span":null},"id":530,"kind":{"StorageLive":28},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":32},"end":{"line":296,"col":37}},"generated_from_span":null},"id":531,"kind":{"StorageLive":29},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":32},"end":{"line":296,"col":37}},"generated_from_span":null},"id":532,"kind":{"Assign":[{"kind":{"Local":29},"ty":{"Deduplicated":1220}},{"Use":[{"Copy":{"kind":{"Local":8},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":40},"end":{"line":296,"col":48}},"generated_from_span":null},"id":533,"kind":{"StorageLive":30},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":46},"end":{"line":296,"col":47}},"generated_from_span":null},"id":534,"kind":{"StorageLive":31},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":46},"end":{"line":296,"col":47}},"generated_from_span":null},"id":535,"kind":{"Assign":[{"kind":{"Local":31},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":40},"end":{"line":296,"col":48}},"generated_from_span":null},"id":3876,"kind":{"StorageLive":197},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":40},"end":{"line":296,"col":48}},"generated_from_span":null},"id":3877,"kind":{"Assign":[{"kind":{"Local":197},"ty":{"Deduplicated":5011}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":1261}},"Deref"]},"ty":{"Deduplicated":1221}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":40},"end":{"line":296,"col":48}},"generated_from_span":null},"id":3878,"kind":{"StorageLive":198},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":40},"end":{"line":296,"col":48}},"generated_from_span":null},"id":3879,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1220}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","9"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":197},"ty":{"Deduplicated":5011}}},{"Copy":{"kind":{"Local":31},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":198},"ty":{"Deduplicated":5010}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":40},"end":{"line":296,"col":48}},"generated_from_span":null},"id":538,"kind":{"Assign":[{"kind":{"Local":30},"ty":{"Deduplicated":1220}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":198},"ty":{"Deduplicated":5010}},"Deref"]},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":32},"end":{"line":296,"col":48}},"generated_from_span":null},"id":539,"kind":{"Assign":[{"kind":{"Local":32},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":29},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":30},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":32},"end":{"line":296,"col":48}},"generated_from_span":null},"id":541,"kind":{"Assign":[{"kind":{"Local":28},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":32},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":47},"end":{"line":296,"col":48}},"generated_from_span":null},"id":542,"kind":{"StorageDead":30},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":47},"end":{"line":296,"col":48}},"generated_from_span":null},"id":543,"kind":{"StorageDead":29},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":51},"end":{"line":296,"col":62}},"generated_from_span":null},"id":544,"kind":{"StorageLive":33},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":53},"end":{"line":296,"col":55}},"generated_from_span":null},"id":545,"kind":{"StorageLive":34},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":53},"end":{"line":296,"col":55}},"generated_from_span":null},"id":546,"kind":{"Assign":[{"kind":{"Local":34},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":4},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":57},"end":{"line":296,"col":61}},"generated_from_span":null},"id":547,"kind":{"StorageLive":35},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":58},"end":{"line":296,"col":61}},"generated_from_span":null},"id":548,"kind":{"StorageLive":36},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":57},"end":{"line":296,"col":58}},"generated_from_span":null},"id":549,"kind":{"StorageLive":37},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":57},"end":{"line":296,"col":58}},"generated_from_span":null},"id":550,"kind":{"Assign":[{"kind":{"Local":37},"ty":{"Deduplicated":606}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":1222}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":58},"end":{"line":296,"col":61}},"generated_from_span":null},"id":551,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":43}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":37},"ty":{"Deduplicated":606}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":36},"ty":{"Deduplicated":605}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":57},"end":{"line":296,"col":61}},"generated_from_span":null},"id":552,"kind":{"Assign":[{"kind":{"Local":35},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":36},"ty":{"Deduplicated":605}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":60},"end":{"line":296,"col":61}},"generated_from_span":null},"id":553,"kind":{"StorageDead":37},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":51},"end":{"line":296,"col":62}},"generated_from_span":null},"id":554,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":34},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":35},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":33},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":61},"end":{"line":296,"col":62}},"generated_from_span":null},"id":555,"kind":{"StorageDead":35},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":61},"end":{"line":296,"col":62}},"generated_from_span":null},"id":556,"kind":{"StorageDead":34},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":32},"end":{"line":296,"col":62}},"generated_from_span":null},"id":557,"kind":{"Assign":[{"kind":{"Local":38},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":28},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":33},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":32},"end":{"line":296,"col":62}},"generated_from_span":null},"id":559,"kind":{"Assign":[{"kind":{"Local":27},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":38},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":61},"end":{"line":296,"col":62}},"generated_from_span":null},"id":560,"kind":{"StorageDead":33},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":61},"end":{"line":296,"col":62}},"generated_from_span":null},"id":561,"kind":{"StorageDead":28},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":65},"end":{"line":296,"col":76}},"generated_from_span":null},"id":562,"kind":{"StorageLive":39},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":67},"end":{"line":296,"col":69}},"generated_from_span":null},"id":563,"kind":{"StorageLive":40},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":67},"end":{"line":296,"col":69}},"generated_from_span":null},"id":564,"kind":{"Assign":[{"kind":{"Local":40},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":9},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":71},"end":{"line":296,"col":75}},"generated_from_span":null},"id":565,"kind":{"StorageLive":41},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":72},"end":{"line":296,"col":75}},"generated_from_span":null},"id":566,"kind":{"StorageLive":42},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":71},"end":{"line":296,"col":72}},"generated_from_span":null},"id":567,"kind":{"StorageLive":43},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":71},"end":{"line":296,"col":72}},"generated_from_span":null},"id":568,"kind":{"Assign":[{"kind":{"Local":43},"ty":{"Deduplicated":608}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":1222}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":72},"end":{"line":296,"col":75}},"generated_from_span":null},"id":569,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":45}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":43},"ty":{"Deduplicated":608}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":42},"ty":{"Deduplicated":607}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":71},"end":{"line":296,"col":75}},"generated_from_span":null},"id":570,"kind":{"Assign":[{"kind":{"Local":41},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":42},"ty":{"Deduplicated":607}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":74},"end":{"line":296,"col":75}},"generated_from_span":null},"id":571,"kind":{"StorageDead":43},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":65},"end":{"line":296,"col":76}},"generated_from_span":null},"id":572,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":40},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":41},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":39},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":75},"end":{"line":296,"col":76}},"generated_from_span":null},"id":573,"kind":{"StorageDead":41},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":75},"end":{"line":296,"col":76}},"generated_from_span":null},"id":574,"kind":{"StorageDead":40},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":32},"end":{"line":296,"col":76}},"generated_from_span":null},"id":575,"kind":{"Assign":[{"kind":{"Local":44},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":27},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":39},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":32},"end":{"line":296,"col":76}},"generated_from_span":null},"id":577,"kind":{"Assign":[{"kind":{"Local":26},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":44},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":75},"end":{"line":296,"col":76}},"generated_from_span":null},"id":578,"kind":{"StorageDead":39},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":75},"end":{"line":296,"col":76}},"generated_from_span":null},"id":579,"kind":{"StorageDead":27},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":26},"end":{"line":296,"col":77}},"generated_from_span":null},"id":580,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":20}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":26},"ty":{"Deduplicated":1220}}}],"dest":{"kind":{"Local":25},"ty":{"Deduplicated":1262}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":76},"end":{"line":296,"col":77}},"generated_from_span":null},"id":581,"kind":{"StorageDead":26},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":13},"end":{"line":296,"col":18}},"generated_from_span":null},"id":582,"kind":{"StorageLive":23},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":13},"end":{"line":296,"col":18}},"generated_from_span":null},"id":583,"kind":{"Assign":[{"kind":{"Local":23},"ty":{"Deduplicated":1220}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":25},"ty":{"Deduplicated":1262}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":20},"end":{"line":296,"col":22}},"generated_from_span":null},"id":584,"kind":{"StorageLive":24},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":20},"end":{"line":296,"col":22}},"generated_from_span":null},"id":585,"kind":{"Assign":[{"kind":{"Local":24},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":25},"ty":{"Deduplicated":1262}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":77},"end":{"line":296,"col":78}},"generated_from_span":null},"id":586,"kind":{"StorageDead":42},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":77},"end":{"line":296,"col":78}},"generated_from_span":null},"id":587,"kind":{"StorageDead":36},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":77},"end":{"line":296,"col":78}},"generated_from_span":null},"id":588,"kind":{"StorageDead":31},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":296,"col":77},"end":{"line":296,"col":78}},"generated_from_span":null},"id":589,"kind":{"StorageDead":25},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":26},"end":{"line":297,"col":91}},"generated_from_span":null},"id":590,"kind":{"StorageLive":47},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":32},"end":{"line":297,"col":90}},"generated_from_span":null},"id":591,"kind":{"StorageLive":48},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":32},"end":{"line":297,"col":76}},"generated_from_span":null},"id":592,"kind":{"StorageLive":49},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":32},"end":{"line":297,"col":48}},"generated_from_span":null},"id":593,"kind":{"StorageLive":50},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":32},"end":{"line":297,"col":37}},"generated_from_span":null},"id":594,"kind":{"StorageLive":51},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":32},"end":{"line":297,"col":37}},"generated_from_span":null},"id":595,"kind":{"Assign":[{"kind":{"Local":51},"ty":{"Deduplicated":1220}},{"Use":[{"Copy":{"kind":{"Local":23},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":40},"end":{"line":297,"col":48}},"generated_from_span":null},"id":596,"kind":{"StorageLive":52},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":46},"end":{"line":297,"col":47}},"generated_from_span":null},"id":597,"kind":{"StorageLive":53},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":46},"end":{"line":297,"col":47}},"generated_from_span":null},"id":598,"kind":{"Assign":[{"kind":{"Local":53},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":40},"end":{"line":297,"col":48}},"generated_from_span":null},"id":3880,"kind":{"StorageLive":199},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":40},"end":{"line":297,"col":48}},"generated_from_span":null},"id":3881,"kind":{"Assign":[{"kind":{"Local":199},"ty":{"Deduplicated":5011}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":1261}},"Deref"]},"ty":{"Deduplicated":1221}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":40},"end":{"line":297,"col":48}},"generated_from_span":null},"id":3882,"kind":{"StorageLive":200},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":40},"end":{"line":297,"col":48}},"generated_from_span":null},"id":3883,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1220}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","9"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":199},"ty":{"Deduplicated":5011}}},{"Copy":{"kind":{"Local":53},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":200},"ty":{"Deduplicated":5010}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":40},"end":{"line":297,"col":48}},"generated_from_span":null},"id":601,"kind":{"Assign":[{"kind":{"Local":52},"ty":{"Deduplicated":1220}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":200},"ty":{"Deduplicated":5010}},"Deref"]},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":32},"end":{"line":297,"col":48}},"generated_from_span":null},"id":602,"kind":{"Assign":[{"kind":{"Local":54},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":51},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":52},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":32},"end":{"line":297,"col":48}},"generated_from_span":null},"id":604,"kind":{"Assign":[{"kind":{"Local":50},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":54},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":47},"end":{"line":297,"col":48}},"generated_from_span":null},"id":605,"kind":{"StorageDead":52},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":47},"end":{"line":297,"col":48}},"generated_from_span":null},"id":606,"kind":{"StorageDead":51},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":65},"end":{"line":297,"col":76}},"generated_from_span":null},"id":607,"kind":{"StorageLive":55},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":67},"end":{"line":297,"col":69}},"generated_from_span":null},"id":608,"kind":{"StorageLive":56},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":67},"end":{"line":297,"col":69}},"generated_from_span":null},"id":609,"kind":{"Assign":[{"kind":{"Local":56},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":9},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":71},"end":{"line":297,"col":75}},"generated_from_span":null},"id":610,"kind":{"StorageLive":57},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":72},"end":{"line":297,"col":75}},"generated_from_span":null},"id":611,"kind":{"StorageLive":58},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":71},"end":{"line":297,"col":72}},"generated_from_span":null},"id":612,"kind":{"StorageLive":59},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":71},"end":{"line":297,"col":72}},"generated_from_span":null},"id":613,"kind":{"Assign":[{"kind":{"Local":59},"ty":{"Deduplicated":1247}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":1222}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":72},"end":{"line":297,"col":75}},"generated_from_span":null},"id":614,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":47}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":59},"ty":{"Deduplicated":1247}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":58},"ty":{"Deduplicated":1268}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":71},"end":{"line":297,"col":75}},"generated_from_span":null},"id":615,"kind":{"Assign":[{"kind":{"Local":57},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":58},"ty":{"Deduplicated":1268}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":74},"end":{"line":297,"col":75}},"generated_from_span":null},"id":616,"kind":{"StorageDead":59},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":65},"end":{"line":297,"col":76}},"generated_from_span":null},"id":617,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":56},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":57},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":55},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":75},"end":{"line":297,"col":76}},"generated_from_span":null},"id":618,"kind":{"StorageDead":57},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":75},"end":{"line":297,"col":76}},"generated_from_span":null},"id":619,"kind":{"StorageDead":56},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":32},"end":{"line":297,"col":76}},"generated_from_span":null},"id":620,"kind":{"Assign":[{"kind":{"Local":60},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":50},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":55},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":32},"end":{"line":297,"col":76}},"generated_from_span":null},"id":622,"kind":{"Assign":[{"kind":{"Local":49},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":60},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":75},"end":{"line":297,"col":76}},"generated_from_span":null},"id":623,"kind":{"StorageDead":55},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":75},"end":{"line":297,"col":76}},"generated_from_span":null},"id":624,"kind":{"StorageDead":50},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":79},"end":{"line":297,"col":90}},"generated_from_span":null},"id":625,"kind":{"StorageLive":61},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":81},"end":{"line":297,"col":83}},"generated_from_span":null},"id":626,"kind":{"StorageLive":62},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":81},"end":{"line":297,"col":83}},"generated_from_span":null},"id":627,"kind":{"Assign":[{"kind":{"Local":62},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":24},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":85},"end":{"line":297,"col":89}},"generated_from_span":null},"id":628,"kind":{"StorageLive":63},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":86},"end":{"line":297,"col":89}},"generated_from_span":null},"id":629,"kind":{"StorageLive":64},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":85},"end":{"line":297,"col":86}},"generated_from_span":null},"id":630,"kind":{"StorageLive":65},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":85},"end":{"line":297,"col":86}},"generated_from_span":null},"id":631,"kind":{"Assign":[{"kind":{"Local":65},"ty":{"Deduplicated":1232}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":1222}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":86},"end":{"line":297,"col":89}},"generated_from_span":null},"id":632,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":49}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":65},"ty":{"Deduplicated":1232}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":64},"ty":{"Deduplicated":1269}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":85},"end":{"line":297,"col":89}},"generated_from_span":null},"id":633,"kind":{"Assign":[{"kind":{"Local":63},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":64},"ty":{"Deduplicated":1269}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":88},"end":{"line":297,"col":89}},"generated_from_span":null},"id":634,"kind":{"StorageDead":65},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":79},"end":{"line":297,"col":90}},"generated_from_span":null},"id":635,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":62},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":63},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":61},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":89},"end":{"line":297,"col":90}},"generated_from_span":null},"id":636,"kind":{"StorageDead":63},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":89},"end":{"line":297,"col":90}},"generated_from_span":null},"id":637,"kind":{"StorageDead":62},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":32},"end":{"line":297,"col":90}},"generated_from_span":null},"id":638,"kind":{"Assign":[{"kind":{"Local":66},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":49},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":61},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":32},"end":{"line":297,"col":90}},"generated_from_span":null},"id":640,"kind":{"Assign":[{"kind":{"Local":48},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":66},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":89},"end":{"line":297,"col":90}},"generated_from_span":null},"id":641,"kind":{"StorageDead":61},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":89},"end":{"line":297,"col":90}},"generated_from_span":null},"id":642,"kind":{"StorageDead":49},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":26},"end":{"line":297,"col":91}},"generated_from_span":null},"id":643,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":20}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":48},"ty":{"Deduplicated":1220}}}],"dest":{"kind":{"Local":47},"ty":{"Deduplicated":1262}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":90},"end":{"line":297,"col":91}},"generated_from_span":null},"id":644,"kind":{"StorageDead":48},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":13},"end":{"line":297,"col":18}},"generated_from_span":null},"id":645,"kind":{"StorageLive":45},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":13},"end":{"line":297,"col":18}},"generated_from_span":null},"id":646,"kind":{"Assign":[{"kind":{"Local":45},"ty":{"Deduplicated":1220}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":47},"ty":{"Deduplicated":1262}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":20},"end":{"line":297,"col":22}},"generated_from_span":null},"id":647,"kind":{"StorageLive":46},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":20},"end":{"line":297,"col":22}},"generated_from_span":null},"id":648,"kind":{"Assign":[{"kind":{"Local":46},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":47},"ty":{"Deduplicated":1262}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":91},"end":{"line":297,"col":92}},"generated_from_span":null},"id":649,"kind":{"StorageDead":64},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":91},"end":{"line":297,"col":92}},"generated_from_span":null},"id":650,"kind":{"StorageDead":58},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":91},"end":{"line":297,"col":92}},"generated_from_span":null},"id":651,"kind":{"StorageDead":53},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":297,"col":91},"end":{"line":297,"col":92}},"generated_from_span":null},"id":652,"kind":{"StorageDead":47},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":26},"end":{"line":298,"col":105}},"generated_from_span":null},"id":653,"kind":{"StorageLive":69},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":32},"end":{"line":298,"col":104}},"generated_from_span":null},"id":654,"kind":{"StorageLive":70},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":32},"end":{"line":298,"col":90}},"generated_from_span":null},"id":655,"kind":{"StorageLive":71},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":32},"end":{"line":298,"col":62}},"generated_from_span":null},"id":656,"kind":{"StorageLive":72},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":32},"end":{"line":298,"col":48}},"generated_from_span":null},"id":657,"kind":{"StorageLive":73},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":32},"end":{"line":298,"col":37}},"generated_from_span":null},"id":658,"kind":{"StorageLive":74},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":32},"end":{"line":298,"col":37}},"generated_from_span":null},"id":659,"kind":{"Assign":[{"kind":{"Local":74},"ty":{"Deduplicated":1220}},{"Use":[{"Copy":{"kind":{"Local":45},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":40},"end":{"line":298,"col":48}},"generated_from_span":null},"id":660,"kind":{"StorageLive":75},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":46},"end":{"line":298,"col":47}},"generated_from_span":null},"id":661,"kind":{"StorageLive":76},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":46},"end":{"line":298,"col":47}},"generated_from_span":null},"id":662,"kind":{"Assign":[{"kind":{"Local":76},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":40},"end":{"line":298,"col":48}},"generated_from_span":null},"id":3884,"kind":{"StorageLive":201},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":40},"end":{"line":298,"col":48}},"generated_from_span":null},"id":3885,"kind":{"Assign":[{"kind":{"Local":201},"ty":{"Deduplicated":5011}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":1261}},"Deref"]},"ty":{"Deduplicated":1221}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":40},"end":{"line":298,"col":48}},"generated_from_span":null},"id":3886,"kind":{"StorageLive":202},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":40},"end":{"line":298,"col":48}},"generated_from_span":null},"id":3887,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1220}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","9"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":201},"ty":{"Deduplicated":5011}}},{"Copy":{"kind":{"Local":76},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":202},"ty":{"Deduplicated":5010}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":40},"end":{"line":298,"col":48}},"generated_from_span":null},"id":665,"kind":{"Assign":[{"kind":{"Local":75},"ty":{"Deduplicated":1220}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":202},"ty":{"Deduplicated":5010}},"Deref"]},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":32},"end":{"line":298,"col":48}},"generated_from_span":null},"id":666,"kind":{"Assign":[{"kind":{"Local":77},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":74},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":75},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":32},"end":{"line":298,"col":48}},"generated_from_span":null},"id":668,"kind":{"Assign":[{"kind":{"Local":73},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":77},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":47},"end":{"line":298,"col":48}},"generated_from_span":null},"id":669,"kind":{"StorageDead":75},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":47},"end":{"line":298,"col":48}},"generated_from_span":null},"id":670,"kind":{"StorageDead":74},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":51},"end":{"line":298,"col":62}},"generated_from_span":null},"id":671,"kind":{"StorageLive":78},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":53},"end":{"line":298,"col":55}},"generated_from_span":null},"id":672,"kind":{"StorageLive":79},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":53},"end":{"line":298,"col":55}},"generated_from_span":null},"id":673,"kind":{"Assign":[{"kind":{"Local":79},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":4},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":57},"end":{"line":298,"col":61}},"generated_from_span":null},"id":674,"kind":{"StorageLive":80},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":58},"end":{"line":298,"col":61}},"generated_from_span":null},"id":675,"kind":{"StorageLive":81},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":57},"end":{"line":298,"col":58}},"generated_from_span":null},"id":676,"kind":{"StorageLive":82},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":57},"end":{"line":298,"col":58}},"generated_from_span":null},"id":677,"kind":{"Assign":[{"kind":{"Local":82},"ty":{"Deduplicated":616}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":1222}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":58},"end":{"line":298,"col":61}},"generated_from_span":null},"id":678,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":51}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":82},"ty":{"Deduplicated":616}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":81},"ty":{"Deduplicated":1270}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":57},"end":{"line":298,"col":61}},"generated_from_span":null},"id":679,"kind":{"Assign":[{"kind":{"Local":80},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":81},"ty":{"Deduplicated":1270}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":60},"end":{"line":298,"col":61}},"generated_from_span":null},"id":680,"kind":{"StorageDead":82},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":51},"end":{"line":298,"col":62}},"generated_from_span":null},"id":681,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":79},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":80},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":78},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":61},"end":{"line":298,"col":62}},"generated_from_span":null},"id":682,"kind":{"StorageDead":80},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":61},"end":{"line":298,"col":62}},"generated_from_span":null},"id":683,"kind":{"StorageDead":79},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":32},"end":{"line":298,"col":62}},"generated_from_span":null},"id":684,"kind":{"Assign":[{"kind":{"Local":83},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":73},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":78},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":32},"end":{"line":298,"col":62}},"generated_from_span":null},"id":686,"kind":{"Assign":[{"kind":{"Local":72},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":83},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":61},"end":{"line":298,"col":62}},"generated_from_span":null},"id":687,"kind":{"StorageDead":78},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":61},"end":{"line":298,"col":62}},"generated_from_span":null},"id":688,"kind":{"StorageDead":73},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":79},"end":{"line":298,"col":90}},"generated_from_span":null},"id":689,"kind":{"StorageLive":84},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":81},"end":{"line":298,"col":83}},"generated_from_span":null},"id":690,"kind":{"StorageLive":85},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":81},"end":{"line":298,"col":83}},"generated_from_span":null},"id":691,"kind":{"Assign":[{"kind":{"Local":85},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":24},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":85},"end":{"line":298,"col":89}},"generated_from_span":null},"id":692,"kind":{"StorageLive":86},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":86},"end":{"line":298,"col":89}},"generated_from_span":null},"id":693,"kind":{"StorageLive":87},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":85},"end":{"line":298,"col":86}},"generated_from_span":null},"id":694,"kind":{"StorageLive":88},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":85},"end":{"line":298,"col":86}},"generated_from_span":null},"id":695,"kind":{"Assign":[{"kind":{"Local":88},"ty":{"Deduplicated":618}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":1222}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":86},"end":{"line":298,"col":89}},"generated_from_span":null},"id":696,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":53}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":88},"ty":{"Deduplicated":618}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":87},"ty":{"Deduplicated":1271}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":85},"end":{"line":298,"col":89}},"generated_from_span":null},"id":697,"kind":{"Assign":[{"kind":{"Local":86},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":87},"ty":{"Deduplicated":1271}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":88},"end":{"line":298,"col":89}},"generated_from_span":null},"id":698,"kind":{"StorageDead":88},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":79},"end":{"line":298,"col":90}},"generated_from_span":null},"id":699,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":85},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":86},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":84},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":89},"end":{"line":298,"col":90}},"generated_from_span":null},"id":700,"kind":{"StorageDead":86},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":89},"end":{"line":298,"col":90}},"generated_from_span":null},"id":701,"kind":{"StorageDead":85},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":32},"end":{"line":298,"col":90}},"generated_from_span":null},"id":702,"kind":{"Assign":[{"kind":{"Local":89},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":72},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":84},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":32},"end":{"line":298,"col":90}},"generated_from_span":null},"id":704,"kind":{"Assign":[{"kind":{"Local":71},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":89},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":89},"end":{"line":298,"col":90}},"generated_from_span":null},"id":705,"kind":{"StorageDead":84},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":89},"end":{"line":298,"col":90}},"generated_from_span":null},"id":706,"kind":{"StorageDead":72},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":93},"end":{"line":298,"col":104}},"generated_from_span":null},"id":707,"kind":{"StorageLive":90},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":95},"end":{"line":298,"col":97}},"generated_from_span":null},"id":708,"kind":{"StorageLive":91},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":95},"end":{"line":298,"col":97}},"generated_from_span":null},"id":709,"kind":{"Assign":[{"kind":{"Local":91},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":46},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":99},"end":{"line":298,"col":103}},"generated_from_span":null},"id":710,"kind":{"StorageLive":92},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":100},"end":{"line":298,"col":103}},"generated_from_span":null},"id":711,"kind":{"StorageLive":93},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":99},"end":{"line":298,"col":100}},"generated_from_span":null},"id":712,"kind":{"StorageLive":94},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":99},"end":{"line":298,"col":100}},"generated_from_span":null},"id":713,"kind":{"Assign":[{"kind":{"Local":94},"ty":{"Deduplicated":1273}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":1222}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":100},"end":{"line":298,"col":103}},"generated_from_span":null},"id":714,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":55}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":94},"ty":{"Deduplicated":1273}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":93},"ty":{"Deduplicated":1272}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":99},"end":{"line":298,"col":103}},"generated_from_span":null},"id":715,"kind":{"Assign":[{"kind":{"Local":92},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":93},"ty":{"Deduplicated":1272}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":102},"end":{"line":298,"col":103}},"generated_from_span":null},"id":716,"kind":{"StorageDead":94},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":93},"end":{"line":298,"col":104}},"generated_from_span":null},"id":717,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":91},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":92},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":90},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":103},"end":{"line":298,"col":104}},"generated_from_span":null},"id":718,"kind":{"StorageDead":92},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":103},"end":{"line":298,"col":104}},"generated_from_span":null},"id":719,"kind":{"StorageDead":91},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":32},"end":{"line":298,"col":104}},"generated_from_span":null},"id":720,"kind":{"Assign":[{"kind":{"Local":95},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":71},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":90},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":32},"end":{"line":298,"col":104}},"generated_from_span":null},"id":722,"kind":{"Assign":[{"kind":{"Local":70},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":95},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":103},"end":{"line":298,"col":104}},"generated_from_span":null},"id":723,"kind":{"StorageDead":90},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":103},"end":{"line":298,"col":104}},"generated_from_span":null},"id":724,"kind":{"StorageDead":71},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":26},"end":{"line":298,"col":105}},"generated_from_span":null},"id":725,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":20}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":70},"ty":{"Deduplicated":1220}}}],"dest":{"kind":{"Local":69},"ty":{"Deduplicated":1262}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":104},"end":{"line":298,"col":105}},"generated_from_span":null},"id":726,"kind":{"StorageDead":70},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":13},"end":{"line":298,"col":18}},"generated_from_span":null},"id":727,"kind":{"StorageLive":67},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":13},"end":{"line":298,"col":18}},"generated_from_span":null},"id":728,"kind":{"Assign":[{"kind":{"Local":67},"ty":{"Deduplicated":1220}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":69},"ty":{"Deduplicated":1262}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":20},"end":{"line":298,"col":22}},"generated_from_span":null},"id":729,"kind":{"StorageLive":68},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":20},"end":{"line":298,"col":22}},"generated_from_span":null},"id":730,"kind":{"Assign":[{"kind":{"Local":68},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":69},"ty":{"Deduplicated":1262}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":105},"end":{"line":298,"col":106}},"generated_from_span":null},"id":731,"kind":{"StorageDead":93},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":105},"end":{"line":298,"col":106}},"generated_from_span":null},"id":732,"kind":{"StorageDead":87},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":105},"end":{"line":298,"col":106}},"generated_from_span":null},"id":733,"kind":{"StorageDead":81},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":105},"end":{"line":298,"col":106}},"generated_from_span":null},"id":734,"kind":{"StorageDead":76},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":298,"col":105},"end":{"line":298,"col":106}},"generated_from_span":null},"id":735,"kind":{"StorageDead":69},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":26},"end":{"line":301,"col":121}},"generated_from_span":null},"id":736,"kind":{"StorageLive":98},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":32},"end":{"line":301,"col":120}},"generated_from_span":null},"id":737,"kind":{"StorageLive":99},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":32},"end":{"line":301,"col":104}},"generated_from_span":null},"id":738,"kind":{"StorageLive":100},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":32},"end":{"line":301,"col":76}},"generated_from_span":null},"id":739,"kind":{"StorageLive":101},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":32},"end":{"line":301,"col":48}},"generated_from_span":null},"id":740,"kind":{"StorageLive":102},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":32},"end":{"line":301,"col":37}},"generated_from_span":null},"id":741,"kind":{"StorageLive":103},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":32},"end":{"line":301,"col":37}},"generated_from_span":null},"id":742,"kind":{"Assign":[{"kind":{"Local":103},"ty":{"Deduplicated":1220}},{"Use":[{"Copy":{"kind":{"Local":67},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":["limbs is divisible by R now, so we can divide by R by simply storing the upper half as the result"]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":40},"end":{"line":301,"col":48}},"generated_from_span":null},"id":743,"kind":{"StorageLive":104},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":46},"end":{"line":301,"col":47}},"generated_from_span":null},"id":744,"kind":{"StorageLive":105},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":46},"end":{"line":301,"col":47}},"generated_from_span":null},"id":745,"kind":{"Assign":[{"kind":{"Local":105},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","5"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":40},"end":{"line":301,"col":48}},"generated_from_span":null},"id":3888,"kind":{"StorageLive":203},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":40},"end":{"line":301,"col":48}},"generated_from_span":null},"id":3889,"kind":{"Assign":[{"kind":{"Local":203},"ty":{"Deduplicated":5011}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":1261}},"Deref"]},"ty":{"Deduplicated":1221}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":40},"end":{"line":301,"col":48}},"generated_from_span":null},"id":3890,"kind":{"StorageLive":204},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":40},"end":{"line":301,"col":48}},"generated_from_span":null},"id":3891,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1220}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","9"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":203},"ty":{"Deduplicated":5011}}},{"Copy":{"kind":{"Local":105},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":204},"ty":{"Deduplicated":5010}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":40},"end":{"line":301,"col":48}},"generated_from_span":null},"id":748,"kind":{"Assign":[{"kind":{"Local":104},"ty":{"Deduplicated":1220}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":204},"ty":{"Deduplicated":5010}},"Deref"]},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":32},"end":{"line":301,"col":48}},"generated_from_span":null},"id":749,"kind":{"Assign":[{"kind":{"Local":106},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":103},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":104},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":32},"end":{"line":301,"col":48}},"generated_from_span":null},"id":751,"kind":{"Assign":[{"kind":{"Local":102},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":106},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":47},"end":{"line":301,"col":48}},"generated_from_span":null},"id":752,"kind":{"StorageDead":104},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":47},"end":{"line":301,"col":48}},"generated_from_span":null},"id":753,"kind":{"StorageDead":103},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":65},"end":{"line":301,"col":76}},"generated_from_span":null},"id":754,"kind":{"StorageLive":107},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":67},"end":{"line":301,"col":69}},"generated_from_span":null},"id":755,"kind":{"StorageLive":108},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":67},"end":{"line":301,"col":69}},"generated_from_span":null},"id":756,"kind":{"Assign":[{"kind":{"Local":108},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":9},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":71},"end":{"line":301,"col":75}},"generated_from_span":null},"id":757,"kind":{"StorageLive":109},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":72},"end":{"line":301,"col":75}},"generated_from_span":null},"id":758,"kind":{"StorageLive":110},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":71},"end":{"line":301,"col":72}},"generated_from_span":null},"id":759,"kind":{"StorageLive":111},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":71},"end":{"line":301,"col":72}},"generated_from_span":null},"id":760,"kind":{"Assign":[{"kind":{"Local":111},"ty":{"Deduplicated":1275}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":1222}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":72},"end":{"line":301,"col":75}},"generated_from_span":null},"id":761,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":57}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":111},"ty":{"Deduplicated":1275}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":110},"ty":{"Deduplicated":1274}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":71},"end":{"line":301,"col":75}},"generated_from_span":null},"id":762,"kind":{"Assign":[{"kind":{"Local":109},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":110},"ty":{"Deduplicated":1274}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":74},"end":{"line":301,"col":75}},"generated_from_span":null},"id":763,"kind":{"StorageDead":111},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":65},"end":{"line":301,"col":76}},"generated_from_span":null},"id":764,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":108},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":109},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":107},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":75},"end":{"line":301,"col":76}},"generated_from_span":null},"id":765,"kind":{"StorageDead":109},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":75},"end":{"line":301,"col":76}},"generated_from_span":null},"id":766,"kind":{"StorageDead":108},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":32},"end":{"line":301,"col":76}},"generated_from_span":null},"id":767,"kind":{"Assign":[{"kind":{"Local":112},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":102},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":107},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":32},"end":{"line":301,"col":76}},"generated_from_span":null},"id":769,"kind":{"Assign":[{"kind":{"Local":101},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":112},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":75},"end":{"line":301,"col":76}},"generated_from_span":null},"id":770,"kind":{"StorageDead":107},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":75},"end":{"line":301,"col":76}},"generated_from_span":null},"id":771,"kind":{"StorageDead":102},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":93},"end":{"line":301,"col":104}},"generated_from_span":null},"id":772,"kind":{"StorageLive":113},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":95},"end":{"line":301,"col":97}},"generated_from_span":null},"id":773,"kind":{"StorageLive":114},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":95},"end":{"line":301,"col":97}},"generated_from_span":null},"id":774,"kind":{"Assign":[{"kind":{"Local":114},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":46},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":99},"end":{"line":301,"col":103}},"generated_from_span":null},"id":775,"kind":{"StorageLive":115},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":100},"end":{"line":301,"col":103}},"generated_from_span":null},"id":776,"kind":{"StorageLive":116},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":99},"end":{"line":301,"col":100}},"generated_from_span":null},"id":777,"kind":{"StorageLive":117},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":99},"end":{"line":301,"col":100}},"generated_from_span":null},"id":778,"kind":{"Assign":[{"kind":{"Local":117},"ty":{"Deduplicated":990}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":1222}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":100},"end":{"line":301,"col":103}},"generated_from_span":null},"id":779,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":59}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":117},"ty":{"Deduplicated":990}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":116},"ty":{"Deduplicated":1276}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":99},"end":{"line":301,"col":103}},"generated_from_span":null},"id":780,"kind":{"Assign":[{"kind":{"Local":115},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":116},"ty":{"Deduplicated":1276}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":102},"end":{"line":301,"col":103}},"generated_from_span":null},"id":781,"kind":{"StorageDead":117},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":93},"end":{"line":301,"col":104}},"generated_from_span":null},"id":782,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":114},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":115},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":113},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":103},"end":{"line":301,"col":104}},"generated_from_span":null},"id":783,"kind":{"StorageDead":115},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":103},"end":{"line":301,"col":104}},"generated_from_span":null},"id":784,"kind":{"StorageDead":114},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":32},"end":{"line":301,"col":104}},"generated_from_span":null},"id":785,"kind":{"Assign":[{"kind":{"Local":118},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":101},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":113},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":32},"end":{"line":301,"col":104}},"generated_from_span":null},"id":787,"kind":{"Assign":[{"kind":{"Local":100},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":118},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":103},"end":{"line":301,"col":104}},"generated_from_span":null},"id":788,"kind":{"StorageDead":113},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":103},"end":{"line":301,"col":104}},"generated_from_span":null},"id":789,"kind":{"StorageDead":101},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":109},"end":{"line":301,"col":120}},"generated_from_span":null},"id":790,"kind":{"StorageLive":119},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":111},"end":{"line":301,"col":113}},"generated_from_span":null},"id":791,"kind":{"StorageLive":120},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":111},"end":{"line":301,"col":113}},"generated_from_span":null},"id":792,"kind":{"Assign":[{"kind":{"Local":120},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":68},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":115},"end":{"line":301,"col":119}},"generated_from_span":null},"id":793,"kind":{"StorageLive":121},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":116},"end":{"line":301,"col":119}},"generated_from_span":null},"id":794,"kind":{"StorageLive":122},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":115},"end":{"line":301,"col":116}},"generated_from_span":null},"id":795,"kind":{"StorageLive":123},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":115},"end":{"line":301,"col":116}},"generated_from_span":null},"id":796,"kind":{"Assign":[{"kind":{"Local":123},"ty":{"Deduplicated":1278}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":1222}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":116},"end":{"line":301,"col":119}},"generated_from_span":null},"id":797,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":61}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":123},"ty":{"Deduplicated":1278}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":122},"ty":{"Deduplicated":1277}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":115},"end":{"line":301,"col":119}},"generated_from_span":null},"id":798,"kind":{"Assign":[{"kind":{"Local":121},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":122},"ty":{"Deduplicated":1277}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":118},"end":{"line":301,"col":119}},"generated_from_span":null},"id":799,"kind":{"StorageDead":123},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":109},"end":{"line":301,"col":120}},"generated_from_span":null},"id":800,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":120},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":121},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":119},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":119},"end":{"line":301,"col":120}},"generated_from_span":null},"id":801,"kind":{"StorageDead":121},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":119},"end":{"line":301,"col":120}},"generated_from_span":null},"id":802,"kind":{"StorageDead":120},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":32},"end":{"line":301,"col":120}},"generated_from_span":null},"id":803,"kind":{"Assign":[{"kind":{"Local":124},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":100},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":119},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":32},"end":{"line":301,"col":120}},"generated_from_span":null},"id":805,"kind":{"Assign":[{"kind":{"Local":99},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":124},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":119},"end":{"line":301,"col":120}},"generated_from_span":null},"id":806,"kind":{"StorageDead":119},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":119},"end":{"line":301,"col":120}},"generated_from_span":null},"id":807,"kind":{"StorageDead":100},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":26},"end":{"line":301,"col":121}},"generated_from_span":null},"id":808,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":21}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":99},"ty":{"Deduplicated":1220}}}],"dest":{"kind":{"Local":98},"ty":{"Deduplicated":1262}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":120},"end":{"line":301,"col":121}},"generated_from_span":null},"id":809,"kind":{"StorageDead":99},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":13},"end":{"line":301,"col":18}},"generated_from_span":null},"id":810,"kind":{"StorageLive":96},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":13},"end":{"line":301,"col":18}},"generated_from_span":null},"id":811,"kind":{"Assign":[{"kind":{"Local":96},"ty":{"Deduplicated":1220}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":98},"ty":{"Deduplicated":1262}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":20},"end":{"line":301,"col":22}},"generated_from_span":null},"id":812,"kind":{"StorageLive":97},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":20},"end":{"line":301,"col":22}},"generated_from_span":null},"id":813,"kind":{"Assign":[{"kind":{"Local":97},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":98},"ty":{"Deduplicated":1262}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":121},"end":{"line":301,"col":122}},"generated_from_span":null},"id":814,"kind":{"StorageDead":122},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":121},"end":{"line":301,"col":122}},"generated_from_span":null},"id":815,"kind":{"StorageDead":116},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":121},"end":{"line":301,"col":122}},"generated_from_span":null},"id":816,"kind":{"StorageDead":110},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":121},"end":{"line":301,"col":122}},"generated_from_span":null},"id":817,"kind":{"StorageDead":105},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":301,"col":121},"end":{"line":301,"col":122}},"generated_from_span":null},"id":818,"kind":{"StorageDead":98},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":26},"end":{"line":302,"col":121}},"generated_from_span":null},"id":819,"kind":{"StorageLive":127},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":32},"end":{"line":302,"col":120}},"generated_from_span":null},"id":820,"kind":{"StorageLive":128},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":32},"end":{"line":302,"col":89}},"generated_from_span":null},"id":821,"kind":{"StorageLive":129},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":32},"end":{"line":302,"col":48}},"generated_from_span":null},"id":822,"kind":{"StorageLive":130},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":32},"end":{"line":302,"col":37}},"generated_from_span":null},"id":823,"kind":{"StorageLive":131},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":32},"end":{"line":302,"col":37}},"generated_from_span":null},"id":824,"kind":{"Assign":[{"kind":{"Local":131},"ty":{"Deduplicated":1220}},{"Use":[{"Copy":{"kind":{"Local":96},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":40},"end":{"line":302,"col":48}},"generated_from_span":null},"id":825,"kind":{"StorageLive":132},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":46},"end":{"line":302,"col":47}},"generated_from_span":null},"id":826,"kind":{"StorageLive":133},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":46},"end":{"line":302,"col":47}},"generated_from_span":null},"id":827,"kind":{"Assign":[{"kind":{"Local":133},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","6"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":40},"end":{"line":302,"col":48}},"generated_from_span":null},"id":3892,"kind":{"StorageLive":205},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":40},"end":{"line":302,"col":48}},"generated_from_span":null},"id":3893,"kind":{"Assign":[{"kind":{"Local":205},"ty":{"Deduplicated":5011}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":1261}},"Deref"]},"ty":{"Deduplicated":1221}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":40},"end":{"line":302,"col":48}},"generated_from_span":null},"id":3894,"kind":{"StorageLive":206},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":40},"end":{"line":302,"col":48}},"generated_from_span":null},"id":3895,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1220}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","9"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":205},"ty":{"Deduplicated":5011}}},{"Copy":{"kind":{"Local":133},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":206},"ty":{"Deduplicated":5010}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":40},"end":{"line":302,"col":48}},"generated_from_span":null},"id":830,"kind":{"Assign":[{"kind":{"Local":132},"ty":{"Deduplicated":1220}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":206},"ty":{"Deduplicated":5010}},"Deref"]},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":32},"end":{"line":302,"col":48}},"generated_from_span":null},"id":831,"kind":{"Assign":[{"kind":{"Local":134},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":131},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":132},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":32},"end":{"line":302,"col":48}},"generated_from_span":null},"id":833,"kind":{"Assign":[{"kind":{"Local":130},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":134},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":47},"end":{"line":302,"col":48}},"generated_from_span":null},"id":834,"kind":{"StorageDead":132},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":47},"end":{"line":302,"col":48}},"generated_from_span":null},"id":835,"kind":{"StorageDead":131},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":79},"end":{"line":302,"col":89}},"generated_from_span":null},"id":836,"kind":{"StorageLive":135},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":81},"end":{"line":302,"col":83}},"generated_from_span":null},"id":837,"kind":{"StorageLive":136},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":81},"end":{"line":302,"col":83}},"generated_from_span":null},"id":838,"kind":{"Assign":[{"kind":{"Local":136},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":24},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":84},"end":{"line":302,"col":88}},"generated_from_span":null},"id":839,"kind":{"StorageLive":137},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":85},"end":{"line":302,"col":88}},"generated_from_span":null},"id":840,"kind":{"StorageLive":138},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":84},"end":{"line":302,"col":85}},"generated_from_span":null},"id":841,"kind":{"StorageLive":139},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":84},"end":{"line":302,"col":85}},"generated_from_span":null},"id":842,"kind":{"Assign":[{"kind":{"Local":139},"ty":{"Deduplicated":1280}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":1222}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":85},"end":{"line":302,"col":88}},"generated_from_span":null},"id":843,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":63}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":139},"ty":{"Deduplicated":1280}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":138},"ty":{"Deduplicated":1279}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":84},"end":{"line":302,"col":88}},"generated_from_span":null},"id":844,"kind":{"Assign":[{"kind":{"Local":137},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":138},"ty":{"Deduplicated":1279}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":87},"end":{"line":302,"col":88}},"generated_from_span":null},"id":845,"kind":{"StorageDead":139},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":79},"end":{"line":302,"col":89}},"generated_from_span":null},"id":846,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":136},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":137},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":135},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":88},"end":{"line":302,"col":89}},"generated_from_span":null},"id":847,"kind":{"StorageDead":137},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":88},"end":{"line":302,"col":89}},"generated_from_span":null},"id":848,"kind":{"StorageDead":136},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":32},"end":{"line":302,"col":89}},"generated_from_span":null},"id":849,"kind":{"Assign":[{"kind":{"Local":140},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":130},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":135},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":32},"end":{"line":302,"col":89}},"generated_from_span":null},"id":851,"kind":{"Assign":[{"kind":{"Local":129},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":140},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":88},"end":{"line":302,"col":89}},"generated_from_span":null},"id":852,"kind":{"StorageDead":135},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":88},"end":{"line":302,"col":89}},"generated_from_span":null},"id":853,"kind":{"StorageDead":130},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":109},"end":{"line":302,"col":120}},"generated_from_span":null},"id":854,"kind":{"StorageLive":141},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":111},"end":{"line":302,"col":113}},"generated_from_span":null},"id":855,"kind":{"StorageLive":142},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":111},"end":{"line":302,"col":113}},"generated_from_span":null},"id":856,"kind":{"Assign":[{"kind":{"Local":142},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":68},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":115},"end":{"line":302,"col":119}},"generated_from_span":null},"id":857,"kind":{"StorageLive":143},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":116},"end":{"line":302,"col":119}},"generated_from_span":null},"id":858,"kind":{"StorageLive":144},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":115},"end":{"line":302,"col":116}},"generated_from_span":null},"id":859,"kind":{"StorageLive":145},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":115},"end":{"line":302,"col":116}},"generated_from_span":null},"id":860,"kind":{"Assign":[{"kind":{"Local":145},"ty":{"Deduplicated":1282}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":1222}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":116},"end":{"line":302,"col":119}},"generated_from_span":null},"id":861,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":65}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":145},"ty":{"Deduplicated":1282}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":144},"ty":{"Deduplicated":1281}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":115},"end":{"line":302,"col":119}},"generated_from_span":null},"id":862,"kind":{"Assign":[{"kind":{"Local":143},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":144},"ty":{"Deduplicated":1281}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":118},"end":{"line":302,"col":119}},"generated_from_span":null},"id":863,"kind":{"StorageDead":145},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":109},"end":{"line":302,"col":120}},"generated_from_span":null},"id":864,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":142},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":143},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":141},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":119},"end":{"line":302,"col":120}},"generated_from_span":null},"id":865,"kind":{"StorageDead":143},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":119},"end":{"line":302,"col":120}},"generated_from_span":null},"id":866,"kind":{"StorageDead":142},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":32},"end":{"line":302,"col":120}},"generated_from_span":null},"id":867,"kind":{"Assign":[{"kind":{"Local":146},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":129},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":141},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":32},"end":{"line":302,"col":120}},"generated_from_span":null},"id":869,"kind":{"Assign":[{"kind":{"Local":128},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":146},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":119},"end":{"line":302,"col":120}},"generated_from_span":null},"id":870,"kind":{"StorageDead":141},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":119},"end":{"line":302,"col":120}},"generated_from_span":null},"id":871,"kind":{"StorageDead":129},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":26},"end":{"line":302,"col":121}},"generated_from_span":null},"id":872,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":21}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":128},"ty":{"Deduplicated":1220}}}],"dest":{"kind":{"Local":127},"ty":{"Deduplicated":1262}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":120},"end":{"line":302,"col":121}},"generated_from_span":null},"id":873,"kind":{"StorageDead":128},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":13},"end":{"line":302,"col":18}},"generated_from_span":null},"id":874,"kind":{"StorageLive":125},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":13},"end":{"line":302,"col":18}},"generated_from_span":null},"id":875,"kind":{"Assign":[{"kind":{"Local":125},"ty":{"Deduplicated":1220}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":127},"ty":{"Deduplicated":1262}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":20},"end":{"line":302,"col":22}},"generated_from_span":null},"id":876,"kind":{"StorageLive":126},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":20},"end":{"line":302,"col":22}},"generated_from_span":null},"id":877,"kind":{"Assign":[{"kind":{"Local":126},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":127},"ty":{"Deduplicated":1262}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":121},"end":{"line":302,"col":122}},"generated_from_span":null},"id":878,"kind":{"StorageDead":144},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":121},"end":{"line":302,"col":122}},"generated_from_span":null},"id":879,"kind":{"StorageDead":138},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":121},"end":{"line":302,"col":122}},"generated_from_span":null},"id":880,"kind":{"StorageDead":133},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":302,"col":121},"end":{"line":302,"col":122}},"generated_from_span":null},"id":881,"kind":{"StorageDead":127},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":26},"end":{"line":303,"col":121}},"generated_from_span":null},"id":882,"kind":{"StorageLive":149},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":32},"end":{"line":303,"col":104}},"generated_from_span":null},"id":883,"kind":{"StorageLive":150},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":32},"end":{"line":303,"col":48}},"generated_from_span":null},"id":884,"kind":{"StorageLive":151},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":32},"end":{"line":303,"col":37}},"generated_from_span":null},"id":885,"kind":{"StorageLive":152},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":32},"end":{"line":303,"col":37}},"generated_from_span":null},"id":886,"kind":{"Assign":[{"kind":{"Local":152},"ty":{"Deduplicated":1220}},{"Use":[{"Copy":{"kind":{"Local":125},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":40},"end":{"line":303,"col":48}},"generated_from_span":null},"id":887,"kind":{"StorageLive":153},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":46},"end":{"line":303,"col":47}},"generated_from_span":null},"id":888,"kind":{"StorageLive":154},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":46},"end":{"line":303,"col":47}},"generated_from_span":null},"id":889,"kind":{"Assign":[{"kind":{"Local":154},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","7"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":40},"end":{"line":303,"col":48}},"generated_from_span":null},"id":3896,"kind":{"StorageLive":207},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":40},"end":{"line":303,"col":48}},"generated_from_span":null},"id":3897,"kind":{"Assign":[{"kind":{"Local":207},"ty":{"Deduplicated":5011}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":1261}},"Deref"]},"ty":{"Deduplicated":1221}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":40},"end":{"line":303,"col":48}},"generated_from_span":null},"id":3898,"kind":{"StorageLive":208},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":40},"end":{"line":303,"col":48}},"generated_from_span":null},"id":3899,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1220}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","9"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":207},"ty":{"Deduplicated":5011}}},{"Copy":{"kind":{"Local":154},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":208},"ty":{"Deduplicated":5010}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":40},"end":{"line":303,"col":48}},"generated_from_span":null},"id":892,"kind":{"Assign":[{"kind":{"Local":153},"ty":{"Deduplicated":1220}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":208},"ty":{"Deduplicated":5010}},"Deref"]},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":32},"end":{"line":303,"col":48}},"generated_from_span":null},"id":893,"kind":{"Assign":[{"kind":{"Local":155},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":152},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":153},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":32},"end":{"line":303,"col":48}},"generated_from_span":null},"id":895,"kind":{"Assign":[{"kind":{"Local":151},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":155},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":47},"end":{"line":303,"col":48}},"generated_from_span":null},"id":896,"kind":{"StorageDead":153},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":47},"end":{"line":303,"col":48}},"generated_from_span":null},"id":897,"kind":{"StorageDead":152},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":93},"end":{"line":303,"col":104}},"generated_from_span":null},"id":898,"kind":{"StorageLive":156},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":95},"end":{"line":303,"col":97}},"generated_from_span":null},"id":899,"kind":{"StorageLive":157},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":95},"end":{"line":303,"col":97}},"generated_from_span":null},"id":900,"kind":{"Assign":[{"kind":{"Local":157},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":46},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":99},"end":{"line":303,"col":103}},"generated_from_span":null},"id":901,"kind":{"StorageLive":158},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":100},"end":{"line":303,"col":103}},"generated_from_span":null},"id":902,"kind":{"StorageLive":159},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":99},"end":{"line":303,"col":100}},"generated_from_span":null},"id":903,"kind":{"StorageLive":160},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":99},"end":{"line":303,"col":100}},"generated_from_span":null},"id":904,"kind":{"Assign":[{"kind":{"Local":160},"ty":{"Deduplicated":1284}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":1222}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":100},"end":{"line":303,"col":103}},"generated_from_span":null},"id":905,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":67}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":160},"ty":{"Deduplicated":1284}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":159},"ty":{"Deduplicated":1283}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":99},"end":{"line":303,"col":103}},"generated_from_span":null},"id":906,"kind":{"Assign":[{"kind":{"Local":158},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":159},"ty":{"Deduplicated":1283}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":102},"end":{"line":303,"col":103}},"generated_from_span":null},"id":907,"kind":{"StorageDead":160},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":93},"end":{"line":303,"col":104}},"generated_from_span":null},"id":908,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":157},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":158},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":156},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":103},"end":{"line":303,"col":104}},"generated_from_span":null},"id":909,"kind":{"StorageDead":158},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":103},"end":{"line":303,"col":104}},"generated_from_span":null},"id":910,"kind":{"StorageDead":157},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":32},"end":{"line":303,"col":104}},"generated_from_span":null},"id":911,"kind":{"Assign":[{"kind":{"Local":161},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":151},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":156},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":32},"end":{"line":303,"col":104}},"generated_from_span":null},"id":913,"kind":{"Assign":[{"kind":{"Local":150},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":161},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":103},"end":{"line":303,"col":104}},"generated_from_span":null},"id":914,"kind":{"StorageDead":156},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":103},"end":{"line":303,"col":104}},"generated_from_span":null},"id":915,"kind":{"StorageDead":151},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":26},"end":{"line":303,"col":121}},"generated_from_span":null},"id":916,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":21}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":150},"ty":{"Deduplicated":1220}}}],"dest":{"kind":{"Local":149},"ty":{"Deduplicated":1262}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":120},"end":{"line":303,"col":121}},"generated_from_span":null},"id":917,"kind":{"StorageDead":150},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":13},"end":{"line":303,"col":18}},"generated_from_span":null},"id":918,"kind":{"StorageLive":147},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":13},"end":{"line":303,"col":18}},"generated_from_span":null},"id":919,"kind":{"Assign":[{"kind":{"Local":147},"ty":{"Deduplicated":1220}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":149},"ty":{"Deduplicated":1262}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":20},"end":{"line":303,"col":22}},"generated_from_span":null},"id":920,"kind":{"StorageLive":148},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":20},"end":{"line":303,"col":22}},"generated_from_span":null},"id":921,"kind":{"Assign":[{"kind":{"Local":148},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":149},"ty":{"Deduplicated":1262}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":121},"end":{"line":303,"col":122}},"generated_from_span":null},"id":922,"kind":{"StorageDead":159},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":121},"end":{"line":303,"col":122}},"generated_from_span":null},"id":923,"kind":{"StorageDead":154},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":303,"col":121},"end":{"line":303,"col":122}},"generated_from_span":null},"id":924,"kind":{"StorageDead":149},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":26},"end":{"line":304,"col":121}},"generated_from_span":null},"id":925,"kind":{"StorageLive":164},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":32},"end":{"line":304,"col":120}},"generated_from_span":null},"id":926,"kind":{"StorageLive":165},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":32},"end":{"line":304,"col":48}},"generated_from_span":null},"id":927,"kind":{"StorageLive":166},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":32},"end":{"line":304,"col":37}},"generated_from_span":null},"id":928,"kind":{"StorageLive":167},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":32},"end":{"line":304,"col":37}},"generated_from_span":null},"id":929,"kind":{"Assign":[{"kind":{"Local":167},"ty":{"Deduplicated":1220}},{"Use":[{"Copy":{"kind":{"Local":147},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":40},"end":{"line":304,"col":48}},"generated_from_span":null},"id":930,"kind":{"StorageLive":168},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":46},"end":{"line":304,"col":47}},"generated_from_span":null},"id":931,"kind":{"StorageLive":169},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":46},"end":{"line":304,"col":47}},"generated_from_span":null},"id":932,"kind":{"Assign":[{"kind":{"Local":169},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":40},"end":{"line":304,"col":48}},"generated_from_span":null},"id":3900,"kind":{"StorageLive":209},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":40},"end":{"line":304,"col":48}},"generated_from_span":null},"id":3901,"kind":{"Assign":[{"kind":{"Local":209},"ty":{"Deduplicated":5011}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":1261}},"Deref"]},"ty":{"Deduplicated":1221}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":40},"end":{"line":304,"col":48}},"generated_from_span":null},"id":3902,"kind":{"StorageLive":210},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":40},"end":{"line":304,"col":48}},"generated_from_span":null},"id":3903,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1220}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","9"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":209},"ty":{"Deduplicated":5011}}},{"Copy":{"kind":{"Local":169},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":210},"ty":{"Deduplicated":5010}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":40},"end":{"line":304,"col":48}},"generated_from_span":null},"id":935,"kind":{"Assign":[{"kind":{"Local":168},"ty":{"Deduplicated":1220}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":210},"ty":{"Deduplicated":5010}},"Deref"]},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":32},"end":{"line":304,"col":48}},"generated_from_span":null},"id":936,"kind":{"Assign":[{"kind":{"Local":170},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":167},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":168},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":32},"end":{"line":304,"col":48}},"generated_from_span":null},"id":938,"kind":{"Assign":[{"kind":{"Local":166},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":170},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":47},"end":{"line":304,"col":48}},"generated_from_span":null},"id":939,"kind":{"StorageDead":168},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":47},"end":{"line":304,"col":48}},"generated_from_span":null},"id":940,"kind":{"StorageDead":167},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":109},"end":{"line":304,"col":120}},"generated_from_span":null},"id":941,"kind":{"StorageLive":171},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":111},"end":{"line":304,"col":113}},"generated_from_span":null},"id":942,"kind":{"StorageLive":172},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":111},"end":{"line":304,"col":113}},"generated_from_span":null},"id":943,"kind":{"Assign":[{"kind":{"Local":172},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":68},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":115},"end":{"line":304,"col":119}},"generated_from_span":null},"id":944,"kind":{"StorageLive":173},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":116},"end":{"line":304,"col":119}},"generated_from_span":null},"id":945,"kind":{"StorageLive":174},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":115},"end":{"line":304,"col":116}},"generated_from_span":null},"id":946,"kind":{"StorageLive":175},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":115},"end":{"line":304,"col":116}},"generated_from_span":null},"id":947,"kind":{"Assign":[{"kind":{"Local":175},"ty":{"Deduplicated":1286}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":1222}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":116},"end":{"line":304,"col":119}},"generated_from_span":null},"id":948,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":69}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":175},"ty":{"Deduplicated":1286}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":174},"ty":{"Deduplicated":1285}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":115},"end":{"line":304,"col":119}},"generated_from_span":null},"id":949,"kind":{"Assign":[{"kind":{"Local":173},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":174},"ty":{"Deduplicated":1285}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":118},"end":{"line":304,"col":119}},"generated_from_span":null},"id":950,"kind":{"StorageDead":175},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":109},"end":{"line":304,"col":120}},"generated_from_span":null},"id":951,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":172},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":173},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":171},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":119},"end":{"line":304,"col":120}},"generated_from_span":null},"id":952,"kind":{"StorageDead":173},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":119},"end":{"line":304,"col":120}},"generated_from_span":null},"id":953,"kind":{"StorageDead":172},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":32},"end":{"line":304,"col":120}},"generated_from_span":null},"id":954,"kind":{"Assign":[{"kind":{"Local":176},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":166},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":171},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":32},"end":{"line":304,"col":120}},"generated_from_span":null},"id":956,"kind":{"Assign":[{"kind":{"Local":165},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":176},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":119},"end":{"line":304,"col":120}},"generated_from_span":null},"id":957,"kind":{"StorageDead":171},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":119},"end":{"line":304,"col":120}},"generated_from_span":null},"id":958,"kind":{"StorageDead":166},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":26},"end":{"line":304,"col":121}},"generated_from_span":null},"id":959,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":21}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":165},"ty":{"Deduplicated":1220}}}],"dest":{"kind":{"Local":164},"ty":{"Deduplicated":1262}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":120},"end":{"line":304,"col":121}},"generated_from_span":null},"id":960,"kind":{"StorageDead":165},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":13},"end":{"line":304,"col":18}},"generated_from_span":null},"id":961,"kind":{"StorageLive":162},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":13},"end":{"line":304,"col":18}},"generated_from_span":null},"id":962,"kind":{"Assign":[{"kind":{"Local":162},"ty":{"Deduplicated":1220}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":164},"ty":{"Deduplicated":1262}},{"Field":[{"Tuple":2},0]}]},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":20},"end":{"line":304,"col":22}},"generated_from_span":null},"id":963,"kind":{"StorageLive":163},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":20},"end":{"line":304,"col":22}},"generated_from_span":null},"id":964,"kind":{"Assign":[{"kind":{"Local":163},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":164},"ty":{"Deduplicated":1262}},{"Field":[{"Tuple":2},1]}]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":121},"end":{"line":304,"col":122}},"generated_from_span":null},"id":965,"kind":{"StorageDead":174},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":121},"end":{"line":304,"col":122}},"generated_from_span":null},"id":966,"kind":{"StorageDead":169},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":304,"col":121},"end":{"line":304,"col":122}},"generated_from_span":null},"id":967,"kind":{"StorageDead":164},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":305,"col":20},"end":{"line":305,"col":22}},"generated_from_span":null},"id":968,"kind":{"StorageLive":177},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":305,"col":25},"end":{"line":305,"col":30}},"generated_from_span":null},"id":969,"kind":{"StorageLive":178},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":305,"col":25},"end":{"line":305,"col":30}},"generated_from_span":null},"id":970,"kind":{"Assign":[{"kind":{"Local":178},"ty":{"Deduplicated":1220}},{"Use":[{"Copy":{"kind":{"Local":162},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":305,"col":25},"end":{"line":305,"col":37}},"generated_from_span":null},"id":971,"kind":{"Assign":[{"kind":{"Local":177},"ty":{"Deduplicated":454}},{"UnaryOp":[{"Cast":{"Scalar":[{"UInt":"U128"},{"UInt":"U64"}]}},{"Move":{"kind":{"Local":178},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":305,"col":36},"end":{"line":305,"col":37}},"generated_from_span":null},"id":972,"kind":{"StorageDead":178},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":308,"col":22},"end":{"line":308,"col":53}},"generated_from_span":null},"id":973,"kind":{"StorageLive":179},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":308,"col":22},"end":{"line":308,"col":53}},"generated_from_span":null},"id":974,"kind":{"StorageLive":180},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":308,"col":23},"end":{"line":308,"col":53}},"generated_from_span":null},"id":975,"kind":{"StorageLive":181},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":308,"col":32},"end":{"line":308,"col":52}},"generated_from_span":null},"id":976,"kind":{"StorageLive":182},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":308,"col":33},"end":{"line":308,"col":35}},"generated_from_span":null},"id":977,"kind":{"StorageLive":183},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":308,"col":33},"end":{"line":308,"col":35}},"generated_from_span":null},"id":978,"kind":{"Assign":[{"kind":{"Local":183},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":97},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":["result may be >= l, so attempt to subtract l"]},{"span":{"data":{"file_id":0,"beg":{"line":308,"col":37},"end":{"line":308,"col":39}},"generated_from_span":null},"id":979,"kind":{"StorageLive":184},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":308,"col":37},"end":{"line":308,"col":39}},"generated_from_span":null},"id":980,"kind":{"Assign":[{"kind":{"Local":184},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":126},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":308,"col":41},"end":{"line":308,"col":43}},"generated_from_span":null},"id":981,"kind":{"StorageLive":185},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":308,"col":41},"end":{"line":308,"col":43}},"generated_from_span":null},"id":982,"kind":{"Assign":[{"kind":{"Local":185},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":148},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":308,"col":45},"end":{"line":308,"col":47}},"generated_from_span":null},"id":983,"kind":{"StorageLive":186},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":308,"col":45},"end":{"line":308,"col":47}},"generated_from_span":null},"id":984,"kind":{"Assign":[{"kind":{"Local":186},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":163},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":308,"col":49},"end":{"line":308,"col":51}},"generated_from_span":null},"id":985,"kind":{"StorageLive":187},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":308,"col":49},"end":{"line":308,"col":51}},"generated_from_span":null},"id":986,"kind":{"Assign":[{"kind":{"Local":187},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":177},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":308,"col":32},"end":{"line":308,"col":52}},"generated_from_span":null},"id":987,"kind":{"Assign":[{"kind":{"Local":182},"ty":{"Deduplicated":456}},{"Aggregate":[{"Array":[{"Deduplicated":454},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","5"]}}},"ty":{"Deduplicated":455}}]},[{"Move":{"kind":{"Local":183},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":184},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":185},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":186},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":187},"ty":{"Deduplicated":454}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":308,"col":51},"end":{"line":308,"col":52}},"generated_from_span":null},"id":988,"kind":{"StorageDead":187},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":308,"col":51},"end":{"line":308,"col":52}},"generated_from_span":null},"id":989,"kind":{"StorageDead":186},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":308,"col":51},"end":{"line":308,"col":52}},"generated_from_span":null},"id":990,"kind":{"StorageDead":185},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":308,"col":51},"end":{"line":308,"col":52}},"generated_from_span":null},"id":991,"kind":{"StorageDead":184},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":308,"col":51},"end":{"line":308,"col":52}},"generated_from_span":null},"id":992,"kind":{"StorageDead":183},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":308,"col":23},"end":{"line":308,"col":53}},"generated_from_span":null},"id":993,"kind":{"Assign":[{"kind":{"Local":181},"ty":{"Deduplicated":334}},{"Aggregate":[{"Adt":[{"id":{"Adt":0},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[{"Move":{"kind":{"Local":182},"ty":{"Deduplicated":456}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":308,"col":52},"end":{"line":308,"col":53}},"generated_from_span":null},"id":994,"kind":{"StorageDead":182},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":308,"col":22},"end":{"line":308,"col":53}},"generated_from_span":null},"id":995,"kind":{"Assign":[{"kind":{"Local":180},"ty":{"Deduplicated":1288}},{"Ref":{"place":{"kind":{"Local":181},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":308,"col":22},"end":{"line":308,"col":53}},"generated_from_span":null},"id":996,"kind":{"Assign":[{"kind":{"Local":179},"ty":{"Deduplicated":1287}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":180},"ty":{"Deduplicated":1288}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":308,"col":55},"end":{"line":308,"col":56}},"generated_from_span":null},"id":997,"kind":{"StorageLive":188},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":308,"col":55},"end":{"line":308,"col":56}},"generated_from_span":null},"id":998,"kind":{"Assign":[{"kind":{"Local":188},"ty":{"Deduplicated":1289}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":1222}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":308,"col":8},"end":{"line":308,"col":57}},"generated_from_span":null},"id":999,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":1}},"generics":{"regions":[{"Body":72},{"Body":73}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":179},"ty":{"Deduplicated":1287}}},{"Move":{"kind":{"Local":188},"ty":{"Deduplicated":1289}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":334}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":308,"col":56},"end":{"line":308,"col":57}},"generated_from_span":null},"id":1000,"kind":{"StorageDead":188},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":308,"col":56},"end":{"line":308,"col":57}},"generated_from_span":null},"id":1001,"kind":{"StorageDead":181},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":308,"col":56},"end":{"line":308,"col":57}},"generated_from_span":null},"id":1002,"kind":{"StorageDead":180},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":308,"col":56},"end":{"line":308,"col":57}},"generated_from_span":null},"id":1003,"kind":{"StorageDead":179},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":309,"col":4},"end":{"line":309,"col":5}},"generated_from_span":null},"id":1004,"kind":{"StorageDead":177},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":309,"col":4},"end":{"line":309,"col":5}},"generated_from_span":null},"id":1005,"kind":{"StorageDead":163},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":309,"col":4},"end":{"line":309,"col":5}},"generated_from_span":null},"id":1006,"kind":{"StorageDead":162},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":309,"col":4},"end":{"line":309,"col":5}},"generated_from_span":null},"id":1007,"kind":{"StorageDead":148},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":309,"col":4},"end":{"line":309,"col":5}},"generated_from_span":null},"id":1008,"kind":{"StorageDead":147},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":309,"col":4},"end":{"line":309,"col":5}},"generated_from_span":null},"id":1009,"kind":{"StorageDead":126},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":309,"col":4},"end":{"line":309,"col":5}},"generated_from_span":null},"id":1010,"kind":{"StorageDead":125},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":309,"col":4},"end":{"line":309,"col":5}},"generated_from_span":null},"id":1011,"kind":{"StorageDead":97},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":309,"col":4},"end":{"line":309,"col":5}},"generated_from_span":null},"id":1012,"kind":{"StorageDead":96},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":309,"col":4},"end":{"line":309,"col":5}},"generated_from_span":null},"id":1013,"kind":{"StorageDead":68},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":309,"col":4},"end":{"line":309,"col":5}},"generated_from_span":null},"id":1014,"kind":{"StorageDead":67},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":309,"col":4},"end":{"line":309,"col":5}},"generated_from_span":null},"id":1015,"kind":{"StorageDead":46},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":309,"col":4},"end":{"line":309,"col":5}},"generated_from_span":null},"id":1016,"kind":{"StorageDead":45},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":309,"col":4},"end":{"line":309,"col":5}},"generated_from_span":null},"id":1017,"kind":{"StorageDead":24},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":309,"col":4},"end":{"line":309,"col":5}},"generated_from_span":null},"id":1018,"kind":{"StorageDead":23},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":309,"col":4},"end":{"line":309,"col":5}},"generated_from_span":null},"id":1019,"kind":{"StorageDead":9},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":309,"col":4},"end":{"line":309,"col":5}},"generated_from_span":null},"id":1020,"kind":{"StorageDead":8},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":309,"col":4},"end":{"line":309,"col":5}},"generated_from_span":null},"id":1021,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":309,"col":4},"end":{"line":309,"col":5}},"generated_from_span":null},"id":1022,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":309,"col":4},"end":{"line":309,"col":5}},"generated_from_span":null},"id":1023,"kind":{"StorageDead":2},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":309,"col":5},"end":{"line":309,"col":5}},"generated_from_span":null},"id":1024,"kind":"Return","comments_before":[]}]},"comments":[[291,["note: l[3] is zero, so its multiples can be skipped"]],[294,["the first half computes the Montgomery adjustment factor n, and begins adding n*l to make limbs divisible by R"]],[301,["limbs is divisible by R now, so we can divide by R by simply storing the upper half as the result"]],[308,["result may be >= l, so attempt to subtract l"]]]}}},{"def_id":7,"item_meta":{"name":[{"Ident":["curve25519",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["montgomery_invert",0]}],"span":{"data":{"file_id":5,"beg":{"line":1328,"col":4},"end":{"line":1397,"col":5}},"generated_from_span":null},"source_text":"pub fn montgomery_invert(&self) -> UnpackedScalar {\n // Uses the addition chain from\n // https://briansmith.org/ecc-inversion-addition-chains-01#curve25519_scalar_inversion\n let mut _1 = *self;\n let mut _10 = _1.montgomery_square();\n let mut _100 = _10.montgomery_square();\n let mut _11 = UnpackedScalar::montgomery_mul(&_10, &_1);\n let mut _101 = UnpackedScalar::montgomery_mul(&_10, &_11);\n let mut _111 = UnpackedScalar::montgomery_mul(&_10, &_101);\n let mut _1001 = UnpackedScalar::montgomery_mul(&_10, &_111);\n let mut _1011 = UnpackedScalar::montgomery_mul(&_10, &_1001);\n let mut _1111 = UnpackedScalar::montgomery_mul(&_100, &_1011);\n\n // _10000\n let mut y = UnpackedScalar::montgomery_mul(&_1111, &_1);\n\n #[inline]\n fn square_multiply(y: &mut UnpackedScalar, squarings: usize, x: &UnpackedScalar) {\n for _ in 0..squarings {\n *y = y.montgomery_square();\n }\n *y = UnpackedScalar::montgomery_mul(y, x);\n }\n\n square_multiply(&mut y, 123 + 3, &_101);\n square_multiply(&mut y, 2 + 2, &_11);\n square_multiply(&mut y, 1 + 4, &_1111);\n square_multiply(&mut y, 1 + 4, &_1111);\n square_multiply(&mut y, 4, &_1001);\n square_multiply(&mut y, 2, &_11);\n square_multiply(&mut y, 1 + 4, &_1111);\n square_multiply(&mut y, 1 + 3, &_101);\n square_multiply(&mut y, 3 + 3, &_101);\n square_multiply(&mut y, 3, &_111);\n square_multiply(&mut y, 1 + 4, &_1111);\n square_multiply(&mut y, 2 + 3, &_111);\n square_multiply(&mut y, 2 + 2, &_11);\n square_multiply(&mut y, 1 + 4, &_1011);\n square_multiply(&mut y, 2 + 4, &_1011);\n square_multiply(&mut y, 6 + 4, &_1001);\n square_multiply(&mut y, 2 + 2, &_11);\n square_multiply(&mut y, 3 + 2, &_11);\n square_multiply(&mut y, 3 + 2, &_11);\n square_multiply(&mut y, 1 + 4, &_1001);\n square_multiply(&mut y, 1 + 3, &_111);\n square_multiply(&mut y, 2 + 4, &_1111);\n square_multiply(&mut y, 1 + 4, &_1011);\n square_multiply(&mut y, 3, &_101);\n square_multiply(&mut y, 2 + 4, &_1111);\n square_multiply(&mut y, 3, &_101);\n square_multiply(&mut y, 1 + 2, &_11);\n\n let inverse = y;\n\n #[cfg(feature = \"zeroize\")]\n {\n _1.zeroize();\n _10.zeroize();\n _100.zeroize();\n _11.zeroize();\n _101.zeroize();\n _111.zeroize();\n _1001.zeroize();\n _1011.zeroize();\n _1111.zeroize();\n y.zeroize();\n }\n\n inverse\n }","attr_info":{"attributes":[{"DocComment":" Inverts an UnpackedScalar in Montgomery form."},{"Unknown":{"path":"rustfmt::skip","args":null}},{"Unknown":{"path":"allow","args":"unused_mut"}},{"Unknown":{"path":"allow","args":"clippy::just_underscores_and_digits"}}],"inline":null,"rename":null,"public":true},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5386}],"output":{"Deduplicated":334}},"src":"TopLevel","is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":5,"beg":{"line":1328,"col":4},"end":{"line":1397,"col":5}},"generated_from_span":null},"bound_body_regions":281,"locals":{"arg_count":1,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1328,"col":39},"end":{"line":1328,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":1,"name":"self","span":{"data":{"file_id":5,"beg":{"line":1328,"col":29},"end":{"line":1328,"col":34}},"generated_from_span":null},"ty":{"Deduplicated":463}},{"index":2,"name":"_1","span":{"data":{"file_id":5,"beg":{"line":1331,"col":12},"end":{"line":1331,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":3,"name":"_10","span":{"data":{"file_id":5,"beg":{"line":1332,"col":12},"end":{"line":1332,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":4,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1332,"col":24},"end":{"line":1332,"col":26}},"generated_from_span":null},"ty":{"Deduplicated":464}},{"index":5,"name":"_100","span":{"data":{"file_id":5,"beg":{"line":1333,"col":12},"end":{"line":1333,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":6,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1333,"col":24},"end":{"line":1333,"col":27}},"generated_from_span":null},"ty":{"Deduplicated":1222}},{"index":7,"name":"_11","span":{"data":{"file_id":5,"beg":{"line":1334,"col":12},"end":{"line":1334,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":8,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1334,"col":55},"end":{"line":1334,"col":59}},"generated_from_span":null},"ty":{"Deduplicated":1223}},{"index":9,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1334,"col":55},"end":{"line":1334,"col":59}},"generated_from_span":null},"ty":{"HashConsedValue":[1300,{"Ref":[{"Body":5},{"Deduplicated":334},"Shared"]}]}},{"index":10,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1334,"col":65},"end":{"line":1334,"col":68}},"generated_from_span":null},"ty":{"Deduplicated":1243}},{"index":11,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1334,"col":65},"end":{"line":1334,"col":68}},"generated_from_span":null},"ty":{"Deduplicated":1244}},{"index":12,"name":"_101","span":{"data":{"file_id":5,"beg":{"line":1335,"col":12},"end":{"line":1335,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":13,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1335,"col":55},"end":{"line":1335,"col":59}},"generated_from_span":null},"ty":{"Deduplicated":606}},{"index":14,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1335,"col":55},"end":{"line":1335,"col":59}},"generated_from_span":null},"ty":{"Deduplicated":1228}},{"index":15,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1335,"col":64},"end":{"line":1335,"col":68}},"generated_from_span":null},"ty":{"Deduplicated":608}},{"index":16,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1335,"col":64},"end":{"line":1335,"col":68}},"generated_from_span":null},"ty":{"Deduplicated":1229}},{"index":17,"name":"_111","span":{"data":{"file_id":5,"beg":{"line":1336,"col":12},"end":{"line":1336,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":18,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1336,"col":55},"end":{"line":1336,"col":59}},"generated_from_span":null},"ty":{"Deduplicated":1247}},{"index":19,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1336,"col":55},"end":{"line":1336,"col":59}},"generated_from_span":null},"ty":{"HashConsedValue":[1301,{"Ref":[{"Body":13},{"Deduplicated":334},"Shared"]}]}},{"index":20,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1336,"col":63},"end":{"line":1336,"col":68}},"generated_from_span":null},"ty":{"Deduplicated":1232}},{"index":21,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1336,"col":63},"end":{"line":1336,"col":68}},"generated_from_span":null},"ty":{"Deduplicated":615}},{"index":22,"name":"_1001","span":{"data":{"file_id":5,"beg":{"line":1337,"col":12},"end":{"line":1337,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":23,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1337,"col":55},"end":{"line":1337,"col":59}},"generated_from_span":null},"ty":{"Deduplicated":616}},{"index":24,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1337,"col":55},"end":{"line":1337,"col":59}},"generated_from_span":null},"ty":{"Deduplicated":617}},{"index":25,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1337,"col":63},"end":{"line":1337,"col":68}},"generated_from_span":null},"ty":{"Deduplicated":618}},{"index":26,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1337,"col":63},"end":{"line":1337,"col":68}},"generated_from_span":null},"ty":{"Deduplicated":619}},{"index":27,"name":"_1011","span":{"data":{"file_id":5,"beg":{"line":1338,"col":12},"end":{"line":1338,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":28,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1338,"col":55},"end":{"line":1338,"col":59}},"generated_from_span":null},"ty":{"Deduplicated":1273}},{"index":29,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1338,"col":55},"end":{"line":1338,"col":59}},"generated_from_span":null},"ty":{"Deduplicated":1240}},{"index":30,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1338,"col":62},"end":{"line":1338,"col":68}},"generated_from_span":null},"ty":{"Deduplicated":1275}},{"index":31,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1338,"col":62},"end":{"line":1338,"col":68}},"generated_from_span":null},"ty":{"HashConsedValue":[1302,{"Ref":[{"Body":23},{"Deduplicated":334},"Shared"]}]}},{"index":32,"name":"_1111","span":{"data":{"file_id":5,"beg":{"line":1339,"col":12},"end":{"line":1339,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":33,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1339,"col":55},"end":{"line":1339,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":990}},{"index":34,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1339,"col":55},"end":{"line":1339,"col":60}},"generated_from_span":null},"ty":{"HashConsedValue":[1303,{"Ref":[{"Body":25},{"Deduplicated":334},"Shared"]}]}},{"index":35,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1339,"col":62},"end":{"line":1339,"col":68}},"generated_from_span":null},"ty":{"Deduplicated":1278}},{"index":36,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1339,"col":62},"end":{"line":1339,"col":68}},"generated_from_span":null},"ty":{"HashConsedValue":[1304,{"Ref":[{"Body":27},{"Deduplicated":334},"Shared"]}]}},{"index":37,"name":"y","span":{"data":{"file_id":5,"beg":{"line":1342,"col":12},"end":{"line":1342,"col":17}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":38,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1342,"col":51},"end":{"line":1342,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":1280}},{"index":39,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1342,"col":51},"end":{"line":1342,"col":57}},"generated_from_span":null},"ty":{"HashConsedValue":[1305,{"Ref":[{"Body":29},{"Deduplicated":334},"Shared"]}]}},{"index":40,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1342,"col":59},"end":{"line":1342,"col":62}},"generated_from_span":null},"ty":{"Deduplicated":1282}},{"index":41,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1342,"col":59},"end":{"line":1342,"col":62}},"generated_from_span":null},"ty":{"HashConsedValue":[1306,{"Ref":[{"Body":31},{"Deduplicated":334},"Shared"]}]}},{"index":42,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1352,"col":8},"end":{"line":1352,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":476}},{"index":43,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1352,"col":24},"end":{"line":1352,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1308,{"Ref":[{"Body":33},{"Deduplicated":334},"Mut"]}]}},{"index":44,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1352,"col":24},"end":{"line":1352,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1309,{"Ref":[{"Body":34},{"Deduplicated":334},"Mut"]}]}},{"index":45,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1352,"col":32},"end":{"line":1352,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":46,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1352,"col":32},"end":{"line":1352,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":47,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1352,"col":41},"end":{"line":1352,"col":46}},"generated_from_span":null},"ty":{"Deduplicated":1287}},{"index":48,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1352,"col":41},"end":{"line":1352,"col":46}},"generated_from_span":null},"ty":{"Deduplicated":1288}},{"index":49,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1353,"col":8},"end":{"line":1353,"col":46}},"generated_from_span":null},"ty":{"Deduplicated":476}},{"index":50,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1353,"col":24},"end":{"line":1353,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1313,{"Ref":[{"Body":37},{"Deduplicated":334},"Mut"]}]}},{"index":51,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1353,"col":24},"end":{"line":1353,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1314,{"Ref":[{"Body":38},{"Deduplicated":334},"Mut"]}]}},{"index":52,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1353,"col":34},"end":{"line":1353,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":53,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1353,"col":34},"end":{"line":1353,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":54,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1353,"col":41},"end":{"line":1353,"col":45}},"generated_from_span":null},"ty":{"Deduplicated":1293}},{"index":55,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1353,"col":41},"end":{"line":1353,"col":45}},"generated_from_span":null},"ty":{"HashConsedValue":[1315,{"Ref":[{"Body":40},{"Deduplicated":334},"Shared"]}]}},{"index":56,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1354,"col":8},"end":{"line":1354,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":476}},{"index":57,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1354,"col":24},"end":{"line":1354,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1316,{"Ref":[{"Body":41},{"Deduplicated":334},"Mut"]}]}},{"index":58,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1354,"col":24},"end":{"line":1354,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1317,{"Ref":[{"Body":42},{"Deduplicated":334},"Mut"]}]}},{"index":59,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1354,"col":34},"end":{"line":1354,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":60,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1354,"col":34},"end":{"line":1354,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":61,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1354,"col":41},"end":{"line":1354,"col":47}},"generated_from_span":null},"ty":{"HashConsedValue":[1318,{"Ref":[{"Body":43},{"Deduplicated":334},"Shared"]}]}},{"index":62,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1354,"col":41},"end":{"line":1354,"col":47}},"generated_from_span":null},"ty":{"HashConsedValue":[1319,{"Ref":[{"Body":44},{"Deduplicated":334},"Shared"]}]}},{"index":63,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1355,"col":8},"end":{"line":1355,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":476}},{"index":64,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1355,"col":24},"end":{"line":1355,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1320,{"Ref":[{"Body":45},{"Deduplicated":334},"Mut"]}]}},{"index":65,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1355,"col":24},"end":{"line":1355,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1321,{"Ref":[{"Body":46},{"Deduplicated":334},"Mut"]}]}},{"index":66,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1355,"col":34},"end":{"line":1355,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":67,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1355,"col":34},"end":{"line":1355,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":68,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1355,"col":41},"end":{"line":1355,"col":47}},"generated_from_span":null},"ty":{"HashConsedValue":[1322,{"Ref":[{"Body":47},{"Deduplicated":334},"Shared"]}]}},{"index":69,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1355,"col":41},"end":{"line":1355,"col":47}},"generated_from_span":null},"ty":{"HashConsedValue":[1323,{"Ref":[{"Body":48},{"Deduplicated":334},"Shared"]}]}},{"index":70,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1356,"col":8},"end":{"line":1356,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":476}},{"index":71,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1356,"col":24},"end":{"line":1356,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1324,{"Ref":[{"Body":49},{"Deduplicated":334},"Mut"]}]}},{"index":72,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1356,"col":24},"end":{"line":1356,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1325,{"Ref":[{"Body":50},{"Deduplicated":334},"Mut"]}]}},{"index":73,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1356,"col":41},"end":{"line":1356,"col":47}},"generated_from_span":null},"ty":{"HashConsedValue":[1326,{"Ref":[{"Body":51},{"Deduplicated":334},"Shared"]}]}},{"index":74,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1356,"col":41},"end":{"line":1356,"col":47}},"generated_from_span":null},"ty":{"HashConsedValue":[1327,{"Ref":[{"Body":52},{"Deduplicated":334},"Shared"]}]}},{"index":75,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1357,"col":8},"end":{"line":1357,"col":46}},"generated_from_span":null},"ty":{"Deduplicated":476}},{"index":76,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1357,"col":24},"end":{"line":1357,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1328,{"Ref":[{"Body":53},{"Deduplicated":334},"Mut"]}]}},{"index":77,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1357,"col":24},"end":{"line":1357,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1329,{"Ref":[{"Body":54},{"Deduplicated":334},"Mut"]}]}},{"index":78,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1357,"col":41},"end":{"line":1357,"col":45}},"generated_from_span":null},"ty":{"HashConsedValue":[1330,{"Ref":[{"Body":55},{"Deduplicated":334},"Shared"]}]}},{"index":79,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1357,"col":41},"end":{"line":1357,"col":45}},"generated_from_span":null},"ty":{"HashConsedValue":[1331,{"Ref":[{"Body":56},{"Deduplicated":334},"Shared"]}]}},{"index":80,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1358,"col":8},"end":{"line":1358,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":476}},{"index":81,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1358,"col":24},"end":{"line":1358,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1332,{"Ref":[{"Body":57},{"Deduplicated":334},"Mut"]}]}},{"index":82,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1358,"col":24},"end":{"line":1358,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1333,{"Ref":[{"Body":58},{"Deduplicated":334},"Mut"]}]}},{"index":83,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1358,"col":34},"end":{"line":1358,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":84,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1358,"col":34},"end":{"line":1358,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":85,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1358,"col":41},"end":{"line":1358,"col":47}},"generated_from_span":null},"ty":{"HashConsedValue":[1334,{"Ref":[{"Body":59},{"Deduplicated":334},"Shared"]}]}},{"index":86,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1358,"col":41},"end":{"line":1358,"col":47}},"generated_from_span":null},"ty":{"HashConsedValue":[1335,{"Ref":[{"Body":60},{"Deduplicated":334},"Shared"]}]}},{"index":87,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1359,"col":8},"end":{"line":1359,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":476}},{"index":88,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1359,"col":24},"end":{"line":1359,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1336,{"Ref":[{"Body":61},{"Deduplicated":334},"Mut"]}]}},{"index":89,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1359,"col":24},"end":{"line":1359,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1337,{"Ref":[{"Body":62},{"Deduplicated":334},"Mut"]}]}},{"index":90,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1359,"col":34},"end":{"line":1359,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":91,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1359,"col":34},"end":{"line":1359,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":92,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1359,"col":41},"end":{"line":1359,"col":46}},"generated_from_span":null},"ty":{"HashConsedValue":[1338,{"Ref":[{"Body":63},{"Deduplicated":334},"Shared"]}]}},{"index":93,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1359,"col":41},"end":{"line":1359,"col":46}},"generated_from_span":null},"ty":{"HashConsedValue":[1339,{"Ref":[{"Body":64},{"Deduplicated":334},"Shared"]}]}},{"index":94,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1360,"col":8},"end":{"line":1360,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":476}},{"index":95,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1360,"col":24},"end":{"line":1360,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1340,{"Ref":[{"Body":65},{"Deduplicated":334},"Mut"]}]}},{"index":96,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1360,"col":24},"end":{"line":1360,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1341,{"Ref":[{"Body":66},{"Deduplicated":334},"Mut"]}]}},{"index":97,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1360,"col":34},"end":{"line":1360,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":98,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1360,"col":34},"end":{"line":1360,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":99,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1360,"col":41},"end":{"line":1360,"col":46}},"generated_from_span":null},"ty":{"HashConsedValue":[1342,{"Ref":[{"Body":67},{"Deduplicated":334},"Shared"]}]}},{"index":100,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1360,"col":41},"end":{"line":1360,"col":46}},"generated_from_span":null},"ty":{"HashConsedValue":[1343,{"Ref":[{"Body":68},{"Deduplicated":334},"Shared"]}]}},{"index":101,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1361,"col":8},"end":{"line":1361,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":476}},{"index":102,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1361,"col":24},"end":{"line":1361,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1344,{"Ref":[{"Body":69},{"Deduplicated":334},"Mut"]}]}},{"index":103,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1361,"col":24},"end":{"line":1361,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1345,{"Ref":[{"Body":70},{"Deduplicated":334},"Mut"]}]}},{"index":104,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1361,"col":41},"end":{"line":1361,"col":46}},"generated_from_span":null},"ty":{"HashConsedValue":[1346,{"Ref":[{"Body":71},{"Deduplicated":334},"Shared"]}]}},{"index":105,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1361,"col":41},"end":{"line":1361,"col":46}},"generated_from_span":null},"ty":{"HashConsedValue":[1347,{"Ref":[{"Body":72},{"Deduplicated":334},"Shared"]}]}},{"index":106,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1362,"col":8},"end":{"line":1362,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":476}},{"index":107,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1362,"col":24},"end":{"line":1362,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1348,{"Ref":[{"Body":73},{"Deduplicated":334},"Mut"]}]}},{"index":108,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1362,"col":24},"end":{"line":1362,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1349,{"Ref":[{"Body":74},{"Deduplicated":334},"Mut"]}]}},{"index":109,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1362,"col":34},"end":{"line":1362,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":110,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1362,"col":34},"end":{"line":1362,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":111,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1362,"col":41},"end":{"line":1362,"col":47}},"generated_from_span":null},"ty":{"HashConsedValue":[1350,{"Ref":[{"Body":75},{"Deduplicated":334},"Shared"]}]}},{"index":112,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1362,"col":41},"end":{"line":1362,"col":47}},"generated_from_span":null},"ty":{"HashConsedValue":[1351,{"Ref":[{"Body":76},{"Deduplicated":334},"Shared"]}]}},{"index":113,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1363,"col":8},"end":{"line":1363,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":476}},{"index":114,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1363,"col":24},"end":{"line":1363,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1352,{"Ref":[{"Body":77},{"Deduplicated":334},"Mut"]}]}},{"index":115,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1363,"col":24},"end":{"line":1363,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1353,{"Ref":[{"Body":78},{"Deduplicated":334},"Mut"]}]}},{"index":116,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1363,"col":34},"end":{"line":1363,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":117,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1363,"col":34},"end":{"line":1363,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":118,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1363,"col":41},"end":{"line":1363,"col":46}},"generated_from_span":null},"ty":{"HashConsedValue":[1354,{"Ref":[{"Body":79},{"Deduplicated":334},"Shared"]}]}},{"index":119,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1363,"col":41},"end":{"line":1363,"col":46}},"generated_from_span":null},"ty":{"HashConsedValue":[1355,{"Ref":[{"Body":80},{"Deduplicated":334},"Shared"]}]}},{"index":120,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1364,"col":8},"end":{"line":1364,"col":46}},"generated_from_span":null},"ty":{"Deduplicated":476}},{"index":121,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1364,"col":24},"end":{"line":1364,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1356,{"Ref":[{"Body":81},{"Deduplicated":334},"Mut"]}]}},{"index":122,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1364,"col":24},"end":{"line":1364,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1357,{"Ref":[{"Body":82},{"Deduplicated":334},"Mut"]}]}},{"index":123,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1364,"col":34},"end":{"line":1364,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":124,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1364,"col":34},"end":{"line":1364,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":125,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1364,"col":41},"end":{"line":1364,"col":45}},"generated_from_span":null},"ty":{"HashConsedValue":[1358,{"Ref":[{"Body":83},{"Deduplicated":334},"Shared"]}]}},{"index":126,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1364,"col":41},"end":{"line":1364,"col":45}},"generated_from_span":null},"ty":{"HashConsedValue":[1359,{"Ref":[{"Body":84},{"Deduplicated":334},"Shared"]}]}},{"index":127,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1365,"col":8},"end":{"line":1365,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":476}},{"index":128,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1365,"col":24},"end":{"line":1365,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1360,{"Ref":[{"Body":85},{"Deduplicated":334},"Mut"]}]}},{"index":129,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1365,"col":24},"end":{"line":1365,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1361,{"Ref":[{"Body":86},{"Deduplicated":334},"Mut"]}]}},{"index":130,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1365,"col":34},"end":{"line":1365,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":131,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1365,"col":34},"end":{"line":1365,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":132,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1365,"col":41},"end":{"line":1365,"col":47}},"generated_from_span":null},"ty":{"HashConsedValue":[1362,{"Ref":[{"Body":87},{"Deduplicated":334},"Shared"]}]}},{"index":133,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1365,"col":41},"end":{"line":1365,"col":47}},"generated_from_span":null},"ty":{"HashConsedValue":[1363,{"Ref":[{"Body":88},{"Deduplicated":334},"Shared"]}]}},{"index":134,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1366,"col":8},"end":{"line":1366,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":476}},{"index":135,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1366,"col":24},"end":{"line":1366,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1364,{"Ref":[{"Body":89},{"Deduplicated":334},"Mut"]}]}},{"index":136,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1366,"col":24},"end":{"line":1366,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1365,{"Ref":[{"Body":90},{"Deduplicated":334},"Mut"]}]}},{"index":137,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1366,"col":34},"end":{"line":1366,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":138,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1366,"col":34},"end":{"line":1366,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":139,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1366,"col":41},"end":{"line":1366,"col":47}},"generated_from_span":null},"ty":{"HashConsedValue":[1366,{"Ref":[{"Body":91},{"Deduplicated":334},"Shared"]}]}},{"index":140,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1366,"col":41},"end":{"line":1366,"col":47}},"generated_from_span":null},"ty":{"HashConsedValue":[1367,{"Ref":[{"Body":92},{"Deduplicated":334},"Shared"]}]}},{"index":141,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1367,"col":8},"end":{"line":1367,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":476}},{"index":142,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1367,"col":24},"end":{"line":1367,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1368,{"Ref":[{"Body":93},{"Deduplicated":334},"Mut"]}]}},{"index":143,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1367,"col":24},"end":{"line":1367,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1369,{"Ref":[{"Body":94},{"Deduplicated":334},"Mut"]}]}},{"index":144,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1367,"col":34},"end":{"line":1367,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":145,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1367,"col":34},"end":{"line":1367,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":146,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1367,"col":41},"end":{"line":1367,"col":47}},"generated_from_span":null},"ty":{"HashConsedValue":[1370,{"Ref":[{"Body":95},{"Deduplicated":334},"Shared"]}]}},{"index":147,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1367,"col":41},"end":{"line":1367,"col":47}},"generated_from_span":null},"ty":{"HashConsedValue":[1371,{"Ref":[{"Body":96},{"Deduplicated":334},"Shared"]}]}},{"index":148,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1368,"col":8},"end":{"line":1368,"col":46}},"generated_from_span":null},"ty":{"Deduplicated":476}},{"index":149,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1368,"col":24},"end":{"line":1368,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1372,{"Ref":[{"Body":97},{"Deduplicated":334},"Mut"]}]}},{"index":150,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1368,"col":24},"end":{"line":1368,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1373,{"Ref":[{"Body":98},{"Deduplicated":334},"Mut"]}]}},{"index":151,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1368,"col":34},"end":{"line":1368,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":152,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1368,"col":34},"end":{"line":1368,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":153,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1368,"col":41},"end":{"line":1368,"col":45}},"generated_from_span":null},"ty":{"HashConsedValue":[1374,{"Ref":[{"Body":99},{"Deduplicated":334},"Shared"]}]}},{"index":154,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1368,"col":41},"end":{"line":1368,"col":45}},"generated_from_span":null},"ty":{"HashConsedValue":[1375,{"Ref":[{"Body":100},{"Deduplicated":334},"Shared"]}]}},{"index":155,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1369,"col":8},"end":{"line":1369,"col":46}},"generated_from_span":null},"ty":{"Deduplicated":476}},{"index":156,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1369,"col":24},"end":{"line":1369,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1376,{"Ref":[{"Body":101},{"Deduplicated":334},"Mut"]}]}},{"index":157,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1369,"col":24},"end":{"line":1369,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1377,{"Ref":[{"Body":102},{"Deduplicated":334},"Mut"]}]}},{"index":158,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1369,"col":34},"end":{"line":1369,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":159,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1369,"col":34},"end":{"line":1369,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":160,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1369,"col":41},"end":{"line":1369,"col":45}},"generated_from_span":null},"ty":{"HashConsedValue":[1378,{"Ref":[{"Body":103},{"Deduplicated":334},"Shared"]}]}},{"index":161,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1369,"col":41},"end":{"line":1369,"col":45}},"generated_from_span":null},"ty":{"HashConsedValue":[1379,{"Ref":[{"Body":104},{"Deduplicated":334},"Shared"]}]}},{"index":162,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1370,"col":8},"end":{"line":1370,"col":46}},"generated_from_span":null},"ty":{"Deduplicated":476}},{"index":163,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1370,"col":24},"end":{"line":1370,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1380,{"Ref":[{"Body":105},{"Deduplicated":334},"Mut"]}]}},{"index":164,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1370,"col":24},"end":{"line":1370,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1381,{"Ref":[{"Body":106},{"Deduplicated":334},"Mut"]}]}},{"index":165,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1370,"col":34},"end":{"line":1370,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":166,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1370,"col":34},"end":{"line":1370,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":167,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1370,"col":41},"end":{"line":1370,"col":45}},"generated_from_span":null},"ty":{"HashConsedValue":[1382,{"Ref":[{"Body":107},{"Deduplicated":334},"Shared"]}]}},{"index":168,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1370,"col":41},"end":{"line":1370,"col":45}},"generated_from_span":null},"ty":{"HashConsedValue":[1383,{"Ref":[{"Body":108},{"Deduplicated":334},"Shared"]}]}},{"index":169,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1371,"col":8},"end":{"line":1371,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":476}},{"index":170,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1371,"col":24},"end":{"line":1371,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1384,{"Ref":[{"Body":109},{"Deduplicated":334},"Mut"]}]}},{"index":171,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1371,"col":24},"end":{"line":1371,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1385,{"Ref":[{"Body":110},{"Deduplicated":334},"Mut"]}]}},{"index":172,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1371,"col":34},"end":{"line":1371,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":173,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1371,"col":34},"end":{"line":1371,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":174,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1371,"col":41},"end":{"line":1371,"col":47}},"generated_from_span":null},"ty":{"HashConsedValue":[1386,{"Ref":[{"Body":111},{"Deduplicated":334},"Shared"]}]}},{"index":175,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1371,"col":41},"end":{"line":1371,"col":47}},"generated_from_span":null},"ty":{"HashConsedValue":[1387,{"Ref":[{"Body":112},{"Deduplicated":334},"Shared"]}]}},{"index":176,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1372,"col":8},"end":{"line":1372,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":476}},{"index":177,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1372,"col":24},"end":{"line":1372,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1388,{"Ref":[{"Body":113},{"Deduplicated":334},"Mut"]}]}},{"index":178,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1372,"col":24},"end":{"line":1372,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1389,{"Ref":[{"Body":114},{"Deduplicated":334},"Mut"]}]}},{"index":179,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1372,"col":34},"end":{"line":1372,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":180,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1372,"col":34},"end":{"line":1372,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":181,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1372,"col":41},"end":{"line":1372,"col":46}},"generated_from_span":null},"ty":{"HashConsedValue":[1390,{"Ref":[{"Body":115},{"Deduplicated":334},"Shared"]}]}},{"index":182,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1372,"col":41},"end":{"line":1372,"col":46}},"generated_from_span":null},"ty":{"HashConsedValue":[1391,{"Ref":[{"Body":116},{"Deduplicated":334},"Shared"]}]}},{"index":183,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1373,"col":8},"end":{"line":1373,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":476}},{"index":184,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1373,"col":24},"end":{"line":1373,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1392,{"Ref":[{"Body":117},{"Deduplicated":334},"Mut"]}]}},{"index":185,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1373,"col":24},"end":{"line":1373,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1393,{"Ref":[{"Body":118},{"Deduplicated":334},"Mut"]}]}},{"index":186,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1373,"col":34},"end":{"line":1373,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":187,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1373,"col":34},"end":{"line":1373,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":188,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1373,"col":41},"end":{"line":1373,"col":47}},"generated_from_span":null},"ty":{"HashConsedValue":[1394,{"Ref":[{"Body":119},{"Deduplicated":334},"Shared"]}]}},{"index":189,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1373,"col":41},"end":{"line":1373,"col":47}},"generated_from_span":null},"ty":{"HashConsedValue":[1395,{"Ref":[{"Body":120},{"Deduplicated":334},"Shared"]}]}},{"index":190,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1374,"col":8},"end":{"line":1374,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":476}},{"index":191,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1374,"col":24},"end":{"line":1374,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1396,{"Ref":[{"Body":121},{"Deduplicated":334},"Mut"]}]}},{"index":192,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1374,"col":24},"end":{"line":1374,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1397,{"Ref":[{"Body":122},{"Deduplicated":334},"Mut"]}]}},{"index":193,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1374,"col":34},"end":{"line":1374,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":194,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1374,"col":34},"end":{"line":1374,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":195,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1374,"col":41},"end":{"line":1374,"col":47}},"generated_from_span":null},"ty":{"HashConsedValue":[1398,{"Ref":[{"Body":123},{"Deduplicated":334},"Shared"]}]}},{"index":196,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1374,"col":41},"end":{"line":1374,"col":47}},"generated_from_span":null},"ty":{"HashConsedValue":[1399,{"Ref":[{"Body":124},{"Deduplicated":334},"Shared"]}]}},{"index":197,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1375,"col":8},"end":{"line":1375,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":476}},{"index":198,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1375,"col":24},"end":{"line":1375,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1400,{"Ref":[{"Body":125},{"Deduplicated":334},"Mut"]}]}},{"index":199,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1375,"col":24},"end":{"line":1375,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1401,{"Ref":[{"Body":126},{"Deduplicated":334},"Mut"]}]}},{"index":200,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1375,"col":41},"end":{"line":1375,"col":46}},"generated_from_span":null},"ty":{"HashConsedValue":[1402,{"Ref":[{"Body":127},{"Deduplicated":334},"Shared"]}]}},{"index":201,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1375,"col":41},"end":{"line":1375,"col":46}},"generated_from_span":null},"ty":{"HashConsedValue":[1403,{"Ref":[{"Body":128},{"Deduplicated":334},"Shared"]}]}},{"index":202,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1376,"col":8},"end":{"line":1376,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":476}},{"index":203,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1376,"col":24},"end":{"line":1376,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1404,{"Ref":[{"Body":129},{"Deduplicated":334},"Mut"]}]}},{"index":204,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1376,"col":24},"end":{"line":1376,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1405,{"Ref":[{"Body":130},{"Deduplicated":334},"Mut"]}]}},{"index":205,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1376,"col":34},"end":{"line":1376,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":206,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1376,"col":34},"end":{"line":1376,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":207,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1376,"col":41},"end":{"line":1376,"col":47}},"generated_from_span":null},"ty":{"HashConsedValue":[1406,{"Ref":[{"Body":131},{"Deduplicated":334},"Shared"]}]}},{"index":208,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1376,"col":41},"end":{"line":1376,"col":47}},"generated_from_span":null},"ty":{"HashConsedValue":[1407,{"Ref":[{"Body":132},{"Deduplicated":334},"Shared"]}]}},{"index":209,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1377,"col":8},"end":{"line":1377,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":476}},{"index":210,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1377,"col":24},"end":{"line":1377,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1408,{"Ref":[{"Body":133},{"Deduplicated":334},"Mut"]}]}},{"index":211,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1377,"col":24},"end":{"line":1377,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1409,{"Ref":[{"Body":134},{"Deduplicated":334},"Mut"]}]}},{"index":212,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1377,"col":41},"end":{"line":1377,"col":46}},"generated_from_span":null},"ty":{"HashConsedValue":[1410,{"Ref":[{"Body":135},{"Deduplicated":334},"Shared"]}]}},{"index":213,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1377,"col":41},"end":{"line":1377,"col":46}},"generated_from_span":null},"ty":{"HashConsedValue":[1411,{"Ref":[{"Body":136},{"Deduplicated":334},"Shared"]}]}},{"index":214,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1378,"col":8},"end":{"line":1378,"col":46}},"generated_from_span":null},"ty":{"Deduplicated":476}},{"index":215,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1378,"col":24},"end":{"line":1378,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1412,{"Ref":[{"Body":137},{"Deduplicated":334},"Mut"]}]}},{"index":216,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1378,"col":24},"end":{"line":1378,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[1413,{"Ref":[{"Body":138},{"Deduplicated":334},"Mut"]}]}},{"index":217,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1378,"col":34},"end":{"line":1378,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":218,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1378,"col":34},"end":{"line":1378,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":219,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1378,"col":41},"end":{"line":1378,"col":45}},"generated_from_span":null},"ty":{"HashConsedValue":[1414,{"Ref":[{"Body":139},{"Deduplicated":334},"Shared"]}]}},{"index":220,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1378,"col":41},"end":{"line":1378,"col":45}},"generated_from_span":null},"ty":{"HashConsedValue":[1415,{"Ref":[{"Body":140},{"Deduplicated":334},"Shared"]}]}},{"index":221,"name":"inverse","span":{"data":{"file_id":5,"beg":{"line":1380,"col":12},"end":{"line":1380,"col":19}},"generated_from_span":null},"ty":{"Deduplicated":334}}]},"body":{"span":{"data":{"file_id":5,"beg":{"line":1331,"col":12},"end":{"line":1397,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":5,"beg":{"line":1331,"col":12},"end":{"line":1331,"col":21}},"generated_from_span":null},"id":1025,"kind":{"StorageLive":46},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1331,"col":12},"end":{"line":1331,"col":21}},"generated_from_span":null},"id":1026,"kind":{"StorageLive":53},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1331,"col":12},"end":{"line":1331,"col":21}},"generated_from_span":null},"id":1027,"kind":{"StorageLive":60},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1331,"col":12},"end":{"line":1331,"col":21}},"generated_from_span":null},"id":1028,"kind":{"StorageLive":67},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1331,"col":12},"end":{"line":1331,"col":21}},"generated_from_span":null},"id":1029,"kind":{"StorageLive":84},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1331,"col":12},"end":{"line":1331,"col":21}},"generated_from_span":null},"id":1030,"kind":{"StorageLive":91},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1331,"col":12},"end":{"line":1331,"col":21}},"generated_from_span":null},"id":1031,"kind":{"StorageLive":98},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1331,"col":12},"end":{"line":1331,"col":21}},"generated_from_span":null},"id":1032,"kind":{"StorageLive":110},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1331,"col":12},"end":{"line":1331,"col":21}},"generated_from_span":null},"id":1033,"kind":{"StorageLive":117},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1331,"col":12},"end":{"line":1331,"col":21}},"generated_from_span":null},"id":1034,"kind":{"StorageLive":124},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1331,"col":12},"end":{"line":1331,"col":21}},"generated_from_span":null},"id":1035,"kind":{"StorageLive":131},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1331,"col":12},"end":{"line":1331,"col":21}},"generated_from_span":null},"id":1036,"kind":{"StorageLive":138},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1331,"col":12},"end":{"line":1331,"col":21}},"generated_from_span":null},"id":1037,"kind":{"StorageLive":145},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1331,"col":12},"end":{"line":1331,"col":21}},"generated_from_span":null},"id":1038,"kind":{"StorageLive":152},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1331,"col":12},"end":{"line":1331,"col":21}},"generated_from_span":null},"id":1039,"kind":{"StorageLive":159},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1331,"col":12},"end":{"line":1331,"col":21}},"generated_from_span":null},"id":1040,"kind":{"StorageLive":166},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1331,"col":12},"end":{"line":1331,"col":21}},"generated_from_span":null},"id":1041,"kind":{"StorageLive":173},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1331,"col":12},"end":{"line":1331,"col":21}},"generated_from_span":null},"id":1042,"kind":{"StorageLive":180},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1331,"col":12},"end":{"line":1331,"col":21}},"generated_from_span":null},"id":1043,"kind":{"StorageLive":187},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1331,"col":12},"end":{"line":1331,"col":21}},"generated_from_span":null},"id":1044,"kind":{"StorageLive":194},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1331,"col":12},"end":{"line":1331,"col":21}},"generated_from_span":null},"id":1045,"kind":{"StorageLive":206},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1331,"col":12},"end":{"line":1331,"col":21}},"generated_from_span":null},"id":1046,"kind":{"StorageLive":218},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1331,"col":12},"end":{"line":1331,"col":21}},"generated_from_span":null},"id":1047,"kind":{"StorageLive":2},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1331,"col":24},"end":{"line":1331,"col":29}},"generated_from_span":null},"id":1048,"kind":{"Assign":[{"kind":{"Local":2},"ty":{"Deduplicated":334}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}}},"Yes"]}]},"comments_before":["Uses the addition chain from","https://briansmith.org/ecc-inversion-addition-chains-01#curve25519_scalar_inversion"]},{"span":{"data":{"file_id":5,"beg":{"line":1332,"col":12},"end":{"line":1332,"col":21}},"generated_from_span":null},"id":1049,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1332,"col":24},"end":{"line":1332,"col":26}},"generated_from_span":null},"id":1050,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1332,"col":24},"end":{"line":1332,"col":26}},"generated_from_span":null},"id":1051,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":464}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1332,"col":24},"end":{"line":1332,"col":46}},"generated_from_span":null},"id":1052,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":5}},"generics":{"regions":[{"Body":142}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":464}}}],"dest":{"kind":{"Local":3},"ty":{"Deduplicated":334}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1332,"col":45},"end":{"line":1332,"col":46}},"generated_from_span":null},"id":1053,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1333,"col":12},"end":{"line":1333,"col":21}},"generated_from_span":null},"id":1054,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1333,"col":24},"end":{"line":1333,"col":27}},"generated_from_span":null},"id":1055,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1333,"col":24},"end":{"line":1333,"col":27}},"generated_from_span":null},"id":1056,"kind":{"Assign":[{"kind":{"Local":6},"ty":{"Deduplicated":1222}},{"Ref":{"place":{"kind":{"Local":3},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1333,"col":24},"end":{"line":1333,"col":47}},"generated_from_span":null},"id":1057,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":5}},"generics":{"regions":[{"Body":144}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":6},"ty":{"Deduplicated":1222}}}],"dest":{"kind":{"Local":5},"ty":{"Deduplicated":334}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1333,"col":46},"end":{"line":1333,"col":47}},"generated_from_span":null},"id":1058,"kind":{"StorageDead":6},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1334,"col":12},"end":{"line":1334,"col":21}},"generated_from_span":null},"id":1059,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1334,"col":55},"end":{"line":1334,"col":59}},"generated_from_span":null},"id":1060,"kind":{"StorageLive":8},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1334,"col":55},"end":{"line":1334,"col":59}},"generated_from_span":null},"id":1061,"kind":{"StorageLive":9},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1334,"col":55},"end":{"line":1334,"col":59}},"generated_from_span":null},"id":1062,"kind":{"Assign":[{"kind":{"Local":9},"ty":{"Deduplicated":1300}},{"Ref":{"place":{"kind":{"Local":3},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1334,"col":55},"end":{"line":1334,"col":59}},"generated_from_span":null},"id":1063,"kind":{"Assign":[{"kind":{"Local":8},"ty":{"Deduplicated":1223}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":9},"ty":{"Deduplicated":1300}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1334,"col":65},"end":{"line":1334,"col":68}},"generated_from_span":null},"id":1064,"kind":{"StorageLive":10},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1334,"col":65},"end":{"line":1334,"col":68}},"generated_from_span":null},"id":1065,"kind":{"StorageLive":11},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1334,"col":65},"end":{"line":1334,"col":68}},"generated_from_span":null},"id":1066,"kind":{"Assign":[{"kind":{"Local":11},"ty":{"Deduplicated":1244}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1334,"col":65},"end":{"line":1334,"col":68}},"generated_from_span":null},"id":1067,"kind":{"Assign":[{"kind":{"Local":10},"ty":{"Deduplicated":1243}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":11},"ty":{"Deduplicated":1244}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1334,"col":24},"end":{"line":1334,"col":69}},"generated_from_span":null},"id":1068,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":4}},"generics":{"regions":[{"Body":147},{"Body":148}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":8},"ty":{"Deduplicated":1223}}},{"Move":{"kind":{"Local":10},"ty":{"Deduplicated":1243}}}],"dest":{"kind":{"Local":7},"ty":{"Deduplicated":334}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1334,"col":68},"end":{"line":1334,"col":69}},"generated_from_span":null},"id":1069,"kind":{"StorageDead":10},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1334,"col":68},"end":{"line":1334,"col":69}},"generated_from_span":null},"id":1070,"kind":{"StorageDead":8},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1334,"col":69},"end":{"line":1334,"col":70}},"generated_from_span":null},"id":1071,"kind":{"StorageDead":11},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1334,"col":69},"end":{"line":1334,"col":70}},"generated_from_span":null},"id":1072,"kind":{"StorageDead":9},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1335,"col":12},"end":{"line":1335,"col":21}},"generated_from_span":null},"id":1073,"kind":{"StorageLive":12},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1335,"col":55},"end":{"line":1335,"col":59}},"generated_from_span":null},"id":1074,"kind":{"StorageLive":13},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1335,"col":55},"end":{"line":1335,"col":59}},"generated_from_span":null},"id":1075,"kind":{"StorageLive":14},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1335,"col":55},"end":{"line":1335,"col":59}},"generated_from_span":null},"id":1076,"kind":{"Assign":[{"kind":{"Local":14},"ty":{"Deduplicated":1228}},{"Ref":{"place":{"kind":{"Local":3},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1335,"col":55},"end":{"line":1335,"col":59}},"generated_from_span":null},"id":1077,"kind":{"Assign":[{"kind":{"Local":13},"ty":{"Deduplicated":606}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":14},"ty":{"Deduplicated":1228}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1335,"col":64},"end":{"line":1335,"col":68}},"generated_from_span":null},"id":1078,"kind":{"StorageLive":15},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1335,"col":64},"end":{"line":1335,"col":68}},"generated_from_span":null},"id":1079,"kind":{"StorageLive":16},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1335,"col":64},"end":{"line":1335,"col":68}},"generated_from_span":null},"id":1080,"kind":{"Assign":[{"kind":{"Local":16},"ty":{"Deduplicated":1229}},{"Ref":{"place":{"kind":{"Local":7},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1335,"col":64},"end":{"line":1335,"col":68}},"generated_from_span":null},"id":1081,"kind":{"Assign":[{"kind":{"Local":15},"ty":{"Deduplicated":608}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":16},"ty":{"Deduplicated":1229}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1335,"col":24},"end":{"line":1335,"col":69}},"generated_from_span":null},"id":1082,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":4}},"generics":{"regions":[{"Body":151},{"Body":152}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":13},"ty":{"Deduplicated":606}}},{"Move":{"kind":{"Local":15},"ty":{"Deduplicated":608}}}],"dest":{"kind":{"Local":12},"ty":{"Deduplicated":334}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1335,"col":68},"end":{"line":1335,"col":69}},"generated_from_span":null},"id":1083,"kind":{"StorageDead":15},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1335,"col":68},"end":{"line":1335,"col":69}},"generated_from_span":null},"id":1084,"kind":{"StorageDead":13},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1335,"col":69},"end":{"line":1335,"col":70}},"generated_from_span":null},"id":1085,"kind":{"StorageDead":16},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1335,"col":69},"end":{"line":1335,"col":70}},"generated_from_span":null},"id":1086,"kind":{"StorageDead":14},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1336,"col":12},"end":{"line":1336,"col":21}},"generated_from_span":null},"id":1087,"kind":{"StorageLive":17},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1336,"col":55},"end":{"line":1336,"col":59}},"generated_from_span":null},"id":1088,"kind":{"StorageLive":18},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1336,"col":55},"end":{"line":1336,"col":59}},"generated_from_span":null},"id":1089,"kind":{"StorageLive":19},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1336,"col":55},"end":{"line":1336,"col":59}},"generated_from_span":null},"id":1090,"kind":{"Assign":[{"kind":{"Local":19},"ty":{"Deduplicated":1301}},{"Ref":{"place":{"kind":{"Local":3},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1336,"col":55},"end":{"line":1336,"col":59}},"generated_from_span":null},"id":1091,"kind":{"Assign":[{"kind":{"Local":18},"ty":{"Deduplicated":1247}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":19},"ty":{"Deduplicated":1301}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1336,"col":63},"end":{"line":1336,"col":68}},"generated_from_span":null},"id":1092,"kind":{"StorageLive":20},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1336,"col":63},"end":{"line":1336,"col":68}},"generated_from_span":null},"id":1093,"kind":{"StorageLive":21},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1336,"col":63},"end":{"line":1336,"col":68}},"generated_from_span":null},"id":1094,"kind":{"Assign":[{"kind":{"Local":21},"ty":{"Deduplicated":615}},{"Ref":{"place":{"kind":{"Local":12},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1336,"col":63},"end":{"line":1336,"col":68}},"generated_from_span":null},"id":1095,"kind":{"Assign":[{"kind":{"Local":20},"ty":{"Deduplicated":1232}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":21},"ty":{"Deduplicated":615}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1336,"col":24},"end":{"line":1336,"col":69}},"generated_from_span":null},"id":1096,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":4}},"generics":{"regions":[{"Body":155},{"Body":156}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":18},"ty":{"Deduplicated":1247}}},{"Move":{"kind":{"Local":20},"ty":{"Deduplicated":1232}}}],"dest":{"kind":{"Local":17},"ty":{"Deduplicated":334}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1336,"col":68},"end":{"line":1336,"col":69}},"generated_from_span":null},"id":1097,"kind":{"StorageDead":20},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1336,"col":68},"end":{"line":1336,"col":69}},"generated_from_span":null},"id":1098,"kind":{"StorageDead":18},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1336,"col":69},"end":{"line":1336,"col":70}},"generated_from_span":null},"id":1099,"kind":{"StorageDead":21},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1336,"col":69},"end":{"line":1336,"col":70}},"generated_from_span":null},"id":1100,"kind":{"StorageDead":19},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1337,"col":12},"end":{"line":1337,"col":21}},"generated_from_span":null},"id":1101,"kind":{"StorageLive":22},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1337,"col":55},"end":{"line":1337,"col":59}},"generated_from_span":null},"id":1102,"kind":{"StorageLive":23},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1337,"col":55},"end":{"line":1337,"col":59}},"generated_from_span":null},"id":1103,"kind":{"StorageLive":24},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1337,"col":55},"end":{"line":1337,"col":59}},"generated_from_span":null},"id":1104,"kind":{"Assign":[{"kind":{"Local":24},"ty":{"Deduplicated":617}},{"Ref":{"place":{"kind":{"Local":3},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1337,"col":55},"end":{"line":1337,"col":59}},"generated_from_span":null},"id":1105,"kind":{"Assign":[{"kind":{"Local":23},"ty":{"Deduplicated":616}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":24},"ty":{"Deduplicated":617}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1337,"col":63},"end":{"line":1337,"col":68}},"generated_from_span":null},"id":1106,"kind":{"StorageLive":25},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1337,"col":63},"end":{"line":1337,"col":68}},"generated_from_span":null},"id":1107,"kind":{"StorageLive":26},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1337,"col":63},"end":{"line":1337,"col":68}},"generated_from_span":null},"id":1108,"kind":{"Assign":[{"kind":{"Local":26},"ty":{"Deduplicated":619}},{"Ref":{"place":{"kind":{"Local":17},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1337,"col":63},"end":{"line":1337,"col":68}},"generated_from_span":null},"id":1109,"kind":{"Assign":[{"kind":{"Local":25},"ty":{"Deduplicated":618}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":26},"ty":{"Deduplicated":619}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1337,"col":24},"end":{"line":1337,"col":69}},"generated_from_span":null},"id":1110,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":4}},"generics":{"regions":[{"Body":159},{"Body":160}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":23},"ty":{"Deduplicated":616}}},{"Move":{"kind":{"Local":25},"ty":{"Deduplicated":618}}}],"dest":{"kind":{"Local":22},"ty":{"Deduplicated":334}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1337,"col":68},"end":{"line":1337,"col":69}},"generated_from_span":null},"id":1111,"kind":{"StorageDead":25},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1337,"col":68},"end":{"line":1337,"col":69}},"generated_from_span":null},"id":1112,"kind":{"StorageDead":23},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1337,"col":69},"end":{"line":1337,"col":70}},"generated_from_span":null},"id":1113,"kind":{"StorageDead":26},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1337,"col":69},"end":{"line":1337,"col":70}},"generated_from_span":null},"id":1114,"kind":{"StorageDead":24},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1338,"col":12},"end":{"line":1338,"col":21}},"generated_from_span":null},"id":1115,"kind":{"StorageLive":27},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1338,"col":55},"end":{"line":1338,"col":59}},"generated_from_span":null},"id":1116,"kind":{"StorageLive":28},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1338,"col":55},"end":{"line":1338,"col":59}},"generated_from_span":null},"id":1117,"kind":{"StorageLive":29},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1338,"col":55},"end":{"line":1338,"col":59}},"generated_from_span":null},"id":1118,"kind":{"Assign":[{"kind":{"Local":29},"ty":{"Deduplicated":1240}},{"Ref":{"place":{"kind":{"Local":3},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1338,"col":55},"end":{"line":1338,"col":59}},"generated_from_span":null},"id":1119,"kind":{"Assign":[{"kind":{"Local":28},"ty":{"Deduplicated":1273}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":29},"ty":{"Deduplicated":1240}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1338,"col":62},"end":{"line":1338,"col":68}},"generated_from_span":null},"id":1120,"kind":{"StorageLive":30},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1338,"col":62},"end":{"line":1338,"col":68}},"generated_from_span":null},"id":1121,"kind":{"StorageLive":31},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1338,"col":62},"end":{"line":1338,"col":68}},"generated_from_span":null},"id":1122,"kind":{"Assign":[{"kind":{"Local":31},"ty":{"Deduplicated":1302}},{"Ref":{"place":{"kind":{"Local":22},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1338,"col":62},"end":{"line":1338,"col":68}},"generated_from_span":null},"id":1123,"kind":{"Assign":[{"kind":{"Local":30},"ty":{"Deduplicated":1275}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":31},"ty":{"Deduplicated":1302}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1338,"col":24},"end":{"line":1338,"col":69}},"generated_from_span":null},"id":1124,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":4}},"generics":{"regions":[{"Body":163},{"Body":164}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":28},"ty":{"Deduplicated":1273}}},{"Move":{"kind":{"Local":30},"ty":{"Deduplicated":1275}}}],"dest":{"kind":{"Local":27},"ty":{"Deduplicated":334}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1338,"col":68},"end":{"line":1338,"col":69}},"generated_from_span":null},"id":1125,"kind":{"StorageDead":30},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1338,"col":68},"end":{"line":1338,"col":69}},"generated_from_span":null},"id":1126,"kind":{"StorageDead":28},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1338,"col":69},"end":{"line":1338,"col":70}},"generated_from_span":null},"id":1127,"kind":{"StorageDead":31},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1338,"col":69},"end":{"line":1338,"col":70}},"generated_from_span":null},"id":1128,"kind":{"StorageDead":29},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1339,"col":12},"end":{"line":1339,"col":21}},"generated_from_span":null},"id":1129,"kind":{"StorageLive":32},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1339,"col":55},"end":{"line":1339,"col":60}},"generated_from_span":null},"id":1130,"kind":{"StorageLive":33},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1339,"col":55},"end":{"line":1339,"col":60}},"generated_from_span":null},"id":1131,"kind":{"StorageLive":34},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1339,"col":55},"end":{"line":1339,"col":60}},"generated_from_span":null},"id":1132,"kind":{"Assign":[{"kind":{"Local":34},"ty":{"Deduplicated":1303}},{"Ref":{"place":{"kind":{"Local":5},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1339,"col":55},"end":{"line":1339,"col":60}},"generated_from_span":null},"id":1133,"kind":{"Assign":[{"kind":{"Local":33},"ty":{"Deduplicated":990}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":34},"ty":{"Deduplicated":1303}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1339,"col":62},"end":{"line":1339,"col":68}},"generated_from_span":null},"id":1134,"kind":{"StorageLive":35},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1339,"col":62},"end":{"line":1339,"col":68}},"generated_from_span":null},"id":1135,"kind":{"StorageLive":36},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1339,"col":62},"end":{"line":1339,"col":68}},"generated_from_span":null},"id":1136,"kind":{"Assign":[{"kind":{"Local":36},"ty":{"Deduplicated":1304}},{"Ref":{"place":{"kind":{"Local":27},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1339,"col":62},"end":{"line":1339,"col":68}},"generated_from_span":null},"id":1137,"kind":{"Assign":[{"kind":{"Local":35},"ty":{"Deduplicated":1278}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":36},"ty":{"Deduplicated":1304}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1339,"col":24},"end":{"line":1339,"col":69}},"generated_from_span":null},"id":1138,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":4}},"generics":{"regions":[{"Body":167},{"Body":168}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":33},"ty":{"Deduplicated":990}}},{"Move":{"kind":{"Local":35},"ty":{"Deduplicated":1278}}}],"dest":{"kind":{"Local":32},"ty":{"Deduplicated":334}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1339,"col":68},"end":{"line":1339,"col":69}},"generated_from_span":null},"id":1139,"kind":{"StorageDead":35},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1339,"col":68},"end":{"line":1339,"col":69}},"generated_from_span":null},"id":1140,"kind":{"StorageDead":33},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1339,"col":69},"end":{"line":1339,"col":70}},"generated_from_span":null},"id":1141,"kind":{"StorageDead":36},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1339,"col":69},"end":{"line":1339,"col":70}},"generated_from_span":null},"id":1142,"kind":{"StorageDead":34},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1342,"col":12},"end":{"line":1342,"col":17}},"generated_from_span":null},"id":1143,"kind":{"StorageLive":37},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1342,"col":51},"end":{"line":1342,"col":57}},"generated_from_span":null},"id":1144,"kind":{"StorageLive":38},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1342,"col":51},"end":{"line":1342,"col":57}},"generated_from_span":null},"id":1145,"kind":{"StorageLive":39},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1342,"col":51},"end":{"line":1342,"col":57}},"generated_from_span":null},"id":1146,"kind":{"Assign":[{"kind":{"Local":39},"ty":{"Deduplicated":1305}},{"Ref":{"place":{"kind":{"Local":32},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":["_10000"]},{"span":{"data":{"file_id":5,"beg":{"line":1342,"col":51},"end":{"line":1342,"col":57}},"generated_from_span":null},"id":1147,"kind":{"Assign":[{"kind":{"Local":38},"ty":{"Deduplicated":1280}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":39},"ty":{"Deduplicated":1305}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1342,"col":59},"end":{"line":1342,"col":62}},"generated_from_span":null},"id":1148,"kind":{"StorageLive":40},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1342,"col":59},"end":{"line":1342,"col":62}},"generated_from_span":null},"id":1149,"kind":{"StorageLive":41},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1342,"col":59},"end":{"line":1342,"col":62}},"generated_from_span":null},"id":1150,"kind":{"Assign":[{"kind":{"Local":41},"ty":{"Deduplicated":1306}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1342,"col":59},"end":{"line":1342,"col":62}},"generated_from_span":null},"id":1151,"kind":{"Assign":[{"kind":{"Local":40},"ty":{"Deduplicated":1282}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":41},"ty":{"Deduplicated":1306}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1342,"col":20},"end":{"line":1342,"col":63}},"generated_from_span":null},"id":1152,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":4}},"generics":{"regions":[{"Body":171},{"Body":172}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":38},"ty":{"Deduplicated":1280}}},{"Move":{"kind":{"Local":40},"ty":{"Deduplicated":1282}}}],"dest":{"kind":{"Local":37},"ty":{"Deduplicated":334}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1342,"col":62},"end":{"line":1342,"col":63}},"generated_from_span":null},"id":1153,"kind":{"StorageDead":40},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1342,"col":62},"end":{"line":1342,"col":63}},"generated_from_span":null},"id":1154,"kind":{"StorageDead":38},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1342,"col":63},"end":{"line":1342,"col":64}},"generated_from_span":null},"id":1155,"kind":{"StorageDead":41},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1342,"col":63},"end":{"line":1342,"col":64}},"generated_from_span":null},"id":1156,"kind":{"StorageDead":39},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1352,"col":8},"end":{"line":1352,"col":47}},"generated_from_span":null},"id":1157,"kind":{"StorageLive":42},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1352,"col":24},"end":{"line":1352,"col":30}},"generated_from_span":null},"id":1158,"kind":{"StorageLive":43},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1352,"col":24},"end":{"line":1352,"col":30}},"generated_from_span":null},"id":1159,"kind":{"StorageLive":44},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1352,"col":24},"end":{"line":1352,"col":30}},"generated_from_span":null},"id":1160,"kind":{"Assign":[{"kind":{"Local":44},"ty":{"Deduplicated":1309}},{"Ref":{"place":{"kind":{"Local":37},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1352,"col":24},"end":{"line":1352,"col":30}},"generated_from_span":null},"id":1161,"kind":{"Assign":[{"kind":{"Local":43},"ty":{"Deduplicated":1308}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":44},"ty":{"Deduplicated":1309}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"TwoPhaseMut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1352,"col":32},"end":{"line":1352,"col":39}},"generated_from_span":null},"id":1162,"kind":{"StorageLive":45},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1352,"col":32},"end":{"line":1352,"col":39}},"generated_from_span":null},"id":1163,"kind":{"Assign":[{"kind":{"Local":46},"ty":{"Deduplicated":455}},{"BinaryOp":[{"Add":"Panic"},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","123"]}}},"ty":{"Deduplicated":455}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":455}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1352,"col":32},"end":{"line":1352,"col":39}},"generated_from_span":null},"id":1165,"kind":{"Assign":[{"kind":{"Local":45},"ty":{"Deduplicated":455}},{"Use":[{"Move":{"kind":{"Local":46},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1352,"col":41},"end":{"line":1352,"col":46}},"generated_from_span":null},"id":1166,"kind":{"StorageLive":47},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1352,"col":41},"end":{"line":1352,"col":46}},"generated_from_span":null},"id":1167,"kind":{"StorageLive":48},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1352,"col":41},"end":{"line":1352,"col":46}},"generated_from_span":null},"id":1168,"kind":{"Assign":[{"kind":{"Local":48},"ty":{"Deduplicated":1288}},{"Ref":{"place":{"kind":{"Local":12},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1352,"col":41},"end":{"line":1352,"col":46}},"generated_from_span":null},"id":1169,"kind":{"Assign":[{"kind":{"Local":47},"ty":{"Deduplicated":1287}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":48},"ty":{"Deduplicated":1288}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1352,"col":8},"end":{"line":1352,"col":47}},"generated_from_span":null},"id":1170,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":23}},"generics":{"regions":[{"Body":175},{"Body":176}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":43},"ty":{"Deduplicated":1308}}},{"Move":{"kind":{"Local":45},"ty":{"Deduplicated":455}}},{"Move":{"kind":{"Local":47},"ty":{"Deduplicated":1287}}}],"dest":{"kind":{"Local":42},"ty":{"Deduplicated":476}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1352,"col":46},"end":{"line":1352,"col":47}},"generated_from_span":null},"id":1171,"kind":{"StorageDead":47},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1352,"col":46},"end":{"line":1352,"col":47}},"generated_from_span":null},"id":1172,"kind":{"StorageDead":45},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1352,"col":46},"end":{"line":1352,"col":47}},"generated_from_span":null},"id":1173,"kind":{"StorageDead":43},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1352,"col":47},"end":{"line":1352,"col":48}},"generated_from_span":null},"id":1174,"kind":{"StorageDead":48},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1352,"col":47},"end":{"line":1352,"col":48}},"generated_from_span":null},"id":1175,"kind":{"StorageDead":44},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1352,"col":47},"end":{"line":1352,"col":48}},"generated_from_span":null},"id":1176,"kind":{"StorageDead":42},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1353,"col":8},"end":{"line":1353,"col":46}},"generated_from_span":null},"id":1177,"kind":{"StorageLive":49},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1353,"col":24},"end":{"line":1353,"col":30}},"generated_from_span":null},"id":1178,"kind":{"StorageLive":50},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1353,"col":24},"end":{"line":1353,"col":30}},"generated_from_span":null},"id":1179,"kind":{"StorageLive":51},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1353,"col":24},"end":{"line":1353,"col":30}},"generated_from_span":null},"id":1180,"kind":{"Assign":[{"kind":{"Local":51},"ty":{"Deduplicated":1314}},{"Ref":{"place":{"kind":{"Local":37},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1353,"col":24},"end":{"line":1353,"col":30}},"generated_from_span":null},"id":1181,"kind":{"Assign":[{"kind":{"Local":50},"ty":{"Deduplicated":1313}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":51},"ty":{"Deduplicated":1314}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"TwoPhaseMut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1353,"col":34},"end":{"line":1353,"col":39}},"generated_from_span":null},"id":1182,"kind":{"StorageLive":52},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1353,"col":34},"end":{"line":1353,"col":39}},"generated_from_span":null},"id":1183,"kind":{"Assign":[{"kind":{"Local":53},"ty":{"Deduplicated":455}},{"BinaryOp":[{"Add":"Panic"},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1353,"col":34},"end":{"line":1353,"col":39}},"generated_from_span":null},"id":1185,"kind":{"Assign":[{"kind":{"Local":52},"ty":{"Deduplicated":455}},{"Use":[{"Move":{"kind":{"Local":53},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1353,"col":41},"end":{"line":1353,"col":45}},"generated_from_span":null},"id":1186,"kind":{"StorageLive":54},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1353,"col":41},"end":{"line":1353,"col":45}},"generated_from_span":null},"id":1187,"kind":{"StorageLive":55},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1353,"col":41},"end":{"line":1353,"col":45}},"generated_from_span":null},"id":1188,"kind":{"Assign":[{"kind":{"Local":55},"ty":{"Deduplicated":1315}},{"Ref":{"place":{"kind":{"Local":7},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1353,"col":41},"end":{"line":1353,"col":45}},"generated_from_span":null},"id":1189,"kind":{"Assign":[{"kind":{"Local":54},"ty":{"Deduplicated":1293}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":55},"ty":{"Deduplicated":1315}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1353,"col":8},"end":{"line":1353,"col":46}},"generated_from_span":null},"id":1190,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":23}},"generics":{"regions":[{"Body":179},{"Body":180}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":50},"ty":{"Deduplicated":1313}}},{"Move":{"kind":{"Local":52},"ty":{"Deduplicated":455}}},{"Move":{"kind":{"Local":54},"ty":{"Deduplicated":1293}}}],"dest":{"kind":{"Local":49},"ty":{"Deduplicated":476}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1353,"col":45},"end":{"line":1353,"col":46}},"generated_from_span":null},"id":1191,"kind":{"StorageDead":54},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1353,"col":45},"end":{"line":1353,"col":46}},"generated_from_span":null},"id":1192,"kind":{"StorageDead":52},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1353,"col":45},"end":{"line":1353,"col":46}},"generated_from_span":null},"id":1193,"kind":{"StorageDead":50},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1353,"col":46},"end":{"line":1353,"col":47}},"generated_from_span":null},"id":1194,"kind":{"StorageDead":55},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1353,"col":46},"end":{"line":1353,"col":47}},"generated_from_span":null},"id":1195,"kind":{"StorageDead":51},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1353,"col":46},"end":{"line":1353,"col":47}},"generated_from_span":null},"id":1196,"kind":{"StorageDead":49},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1354,"col":8},"end":{"line":1354,"col":48}},"generated_from_span":null},"id":1197,"kind":{"StorageLive":56},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1354,"col":24},"end":{"line":1354,"col":30}},"generated_from_span":null},"id":1198,"kind":{"StorageLive":57},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1354,"col":24},"end":{"line":1354,"col":30}},"generated_from_span":null},"id":1199,"kind":{"StorageLive":58},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1354,"col":24},"end":{"line":1354,"col":30}},"generated_from_span":null},"id":1200,"kind":{"Assign":[{"kind":{"Local":58},"ty":{"Deduplicated":1317}},{"Ref":{"place":{"kind":{"Local":37},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1354,"col":24},"end":{"line":1354,"col":30}},"generated_from_span":null},"id":1201,"kind":{"Assign":[{"kind":{"Local":57},"ty":{"Deduplicated":1316}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":58},"ty":{"Deduplicated":1317}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"TwoPhaseMut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1354,"col":34},"end":{"line":1354,"col":39}},"generated_from_span":null},"id":1202,"kind":{"StorageLive":59},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1354,"col":34},"end":{"line":1354,"col":39}},"generated_from_span":null},"id":1203,"kind":{"Assign":[{"kind":{"Local":60},"ty":{"Deduplicated":455}},{"BinaryOp":[{"Add":"Panic"},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1354,"col":34},"end":{"line":1354,"col":39}},"generated_from_span":null},"id":1205,"kind":{"Assign":[{"kind":{"Local":59},"ty":{"Deduplicated":455}},{"Use":[{"Move":{"kind":{"Local":60},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1354,"col":41},"end":{"line":1354,"col":47}},"generated_from_span":null},"id":1206,"kind":{"StorageLive":61},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1354,"col":41},"end":{"line":1354,"col":47}},"generated_from_span":null},"id":1207,"kind":{"StorageLive":62},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1354,"col":41},"end":{"line":1354,"col":47}},"generated_from_span":null},"id":1208,"kind":{"Assign":[{"kind":{"Local":62},"ty":{"Deduplicated":1319}},{"Ref":{"place":{"kind":{"Local":32},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1354,"col":41},"end":{"line":1354,"col":47}},"generated_from_span":null},"id":1209,"kind":{"Assign":[{"kind":{"Local":61},"ty":{"Deduplicated":1318}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":62},"ty":{"Deduplicated":1319}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1354,"col":8},"end":{"line":1354,"col":48}},"generated_from_span":null},"id":1210,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":23}},"generics":{"regions":[{"Body":183},{"Body":184}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":57},"ty":{"Deduplicated":1316}}},{"Move":{"kind":{"Local":59},"ty":{"Deduplicated":455}}},{"Move":{"kind":{"Local":61},"ty":{"Deduplicated":1318}}}],"dest":{"kind":{"Local":56},"ty":{"Deduplicated":476}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1354,"col":47},"end":{"line":1354,"col":48}},"generated_from_span":null},"id":1211,"kind":{"StorageDead":61},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1354,"col":47},"end":{"line":1354,"col":48}},"generated_from_span":null},"id":1212,"kind":{"StorageDead":59},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1354,"col":47},"end":{"line":1354,"col":48}},"generated_from_span":null},"id":1213,"kind":{"StorageDead":57},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1354,"col":48},"end":{"line":1354,"col":49}},"generated_from_span":null},"id":1214,"kind":{"StorageDead":62},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1354,"col":48},"end":{"line":1354,"col":49}},"generated_from_span":null},"id":1215,"kind":{"StorageDead":58},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1354,"col":48},"end":{"line":1354,"col":49}},"generated_from_span":null},"id":1216,"kind":{"StorageDead":56},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1355,"col":8},"end":{"line":1355,"col":48}},"generated_from_span":null},"id":1217,"kind":{"StorageLive":63},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1355,"col":24},"end":{"line":1355,"col":30}},"generated_from_span":null},"id":1218,"kind":{"StorageLive":64},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1355,"col":24},"end":{"line":1355,"col":30}},"generated_from_span":null},"id":1219,"kind":{"StorageLive":65},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1355,"col":24},"end":{"line":1355,"col":30}},"generated_from_span":null},"id":1220,"kind":{"Assign":[{"kind":{"Local":65},"ty":{"Deduplicated":1321}},{"Ref":{"place":{"kind":{"Local":37},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1355,"col":24},"end":{"line":1355,"col":30}},"generated_from_span":null},"id":1221,"kind":{"Assign":[{"kind":{"Local":64},"ty":{"Deduplicated":1320}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":65},"ty":{"Deduplicated":1321}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"TwoPhaseMut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1355,"col":34},"end":{"line":1355,"col":39}},"generated_from_span":null},"id":1222,"kind":{"StorageLive":66},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1355,"col":34},"end":{"line":1355,"col":39}},"generated_from_span":null},"id":1223,"kind":{"Assign":[{"kind":{"Local":67},"ty":{"Deduplicated":455}},{"BinaryOp":[{"Add":"Panic"},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1355,"col":34},"end":{"line":1355,"col":39}},"generated_from_span":null},"id":1225,"kind":{"Assign":[{"kind":{"Local":66},"ty":{"Deduplicated":455}},{"Use":[{"Move":{"kind":{"Local":67},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1355,"col":41},"end":{"line":1355,"col":47}},"generated_from_span":null},"id":1226,"kind":{"StorageLive":68},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1355,"col":41},"end":{"line":1355,"col":47}},"generated_from_span":null},"id":1227,"kind":{"StorageLive":69},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1355,"col":41},"end":{"line":1355,"col":47}},"generated_from_span":null},"id":1228,"kind":{"Assign":[{"kind":{"Local":69},"ty":{"Deduplicated":1323}},{"Ref":{"place":{"kind":{"Local":32},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1355,"col":41},"end":{"line":1355,"col":47}},"generated_from_span":null},"id":1229,"kind":{"Assign":[{"kind":{"Local":68},"ty":{"Deduplicated":1322}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":69},"ty":{"Deduplicated":1323}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1355,"col":8},"end":{"line":1355,"col":48}},"generated_from_span":null},"id":1230,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":23}},"generics":{"regions":[{"Body":187},{"Body":188}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":64},"ty":{"Deduplicated":1320}}},{"Move":{"kind":{"Local":66},"ty":{"Deduplicated":455}}},{"Move":{"kind":{"Local":68},"ty":{"Deduplicated":1322}}}],"dest":{"kind":{"Local":63},"ty":{"Deduplicated":476}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1355,"col":47},"end":{"line":1355,"col":48}},"generated_from_span":null},"id":1231,"kind":{"StorageDead":68},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1355,"col":47},"end":{"line":1355,"col":48}},"generated_from_span":null},"id":1232,"kind":{"StorageDead":66},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1355,"col":47},"end":{"line":1355,"col":48}},"generated_from_span":null},"id":1233,"kind":{"StorageDead":64},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1355,"col":48},"end":{"line":1355,"col":49}},"generated_from_span":null},"id":1234,"kind":{"StorageDead":69},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1355,"col":48},"end":{"line":1355,"col":49}},"generated_from_span":null},"id":1235,"kind":{"StorageDead":65},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1355,"col":48},"end":{"line":1355,"col":49}},"generated_from_span":null},"id":1236,"kind":{"StorageDead":63},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1356,"col":8},"end":{"line":1356,"col":48}},"generated_from_span":null},"id":1237,"kind":{"StorageLive":70},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1356,"col":24},"end":{"line":1356,"col":30}},"generated_from_span":null},"id":1238,"kind":{"StorageLive":71},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1356,"col":24},"end":{"line":1356,"col":30}},"generated_from_span":null},"id":1239,"kind":{"StorageLive":72},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1356,"col":24},"end":{"line":1356,"col":30}},"generated_from_span":null},"id":1240,"kind":{"Assign":[{"kind":{"Local":72},"ty":{"Deduplicated":1325}},{"Ref":{"place":{"kind":{"Local":37},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1356,"col":24},"end":{"line":1356,"col":30}},"generated_from_span":null},"id":1241,"kind":{"Assign":[{"kind":{"Local":71},"ty":{"Deduplicated":1324}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":72},"ty":{"Deduplicated":1325}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"TwoPhaseMut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1356,"col":41},"end":{"line":1356,"col":47}},"generated_from_span":null},"id":1242,"kind":{"StorageLive":73},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1356,"col":41},"end":{"line":1356,"col":47}},"generated_from_span":null},"id":1243,"kind":{"StorageLive":74},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1356,"col":41},"end":{"line":1356,"col":47}},"generated_from_span":null},"id":1244,"kind":{"Assign":[{"kind":{"Local":74},"ty":{"Deduplicated":1327}},{"Ref":{"place":{"kind":{"Local":22},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1356,"col":41},"end":{"line":1356,"col":47}},"generated_from_span":null},"id":1245,"kind":{"Assign":[{"kind":{"Local":73},"ty":{"Deduplicated":1326}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":74},"ty":{"Deduplicated":1327}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1356,"col":8},"end":{"line":1356,"col":48}},"generated_from_span":null},"id":1246,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":23}},"generics":{"regions":[{"Body":191},{"Body":192}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":71},"ty":{"Deduplicated":1324}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}},{"Move":{"kind":{"Local":73},"ty":{"Deduplicated":1326}}}],"dest":{"kind":{"Local":70},"ty":{"Deduplicated":476}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1356,"col":47},"end":{"line":1356,"col":48}},"generated_from_span":null},"id":1247,"kind":{"StorageDead":73},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1356,"col":47},"end":{"line":1356,"col":48}},"generated_from_span":null},"id":1248,"kind":{"StorageDead":71},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1356,"col":48},"end":{"line":1356,"col":49}},"generated_from_span":null},"id":1249,"kind":{"StorageDead":74},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1356,"col":48},"end":{"line":1356,"col":49}},"generated_from_span":null},"id":1250,"kind":{"StorageDead":72},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1356,"col":48},"end":{"line":1356,"col":49}},"generated_from_span":null},"id":1251,"kind":{"StorageDead":70},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1357,"col":8},"end":{"line":1357,"col":46}},"generated_from_span":null},"id":1252,"kind":{"StorageLive":75},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1357,"col":24},"end":{"line":1357,"col":30}},"generated_from_span":null},"id":1253,"kind":{"StorageLive":76},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1357,"col":24},"end":{"line":1357,"col":30}},"generated_from_span":null},"id":1254,"kind":{"StorageLive":77},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1357,"col":24},"end":{"line":1357,"col":30}},"generated_from_span":null},"id":1255,"kind":{"Assign":[{"kind":{"Local":77},"ty":{"Deduplicated":1329}},{"Ref":{"place":{"kind":{"Local":37},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1357,"col":24},"end":{"line":1357,"col":30}},"generated_from_span":null},"id":1256,"kind":{"Assign":[{"kind":{"Local":76},"ty":{"Deduplicated":1328}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":77},"ty":{"Deduplicated":1329}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"TwoPhaseMut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1357,"col":41},"end":{"line":1357,"col":45}},"generated_from_span":null},"id":1257,"kind":{"StorageLive":78},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1357,"col":41},"end":{"line":1357,"col":45}},"generated_from_span":null},"id":1258,"kind":{"StorageLive":79},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1357,"col":41},"end":{"line":1357,"col":45}},"generated_from_span":null},"id":1259,"kind":{"Assign":[{"kind":{"Local":79},"ty":{"Deduplicated":1331}},{"Ref":{"place":{"kind":{"Local":7},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1357,"col":41},"end":{"line":1357,"col":45}},"generated_from_span":null},"id":1260,"kind":{"Assign":[{"kind":{"Local":78},"ty":{"Deduplicated":1330}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":79},"ty":{"Deduplicated":1331}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1357,"col":8},"end":{"line":1357,"col":46}},"generated_from_span":null},"id":1261,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":23}},"generics":{"regions":[{"Body":195},{"Body":196}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":76},"ty":{"Deduplicated":1328}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}},{"Move":{"kind":{"Local":78},"ty":{"Deduplicated":1330}}}],"dest":{"kind":{"Local":75},"ty":{"Deduplicated":476}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1357,"col":45},"end":{"line":1357,"col":46}},"generated_from_span":null},"id":1262,"kind":{"StorageDead":78},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1357,"col":45},"end":{"line":1357,"col":46}},"generated_from_span":null},"id":1263,"kind":{"StorageDead":76},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1357,"col":46},"end":{"line":1357,"col":47}},"generated_from_span":null},"id":1264,"kind":{"StorageDead":79},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1357,"col":46},"end":{"line":1357,"col":47}},"generated_from_span":null},"id":1265,"kind":{"StorageDead":77},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1357,"col":46},"end":{"line":1357,"col":47}},"generated_from_span":null},"id":1266,"kind":{"StorageDead":75},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1358,"col":8},"end":{"line":1358,"col":48}},"generated_from_span":null},"id":1267,"kind":{"StorageLive":80},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1358,"col":24},"end":{"line":1358,"col":30}},"generated_from_span":null},"id":1268,"kind":{"StorageLive":81},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1358,"col":24},"end":{"line":1358,"col":30}},"generated_from_span":null},"id":1269,"kind":{"StorageLive":82},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1358,"col":24},"end":{"line":1358,"col":30}},"generated_from_span":null},"id":1270,"kind":{"Assign":[{"kind":{"Local":82},"ty":{"Deduplicated":1333}},{"Ref":{"place":{"kind":{"Local":37},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1358,"col":24},"end":{"line":1358,"col":30}},"generated_from_span":null},"id":1271,"kind":{"Assign":[{"kind":{"Local":81},"ty":{"Deduplicated":1332}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":82},"ty":{"Deduplicated":1333}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"TwoPhaseMut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1358,"col":34},"end":{"line":1358,"col":39}},"generated_from_span":null},"id":1272,"kind":{"StorageLive":83},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1358,"col":34},"end":{"line":1358,"col":39}},"generated_from_span":null},"id":1273,"kind":{"Assign":[{"kind":{"Local":84},"ty":{"Deduplicated":455}},{"BinaryOp":[{"Add":"Panic"},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1358,"col":34},"end":{"line":1358,"col":39}},"generated_from_span":null},"id":1275,"kind":{"Assign":[{"kind":{"Local":83},"ty":{"Deduplicated":455}},{"Use":[{"Move":{"kind":{"Local":84},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1358,"col":41},"end":{"line":1358,"col":47}},"generated_from_span":null},"id":1276,"kind":{"StorageLive":85},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1358,"col":41},"end":{"line":1358,"col":47}},"generated_from_span":null},"id":1277,"kind":{"StorageLive":86},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1358,"col":41},"end":{"line":1358,"col":47}},"generated_from_span":null},"id":1278,"kind":{"Assign":[{"kind":{"Local":86},"ty":{"Deduplicated":1335}},{"Ref":{"place":{"kind":{"Local":32},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1358,"col":41},"end":{"line":1358,"col":47}},"generated_from_span":null},"id":1279,"kind":{"Assign":[{"kind":{"Local":85},"ty":{"Deduplicated":1334}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":86},"ty":{"Deduplicated":1335}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1358,"col":8},"end":{"line":1358,"col":48}},"generated_from_span":null},"id":1280,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":23}},"generics":{"regions":[{"Body":199},{"Body":200}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":81},"ty":{"Deduplicated":1332}}},{"Move":{"kind":{"Local":83},"ty":{"Deduplicated":455}}},{"Move":{"kind":{"Local":85},"ty":{"Deduplicated":1334}}}],"dest":{"kind":{"Local":80},"ty":{"Deduplicated":476}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1358,"col":47},"end":{"line":1358,"col":48}},"generated_from_span":null},"id":1281,"kind":{"StorageDead":85},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1358,"col":47},"end":{"line":1358,"col":48}},"generated_from_span":null},"id":1282,"kind":{"StorageDead":83},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1358,"col":47},"end":{"line":1358,"col":48}},"generated_from_span":null},"id":1283,"kind":{"StorageDead":81},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1358,"col":48},"end":{"line":1358,"col":49}},"generated_from_span":null},"id":1284,"kind":{"StorageDead":86},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1358,"col":48},"end":{"line":1358,"col":49}},"generated_from_span":null},"id":1285,"kind":{"StorageDead":82},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1358,"col":48},"end":{"line":1358,"col":49}},"generated_from_span":null},"id":1286,"kind":{"StorageDead":80},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1359,"col":8},"end":{"line":1359,"col":47}},"generated_from_span":null},"id":1287,"kind":{"StorageLive":87},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1359,"col":24},"end":{"line":1359,"col":30}},"generated_from_span":null},"id":1288,"kind":{"StorageLive":88},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1359,"col":24},"end":{"line":1359,"col":30}},"generated_from_span":null},"id":1289,"kind":{"StorageLive":89},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1359,"col":24},"end":{"line":1359,"col":30}},"generated_from_span":null},"id":1290,"kind":{"Assign":[{"kind":{"Local":89},"ty":{"Deduplicated":1337}},{"Ref":{"place":{"kind":{"Local":37},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1359,"col":24},"end":{"line":1359,"col":30}},"generated_from_span":null},"id":1291,"kind":{"Assign":[{"kind":{"Local":88},"ty":{"Deduplicated":1336}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":89},"ty":{"Deduplicated":1337}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"TwoPhaseMut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1359,"col":34},"end":{"line":1359,"col":39}},"generated_from_span":null},"id":1292,"kind":{"StorageLive":90},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1359,"col":34},"end":{"line":1359,"col":39}},"generated_from_span":null},"id":1293,"kind":{"Assign":[{"kind":{"Local":91},"ty":{"Deduplicated":455}},{"BinaryOp":[{"Add":"Panic"},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":455}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1359,"col":34},"end":{"line":1359,"col":39}},"generated_from_span":null},"id":1295,"kind":{"Assign":[{"kind":{"Local":90},"ty":{"Deduplicated":455}},{"Use":[{"Move":{"kind":{"Local":91},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1359,"col":41},"end":{"line":1359,"col":46}},"generated_from_span":null},"id":1296,"kind":{"StorageLive":92},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1359,"col":41},"end":{"line":1359,"col":46}},"generated_from_span":null},"id":1297,"kind":{"StorageLive":93},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1359,"col":41},"end":{"line":1359,"col":46}},"generated_from_span":null},"id":1298,"kind":{"Assign":[{"kind":{"Local":93},"ty":{"Deduplicated":1339}},{"Ref":{"place":{"kind":{"Local":12},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1359,"col":41},"end":{"line":1359,"col":46}},"generated_from_span":null},"id":1299,"kind":{"Assign":[{"kind":{"Local":92},"ty":{"Deduplicated":1338}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":93},"ty":{"Deduplicated":1339}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1359,"col":8},"end":{"line":1359,"col":47}},"generated_from_span":null},"id":1300,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":23}},"generics":{"regions":[{"Body":203},{"Body":204}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":88},"ty":{"Deduplicated":1336}}},{"Move":{"kind":{"Local":90},"ty":{"Deduplicated":455}}},{"Move":{"kind":{"Local":92},"ty":{"Deduplicated":1338}}}],"dest":{"kind":{"Local":87},"ty":{"Deduplicated":476}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1359,"col":46},"end":{"line":1359,"col":47}},"generated_from_span":null},"id":1301,"kind":{"StorageDead":92},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1359,"col":46},"end":{"line":1359,"col":47}},"generated_from_span":null},"id":1302,"kind":{"StorageDead":90},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1359,"col":46},"end":{"line":1359,"col":47}},"generated_from_span":null},"id":1303,"kind":{"StorageDead":88},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1359,"col":47},"end":{"line":1359,"col":48}},"generated_from_span":null},"id":1304,"kind":{"StorageDead":93},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1359,"col":47},"end":{"line":1359,"col":48}},"generated_from_span":null},"id":1305,"kind":{"StorageDead":89},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1359,"col":47},"end":{"line":1359,"col":48}},"generated_from_span":null},"id":1306,"kind":{"StorageDead":87},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1360,"col":8},"end":{"line":1360,"col":47}},"generated_from_span":null},"id":1307,"kind":{"StorageLive":94},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1360,"col":24},"end":{"line":1360,"col":30}},"generated_from_span":null},"id":1308,"kind":{"StorageLive":95},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1360,"col":24},"end":{"line":1360,"col":30}},"generated_from_span":null},"id":1309,"kind":{"StorageLive":96},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1360,"col":24},"end":{"line":1360,"col":30}},"generated_from_span":null},"id":1310,"kind":{"Assign":[{"kind":{"Local":96},"ty":{"Deduplicated":1341}},{"Ref":{"place":{"kind":{"Local":37},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1360,"col":24},"end":{"line":1360,"col":30}},"generated_from_span":null},"id":1311,"kind":{"Assign":[{"kind":{"Local":95},"ty":{"Deduplicated":1340}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":96},"ty":{"Deduplicated":1341}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"TwoPhaseMut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1360,"col":34},"end":{"line":1360,"col":39}},"generated_from_span":null},"id":1312,"kind":{"StorageLive":97},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1360,"col":34},"end":{"line":1360,"col":39}},"generated_from_span":null},"id":1313,"kind":{"Assign":[{"kind":{"Local":98},"ty":{"Deduplicated":455}},{"BinaryOp":[{"Add":"Panic"},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":455}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":455}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1360,"col":34},"end":{"line":1360,"col":39}},"generated_from_span":null},"id":1315,"kind":{"Assign":[{"kind":{"Local":97},"ty":{"Deduplicated":455}},{"Use":[{"Move":{"kind":{"Local":98},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1360,"col":41},"end":{"line":1360,"col":46}},"generated_from_span":null},"id":1316,"kind":{"StorageLive":99},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1360,"col":41},"end":{"line":1360,"col":46}},"generated_from_span":null},"id":1317,"kind":{"StorageLive":100},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1360,"col":41},"end":{"line":1360,"col":46}},"generated_from_span":null},"id":1318,"kind":{"Assign":[{"kind":{"Local":100},"ty":{"Deduplicated":1343}},{"Ref":{"place":{"kind":{"Local":12},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1360,"col":41},"end":{"line":1360,"col":46}},"generated_from_span":null},"id":1319,"kind":{"Assign":[{"kind":{"Local":99},"ty":{"Deduplicated":1342}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":100},"ty":{"Deduplicated":1343}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1360,"col":8},"end":{"line":1360,"col":47}},"generated_from_span":null},"id":1320,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":23}},"generics":{"regions":[{"Body":207},{"Body":208}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":95},"ty":{"Deduplicated":1340}}},{"Move":{"kind":{"Local":97},"ty":{"Deduplicated":455}}},{"Move":{"kind":{"Local":99},"ty":{"Deduplicated":1342}}}],"dest":{"kind":{"Local":94},"ty":{"Deduplicated":476}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1360,"col":46},"end":{"line":1360,"col":47}},"generated_from_span":null},"id":1321,"kind":{"StorageDead":99},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1360,"col":46},"end":{"line":1360,"col":47}},"generated_from_span":null},"id":1322,"kind":{"StorageDead":97},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1360,"col":46},"end":{"line":1360,"col":47}},"generated_from_span":null},"id":1323,"kind":{"StorageDead":95},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1360,"col":47},"end":{"line":1360,"col":48}},"generated_from_span":null},"id":1324,"kind":{"StorageDead":100},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1360,"col":47},"end":{"line":1360,"col":48}},"generated_from_span":null},"id":1325,"kind":{"StorageDead":96},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1360,"col":47},"end":{"line":1360,"col":48}},"generated_from_span":null},"id":1326,"kind":{"StorageDead":94},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1361,"col":8},"end":{"line":1361,"col":47}},"generated_from_span":null},"id":1327,"kind":{"StorageLive":101},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1361,"col":24},"end":{"line":1361,"col":30}},"generated_from_span":null},"id":1328,"kind":{"StorageLive":102},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1361,"col":24},"end":{"line":1361,"col":30}},"generated_from_span":null},"id":1329,"kind":{"StorageLive":103},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1361,"col":24},"end":{"line":1361,"col":30}},"generated_from_span":null},"id":1330,"kind":{"Assign":[{"kind":{"Local":103},"ty":{"Deduplicated":1345}},{"Ref":{"place":{"kind":{"Local":37},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1361,"col":24},"end":{"line":1361,"col":30}},"generated_from_span":null},"id":1331,"kind":{"Assign":[{"kind":{"Local":102},"ty":{"Deduplicated":1344}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":103},"ty":{"Deduplicated":1345}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"TwoPhaseMut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1361,"col":41},"end":{"line":1361,"col":46}},"generated_from_span":null},"id":1332,"kind":{"StorageLive":104},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1361,"col":41},"end":{"line":1361,"col":46}},"generated_from_span":null},"id":1333,"kind":{"StorageLive":105},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1361,"col":41},"end":{"line":1361,"col":46}},"generated_from_span":null},"id":1334,"kind":{"Assign":[{"kind":{"Local":105},"ty":{"Deduplicated":1347}},{"Ref":{"place":{"kind":{"Local":17},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1361,"col":41},"end":{"line":1361,"col":46}},"generated_from_span":null},"id":1335,"kind":{"Assign":[{"kind":{"Local":104},"ty":{"Deduplicated":1346}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":105},"ty":{"Deduplicated":1347}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1361,"col":8},"end":{"line":1361,"col":47}},"generated_from_span":null},"id":1336,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":23}},"generics":{"regions":[{"Body":211},{"Body":212}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":102},"ty":{"Deduplicated":1344}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":455}}},{"Move":{"kind":{"Local":104},"ty":{"Deduplicated":1346}}}],"dest":{"kind":{"Local":101},"ty":{"Deduplicated":476}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1361,"col":46},"end":{"line":1361,"col":47}},"generated_from_span":null},"id":1337,"kind":{"StorageDead":104},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1361,"col":46},"end":{"line":1361,"col":47}},"generated_from_span":null},"id":1338,"kind":{"StorageDead":102},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1361,"col":47},"end":{"line":1361,"col":48}},"generated_from_span":null},"id":1339,"kind":{"StorageDead":105},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1361,"col":47},"end":{"line":1361,"col":48}},"generated_from_span":null},"id":1340,"kind":{"StorageDead":103},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1361,"col":47},"end":{"line":1361,"col":48}},"generated_from_span":null},"id":1341,"kind":{"StorageDead":101},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1362,"col":8},"end":{"line":1362,"col":48}},"generated_from_span":null},"id":1342,"kind":{"StorageLive":106},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1362,"col":24},"end":{"line":1362,"col":30}},"generated_from_span":null},"id":1343,"kind":{"StorageLive":107},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1362,"col":24},"end":{"line":1362,"col":30}},"generated_from_span":null},"id":1344,"kind":{"StorageLive":108},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1362,"col":24},"end":{"line":1362,"col":30}},"generated_from_span":null},"id":1345,"kind":{"Assign":[{"kind":{"Local":108},"ty":{"Deduplicated":1349}},{"Ref":{"place":{"kind":{"Local":37},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1362,"col":24},"end":{"line":1362,"col":30}},"generated_from_span":null},"id":1346,"kind":{"Assign":[{"kind":{"Local":107},"ty":{"Deduplicated":1348}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":108},"ty":{"Deduplicated":1349}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"TwoPhaseMut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1362,"col":34},"end":{"line":1362,"col":39}},"generated_from_span":null},"id":1347,"kind":{"StorageLive":109},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1362,"col":34},"end":{"line":1362,"col":39}},"generated_from_span":null},"id":1348,"kind":{"Assign":[{"kind":{"Local":110},"ty":{"Deduplicated":455}},{"BinaryOp":[{"Add":"Panic"},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1362,"col":34},"end":{"line":1362,"col":39}},"generated_from_span":null},"id":1350,"kind":{"Assign":[{"kind":{"Local":109},"ty":{"Deduplicated":455}},{"Use":[{"Move":{"kind":{"Local":110},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1362,"col":41},"end":{"line":1362,"col":47}},"generated_from_span":null},"id":1351,"kind":{"StorageLive":111},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1362,"col":41},"end":{"line":1362,"col":47}},"generated_from_span":null},"id":1352,"kind":{"StorageLive":112},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1362,"col":41},"end":{"line":1362,"col":47}},"generated_from_span":null},"id":1353,"kind":{"Assign":[{"kind":{"Local":112},"ty":{"Deduplicated":1351}},{"Ref":{"place":{"kind":{"Local":32},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1362,"col":41},"end":{"line":1362,"col":47}},"generated_from_span":null},"id":1354,"kind":{"Assign":[{"kind":{"Local":111},"ty":{"Deduplicated":1350}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":112},"ty":{"Deduplicated":1351}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1362,"col":8},"end":{"line":1362,"col":48}},"generated_from_span":null},"id":1355,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":23}},"generics":{"regions":[{"Body":215},{"Body":216}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":107},"ty":{"Deduplicated":1348}}},{"Move":{"kind":{"Local":109},"ty":{"Deduplicated":455}}},{"Move":{"kind":{"Local":111},"ty":{"Deduplicated":1350}}}],"dest":{"kind":{"Local":106},"ty":{"Deduplicated":476}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1362,"col":47},"end":{"line":1362,"col":48}},"generated_from_span":null},"id":1356,"kind":{"StorageDead":111},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1362,"col":47},"end":{"line":1362,"col":48}},"generated_from_span":null},"id":1357,"kind":{"StorageDead":109},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1362,"col":47},"end":{"line":1362,"col":48}},"generated_from_span":null},"id":1358,"kind":{"StorageDead":107},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1362,"col":48},"end":{"line":1362,"col":49}},"generated_from_span":null},"id":1359,"kind":{"StorageDead":112},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1362,"col":48},"end":{"line":1362,"col":49}},"generated_from_span":null},"id":1360,"kind":{"StorageDead":108},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1362,"col":48},"end":{"line":1362,"col":49}},"generated_from_span":null},"id":1361,"kind":{"StorageDead":106},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1363,"col":8},"end":{"line":1363,"col":47}},"generated_from_span":null},"id":1362,"kind":{"StorageLive":113},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1363,"col":24},"end":{"line":1363,"col":30}},"generated_from_span":null},"id":1363,"kind":{"StorageLive":114},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1363,"col":24},"end":{"line":1363,"col":30}},"generated_from_span":null},"id":1364,"kind":{"StorageLive":115},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1363,"col":24},"end":{"line":1363,"col":30}},"generated_from_span":null},"id":1365,"kind":{"Assign":[{"kind":{"Local":115},"ty":{"Deduplicated":1353}},{"Ref":{"place":{"kind":{"Local":37},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1363,"col":24},"end":{"line":1363,"col":30}},"generated_from_span":null},"id":1366,"kind":{"Assign":[{"kind":{"Local":114},"ty":{"Deduplicated":1352}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":115},"ty":{"Deduplicated":1353}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"TwoPhaseMut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1363,"col":34},"end":{"line":1363,"col":39}},"generated_from_span":null},"id":1367,"kind":{"StorageLive":116},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1363,"col":34},"end":{"line":1363,"col":39}},"generated_from_span":null},"id":1368,"kind":{"Assign":[{"kind":{"Local":117},"ty":{"Deduplicated":455}},{"BinaryOp":[{"Add":"Panic"},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":455}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1363,"col":34},"end":{"line":1363,"col":39}},"generated_from_span":null},"id":1370,"kind":{"Assign":[{"kind":{"Local":116},"ty":{"Deduplicated":455}},{"Use":[{"Move":{"kind":{"Local":117},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1363,"col":41},"end":{"line":1363,"col":46}},"generated_from_span":null},"id":1371,"kind":{"StorageLive":118},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1363,"col":41},"end":{"line":1363,"col":46}},"generated_from_span":null},"id":1372,"kind":{"StorageLive":119},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1363,"col":41},"end":{"line":1363,"col":46}},"generated_from_span":null},"id":1373,"kind":{"Assign":[{"kind":{"Local":119},"ty":{"Deduplicated":1355}},{"Ref":{"place":{"kind":{"Local":17},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1363,"col":41},"end":{"line":1363,"col":46}},"generated_from_span":null},"id":1374,"kind":{"Assign":[{"kind":{"Local":118},"ty":{"Deduplicated":1354}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":119},"ty":{"Deduplicated":1355}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1363,"col":8},"end":{"line":1363,"col":47}},"generated_from_span":null},"id":1375,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":23}},"generics":{"regions":[{"Body":219},{"Body":220}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":114},"ty":{"Deduplicated":1352}}},{"Move":{"kind":{"Local":116},"ty":{"Deduplicated":455}}},{"Move":{"kind":{"Local":118},"ty":{"Deduplicated":1354}}}],"dest":{"kind":{"Local":113},"ty":{"Deduplicated":476}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1363,"col":46},"end":{"line":1363,"col":47}},"generated_from_span":null},"id":1376,"kind":{"StorageDead":118},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1363,"col":46},"end":{"line":1363,"col":47}},"generated_from_span":null},"id":1377,"kind":{"StorageDead":116},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1363,"col":46},"end":{"line":1363,"col":47}},"generated_from_span":null},"id":1378,"kind":{"StorageDead":114},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1363,"col":47},"end":{"line":1363,"col":48}},"generated_from_span":null},"id":1379,"kind":{"StorageDead":119},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1363,"col":47},"end":{"line":1363,"col":48}},"generated_from_span":null},"id":1380,"kind":{"StorageDead":115},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1363,"col":47},"end":{"line":1363,"col":48}},"generated_from_span":null},"id":1381,"kind":{"StorageDead":113},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1364,"col":8},"end":{"line":1364,"col":46}},"generated_from_span":null},"id":1382,"kind":{"StorageLive":120},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1364,"col":24},"end":{"line":1364,"col":30}},"generated_from_span":null},"id":1383,"kind":{"StorageLive":121},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1364,"col":24},"end":{"line":1364,"col":30}},"generated_from_span":null},"id":1384,"kind":{"StorageLive":122},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1364,"col":24},"end":{"line":1364,"col":30}},"generated_from_span":null},"id":1385,"kind":{"Assign":[{"kind":{"Local":122},"ty":{"Deduplicated":1357}},{"Ref":{"place":{"kind":{"Local":37},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1364,"col":24},"end":{"line":1364,"col":30}},"generated_from_span":null},"id":1386,"kind":{"Assign":[{"kind":{"Local":121},"ty":{"Deduplicated":1356}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":122},"ty":{"Deduplicated":1357}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"TwoPhaseMut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1364,"col":34},"end":{"line":1364,"col":39}},"generated_from_span":null},"id":1387,"kind":{"StorageLive":123},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1364,"col":34},"end":{"line":1364,"col":39}},"generated_from_span":null},"id":1388,"kind":{"Assign":[{"kind":{"Local":124},"ty":{"Deduplicated":455}},{"BinaryOp":[{"Add":"Panic"},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1364,"col":34},"end":{"line":1364,"col":39}},"generated_from_span":null},"id":1390,"kind":{"Assign":[{"kind":{"Local":123},"ty":{"Deduplicated":455}},{"Use":[{"Move":{"kind":{"Local":124},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1364,"col":41},"end":{"line":1364,"col":45}},"generated_from_span":null},"id":1391,"kind":{"StorageLive":125},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1364,"col":41},"end":{"line":1364,"col":45}},"generated_from_span":null},"id":1392,"kind":{"StorageLive":126},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1364,"col":41},"end":{"line":1364,"col":45}},"generated_from_span":null},"id":1393,"kind":{"Assign":[{"kind":{"Local":126},"ty":{"Deduplicated":1359}},{"Ref":{"place":{"kind":{"Local":7},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1364,"col":41},"end":{"line":1364,"col":45}},"generated_from_span":null},"id":1394,"kind":{"Assign":[{"kind":{"Local":125},"ty":{"Deduplicated":1358}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":126},"ty":{"Deduplicated":1359}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1364,"col":8},"end":{"line":1364,"col":46}},"generated_from_span":null},"id":1395,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":23}},"generics":{"regions":[{"Body":223},{"Body":224}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":121},"ty":{"Deduplicated":1356}}},{"Move":{"kind":{"Local":123},"ty":{"Deduplicated":455}}},{"Move":{"kind":{"Local":125},"ty":{"Deduplicated":1358}}}],"dest":{"kind":{"Local":120},"ty":{"Deduplicated":476}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1364,"col":45},"end":{"line":1364,"col":46}},"generated_from_span":null},"id":1396,"kind":{"StorageDead":125},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1364,"col":45},"end":{"line":1364,"col":46}},"generated_from_span":null},"id":1397,"kind":{"StorageDead":123},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1364,"col":45},"end":{"line":1364,"col":46}},"generated_from_span":null},"id":1398,"kind":{"StorageDead":121},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1364,"col":46},"end":{"line":1364,"col":47}},"generated_from_span":null},"id":1399,"kind":{"StorageDead":126},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1364,"col":46},"end":{"line":1364,"col":47}},"generated_from_span":null},"id":1400,"kind":{"StorageDead":122},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1364,"col":46},"end":{"line":1364,"col":47}},"generated_from_span":null},"id":1401,"kind":{"StorageDead":120},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1365,"col":8},"end":{"line":1365,"col":48}},"generated_from_span":null},"id":1402,"kind":{"StorageLive":127},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1365,"col":24},"end":{"line":1365,"col":30}},"generated_from_span":null},"id":1403,"kind":{"StorageLive":128},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1365,"col":24},"end":{"line":1365,"col":30}},"generated_from_span":null},"id":1404,"kind":{"StorageLive":129},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1365,"col":24},"end":{"line":1365,"col":30}},"generated_from_span":null},"id":1405,"kind":{"Assign":[{"kind":{"Local":129},"ty":{"Deduplicated":1361}},{"Ref":{"place":{"kind":{"Local":37},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1365,"col":24},"end":{"line":1365,"col":30}},"generated_from_span":null},"id":1406,"kind":{"Assign":[{"kind":{"Local":128},"ty":{"Deduplicated":1360}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":129},"ty":{"Deduplicated":1361}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"TwoPhaseMut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1365,"col":34},"end":{"line":1365,"col":39}},"generated_from_span":null},"id":1407,"kind":{"StorageLive":130},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1365,"col":34},"end":{"line":1365,"col":39}},"generated_from_span":null},"id":1408,"kind":{"Assign":[{"kind":{"Local":131},"ty":{"Deduplicated":455}},{"BinaryOp":[{"Add":"Panic"},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1365,"col":34},"end":{"line":1365,"col":39}},"generated_from_span":null},"id":1410,"kind":{"Assign":[{"kind":{"Local":130},"ty":{"Deduplicated":455}},{"Use":[{"Move":{"kind":{"Local":131},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1365,"col":41},"end":{"line":1365,"col":47}},"generated_from_span":null},"id":1411,"kind":{"StorageLive":132},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1365,"col":41},"end":{"line":1365,"col":47}},"generated_from_span":null},"id":1412,"kind":{"StorageLive":133},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1365,"col":41},"end":{"line":1365,"col":47}},"generated_from_span":null},"id":1413,"kind":{"Assign":[{"kind":{"Local":133},"ty":{"Deduplicated":1363}},{"Ref":{"place":{"kind":{"Local":27},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1365,"col":41},"end":{"line":1365,"col":47}},"generated_from_span":null},"id":1414,"kind":{"Assign":[{"kind":{"Local":132},"ty":{"Deduplicated":1362}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":133},"ty":{"Deduplicated":1363}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1365,"col":8},"end":{"line":1365,"col":48}},"generated_from_span":null},"id":1415,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":23}},"generics":{"regions":[{"Body":227},{"Body":228}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":128},"ty":{"Deduplicated":1360}}},{"Move":{"kind":{"Local":130},"ty":{"Deduplicated":455}}},{"Move":{"kind":{"Local":132},"ty":{"Deduplicated":1362}}}],"dest":{"kind":{"Local":127},"ty":{"Deduplicated":476}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1365,"col":47},"end":{"line":1365,"col":48}},"generated_from_span":null},"id":1416,"kind":{"StorageDead":132},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1365,"col":47},"end":{"line":1365,"col":48}},"generated_from_span":null},"id":1417,"kind":{"StorageDead":130},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1365,"col":47},"end":{"line":1365,"col":48}},"generated_from_span":null},"id":1418,"kind":{"StorageDead":128},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1365,"col":48},"end":{"line":1365,"col":49}},"generated_from_span":null},"id":1419,"kind":{"StorageDead":133},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1365,"col":48},"end":{"line":1365,"col":49}},"generated_from_span":null},"id":1420,"kind":{"StorageDead":129},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1365,"col":48},"end":{"line":1365,"col":49}},"generated_from_span":null},"id":1421,"kind":{"StorageDead":127},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1366,"col":8},"end":{"line":1366,"col":48}},"generated_from_span":null},"id":1422,"kind":{"StorageLive":134},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1366,"col":24},"end":{"line":1366,"col":30}},"generated_from_span":null},"id":1423,"kind":{"StorageLive":135},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1366,"col":24},"end":{"line":1366,"col":30}},"generated_from_span":null},"id":1424,"kind":{"StorageLive":136},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1366,"col":24},"end":{"line":1366,"col":30}},"generated_from_span":null},"id":1425,"kind":{"Assign":[{"kind":{"Local":136},"ty":{"Deduplicated":1365}},{"Ref":{"place":{"kind":{"Local":37},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1366,"col":24},"end":{"line":1366,"col":30}},"generated_from_span":null},"id":1426,"kind":{"Assign":[{"kind":{"Local":135},"ty":{"Deduplicated":1364}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":136},"ty":{"Deduplicated":1365}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"TwoPhaseMut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1366,"col":34},"end":{"line":1366,"col":39}},"generated_from_span":null},"id":1427,"kind":{"StorageLive":137},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1366,"col":34},"end":{"line":1366,"col":39}},"generated_from_span":null},"id":1428,"kind":{"Assign":[{"kind":{"Local":138},"ty":{"Deduplicated":455}},{"BinaryOp":[{"Add":"Panic"},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1366,"col":34},"end":{"line":1366,"col":39}},"generated_from_span":null},"id":1430,"kind":{"Assign":[{"kind":{"Local":137},"ty":{"Deduplicated":455}},{"Use":[{"Move":{"kind":{"Local":138},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1366,"col":41},"end":{"line":1366,"col":47}},"generated_from_span":null},"id":1431,"kind":{"StorageLive":139},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1366,"col":41},"end":{"line":1366,"col":47}},"generated_from_span":null},"id":1432,"kind":{"StorageLive":140},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1366,"col":41},"end":{"line":1366,"col":47}},"generated_from_span":null},"id":1433,"kind":{"Assign":[{"kind":{"Local":140},"ty":{"Deduplicated":1367}},{"Ref":{"place":{"kind":{"Local":27},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1366,"col":41},"end":{"line":1366,"col":47}},"generated_from_span":null},"id":1434,"kind":{"Assign":[{"kind":{"Local":139},"ty":{"Deduplicated":1366}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":140},"ty":{"Deduplicated":1367}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1366,"col":8},"end":{"line":1366,"col":48}},"generated_from_span":null},"id":1435,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":23}},"generics":{"regions":[{"Body":231},{"Body":232}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":135},"ty":{"Deduplicated":1364}}},{"Move":{"kind":{"Local":137},"ty":{"Deduplicated":455}}},{"Move":{"kind":{"Local":139},"ty":{"Deduplicated":1366}}}],"dest":{"kind":{"Local":134},"ty":{"Deduplicated":476}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1366,"col":47},"end":{"line":1366,"col":48}},"generated_from_span":null},"id":1436,"kind":{"StorageDead":139},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1366,"col":47},"end":{"line":1366,"col":48}},"generated_from_span":null},"id":1437,"kind":{"StorageDead":137},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1366,"col":47},"end":{"line":1366,"col":48}},"generated_from_span":null},"id":1438,"kind":{"StorageDead":135},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1366,"col":48},"end":{"line":1366,"col":49}},"generated_from_span":null},"id":1439,"kind":{"StorageDead":140},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1366,"col":48},"end":{"line":1366,"col":49}},"generated_from_span":null},"id":1440,"kind":{"StorageDead":136},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1366,"col":48},"end":{"line":1366,"col":49}},"generated_from_span":null},"id":1441,"kind":{"StorageDead":134},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1367,"col":8},"end":{"line":1367,"col":48}},"generated_from_span":null},"id":1442,"kind":{"StorageLive":141},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1367,"col":24},"end":{"line":1367,"col":30}},"generated_from_span":null},"id":1443,"kind":{"StorageLive":142},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1367,"col":24},"end":{"line":1367,"col":30}},"generated_from_span":null},"id":1444,"kind":{"StorageLive":143},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1367,"col":24},"end":{"line":1367,"col":30}},"generated_from_span":null},"id":1445,"kind":{"Assign":[{"kind":{"Local":143},"ty":{"Deduplicated":1369}},{"Ref":{"place":{"kind":{"Local":37},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1367,"col":24},"end":{"line":1367,"col":30}},"generated_from_span":null},"id":1446,"kind":{"Assign":[{"kind":{"Local":142},"ty":{"Deduplicated":1368}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":143},"ty":{"Deduplicated":1369}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"TwoPhaseMut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1367,"col":34},"end":{"line":1367,"col":39}},"generated_from_span":null},"id":1447,"kind":{"StorageLive":144},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1367,"col":34},"end":{"line":1367,"col":39}},"generated_from_span":null},"id":1448,"kind":{"Assign":[{"kind":{"Local":145},"ty":{"Deduplicated":455}},{"BinaryOp":[{"Add":"Panic"},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","6"]}}},"ty":{"Deduplicated":455}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1367,"col":34},"end":{"line":1367,"col":39}},"generated_from_span":null},"id":1450,"kind":{"Assign":[{"kind":{"Local":144},"ty":{"Deduplicated":455}},{"Use":[{"Move":{"kind":{"Local":145},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1367,"col":41},"end":{"line":1367,"col":47}},"generated_from_span":null},"id":1451,"kind":{"StorageLive":146},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1367,"col":41},"end":{"line":1367,"col":47}},"generated_from_span":null},"id":1452,"kind":{"StorageLive":147},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1367,"col":41},"end":{"line":1367,"col":47}},"generated_from_span":null},"id":1453,"kind":{"Assign":[{"kind":{"Local":147},"ty":{"Deduplicated":1371}},{"Ref":{"place":{"kind":{"Local":22},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1367,"col":41},"end":{"line":1367,"col":47}},"generated_from_span":null},"id":1454,"kind":{"Assign":[{"kind":{"Local":146},"ty":{"Deduplicated":1370}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":147},"ty":{"Deduplicated":1371}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1367,"col":8},"end":{"line":1367,"col":48}},"generated_from_span":null},"id":1455,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":23}},"generics":{"regions":[{"Body":235},{"Body":236}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":142},"ty":{"Deduplicated":1368}}},{"Move":{"kind":{"Local":144},"ty":{"Deduplicated":455}}},{"Move":{"kind":{"Local":146},"ty":{"Deduplicated":1370}}}],"dest":{"kind":{"Local":141},"ty":{"Deduplicated":476}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1367,"col":47},"end":{"line":1367,"col":48}},"generated_from_span":null},"id":1456,"kind":{"StorageDead":146},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1367,"col":47},"end":{"line":1367,"col":48}},"generated_from_span":null},"id":1457,"kind":{"StorageDead":144},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1367,"col":47},"end":{"line":1367,"col":48}},"generated_from_span":null},"id":1458,"kind":{"StorageDead":142},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1367,"col":48},"end":{"line":1367,"col":49}},"generated_from_span":null},"id":1459,"kind":{"StorageDead":147},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1367,"col":48},"end":{"line":1367,"col":49}},"generated_from_span":null},"id":1460,"kind":{"StorageDead":143},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1367,"col":48},"end":{"line":1367,"col":49}},"generated_from_span":null},"id":1461,"kind":{"StorageDead":141},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1368,"col":8},"end":{"line":1368,"col":46}},"generated_from_span":null},"id":1462,"kind":{"StorageLive":148},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1368,"col":24},"end":{"line":1368,"col":30}},"generated_from_span":null},"id":1463,"kind":{"StorageLive":149},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1368,"col":24},"end":{"line":1368,"col":30}},"generated_from_span":null},"id":1464,"kind":{"StorageLive":150},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1368,"col":24},"end":{"line":1368,"col":30}},"generated_from_span":null},"id":1465,"kind":{"Assign":[{"kind":{"Local":150},"ty":{"Deduplicated":1373}},{"Ref":{"place":{"kind":{"Local":37},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1368,"col":24},"end":{"line":1368,"col":30}},"generated_from_span":null},"id":1466,"kind":{"Assign":[{"kind":{"Local":149},"ty":{"Deduplicated":1372}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":150},"ty":{"Deduplicated":1373}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"TwoPhaseMut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1368,"col":34},"end":{"line":1368,"col":39}},"generated_from_span":null},"id":1467,"kind":{"StorageLive":151},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1368,"col":34},"end":{"line":1368,"col":39}},"generated_from_span":null},"id":1468,"kind":{"Assign":[{"kind":{"Local":152},"ty":{"Deduplicated":455}},{"BinaryOp":[{"Add":"Panic"},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1368,"col":34},"end":{"line":1368,"col":39}},"generated_from_span":null},"id":1470,"kind":{"Assign":[{"kind":{"Local":151},"ty":{"Deduplicated":455}},{"Use":[{"Move":{"kind":{"Local":152},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1368,"col":41},"end":{"line":1368,"col":45}},"generated_from_span":null},"id":1471,"kind":{"StorageLive":153},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1368,"col":41},"end":{"line":1368,"col":45}},"generated_from_span":null},"id":1472,"kind":{"StorageLive":154},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1368,"col":41},"end":{"line":1368,"col":45}},"generated_from_span":null},"id":1473,"kind":{"Assign":[{"kind":{"Local":154},"ty":{"Deduplicated":1375}},{"Ref":{"place":{"kind":{"Local":7},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1368,"col":41},"end":{"line":1368,"col":45}},"generated_from_span":null},"id":1474,"kind":{"Assign":[{"kind":{"Local":153},"ty":{"Deduplicated":1374}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":154},"ty":{"Deduplicated":1375}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1368,"col":8},"end":{"line":1368,"col":46}},"generated_from_span":null},"id":1475,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":23}},"generics":{"regions":[{"Body":239},{"Body":240}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":149},"ty":{"Deduplicated":1372}}},{"Move":{"kind":{"Local":151},"ty":{"Deduplicated":455}}},{"Move":{"kind":{"Local":153},"ty":{"Deduplicated":1374}}}],"dest":{"kind":{"Local":148},"ty":{"Deduplicated":476}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1368,"col":45},"end":{"line":1368,"col":46}},"generated_from_span":null},"id":1476,"kind":{"StorageDead":153},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1368,"col":45},"end":{"line":1368,"col":46}},"generated_from_span":null},"id":1477,"kind":{"StorageDead":151},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1368,"col":45},"end":{"line":1368,"col":46}},"generated_from_span":null},"id":1478,"kind":{"StorageDead":149},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1368,"col":46},"end":{"line":1368,"col":47}},"generated_from_span":null},"id":1479,"kind":{"StorageDead":154},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1368,"col":46},"end":{"line":1368,"col":47}},"generated_from_span":null},"id":1480,"kind":{"StorageDead":150},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1368,"col":46},"end":{"line":1368,"col":47}},"generated_from_span":null},"id":1481,"kind":{"StorageDead":148},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1369,"col":8},"end":{"line":1369,"col":46}},"generated_from_span":null},"id":1482,"kind":{"StorageLive":155},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1369,"col":24},"end":{"line":1369,"col":30}},"generated_from_span":null},"id":1483,"kind":{"StorageLive":156},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1369,"col":24},"end":{"line":1369,"col":30}},"generated_from_span":null},"id":1484,"kind":{"StorageLive":157},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1369,"col":24},"end":{"line":1369,"col":30}},"generated_from_span":null},"id":1485,"kind":{"Assign":[{"kind":{"Local":157},"ty":{"Deduplicated":1377}},{"Ref":{"place":{"kind":{"Local":37},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1369,"col":24},"end":{"line":1369,"col":30}},"generated_from_span":null},"id":1486,"kind":{"Assign":[{"kind":{"Local":156},"ty":{"Deduplicated":1376}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":157},"ty":{"Deduplicated":1377}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"TwoPhaseMut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1369,"col":34},"end":{"line":1369,"col":39}},"generated_from_span":null},"id":1487,"kind":{"StorageLive":158},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1369,"col":34},"end":{"line":1369,"col":39}},"generated_from_span":null},"id":1488,"kind":{"Assign":[{"kind":{"Local":159},"ty":{"Deduplicated":455}},{"BinaryOp":[{"Add":"Panic"},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":455}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1369,"col":34},"end":{"line":1369,"col":39}},"generated_from_span":null},"id":1490,"kind":{"Assign":[{"kind":{"Local":158},"ty":{"Deduplicated":455}},{"Use":[{"Move":{"kind":{"Local":159},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1369,"col":41},"end":{"line":1369,"col":45}},"generated_from_span":null},"id":1491,"kind":{"StorageLive":160},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1369,"col":41},"end":{"line":1369,"col":45}},"generated_from_span":null},"id":1492,"kind":{"StorageLive":161},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1369,"col":41},"end":{"line":1369,"col":45}},"generated_from_span":null},"id":1493,"kind":{"Assign":[{"kind":{"Local":161},"ty":{"Deduplicated":1379}},{"Ref":{"place":{"kind":{"Local":7},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1369,"col":41},"end":{"line":1369,"col":45}},"generated_from_span":null},"id":1494,"kind":{"Assign":[{"kind":{"Local":160},"ty":{"Deduplicated":1378}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":161},"ty":{"Deduplicated":1379}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1369,"col":8},"end":{"line":1369,"col":46}},"generated_from_span":null},"id":1495,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":23}},"generics":{"regions":[{"Body":243},{"Body":244}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":156},"ty":{"Deduplicated":1376}}},{"Move":{"kind":{"Local":158},"ty":{"Deduplicated":455}}},{"Move":{"kind":{"Local":160},"ty":{"Deduplicated":1378}}}],"dest":{"kind":{"Local":155},"ty":{"Deduplicated":476}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1369,"col":45},"end":{"line":1369,"col":46}},"generated_from_span":null},"id":1496,"kind":{"StorageDead":160},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1369,"col":45},"end":{"line":1369,"col":46}},"generated_from_span":null},"id":1497,"kind":{"StorageDead":158},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1369,"col":45},"end":{"line":1369,"col":46}},"generated_from_span":null},"id":1498,"kind":{"StorageDead":156},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1369,"col":46},"end":{"line":1369,"col":47}},"generated_from_span":null},"id":1499,"kind":{"StorageDead":161},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1369,"col":46},"end":{"line":1369,"col":47}},"generated_from_span":null},"id":1500,"kind":{"StorageDead":157},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1369,"col":46},"end":{"line":1369,"col":47}},"generated_from_span":null},"id":1501,"kind":{"StorageDead":155},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1370,"col":8},"end":{"line":1370,"col":46}},"generated_from_span":null},"id":1502,"kind":{"StorageLive":162},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1370,"col":24},"end":{"line":1370,"col":30}},"generated_from_span":null},"id":1503,"kind":{"StorageLive":163},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1370,"col":24},"end":{"line":1370,"col":30}},"generated_from_span":null},"id":1504,"kind":{"StorageLive":164},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1370,"col":24},"end":{"line":1370,"col":30}},"generated_from_span":null},"id":1505,"kind":{"Assign":[{"kind":{"Local":164},"ty":{"Deduplicated":1381}},{"Ref":{"place":{"kind":{"Local":37},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1370,"col":24},"end":{"line":1370,"col":30}},"generated_from_span":null},"id":1506,"kind":{"Assign":[{"kind":{"Local":163},"ty":{"Deduplicated":1380}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":164},"ty":{"Deduplicated":1381}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"TwoPhaseMut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1370,"col":34},"end":{"line":1370,"col":39}},"generated_from_span":null},"id":1507,"kind":{"StorageLive":165},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1370,"col":34},"end":{"line":1370,"col":39}},"generated_from_span":null},"id":1508,"kind":{"Assign":[{"kind":{"Local":166},"ty":{"Deduplicated":455}},{"BinaryOp":[{"Add":"Panic"},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":455}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1370,"col":34},"end":{"line":1370,"col":39}},"generated_from_span":null},"id":1510,"kind":{"Assign":[{"kind":{"Local":165},"ty":{"Deduplicated":455}},{"Use":[{"Move":{"kind":{"Local":166},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1370,"col":41},"end":{"line":1370,"col":45}},"generated_from_span":null},"id":1511,"kind":{"StorageLive":167},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1370,"col":41},"end":{"line":1370,"col":45}},"generated_from_span":null},"id":1512,"kind":{"StorageLive":168},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1370,"col":41},"end":{"line":1370,"col":45}},"generated_from_span":null},"id":1513,"kind":{"Assign":[{"kind":{"Local":168},"ty":{"Deduplicated":1383}},{"Ref":{"place":{"kind":{"Local":7},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1370,"col":41},"end":{"line":1370,"col":45}},"generated_from_span":null},"id":1514,"kind":{"Assign":[{"kind":{"Local":167},"ty":{"Deduplicated":1382}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":168},"ty":{"Deduplicated":1383}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1370,"col":8},"end":{"line":1370,"col":46}},"generated_from_span":null},"id":1515,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":23}},"generics":{"regions":[{"Body":247},{"Body":248}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":163},"ty":{"Deduplicated":1380}}},{"Move":{"kind":{"Local":165},"ty":{"Deduplicated":455}}},{"Move":{"kind":{"Local":167},"ty":{"Deduplicated":1382}}}],"dest":{"kind":{"Local":162},"ty":{"Deduplicated":476}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1370,"col":45},"end":{"line":1370,"col":46}},"generated_from_span":null},"id":1516,"kind":{"StorageDead":167},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1370,"col":45},"end":{"line":1370,"col":46}},"generated_from_span":null},"id":1517,"kind":{"StorageDead":165},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1370,"col":45},"end":{"line":1370,"col":46}},"generated_from_span":null},"id":1518,"kind":{"StorageDead":163},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1370,"col":46},"end":{"line":1370,"col":47}},"generated_from_span":null},"id":1519,"kind":{"StorageDead":168},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1370,"col":46},"end":{"line":1370,"col":47}},"generated_from_span":null},"id":1520,"kind":{"StorageDead":164},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1370,"col":46},"end":{"line":1370,"col":47}},"generated_from_span":null},"id":1521,"kind":{"StorageDead":162},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1371,"col":8},"end":{"line":1371,"col":48}},"generated_from_span":null},"id":1522,"kind":{"StorageLive":169},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1371,"col":24},"end":{"line":1371,"col":30}},"generated_from_span":null},"id":1523,"kind":{"StorageLive":170},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1371,"col":24},"end":{"line":1371,"col":30}},"generated_from_span":null},"id":1524,"kind":{"StorageLive":171},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1371,"col":24},"end":{"line":1371,"col":30}},"generated_from_span":null},"id":1525,"kind":{"Assign":[{"kind":{"Local":171},"ty":{"Deduplicated":1385}},{"Ref":{"place":{"kind":{"Local":37},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1371,"col":24},"end":{"line":1371,"col":30}},"generated_from_span":null},"id":1526,"kind":{"Assign":[{"kind":{"Local":170},"ty":{"Deduplicated":1384}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":171},"ty":{"Deduplicated":1385}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"TwoPhaseMut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1371,"col":34},"end":{"line":1371,"col":39}},"generated_from_span":null},"id":1527,"kind":{"StorageLive":172},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1371,"col":34},"end":{"line":1371,"col":39}},"generated_from_span":null},"id":1528,"kind":{"Assign":[{"kind":{"Local":173},"ty":{"Deduplicated":455}},{"BinaryOp":[{"Add":"Panic"},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1371,"col":34},"end":{"line":1371,"col":39}},"generated_from_span":null},"id":1530,"kind":{"Assign":[{"kind":{"Local":172},"ty":{"Deduplicated":455}},{"Use":[{"Move":{"kind":{"Local":173},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1371,"col":41},"end":{"line":1371,"col":47}},"generated_from_span":null},"id":1531,"kind":{"StorageLive":174},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1371,"col":41},"end":{"line":1371,"col":47}},"generated_from_span":null},"id":1532,"kind":{"StorageLive":175},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1371,"col":41},"end":{"line":1371,"col":47}},"generated_from_span":null},"id":1533,"kind":{"Assign":[{"kind":{"Local":175},"ty":{"Deduplicated":1387}},{"Ref":{"place":{"kind":{"Local":22},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1371,"col":41},"end":{"line":1371,"col":47}},"generated_from_span":null},"id":1534,"kind":{"Assign":[{"kind":{"Local":174},"ty":{"Deduplicated":1386}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":175},"ty":{"Deduplicated":1387}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1371,"col":8},"end":{"line":1371,"col":48}},"generated_from_span":null},"id":1535,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":23}},"generics":{"regions":[{"Body":251},{"Body":252}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":170},"ty":{"Deduplicated":1384}}},{"Move":{"kind":{"Local":172},"ty":{"Deduplicated":455}}},{"Move":{"kind":{"Local":174},"ty":{"Deduplicated":1386}}}],"dest":{"kind":{"Local":169},"ty":{"Deduplicated":476}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1371,"col":47},"end":{"line":1371,"col":48}},"generated_from_span":null},"id":1536,"kind":{"StorageDead":174},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1371,"col":47},"end":{"line":1371,"col":48}},"generated_from_span":null},"id":1537,"kind":{"StorageDead":172},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1371,"col":47},"end":{"line":1371,"col":48}},"generated_from_span":null},"id":1538,"kind":{"StorageDead":170},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1371,"col":48},"end":{"line":1371,"col":49}},"generated_from_span":null},"id":1539,"kind":{"StorageDead":175},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1371,"col":48},"end":{"line":1371,"col":49}},"generated_from_span":null},"id":1540,"kind":{"StorageDead":171},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1371,"col":48},"end":{"line":1371,"col":49}},"generated_from_span":null},"id":1541,"kind":{"StorageDead":169},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1372,"col":8},"end":{"line":1372,"col":47}},"generated_from_span":null},"id":1542,"kind":{"StorageLive":176},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1372,"col":24},"end":{"line":1372,"col":30}},"generated_from_span":null},"id":1543,"kind":{"StorageLive":177},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1372,"col":24},"end":{"line":1372,"col":30}},"generated_from_span":null},"id":1544,"kind":{"StorageLive":178},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1372,"col":24},"end":{"line":1372,"col":30}},"generated_from_span":null},"id":1545,"kind":{"Assign":[{"kind":{"Local":178},"ty":{"Deduplicated":1389}},{"Ref":{"place":{"kind":{"Local":37},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1372,"col":24},"end":{"line":1372,"col":30}},"generated_from_span":null},"id":1546,"kind":{"Assign":[{"kind":{"Local":177},"ty":{"Deduplicated":1388}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":178},"ty":{"Deduplicated":1389}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"TwoPhaseMut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1372,"col":34},"end":{"line":1372,"col":39}},"generated_from_span":null},"id":1547,"kind":{"StorageLive":179},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1372,"col":34},"end":{"line":1372,"col":39}},"generated_from_span":null},"id":1548,"kind":{"Assign":[{"kind":{"Local":180},"ty":{"Deduplicated":455}},{"BinaryOp":[{"Add":"Panic"},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":455}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1372,"col":34},"end":{"line":1372,"col":39}},"generated_from_span":null},"id":1550,"kind":{"Assign":[{"kind":{"Local":179},"ty":{"Deduplicated":455}},{"Use":[{"Move":{"kind":{"Local":180},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1372,"col":41},"end":{"line":1372,"col":46}},"generated_from_span":null},"id":1551,"kind":{"StorageLive":181},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1372,"col":41},"end":{"line":1372,"col":46}},"generated_from_span":null},"id":1552,"kind":{"StorageLive":182},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1372,"col":41},"end":{"line":1372,"col":46}},"generated_from_span":null},"id":1553,"kind":{"Assign":[{"kind":{"Local":182},"ty":{"Deduplicated":1391}},{"Ref":{"place":{"kind":{"Local":17},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1372,"col":41},"end":{"line":1372,"col":46}},"generated_from_span":null},"id":1554,"kind":{"Assign":[{"kind":{"Local":181},"ty":{"Deduplicated":1390}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":182},"ty":{"Deduplicated":1391}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1372,"col":8},"end":{"line":1372,"col":47}},"generated_from_span":null},"id":1555,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":23}},"generics":{"regions":[{"Body":255},{"Body":256}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":177},"ty":{"Deduplicated":1388}}},{"Move":{"kind":{"Local":179},"ty":{"Deduplicated":455}}},{"Move":{"kind":{"Local":181},"ty":{"Deduplicated":1390}}}],"dest":{"kind":{"Local":176},"ty":{"Deduplicated":476}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1372,"col":46},"end":{"line":1372,"col":47}},"generated_from_span":null},"id":1556,"kind":{"StorageDead":181},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1372,"col":46},"end":{"line":1372,"col":47}},"generated_from_span":null},"id":1557,"kind":{"StorageDead":179},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1372,"col":46},"end":{"line":1372,"col":47}},"generated_from_span":null},"id":1558,"kind":{"StorageDead":177},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1372,"col":47},"end":{"line":1372,"col":48}},"generated_from_span":null},"id":1559,"kind":{"StorageDead":182},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1372,"col":47},"end":{"line":1372,"col":48}},"generated_from_span":null},"id":1560,"kind":{"StorageDead":178},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1372,"col":47},"end":{"line":1372,"col":48}},"generated_from_span":null},"id":1561,"kind":{"StorageDead":176},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1373,"col":8},"end":{"line":1373,"col":48}},"generated_from_span":null},"id":1562,"kind":{"StorageLive":183},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1373,"col":24},"end":{"line":1373,"col":30}},"generated_from_span":null},"id":1563,"kind":{"StorageLive":184},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1373,"col":24},"end":{"line":1373,"col":30}},"generated_from_span":null},"id":1564,"kind":{"StorageLive":185},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1373,"col":24},"end":{"line":1373,"col":30}},"generated_from_span":null},"id":1565,"kind":{"Assign":[{"kind":{"Local":185},"ty":{"Deduplicated":1393}},{"Ref":{"place":{"kind":{"Local":37},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1373,"col":24},"end":{"line":1373,"col":30}},"generated_from_span":null},"id":1566,"kind":{"Assign":[{"kind":{"Local":184},"ty":{"Deduplicated":1392}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":185},"ty":{"Deduplicated":1393}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"TwoPhaseMut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1373,"col":34},"end":{"line":1373,"col":39}},"generated_from_span":null},"id":1567,"kind":{"StorageLive":186},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1373,"col":34},"end":{"line":1373,"col":39}},"generated_from_span":null},"id":1568,"kind":{"Assign":[{"kind":{"Local":187},"ty":{"Deduplicated":455}},{"BinaryOp":[{"Add":"Panic"},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1373,"col":34},"end":{"line":1373,"col":39}},"generated_from_span":null},"id":1570,"kind":{"Assign":[{"kind":{"Local":186},"ty":{"Deduplicated":455}},{"Use":[{"Move":{"kind":{"Local":187},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1373,"col":41},"end":{"line":1373,"col":47}},"generated_from_span":null},"id":1571,"kind":{"StorageLive":188},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1373,"col":41},"end":{"line":1373,"col":47}},"generated_from_span":null},"id":1572,"kind":{"StorageLive":189},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1373,"col":41},"end":{"line":1373,"col":47}},"generated_from_span":null},"id":1573,"kind":{"Assign":[{"kind":{"Local":189},"ty":{"Deduplicated":1395}},{"Ref":{"place":{"kind":{"Local":32},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1373,"col":41},"end":{"line":1373,"col":47}},"generated_from_span":null},"id":1574,"kind":{"Assign":[{"kind":{"Local":188},"ty":{"Deduplicated":1394}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":189},"ty":{"Deduplicated":1395}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1373,"col":8},"end":{"line":1373,"col":48}},"generated_from_span":null},"id":1575,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":23}},"generics":{"regions":[{"Body":259},{"Body":260}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":184},"ty":{"Deduplicated":1392}}},{"Move":{"kind":{"Local":186},"ty":{"Deduplicated":455}}},{"Move":{"kind":{"Local":188},"ty":{"Deduplicated":1394}}}],"dest":{"kind":{"Local":183},"ty":{"Deduplicated":476}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1373,"col":47},"end":{"line":1373,"col":48}},"generated_from_span":null},"id":1576,"kind":{"StorageDead":188},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1373,"col":47},"end":{"line":1373,"col":48}},"generated_from_span":null},"id":1577,"kind":{"StorageDead":186},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1373,"col":47},"end":{"line":1373,"col":48}},"generated_from_span":null},"id":1578,"kind":{"StorageDead":184},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1373,"col":48},"end":{"line":1373,"col":49}},"generated_from_span":null},"id":1579,"kind":{"StorageDead":189},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1373,"col":48},"end":{"line":1373,"col":49}},"generated_from_span":null},"id":1580,"kind":{"StorageDead":185},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1373,"col":48},"end":{"line":1373,"col":49}},"generated_from_span":null},"id":1581,"kind":{"StorageDead":183},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1374,"col":8},"end":{"line":1374,"col":48}},"generated_from_span":null},"id":1582,"kind":{"StorageLive":190},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1374,"col":24},"end":{"line":1374,"col":30}},"generated_from_span":null},"id":1583,"kind":{"StorageLive":191},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1374,"col":24},"end":{"line":1374,"col":30}},"generated_from_span":null},"id":1584,"kind":{"StorageLive":192},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1374,"col":24},"end":{"line":1374,"col":30}},"generated_from_span":null},"id":1585,"kind":{"Assign":[{"kind":{"Local":192},"ty":{"Deduplicated":1397}},{"Ref":{"place":{"kind":{"Local":37},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1374,"col":24},"end":{"line":1374,"col":30}},"generated_from_span":null},"id":1586,"kind":{"Assign":[{"kind":{"Local":191},"ty":{"Deduplicated":1396}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":192},"ty":{"Deduplicated":1397}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"TwoPhaseMut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1374,"col":34},"end":{"line":1374,"col":39}},"generated_from_span":null},"id":1587,"kind":{"StorageLive":193},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1374,"col":34},"end":{"line":1374,"col":39}},"generated_from_span":null},"id":1588,"kind":{"Assign":[{"kind":{"Local":194},"ty":{"Deduplicated":455}},{"BinaryOp":[{"Add":"Panic"},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1374,"col":34},"end":{"line":1374,"col":39}},"generated_from_span":null},"id":1590,"kind":{"Assign":[{"kind":{"Local":193},"ty":{"Deduplicated":455}},{"Use":[{"Move":{"kind":{"Local":194},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1374,"col":41},"end":{"line":1374,"col":47}},"generated_from_span":null},"id":1591,"kind":{"StorageLive":195},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1374,"col":41},"end":{"line":1374,"col":47}},"generated_from_span":null},"id":1592,"kind":{"StorageLive":196},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1374,"col":41},"end":{"line":1374,"col":47}},"generated_from_span":null},"id":1593,"kind":{"Assign":[{"kind":{"Local":196},"ty":{"Deduplicated":1399}},{"Ref":{"place":{"kind":{"Local":27},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1374,"col":41},"end":{"line":1374,"col":47}},"generated_from_span":null},"id":1594,"kind":{"Assign":[{"kind":{"Local":195},"ty":{"Deduplicated":1398}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":196},"ty":{"Deduplicated":1399}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1374,"col":8},"end":{"line":1374,"col":48}},"generated_from_span":null},"id":1595,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":23}},"generics":{"regions":[{"Body":263},{"Body":264}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":191},"ty":{"Deduplicated":1396}}},{"Move":{"kind":{"Local":193},"ty":{"Deduplicated":455}}},{"Move":{"kind":{"Local":195},"ty":{"Deduplicated":1398}}}],"dest":{"kind":{"Local":190},"ty":{"Deduplicated":476}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1374,"col":47},"end":{"line":1374,"col":48}},"generated_from_span":null},"id":1596,"kind":{"StorageDead":195},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1374,"col":47},"end":{"line":1374,"col":48}},"generated_from_span":null},"id":1597,"kind":{"StorageDead":193},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1374,"col":47},"end":{"line":1374,"col":48}},"generated_from_span":null},"id":1598,"kind":{"StorageDead":191},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1374,"col":48},"end":{"line":1374,"col":49}},"generated_from_span":null},"id":1599,"kind":{"StorageDead":196},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1374,"col":48},"end":{"line":1374,"col":49}},"generated_from_span":null},"id":1600,"kind":{"StorageDead":192},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1374,"col":48},"end":{"line":1374,"col":49}},"generated_from_span":null},"id":1601,"kind":{"StorageDead":190},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1375,"col":8},"end":{"line":1375,"col":47}},"generated_from_span":null},"id":1602,"kind":{"StorageLive":197},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1375,"col":24},"end":{"line":1375,"col":30}},"generated_from_span":null},"id":1603,"kind":{"StorageLive":198},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1375,"col":24},"end":{"line":1375,"col":30}},"generated_from_span":null},"id":1604,"kind":{"StorageLive":199},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1375,"col":24},"end":{"line":1375,"col":30}},"generated_from_span":null},"id":1605,"kind":{"Assign":[{"kind":{"Local":199},"ty":{"Deduplicated":1401}},{"Ref":{"place":{"kind":{"Local":37},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1375,"col":24},"end":{"line":1375,"col":30}},"generated_from_span":null},"id":1606,"kind":{"Assign":[{"kind":{"Local":198},"ty":{"Deduplicated":1400}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":199},"ty":{"Deduplicated":1401}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"TwoPhaseMut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1375,"col":41},"end":{"line":1375,"col":46}},"generated_from_span":null},"id":1607,"kind":{"StorageLive":200},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1375,"col":41},"end":{"line":1375,"col":46}},"generated_from_span":null},"id":1608,"kind":{"StorageLive":201},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1375,"col":41},"end":{"line":1375,"col":46}},"generated_from_span":null},"id":1609,"kind":{"Assign":[{"kind":{"Local":201},"ty":{"Deduplicated":1403}},{"Ref":{"place":{"kind":{"Local":12},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1375,"col":41},"end":{"line":1375,"col":46}},"generated_from_span":null},"id":1610,"kind":{"Assign":[{"kind":{"Local":200},"ty":{"Deduplicated":1402}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":201},"ty":{"Deduplicated":1403}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1375,"col":8},"end":{"line":1375,"col":47}},"generated_from_span":null},"id":1611,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":23}},"generics":{"regions":[{"Body":267},{"Body":268}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":198},"ty":{"Deduplicated":1400}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":455}}},{"Move":{"kind":{"Local":200},"ty":{"Deduplicated":1402}}}],"dest":{"kind":{"Local":197},"ty":{"Deduplicated":476}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1375,"col":46},"end":{"line":1375,"col":47}},"generated_from_span":null},"id":1612,"kind":{"StorageDead":200},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1375,"col":46},"end":{"line":1375,"col":47}},"generated_from_span":null},"id":1613,"kind":{"StorageDead":198},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1375,"col":47},"end":{"line":1375,"col":48}},"generated_from_span":null},"id":1614,"kind":{"StorageDead":201},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1375,"col":47},"end":{"line":1375,"col":48}},"generated_from_span":null},"id":1615,"kind":{"StorageDead":199},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1375,"col":47},"end":{"line":1375,"col":48}},"generated_from_span":null},"id":1616,"kind":{"StorageDead":197},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1376,"col":8},"end":{"line":1376,"col":48}},"generated_from_span":null},"id":1617,"kind":{"StorageLive":202},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1376,"col":24},"end":{"line":1376,"col":30}},"generated_from_span":null},"id":1618,"kind":{"StorageLive":203},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1376,"col":24},"end":{"line":1376,"col":30}},"generated_from_span":null},"id":1619,"kind":{"StorageLive":204},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1376,"col":24},"end":{"line":1376,"col":30}},"generated_from_span":null},"id":1620,"kind":{"Assign":[{"kind":{"Local":204},"ty":{"Deduplicated":1405}},{"Ref":{"place":{"kind":{"Local":37},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1376,"col":24},"end":{"line":1376,"col":30}},"generated_from_span":null},"id":1621,"kind":{"Assign":[{"kind":{"Local":203},"ty":{"Deduplicated":1404}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":204},"ty":{"Deduplicated":1405}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"TwoPhaseMut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1376,"col":34},"end":{"line":1376,"col":39}},"generated_from_span":null},"id":1622,"kind":{"StorageLive":205},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1376,"col":34},"end":{"line":1376,"col":39}},"generated_from_span":null},"id":1623,"kind":{"Assign":[{"kind":{"Local":206},"ty":{"Deduplicated":455}},{"BinaryOp":[{"Add":"Panic"},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1376,"col":34},"end":{"line":1376,"col":39}},"generated_from_span":null},"id":1625,"kind":{"Assign":[{"kind":{"Local":205},"ty":{"Deduplicated":455}},{"Use":[{"Move":{"kind":{"Local":206},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1376,"col":41},"end":{"line":1376,"col":47}},"generated_from_span":null},"id":1626,"kind":{"StorageLive":207},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1376,"col":41},"end":{"line":1376,"col":47}},"generated_from_span":null},"id":1627,"kind":{"StorageLive":208},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1376,"col":41},"end":{"line":1376,"col":47}},"generated_from_span":null},"id":1628,"kind":{"Assign":[{"kind":{"Local":208},"ty":{"Deduplicated":1407}},{"Ref":{"place":{"kind":{"Local":32},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1376,"col":41},"end":{"line":1376,"col":47}},"generated_from_span":null},"id":1629,"kind":{"Assign":[{"kind":{"Local":207},"ty":{"Deduplicated":1406}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":208},"ty":{"Deduplicated":1407}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1376,"col":8},"end":{"line":1376,"col":48}},"generated_from_span":null},"id":1630,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":23}},"generics":{"regions":[{"Body":271},{"Body":272}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":203},"ty":{"Deduplicated":1404}}},{"Move":{"kind":{"Local":205},"ty":{"Deduplicated":455}}},{"Move":{"kind":{"Local":207},"ty":{"Deduplicated":1406}}}],"dest":{"kind":{"Local":202},"ty":{"Deduplicated":476}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1376,"col":47},"end":{"line":1376,"col":48}},"generated_from_span":null},"id":1631,"kind":{"StorageDead":207},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1376,"col":47},"end":{"line":1376,"col":48}},"generated_from_span":null},"id":1632,"kind":{"StorageDead":205},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1376,"col":47},"end":{"line":1376,"col":48}},"generated_from_span":null},"id":1633,"kind":{"StorageDead":203},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1376,"col":48},"end":{"line":1376,"col":49}},"generated_from_span":null},"id":1634,"kind":{"StorageDead":208},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1376,"col":48},"end":{"line":1376,"col":49}},"generated_from_span":null},"id":1635,"kind":{"StorageDead":204},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1376,"col":48},"end":{"line":1376,"col":49}},"generated_from_span":null},"id":1636,"kind":{"StorageDead":202},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1377,"col":8},"end":{"line":1377,"col":47}},"generated_from_span":null},"id":1637,"kind":{"StorageLive":209},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1377,"col":24},"end":{"line":1377,"col":30}},"generated_from_span":null},"id":1638,"kind":{"StorageLive":210},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1377,"col":24},"end":{"line":1377,"col":30}},"generated_from_span":null},"id":1639,"kind":{"StorageLive":211},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1377,"col":24},"end":{"line":1377,"col":30}},"generated_from_span":null},"id":1640,"kind":{"Assign":[{"kind":{"Local":211},"ty":{"Deduplicated":1409}},{"Ref":{"place":{"kind":{"Local":37},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1377,"col":24},"end":{"line":1377,"col":30}},"generated_from_span":null},"id":1641,"kind":{"Assign":[{"kind":{"Local":210},"ty":{"Deduplicated":1408}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":211},"ty":{"Deduplicated":1409}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"TwoPhaseMut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1377,"col":41},"end":{"line":1377,"col":46}},"generated_from_span":null},"id":1642,"kind":{"StorageLive":212},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1377,"col":41},"end":{"line":1377,"col":46}},"generated_from_span":null},"id":1643,"kind":{"StorageLive":213},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1377,"col":41},"end":{"line":1377,"col":46}},"generated_from_span":null},"id":1644,"kind":{"Assign":[{"kind":{"Local":213},"ty":{"Deduplicated":1411}},{"Ref":{"place":{"kind":{"Local":12},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1377,"col":41},"end":{"line":1377,"col":46}},"generated_from_span":null},"id":1645,"kind":{"Assign":[{"kind":{"Local":212},"ty":{"Deduplicated":1410}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":213},"ty":{"Deduplicated":1411}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1377,"col":8},"end":{"line":1377,"col":47}},"generated_from_span":null},"id":1646,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":23}},"generics":{"regions":[{"Body":275},{"Body":276}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":210},"ty":{"Deduplicated":1408}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":455}}},{"Move":{"kind":{"Local":212},"ty":{"Deduplicated":1410}}}],"dest":{"kind":{"Local":209},"ty":{"Deduplicated":476}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1377,"col":46},"end":{"line":1377,"col":47}},"generated_from_span":null},"id":1647,"kind":{"StorageDead":212},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1377,"col":46},"end":{"line":1377,"col":47}},"generated_from_span":null},"id":1648,"kind":{"StorageDead":210},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1377,"col":47},"end":{"line":1377,"col":48}},"generated_from_span":null},"id":1649,"kind":{"StorageDead":213},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1377,"col":47},"end":{"line":1377,"col":48}},"generated_from_span":null},"id":1650,"kind":{"StorageDead":211},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1377,"col":47},"end":{"line":1377,"col":48}},"generated_from_span":null},"id":1651,"kind":{"StorageDead":209},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1378,"col":8},"end":{"line":1378,"col":46}},"generated_from_span":null},"id":1652,"kind":{"StorageLive":214},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1378,"col":24},"end":{"line":1378,"col":30}},"generated_from_span":null},"id":1653,"kind":{"StorageLive":215},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1378,"col":24},"end":{"line":1378,"col":30}},"generated_from_span":null},"id":1654,"kind":{"StorageLive":216},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1378,"col":24},"end":{"line":1378,"col":30}},"generated_from_span":null},"id":1655,"kind":{"Assign":[{"kind":{"Local":216},"ty":{"Deduplicated":1413}},{"Ref":{"place":{"kind":{"Local":37},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1378,"col":24},"end":{"line":1378,"col":30}},"generated_from_span":null},"id":1656,"kind":{"Assign":[{"kind":{"Local":215},"ty":{"Deduplicated":1412}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":216},"ty":{"Deduplicated":1413}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"TwoPhaseMut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1378,"col":34},"end":{"line":1378,"col":39}},"generated_from_span":null},"id":1657,"kind":{"StorageLive":217},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1378,"col":34},"end":{"line":1378,"col":39}},"generated_from_span":null},"id":1658,"kind":{"Assign":[{"kind":{"Local":218},"ty":{"Deduplicated":455}},{"BinaryOp":[{"Add":"Panic"},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1378,"col":34},"end":{"line":1378,"col":39}},"generated_from_span":null},"id":1660,"kind":{"Assign":[{"kind":{"Local":217},"ty":{"Deduplicated":455}},{"Use":[{"Move":{"kind":{"Local":218},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1378,"col":41},"end":{"line":1378,"col":45}},"generated_from_span":null},"id":1661,"kind":{"StorageLive":219},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1378,"col":41},"end":{"line":1378,"col":45}},"generated_from_span":null},"id":1662,"kind":{"StorageLive":220},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1378,"col":41},"end":{"line":1378,"col":45}},"generated_from_span":null},"id":1663,"kind":{"Assign":[{"kind":{"Local":220},"ty":{"Deduplicated":1415}},{"Ref":{"place":{"kind":{"Local":7},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1378,"col":41},"end":{"line":1378,"col":45}},"generated_from_span":null},"id":1664,"kind":{"Assign":[{"kind":{"Local":219},"ty":{"Deduplicated":1414}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":220},"ty":{"Deduplicated":1415}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1378,"col":8},"end":{"line":1378,"col":46}},"generated_from_span":null},"id":1665,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":23}},"generics":{"regions":[{"Body":279},{"Body":280}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":215},"ty":{"Deduplicated":1412}}},{"Move":{"kind":{"Local":217},"ty":{"Deduplicated":455}}},{"Move":{"kind":{"Local":219},"ty":{"Deduplicated":1414}}}],"dest":{"kind":{"Local":214},"ty":{"Deduplicated":476}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1378,"col":45},"end":{"line":1378,"col":46}},"generated_from_span":null},"id":1666,"kind":{"StorageDead":219},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1378,"col":45},"end":{"line":1378,"col":46}},"generated_from_span":null},"id":1667,"kind":{"StorageDead":217},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1378,"col":45},"end":{"line":1378,"col":46}},"generated_from_span":null},"id":1668,"kind":{"StorageDead":215},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1378,"col":46},"end":{"line":1378,"col":47}},"generated_from_span":null},"id":1669,"kind":{"StorageDead":220},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1378,"col":46},"end":{"line":1378,"col":47}},"generated_from_span":null},"id":1670,"kind":{"StorageDead":216},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1378,"col":46},"end":{"line":1378,"col":47}},"generated_from_span":null},"id":1671,"kind":{"StorageDead":214},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1380,"col":12},"end":{"line":1380,"col":19}},"generated_from_span":null},"id":1672,"kind":{"StorageLive":221},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1380,"col":22},"end":{"line":1380,"col":23}},"generated_from_span":null},"id":1673,"kind":{"Assign":[{"kind":{"Local":221},"ty":{"Deduplicated":334}},{"Use":[{"Copy":{"kind":{"Local":37},"ty":{"Deduplicated":334}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1396,"col":8},"end":{"line":1396,"col":15}},"generated_from_span":null},"id":1674,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":334}},{"Use":[{"Copy":{"kind":{"Local":221},"ty":{"Deduplicated":334}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1397,"col":4},"end":{"line":1397,"col":5}},"generated_from_span":null},"id":1675,"kind":{"StorageDead":221},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1397,"col":4},"end":{"line":1397,"col":5}},"generated_from_span":null},"id":1676,"kind":{"StorageDead":37},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1397,"col":4},"end":{"line":1397,"col":5}},"generated_from_span":null},"id":1677,"kind":{"StorageDead":32},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1397,"col":4},"end":{"line":1397,"col":5}},"generated_from_span":null},"id":1678,"kind":{"StorageDead":27},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1397,"col":4},"end":{"line":1397,"col":5}},"generated_from_span":null},"id":1679,"kind":{"StorageDead":22},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1397,"col":4},"end":{"line":1397,"col":5}},"generated_from_span":null},"id":1680,"kind":{"StorageDead":17},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1397,"col":4},"end":{"line":1397,"col":5}},"generated_from_span":null},"id":1681,"kind":{"StorageDead":12},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1397,"col":4},"end":{"line":1397,"col":5}},"generated_from_span":null},"id":1682,"kind":{"StorageDead":7},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1397,"col":4},"end":{"line":1397,"col":5}},"generated_from_span":null},"id":1683,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1397,"col":4},"end":{"line":1397,"col":5}},"generated_from_span":null},"id":1684,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1397,"col":4},"end":{"line":1397,"col":5}},"generated_from_span":null},"id":1685,"kind":{"StorageDead":2},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1397,"col":5},"end":{"line":1397,"col":5}},"generated_from_span":null},"id":1686,"kind":"Return","comments_before":[]}]},"comments":[[1331,["Uses the addition chain from","https://briansmith.org/ecc-inversion-addition-chains-01#curve25519_scalar_inversion"]],[1342,["_10000"]]]}}},{"def_id":8,"item_meta":{"name":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["as_montgomery",0]}],"span":{"data":{"file_id":0,"beg":{"line":378,"col":4},"end":{"line":380,"col":5}},"generated_from_span":null},"source_text":"pub fn as_montgomery(&self) -> Scalar52 {\n Scalar52::montgomery_mul(self, &constants::RR)\n }","attr_info":{"attributes":[{"DocComment":" Puts a Scalar52 in to Montgomery form, i.e. computes `a*R (mod l)`"}],"inline":"Never","rename":null,"public":true},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5386}],"output":{"Deduplicated":334}},"src":"TopLevel","is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":0,"beg":{"line":378,"col":4},"end":{"line":380,"col":5}},"generated_from_span":null},"bound_body_regions":12,"locals":{"arg_count":1,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":0,"beg":{"line":378,"col":35},"end":{"line":378,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":1,"name":"self","span":{"data":{"file_id":0,"beg":{"line":378,"col":25},"end":{"line":378,"col":30}},"generated_from_span":null},"ty":{"Deduplicated":463}},{"index":2,"name":null,"span":{"data":{"file_id":0,"beg":{"line":379,"col":33},"end":{"line":379,"col":37}},"generated_from_span":null},"ty":{"Deduplicated":464}},{"index":3,"name":null,"span":{"data":{"file_id":0,"beg":{"line":379,"col":39},"end":{"line":379,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":1222}},{"index":4,"name":null,"span":{"data":{"file_id":0,"beg":{"line":379,"col":39},"end":{"line":379,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":1223}},{"index":5,"name":null,"span":{"data":{"file_id":0,"beg":{"line":379,"col":39},"end":{"line":379,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":1300}},{"index":6,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":1243}},{"index":7,"name":null,"span":{"data":{"file_id":0,"beg":{"line":379,"col":39},"end":{"line":379,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":1229}},{"index":8,"name":null,"span":{"data":{"file_id":0,"beg":{"line":379,"col":40},"end":{"line":379,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":334}}]},"body":{"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":380,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"id":1687,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":379,"col":39},"end":{"line":379,"col":53}},"generated_from_span":null},"id":1688,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":379,"col":40},"end":{"line":379,"col":53}},"generated_from_span":null},"id":1689,"kind":{"StorageLive":8},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":379,"col":40},"end":{"line":379,"col":53}},"generated_from_span":null},"id":1690,"kind":{"Assign":[{"kind":{"Local":8},"ty":{"Deduplicated":334}},{"Use":[{"Copy":{"kind":{"Global":{"id":18,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":334}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":379,"col":39},"end":{"line":379,"col":53}},"generated_from_span":null},"id":1691,"kind":{"Assign":[{"kind":{"Local":7},"ty":{"Deduplicated":1229}},{"Ref":{"place":{"kind":{"Local":8},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":379,"col":39},"end":{"line":379,"col":53}},"generated_from_span":null},"id":1692,"kind":{"Assign":[{"kind":{"Local":6},"ty":{"Deduplicated":1243}},{"Use":[{"Move":{"kind":{"Local":7},"ty":{"Deduplicated":1229}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":379,"col":33},"end":{"line":379,"col":37}},"generated_from_span":null},"id":1693,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":379,"col":33},"end":{"line":379,"col":37}},"generated_from_span":null},"id":1694,"kind":{"StorageLive":2},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":379,"col":33},"end":{"line":379,"col":37}},"generated_from_span":null},"id":1695,"kind":{"Assign":[{"kind":{"Local":2},"ty":{"Deduplicated":464}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":379,"col":39},"end":{"line":379,"col":53}},"generated_from_span":null},"id":1696,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":379,"col":39},"end":{"line":379,"col":53}},"generated_from_span":null},"id":1697,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":379,"col":39},"end":{"line":379,"col":53}},"generated_from_span":null},"id":1698,"kind":{"Assign":[{"kind":{"Local":5},"ty":{"Deduplicated":1300}},{"Use":[{"Move":{"kind":{"Local":6},"ty":{"Deduplicated":1243}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":379,"col":39},"end":{"line":379,"col":53}},"generated_from_span":null},"id":1699,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":1223}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":5},"ty":{"Deduplicated":1300}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":379,"col":39},"end":{"line":379,"col":53}},"generated_from_span":null},"id":1700,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":1222}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":4},"ty":{"Deduplicated":1223}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":379,"col":8},"end":{"line":379,"col":54}},"generated_from_span":null},"id":1701,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":4}},"generics":{"regions":[{"Body":9},{"Body":10}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":2},"ty":{"Deduplicated":464}}},{"Move":{"kind":{"Local":3},"ty":{"Deduplicated":1222}}}],"dest":{"kind":{"Local":0},"ty":{"Deduplicated":334}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":379,"col":53},"end":{"line":379,"col":54}},"generated_from_span":null},"id":1702,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":379,"col":53},"end":{"line":379,"col":54}},"generated_from_span":null},"id":1703,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":379,"col":53},"end":{"line":379,"col":54}},"generated_from_span":null},"id":1704,"kind":{"StorageDead":2},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":380,"col":5},"end":{"line":380,"col":5}},"generated_from_span":null},"id":1705,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":9,"item_meta":{"name":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["from_montgomery",0]}],"span":{"data":{"file_id":0,"beg":{"line":385,"col":4},"end":{"line":396,"col":5}},"generated_from_span":null},"source_text":"pub fn from_montgomery(&self) -> Scalar52 {\n let mut limbs = [0u128; 9];\n for i in 0..5 {\n limbs[i] = self[i] as u128;\n }\n let scalar = Scalar52::montgomery_reduce(&limbs);\n\n #[cfg(feature = \"zeroize\")]\n limbs.zeroize();\n\n scalar\n }","attr_info":{"attributes":[{"DocComment":" Takes a Scalar52 out of Montgomery form, i.e. computes `a/R (mod l)`"},{"Unknown":{"path":"allow","args":"clippy::wrong_self_convention"}}],"inline":"Never","rename":null,"public":true},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5386}],"output":{"Deduplicated":334}},"src":"TopLevel","is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":0,"beg":{"line":385,"col":4},"end":{"line":396,"col":5}},"generated_from_span":null},"bound_body_regions":17,"locals":{"arg_count":1,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":0,"beg":{"line":385,"col":37},"end":{"line":385,"col":45}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":1,"name":"self","span":{"data":{"file_id":0,"beg":{"line":385,"col":27},"end":{"line":385,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":463}},{"index":2,"name":"limbs","span":{"data":{"file_id":0,"beg":{"line":386,"col":12},"end":{"line":386,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":1221}},{"index":3,"name":null,"span":{"data":{"file_id":0,"beg":{"line":387,"col":17},"end":{"line":387,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":569}},{"index":4,"name":null,"span":{"data":{"file_id":0,"beg":{"line":387,"col":17},"end":{"line":387,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":569}},{"index":5,"name":"iter","span":{"data":{"file_id":0,"beg":{"line":387,"col":17},"end":{"line":387,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":569}},{"index":6,"name":null,"span":{"data":{"file_id":0,"beg":{"line":387,"col":17},"end":{"line":387,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":596}},{"index":7,"name":null,"span":{"data":{"file_id":0,"beg":{"line":387,"col":17},"end":{"line":387,"col":21}},"generated_from_span":null},"ty":{"HashConsedValue":[598,{"Ref":[{"Body":3},{"Deduplicated":569},"Mut"]}]}},{"index":8,"name":null,"span":{"data":{"file_id":0,"beg":{"line":387,"col":17},"end":{"line":387,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":599}},{"index":9,"name":"i","span":{"data":{"file_id":0,"beg":{"line":387,"col":12},"end":{"line":387,"col":13}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":10,"name":null,"span":{"data":{"file_id":0,"beg":{"line":388,"col":23},"end":{"line":388,"col":30}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":11,"name":null,"span":{"data":{"file_id":0,"beg":{"line":388,"col":27},"end":{"line":388,"col":30}},"generated_from_span":null},"ty":{"HashConsedValue":[604,{"Ref":[{"Body":6},{"Deduplicated":454},"Shared"]}]}},{"index":12,"name":null,"span":{"data":{"file_id":0,"beg":{"line":388,"col":23},"end":{"line":388,"col":27}},"generated_from_span":null},"ty":{"Deduplicated":1244}},{"index":13,"name":null,"span":{"data":{"file_id":0,"beg":{"line":388,"col":28},"end":{"line":388,"col":29}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":14,"name":null,"span":{"data":{"file_id":0,"beg":{"line":388,"col":18},"end":{"line":388,"col":19}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":15,"name":"scalar","span":{"data":{"file_id":0,"beg":{"line":390,"col":12},"end":{"line":390,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":16,"name":null,"span":{"data":{"file_id":0,"beg":{"line":390,"col":49},"end":{"line":390,"col":55}},"generated_from_span":null},"ty":{"HashConsedValue":[1420,{"Ref":[{"Body":9},{"Deduplicated":1221},"Shared"]}]}},{"index":17,"name":null,"span":{"data":{"file_id":0,"beg":{"line":390,"col":49},"end":{"line":390,"col":55}},"generated_from_span":null},"ty":{"Deduplicated":1245}},{"index":18,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"HashConsedValue":[5013,{"Ref":["Erased",{"Deduplicated":1221},"Mut"]}]}},{"index":19,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"HashConsedValue":[5012,{"Ref":["Erased",{"Deduplicated":1220},"Mut"]}]}}]},"body":{"span":{"data":{"file_id":0,"beg":{"line":386,"col":12},"end":{"line":396,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":0,"beg":{"line":386,"col":12},"end":{"line":386,"col":21}},"generated_from_span":null},"id":1709,"kind":{"StorageLive":2},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":386,"col":24},"end":{"line":386,"col":34}},"generated_from_span":null},"id":1710,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":"ArrayRepeat"}},"generics":{"regions":[],"types":[{"Deduplicated":1220}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","9"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U128","0"]}}},"ty":{"Deduplicated":1220}}}],"dest":{"kind":{"Local":2},"ty":{"Deduplicated":1221}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":387,"col":17},"end":{"line":387,"col":21}},"generated_from_span":null},"id":1712,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":387,"col":17},"end":{"line":387,"col":21}},"generated_from_span":null},"id":1713,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":387,"col":17},"end":{"line":387,"col":21}},"generated_from_span":null},"id":1714,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":569}},{"Aggregate":[{"Adt":[{"id":{"Adt":1},"generics":{"regions":[],"types":[{"Deduplicated":455}],"const_generics":[],"trait_refs":[]}},null,null]},[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":455}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","5"]}}},"ty":{"Deduplicated":455}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":387,"col":17},"end":{"line":387,"col":21}},"generated_from_span":null},"id":1715,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":11}},"generics":{"regions":[],"types":[{"Deduplicated":569},{"Deduplicated":455}],"const_generics":[],"trait_refs":[{"Deduplicated":5158}]}}},"args":[{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":569}}}],"dest":{"kind":{"Local":3},"ty":{"Deduplicated":569}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":387,"col":20},"end":{"line":387,"col":21}},"generated_from_span":null},"id":1716,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":387,"col":17},"end":{"line":387,"col":21}},"generated_from_span":null},"id":1717,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":387,"col":17},"end":{"line":387,"col":21}},"generated_from_span":null},"id":1718,"kind":{"Assign":[{"kind":{"Local":5},"ty":{"Deduplicated":569}},{"Use":[{"Move":{"kind":{"Local":3},"ty":{"Deduplicated":569}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":387,"col":8},"end":{"line":389,"col":9}},"generated_from_span":null},"id":1759,"kind":{"Loop":{"span":{"data":{"file_id":0,"beg":{"line":387,"col":8},"end":{"line":389,"col":9}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":0,"beg":{"line":387,"col":17},"end":{"line":387,"col":21}},"generated_from_span":null},"id":1720,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":387,"col":17},"end":{"line":387,"col":21}},"generated_from_span":null},"id":1721,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":387,"col":17},"end":{"line":387,"col":21}},"generated_from_span":null},"id":1722,"kind":{"StorageLive":8},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":387,"col":17},"end":{"line":387,"col":21}},"generated_from_span":null},"id":1723,"kind":{"Assign":[{"kind":{"Local":8},"ty":{"Deduplicated":599}},{"Ref":{"place":{"kind":{"Local":5},"ty":{"Deduplicated":569}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":387,"col":17},"end":{"line":387,"col":21}},"generated_from_span":null},"id":1724,"kind":{"Assign":[{"kind":{"Local":7},"ty":{"Deduplicated":598}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":8},"ty":{"Deduplicated":599}},"Deref"]},"ty":{"Deduplicated":569}},"kind":"TwoPhaseMut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":387,"col":17},"end":{"line":387,"col":21}},"generated_from_span":null},"id":1725,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":12}},"generics":{"regions":[{"Body":12}],"types":[{"Deduplicated":455}],"const_generics":[],"trait_refs":[{"Deduplicated":960}]}}},"args":[{"Move":{"kind":{"Local":7},"ty":{"Deduplicated":598}}}],"dest":{"kind":{"Local":6},"ty":{"Deduplicated":596}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":387,"col":20},"end":{"line":387,"col":21}},"generated_from_span":null},"id":1726,"kind":{"StorageDead":7},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":387,"col":17},"end":{"line":387,"col":21}},"generated_from_span":null},"id":1731,"kind":{"Switch":{"Match":[{"kind":{"Local":6},"ty":{"Deduplicated":596}},[[[0],{"span":{"data":{"file_id":0,"beg":{"line":387,"col":17},"end":{"line":387,"col":21}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":0,"beg":{"line":387,"col":17},"end":{"line":387,"col":21}},"generated_from_span":null},"id":1728,"kind":{"Break":0},"comments_before":[]}]}],[[1],{"span":{"data":{"file_id":0,"beg":{"line":387,"col":17},"end":{"line":387,"col":21}},"generated_from_span":null},"statements":[]}]],null]}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":387,"col":12},"end":{"line":387,"col":13}},"generated_from_span":null},"id":1732,"kind":{"StorageLive":9},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":387,"col":12},"end":{"line":387,"col":13}},"generated_from_span":null},"id":1733,"kind":{"Assign":[{"kind":{"Local":9},"ty":{"Deduplicated":455}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":6},"ty":{"Deduplicated":596}},{"Field":[{"Adt":[2,1]},0]}]},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":388,"col":23},"end":{"line":388,"col":30}},"generated_from_span":null},"id":1734,"kind":{"StorageLive":10},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":388,"col":27},"end":{"line":388,"col":30}},"generated_from_span":null},"id":1735,"kind":{"StorageLive":11},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":388,"col":23},"end":{"line":388,"col":27}},"generated_from_span":null},"id":1736,"kind":{"StorageLive":12},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":388,"col":23},"end":{"line":388,"col":27}},"generated_from_span":null},"id":1737,"kind":{"Assign":[{"kind":{"Local":12},"ty":{"Deduplicated":1244}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":388,"col":28},"end":{"line":388,"col":29}},"generated_from_span":null},"id":1738,"kind":{"StorageLive":13},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":388,"col":28},"end":{"line":388,"col":29}},"generated_from_span":null},"id":1739,"kind":{"Assign":[{"kind":{"Local":13},"ty":{"Deduplicated":455}},{"Use":[{"Copy":{"kind":{"Local":9},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":388,"col":27},"end":{"line":388,"col":30}},"generated_from_span":null},"id":1740,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":14}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":12},"ty":{"Deduplicated":1244}}},{"Move":{"kind":{"Local":13},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":11},"ty":{"Deduplicated":604}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":388,"col":23},"end":{"line":388,"col":30}},"generated_from_span":null},"id":1741,"kind":{"Assign":[{"kind":{"Local":10},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":11},"ty":{"Deduplicated":604}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":388,"col":29},"end":{"line":388,"col":30}},"generated_from_span":null},"id":1742,"kind":{"StorageDead":13},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":388,"col":29},"end":{"line":388,"col":30}},"generated_from_span":null},"id":1743,"kind":{"StorageDead":12},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":388,"col":18},"end":{"line":388,"col":19}},"generated_from_span":null},"id":1744,"kind":{"StorageLive":14},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":388,"col":18},"end":{"line":388,"col":19}},"generated_from_span":null},"id":1745,"kind":{"Assign":[{"kind":{"Local":14},"ty":{"Deduplicated":455}},{"Use":[{"Copy":{"kind":{"Local":9},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":388,"col":12},"end":{"line":388,"col":38}},"generated_from_span":null},"id":3904,"kind":{"StorageLive":18},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":388,"col":12},"end":{"line":388,"col":38}},"generated_from_span":null},"id":3905,"kind":{"Assign":[{"kind":{"Local":18},"ty":{"Deduplicated":5013}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":1221}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":388,"col":12},"end":{"line":388,"col":38}},"generated_from_span":null},"id":3906,"kind":{"StorageLive":19},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":388,"col":12},"end":{"line":388,"col":38}},"generated_from_span":null},"id":3907,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Mut","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1220}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","9"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":18},"ty":{"Deduplicated":5013}}},{"Copy":{"kind":{"Local":14},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":19},"ty":{"Deduplicated":5012}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":388,"col":12},"end":{"line":388,"col":38}},"generated_from_span":null},"id":1748,"kind":{"Assign":[{"kind":{"Projection":[{"kind":{"Local":19},"ty":{"Deduplicated":5012}},"Deref"]},"ty":{"Deduplicated":1220}},{"UnaryOp":[{"Cast":{"Scalar":[{"UInt":"U64"},{"UInt":"U128"}]}},{"Move":{"kind":{"Local":10},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":388,"col":37},"end":{"line":388,"col":38}},"generated_from_span":null},"id":1749,"kind":{"StorageDead":10},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":388,"col":38},"end":{"line":388,"col":39}},"generated_from_span":null},"id":1750,"kind":{"StorageDead":14},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":388,"col":38},"end":{"line":388,"col":39}},"generated_from_span":null},"id":1751,"kind":{"StorageDead":11},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":389,"col":8},"end":{"line":389,"col":9}},"generated_from_span":null},"id":1753,"kind":{"StorageDead":9},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":389,"col":8},"end":{"line":389,"col":9}},"generated_from_span":null},"id":1754,"kind":{"StorageDead":8},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":389,"col":8},"end":{"line":389,"col":9}},"generated_from_span":null},"id":1755,"kind":{"StorageDead":6},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":387,"col":8},"end":{"line":389,"col":9}},"generated_from_span":null},"id":1758,"kind":{"Continue":0},"comments_before":[]}]}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":389,"col":8},"end":{"line":389,"col":9}},"generated_from_span":null},"id":1761,"kind":{"StorageDead":8},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":389,"col":8},"end":{"line":389,"col":9}},"generated_from_span":null},"id":1762,"kind":{"StorageDead":6},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":389,"col":8},"end":{"line":389,"col":9}},"generated_from_span":null},"id":1764,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":389,"col":8},"end":{"line":389,"col":9}},"generated_from_span":null},"id":1765,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":390,"col":12},"end":{"line":390,"col":18}},"generated_from_span":null},"id":1767,"kind":{"StorageLive":15},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":390,"col":49},"end":{"line":390,"col":55}},"generated_from_span":null},"id":1768,"kind":{"StorageLive":16},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":390,"col":49},"end":{"line":390,"col":55}},"generated_from_span":null},"id":1769,"kind":{"StorageLive":17},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":390,"col":49},"end":{"line":390,"col":55}},"generated_from_span":null},"id":1770,"kind":{"Assign":[{"kind":{"Local":17},"ty":{"Deduplicated":1245}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":1221}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":390,"col":49},"end":{"line":390,"col":55}},"generated_from_span":null},"id":1771,"kind":{"Assign":[{"kind":{"Local":16},"ty":{"Deduplicated":1420}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":17},"ty":{"Deduplicated":1245}},"Deref"]},"ty":{"Deduplicated":1221}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":390,"col":21},"end":{"line":390,"col":56}},"generated_from_span":null},"id":1772,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":6}},"generics":{"regions":[{"Body":16}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":16},"ty":{"Deduplicated":1420}}}],"dest":{"kind":{"Local":15},"ty":{"Deduplicated":334}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":390,"col":55},"end":{"line":390,"col":56}},"generated_from_span":null},"id":1773,"kind":{"StorageDead":16},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":390,"col":56},"end":{"line":390,"col":57}},"generated_from_span":null},"id":1774,"kind":{"StorageDead":17},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":395,"col":8},"end":{"line":395,"col":14}},"generated_from_span":null},"id":1775,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":334}},{"Use":[{"Copy":{"kind":{"Local":15},"ty":{"Deduplicated":334}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":396,"col":4},"end":{"line":396,"col":5}},"generated_from_span":null},"id":1776,"kind":{"StorageDead":15},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":396,"col":4},"end":{"line":396,"col":5}},"generated_from_span":null},"id":1777,"kind":{"StorageDead":2},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":396,"col":5},"end":{"line":396,"col":5}},"generated_from_span":null},"id":1778,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":10,"item_meta":{"name":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["from_bytes_wide",0]}],"span":{"data":{"file_id":0,"beg":{"line":88,"col":4},"end":{"line":127,"col":5}},"generated_from_span":null},"source_text":"pub fn from_bytes_wide(bytes: &[u8; 64]) -> Scalar52 {\n let mut words = [0u64; 8];\n for i in 0..8 {\n for j in 0..8 {\n words[i] |= (bytes[(i * 8) + j] as u64) << (j * 8);\n }\n }\n\n let mask = (1u64 << 52) - 1;\n let mut lo = Scalar52::ZERO;\n let mut hi = Scalar52::ZERO;\n\n lo[0] = words[0] & mask;\n lo[1] = ((words[0] >> 52) | (words[ 1] << 12)) & mask;\n lo[2] = ((words[1] >> 40) | (words[ 2] << 24)) & mask;\n lo[3] = ((words[2] >> 28) | (words[ 3] << 36)) & mask;\n lo[4] = ((words[3] >> 16) | (words[ 4] << 48)) & mask;\n hi[0] = (words[4] >> 4) & mask;\n hi[1] = ((words[4] >> 56) | (words[ 5] << 8)) & mask;\n hi[2] = ((words[5] >> 44) | (words[ 6] << 20)) & mask;\n hi[3] = ((words[6] >> 32) | (words[ 7] << 32)) & mask;\n // AENEAS-COMPAT: a bare `x >> c` as the full RHS extracts ill-typed\n // at the pinned Aeneas (wrapping_shr with an unsubstituted i32 cast);\n // masking is a semantic no-op here (words[7] >> 20 < 2^44 < 2^52).\n hi[4] = (words[7] >> 20) & mask;\n\n lo = Scalar52::montgomery_mul(&lo, &constants::R); // (lo * R) / R = lo\n hi = Scalar52::montgomery_mul(&hi, &constants::RR); // (hi * R^2) / R = hi * R\n\n let reduced = Scalar52::add(&hi, &lo);\n\n #[cfg(feature = \"zeroize\")]\n {\n words.zeroize();\n lo.zeroize();\n hi.zeroize();\n }\n\n reduced\n }","attr_info":{"attributes":[{"DocComment":" Reduce a 64 byte / 512 bit scalar mod l"},{"Unknown":{"path":"rustfmt::skip","args":null}}],"inline":null,"rename":null,"public":true},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"HashConsedValue":[5389,{"Ref":[{"Var":{"Free":0}},{"HashConsedValue":[1421,{"Array":[{"Deduplicated":1016},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","64"]}}},"ty":{"Deduplicated":455}}]}]},"Shared"]}]}],"output":{"Deduplicated":334}},"src":"TopLevel","is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":0,"beg":{"line":88,"col":4},"end":{"line":127,"col":5}},"generated_from_span":null},"bound_body_regions":84,"locals":{"arg_count":1,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":0,"beg":{"line":88,"col":48},"end":{"line":88,"col":56}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":1,"name":"bytes","span":{"data":{"file_id":0,"beg":{"line":88,"col":27},"end":{"line":88,"col":32}},"generated_from_span":null},"ty":{"HashConsedValue":[1425,{"Ref":[{"Body":1},{"Deduplicated":1421},"Shared"]}]}},{"index":2,"name":"words","span":{"data":{"file_id":0,"beg":{"line":89,"col":12},"end":{"line":89,"col":21}},"generated_from_span":null},"ty":{"HashConsedValue":[1428,{"Array":[{"Deduplicated":454},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":455}}]}]}},{"index":3,"name":null,"span":{"data":{"file_id":0,"beg":{"line":90,"col":17},"end":{"line":90,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":569}},{"index":4,"name":null,"span":{"data":{"file_id":0,"beg":{"line":90,"col":17},"end":{"line":90,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":569}},{"index":5,"name":"iter","span":{"data":{"file_id":0,"beg":{"line":90,"col":17},"end":{"line":90,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":569}},{"index":6,"name":null,"span":{"data":{"file_id":0,"beg":{"line":90,"col":17},"end":{"line":90,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":596}},{"index":7,"name":null,"span":{"data":{"file_id":0,"beg":{"line":90,"col":17},"end":{"line":90,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":598}},{"index":8,"name":null,"span":{"data":{"file_id":0,"beg":{"line":90,"col":17},"end":{"line":90,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":599}},{"index":9,"name":"i","span":{"data":{"file_id":0,"beg":{"line":90,"col":12},"end":{"line":90,"col":13}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":10,"name":null,"span":{"data":{"file_id":0,"beg":{"line":91,"col":21},"end":{"line":91,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":569}},{"index":11,"name":null,"span":{"data":{"file_id":0,"beg":{"line":91,"col":21},"end":{"line":91,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":569}},{"index":12,"name":"iter","span":{"data":{"file_id":0,"beg":{"line":91,"col":21},"end":{"line":91,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":569}},{"index":13,"name":null,"span":{"data":{"file_id":0,"beg":{"line":91,"col":21},"end":{"line":91,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":596}},{"index":14,"name":null,"span":{"data":{"file_id":0,"beg":{"line":91,"col":21},"end":{"line":91,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":600}},{"index":15,"name":null,"span":{"data":{"file_id":0,"beg":{"line":91,"col":21},"end":{"line":91,"col":25}},"generated_from_span":null},"ty":{"HashConsedValue":[1429,{"Ref":[{"Body":6},{"Deduplicated":569},"Mut"]}]}},{"index":16,"name":"j","span":{"data":{"file_id":0,"beg":{"line":91,"col":16},"end":{"line":91,"col":17}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":17,"name":null,"span":{"data":{"file_id":0,"beg":{"line":92,"col":28},"end":{"line":92,"col":66}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":18,"name":null,"span":{"data":{"file_id":0,"beg":{"line":92,"col":28},"end":{"line":92,"col":55}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":19,"name":null,"span":{"data":{"file_id":0,"beg":{"line":92,"col":29},"end":{"line":92,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":1016}},{"index":20,"name":null,"span":{"data":{"file_id":0,"beg":{"line":92,"col":35},"end":{"line":92,"col":46}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":21,"name":null,"span":{"data":{"file_id":0,"beg":{"line":92,"col":35},"end":{"line":92,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":22,"name":null,"span":{"data":{"file_id":0,"beg":{"line":92,"col":36},"end":{"line":92,"col":37}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":23,"name":null,"span":{"data":{"file_id":0,"beg":{"line":92,"col":35},"end":{"line":92,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":24,"name":null,"span":{"data":{"file_id":0,"beg":{"line":92,"col":45},"end":{"line":92,"col":46}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":25,"name":null,"span":{"data":{"file_id":0,"beg":{"line":92,"col":35},"end":{"line":92,"col":46}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":26,"name":null,"span":{"data":{"file_id":0,"beg":{"line":92,"col":59},"end":{"line":92,"col":66}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":27,"name":null,"span":{"data":{"file_id":0,"beg":{"line":92,"col":60},"end":{"line":92,"col":61}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":28,"name":null,"span":{"data":{"file_id":0,"beg":{"line":92,"col":59},"end":{"line":92,"col":66}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":29,"name":null,"span":{"data":{"file_id":0,"beg":{"line":92,"col":22},"end":{"line":92,"col":23}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":30,"name":"mask","span":{"data":{"file_id":0,"beg":{"line":96,"col":12},"end":{"line":96,"col":16}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":31,"name":null,"span":{"data":{"file_id":0,"beg":{"line":96,"col":19},"end":{"line":96,"col":31}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":32,"name":null,"span":{"data":{"file_id":0,"beg":{"line":96,"col":19},"end":{"line":96,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":33,"name":"lo","span":{"data":{"file_id":0,"beg":{"line":97,"col":12},"end":{"line":97,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":34,"name":"hi","span":{"data":{"file_id":0,"beg":{"line":98,"col":12},"end":{"line":98,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":35,"name":null,"span":{"data":{"file_id":0,"beg":{"line":100,"col":18},"end":{"line":100,"col":26}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":36,"name":null,"span":{"data":{"file_id":0,"beg":{"line":100,"col":24},"end":{"line":100,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":37,"name":null,"span":{"data":{"file_id":0,"beg":{"line":100,"col":57},"end":{"line":100,"col":61}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":38,"name":null,"span":{"data":{"file_id":0,"beg":{"line":100,"col":10},"end":{"line":100,"col":13}},"generated_from_span":null},"ty":{"HashConsedValue":[1431,{"Ref":[{"Body":8},{"Deduplicated":454},"Mut"]}]}},{"index":39,"name":null,"span":{"data":{"file_id":0,"beg":{"line":100,"col":8},"end":{"line":100,"col":10}},"generated_from_span":null},"ty":{"HashConsedValue":[1433,{"Ref":[{"Body":10},{"Deduplicated":334},"Mut"]}]}},{"index":40,"name":null,"span":{"data":{"file_id":0,"beg":{"line":101,"col":16},"end":{"line":101,"col":54}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":41,"name":null,"span":{"data":{"file_id":0,"beg":{"line":101,"col":17},"end":{"line":101,"col":33}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":42,"name":null,"span":{"data":{"file_id":0,"beg":{"line":101,"col":18},"end":{"line":101,"col":26}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":43,"name":null,"span":{"data":{"file_id":0,"beg":{"line":101,"col":24},"end":{"line":101,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":44,"name":null,"span":{"data":{"file_id":0,"beg":{"line":101,"col":36},"end":{"line":101,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":45,"name":null,"span":{"data":{"file_id":0,"beg":{"line":101,"col":37},"end":{"line":101,"col":46}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":46,"name":null,"span":{"data":{"file_id":0,"beg":{"line":101,"col":44},"end":{"line":101,"col":45}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":47,"name":null,"span":{"data":{"file_id":0,"beg":{"line":101,"col":57},"end":{"line":101,"col":61}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":48,"name":null,"span":{"data":{"file_id":0,"beg":{"line":101,"col":10},"end":{"line":101,"col":13}},"generated_from_span":null},"ty":{"HashConsedValue":[610,{"Ref":[{"Body":11},{"Deduplicated":454},"Mut"]}]}},{"index":49,"name":null,"span":{"data":{"file_id":0,"beg":{"line":101,"col":8},"end":{"line":101,"col":10}},"generated_from_span":null},"ty":{"HashConsedValue":[1434,{"Ref":[{"Body":12},{"Deduplicated":334},"Mut"]}]}},{"index":50,"name":null,"span":{"data":{"file_id":0,"beg":{"line":102,"col":16},"end":{"line":102,"col":54}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":51,"name":null,"span":{"data":{"file_id":0,"beg":{"line":102,"col":17},"end":{"line":102,"col":33}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":52,"name":null,"span":{"data":{"file_id":0,"beg":{"line":102,"col":18},"end":{"line":102,"col":26}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":53,"name":null,"span":{"data":{"file_id":0,"beg":{"line":102,"col":24},"end":{"line":102,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":54,"name":null,"span":{"data":{"file_id":0,"beg":{"line":102,"col":36},"end":{"line":102,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":55,"name":null,"span":{"data":{"file_id":0,"beg":{"line":102,"col":37},"end":{"line":102,"col":46}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":56,"name":null,"span":{"data":{"file_id":0,"beg":{"line":102,"col":44},"end":{"line":102,"col":45}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":57,"name":null,"span":{"data":{"file_id":0,"beg":{"line":102,"col":57},"end":{"line":102,"col":61}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":58,"name":null,"span":{"data":{"file_id":0,"beg":{"line":102,"col":10},"end":{"line":102,"col":13}},"generated_from_span":null},"ty":{"HashConsedValue":[1435,{"Ref":[{"Body":13},{"Deduplicated":454},"Mut"]}]}},{"index":59,"name":null,"span":{"data":{"file_id":0,"beg":{"line":102,"col":8},"end":{"line":102,"col":10}},"generated_from_span":null},"ty":{"Deduplicated":614}},{"index":60,"name":null,"span":{"data":{"file_id":0,"beg":{"line":103,"col":16},"end":{"line":103,"col":54}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":61,"name":null,"span":{"data":{"file_id":0,"beg":{"line":103,"col":17},"end":{"line":103,"col":33}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":62,"name":null,"span":{"data":{"file_id":0,"beg":{"line":103,"col":18},"end":{"line":103,"col":26}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":63,"name":null,"span":{"data":{"file_id":0,"beg":{"line":103,"col":24},"end":{"line":103,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":64,"name":null,"span":{"data":{"file_id":0,"beg":{"line":103,"col":36},"end":{"line":103,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":65,"name":null,"span":{"data":{"file_id":0,"beg":{"line":103,"col":37},"end":{"line":103,"col":46}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":66,"name":null,"span":{"data":{"file_id":0,"beg":{"line":103,"col":44},"end":{"line":103,"col":45}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":67,"name":null,"span":{"data":{"file_id":0,"beg":{"line":103,"col":57},"end":{"line":103,"col":61}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":68,"name":null,"span":{"data":{"file_id":0,"beg":{"line":103,"col":10},"end":{"line":103,"col":13}},"generated_from_span":null},"ty":{"HashConsedValue":[1436,{"Ref":[{"Body":15},{"Deduplicated":454},"Mut"]}]}},{"index":69,"name":null,"span":{"data":{"file_id":0,"beg":{"line":103,"col":8},"end":{"line":103,"col":10}},"generated_from_span":null},"ty":{"HashConsedValue":[1437,{"Ref":[{"Body":16},{"Deduplicated":334},"Mut"]}]}},{"index":70,"name":null,"span":{"data":{"file_id":0,"beg":{"line":104,"col":16},"end":{"line":104,"col":54}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":71,"name":null,"span":{"data":{"file_id":0,"beg":{"line":104,"col":17},"end":{"line":104,"col":33}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":72,"name":null,"span":{"data":{"file_id":0,"beg":{"line":104,"col":18},"end":{"line":104,"col":26}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":73,"name":null,"span":{"data":{"file_id":0,"beg":{"line":104,"col":24},"end":{"line":104,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":74,"name":null,"span":{"data":{"file_id":0,"beg":{"line":104,"col":36},"end":{"line":104,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":75,"name":null,"span":{"data":{"file_id":0,"beg":{"line":104,"col":37},"end":{"line":104,"col":46}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":76,"name":null,"span":{"data":{"file_id":0,"beg":{"line":104,"col":44},"end":{"line":104,"col":45}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":77,"name":null,"span":{"data":{"file_id":0,"beg":{"line":104,"col":57},"end":{"line":104,"col":61}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":78,"name":null,"span":{"data":{"file_id":0,"beg":{"line":104,"col":10},"end":{"line":104,"col":13}},"generated_from_span":null},"ty":{"HashConsedValue":[1438,{"Ref":[{"Body":17},{"Deduplicated":454},"Mut"]}]}},{"index":79,"name":null,"span":{"data":{"file_id":0,"beg":{"line":104,"col":8},"end":{"line":104,"col":10}},"generated_from_span":null},"ty":{"HashConsedValue":[1439,{"Ref":[{"Body":18},{"Deduplicated":334},"Mut"]}]}},{"index":80,"name":null,"span":{"data":{"file_id":0,"beg":{"line":105,"col":17},"end":{"line":105,"col":33}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":81,"name":null,"span":{"data":{"file_id":0,"beg":{"line":105,"col":18},"end":{"line":105,"col":26}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":82,"name":null,"span":{"data":{"file_id":0,"beg":{"line":105,"col":24},"end":{"line":105,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":83,"name":null,"span":{"data":{"file_id":0,"beg":{"line":105,"col":57},"end":{"line":105,"col":61}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":84,"name":null,"span":{"data":{"file_id":0,"beg":{"line":105,"col":10},"end":{"line":105,"col":13}},"generated_from_span":null},"ty":{"HashConsedValue":[1440,{"Ref":[{"Body":19},{"Deduplicated":454},"Mut"]}]}},{"index":85,"name":null,"span":{"data":{"file_id":0,"beg":{"line":105,"col":8},"end":{"line":105,"col":10}},"generated_from_span":null},"ty":{"HashConsedValue":[1441,{"Ref":[{"Body":20},{"Deduplicated":334},"Mut"]}]}},{"index":86,"name":null,"span":{"data":{"file_id":0,"beg":{"line":106,"col":16},"end":{"line":106,"col":54}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":87,"name":null,"span":{"data":{"file_id":0,"beg":{"line":106,"col":17},"end":{"line":106,"col":33}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":88,"name":null,"span":{"data":{"file_id":0,"beg":{"line":106,"col":18},"end":{"line":106,"col":26}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":89,"name":null,"span":{"data":{"file_id":0,"beg":{"line":106,"col":24},"end":{"line":106,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":90,"name":null,"span":{"data":{"file_id":0,"beg":{"line":106,"col":36},"end":{"line":106,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":91,"name":null,"span":{"data":{"file_id":0,"beg":{"line":106,"col":37},"end":{"line":106,"col":46}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":92,"name":null,"span":{"data":{"file_id":0,"beg":{"line":106,"col":44},"end":{"line":106,"col":45}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":93,"name":null,"span":{"data":{"file_id":0,"beg":{"line":106,"col":57},"end":{"line":106,"col":61}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":94,"name":null,"span":{"data":{"file_id":0,"beg":{"line":106,"col":10},"end":{"line":106,"col":13}},"generated_from_span":null},"ty":{"HashConsedValue":[1442,{"Ref":[{"Body":21},{"Deduplicated":454},"Mut"]}]}},{"index":95,"name":null,"span":{"data":{"file_id":0,"beg":{"line":106,"col":8},"end":{"line":106,"col":10}},"generated_from_span":null},"ty":{"HashConsedValue":[1443,{"Ref":[{"Body":22},{"Deduplicated":334},"Mut"]}]}},{"index":96,"name":null,"span":{"data":{"file_id":0,"beg":{"line":107,"col":16},"end":{"line":107,"col":54}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":97,"name":null,"span":{"data":{"file_id":0,"beg":{"line":107,"col":17},"end":{"line":107,"col":33}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":98,"name":null,"span":{"data":{"file_id":0,"beg":{"line":107,"col":18},"end":{"line":107,"col":26}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":99,"name":null,"span":{"data":{"file_id":0,"beg":{"line":107,"col":24},"end":{"line":107,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":100,"name":null,"span":{"data":{"file_id":0,"beg":{"line":107,"col":36},"end":{"line":107,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":101,"name":null,"span":{"data":{"file_id":0,"beg":{"line":107,"col":37},"end":{"line":107,"col":46}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":102,"name":null,"span":{"data":{"file_id":0,"beg":{"line":107,"col":44},"end":{"line":107,"col":45}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":103,"name":null,"span":{"data":{"file_id":0,"beg":{"line":107,"col":57},"end":{"line":107,"col":61}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":104,"name":null,"span":{"data":{"file_id":0,"beg":{"line":107,"col":10},"end":{"line":107,"col":13}},"generated_from_span":null},"ty":{"HashConsedValue":[1444,{"Ref":[{"Body":23},{"Deduplicated":454},"Mut"]}]}},{"index":105,"name":null,"span":{"data":{"file_id":0,"beg":{"line":107,"col":8},"end":{"line":107,"col":10}},"generated_from_span":null},"ty":{"HashConsedValue":[1445,{"Ref":[{"Body":24},{"Deduplicated":334},"Mut"]}]}},{"index":106,"name":null,"span":{"data":{"file_id":0,"beg":{"line":108,"col":16},"end":{"line":108,"col":54}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":107,"name":null,"span":{"data":{"file_id":0,"beg":{"line":108,"col":17},"end":{"line":108,"col":33}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":108,"name":null,"span":{"data":{"file_id":0,"beg":{"line":108,"col":18},"end":{"line":108,"col":26}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":109,"name":null,"span":{"data":{"file_id":0,"beg":{"line":108,"col":24},"end":{"line":108,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":110,"name":null,"span":{"data":{"file_id":0,"beg":{"line":108,"col":36},"end":{"line":108,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":111,"name":null,"span":{"data":{"file_id":0,"beg":{"line":108,"col":37},"end":{"line":108,"col":46}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":112,"name":null,"span":{"data":{"file_id":0,"beg":{"line":108,"col":44},"end":{"line":108,"col":45}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":113,"name":null,"span":{"data":{"file_id":0,"beg":{"line":108,"col":57},"end":{"line":108,"col":61}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":114,"name":null,"span":{"data":{"file_id":0,"beg":{"line":108,"col":10},"end":{"line":108,"col":13}},"generated_from_span":null},"ty":{"HashConsedValue":[1446,{"Ref":[{"Body":25},{"Deduplicated":454},"Mut"]}]}},{"index":115,"name":null,"span":{"data":{"file_id":0,"beg":{"line":108,"col":8},"end":{"line":108,"col":10}},"generated_from_span":null},"ty":{"HashConsedValue":[1447,{"Ref":[{"Body":26},{"Deduplicated":334},"Mut"]}]}},{"index":116,"name":null,"span":{"data":{"file_id":0,"beg":{"line":112,"col":17},"end":{"line":112,"col":33}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":117,"name":null,"span":{"data":{"file_id":0,"beg":{"line":112,"col":18},"end":{"line":112,"col":26}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":118,"name":null,"span":{"data":{"file_id":0,"beg":{"line":112,"col":24},"end":{"line":112,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":119,"name":null,"span":{"data":{"file_id":0,"beg":{"line":112,"col":57},"end":{"line":112,"col":61}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":120,"name":null,"span":{"data":{"file_id":0,"beg":{"line":112,"col":10},"end":{"line":112,"col":13}},"generated_from_span":null},"ty":{"HashConsedValue":[1448,{"Ref":[{"Body":27},{"Deduplicated":454},"Mut"]}]}},{"index":121,"name":null,"span":{"data":{"file_id":0,"beg":{"line":112,"col":8},"end":{"line":112,"col":10}},"generated_from_span":null},"ty":{"HashConsedValue":[1449,{"Ref":[{"Body":28},{"Deduplicated":334},"Mut"]}]}},{"index":122,"name":null,"span":{"data":{"file_id":0,"beg":{"line":114,"col":13},"end":{"line":114,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":123,"name":null,"span":{"data":{"file_id":0,"beg":{"line":114,"col":38},"end":{"line":114,"col":41}},"generated_from_span":null},"ty":{"Deduplicated":1282}},{"index":124,"name":null,"span":{"data":{"file_id":0,"beg":{"line":114,"col":38},"end":{"line":114,"col":41}},"generated_from_span":null},"ty":{"Deduplicated":1306}},{"index":125,"name":null,"span":{"data":{"file_id":0,"beg":{"line":114,"col":43},"end":{"line":114,"col":56}},"generated_from_span":null},"ty":{"Deduplicated":1284}},{"index":126,"name":null,"span":{"data":{"file_id":0,"beg":{"line":114,"col":43},"end":{"line":114,"col":56}},"generated_from_span":null},"ty":{"Deduplicated":1450}},{"index":127,"name":null,"span":{"data":{"file_id":0,"beg":{"line":115,"col":13},"end":{"line":115,"col":58}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":128,"name":null,"span":{"data":{"file_id":0,"beg":{"line":115,"col":38},"end":{"line":115,"col":41}},"generated_from_span":null},"ty":{"Deduplicated":1286}},{"index":129,"name":null,"span":{"data":{"file_id":0,"beg":{"line":115,"col":38},"end":{"line":115,"col":41}},"generated_from_span":null},"ty":{"Deduplicated":1287}},{"index":130,"name":null,"span":{"data":{"file_id":0,"beg":{"line":115,"col":43},"end":{"line":115,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":1288}},{"index":131,"name":null,"span":{"data":{"file_id":0,"beg":{"line":115,"col":43},"end":{"line":115,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":1289}},{"index":132,"name":"reduced","span":{"data":{"file_id":0,"beg":{"line":117,"col":12},"end":{"line":117,"col":19}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":133,"name":null,"span":{"data":{"file_id":0,"beg":{"line":117,"col":36},"end":{"line":117,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":1290}},{"index":134,"name":null,"span":{"data":{"file_id":0,"beg":{"line":117,"col":36},"end":{"line":117,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":1293}},{"index":135,"name":null,"span":{"data":{"file_id":0,"beg":{"line":117,"col":41},"end":{"line":117,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":1315}},{"index":136,"name":null,"span":{"data":{"file_id":0,"beg":{"line":117,"col":41},"end":{"line":117,"col":44}},"generated_from_span":null},"ty":{"HashConsedValue":[1451,{"Ref":[{"Body":41},{"Deduplicated":334},"Shared"]}]}},{"index":137,"name":null,"span":{"data":{"file_id":0,"beg":{"line":115,"col":43},"end":{"line":115,"col":57}},"generated_from_span":null},"ty":{"HashConsedValue":[1452,{"Ref":[{"Body":42},{"Deduplicated":334},"Shared"]}]}},{"index":138,"name":null,"span":{"data":{"file_id":0,"beg":{"line":114,"col":43},"end":{"line":114,"col":56}},"generated_from_span":null},"ty":{"Deduplicated":1318}},{"index":139,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":1343}},{"index":140,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"HashConsedValue":[1457,{"Ref":[{"Body":73},{"Deduplicated":334},"Shared"]}]}},{"index":141,"name":null,"span":{"data":{"file_id":0,"beg":{"line":114,"col":43},"end":{"line":114,"col":56}},"generated_from_span":null},"ty":{"HashConsedValue":[4984,{"Ref":[{"Body":82},{"Deduplicated":334},"Shared"]}]}},{"index":142,"name":null,"span":{"data":{"file_id":0,"beg":{"line":114,"col":44},"end":{"line":114,"col":56}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":143,"name":null,"span":{"data":{"file_id":0,"beg":{"line":115,"col":43},"end":{"line":115,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":1358}},{"index":144,"name":null,"span":{"data":{"file_id":0,"beg":{"line":115,"col":44},"end":{"line":115,"col":57}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":145,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":146,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"HashConsedValue":[5015,{"Ref":["Erased",{"Deduplicated":1421},"Shared"]}]}},{"index":147,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"HashConsedValue":[5014,{"Ref":["Erased",{"Deduplicated":1016},"Shared"]}]}},{"index":148,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"HashConsedValue":[5016,{"Ref":["Erased",{"Deduplicated":1428},"Shared"]}]}},{"index":149,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"HashConsedValue":[4636,{"Ref":["Erased",{"Deduplicated":454},"Shared"]}]}},{"index":150,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"HashConsedValue":[5018,{"Ref":["Erased",{"Deduplicated":1428},"Mut"]}]}},{"index":151,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"HashConsedValue":[5017,{"Ref":["Erased",{"Deduplicated":454},"Mut"]}]}},{"index":152,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5016}},{"index":153,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":4636}},{"index":154,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5016}},{"index":155,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":4636}},{"index":156,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5016}},{"index":157,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":4636}},{"index":158,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5016}},{"index":159,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":4636}},{"index":160,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5016}},{"index":161,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":4636}},{"index":162,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5016}},{"index":163,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":4636}},{"index":164,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5016}},{"index":165,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":4636}},{"index":166,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5016}},{"index":167,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":4636}},{"index":168,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5016}},{"index":169,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":4636}},{"index":170,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5016}},{"index":171,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":4636}},{"index":172,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5016}},{"index":173,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":4636}},{"index":174,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5016}},{"index":175,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":4636}},{"index":176,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5016}},{"index":177,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":4636}},{"index":178,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5016}},{"index":179,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":4636}},{"index":180,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5016}},{"index":181,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":4636}},{"index":182,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5016}},{"index":183,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":4636}},{"index":184,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5016}},{"index":185,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":4636}}]},"body":{"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":127,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":0,"beg":{"line":89,"col":12},"end":{"line":89,"col":21}},"generated_from_span":null},"id":1782,"kind":{"StorageLive":23},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":89,"col":12},"end":{"line":89,"col":21}},"generated_from_span":null},"id":1783,"kind":{"StorageLive":25},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":89,"col":12},"end":{"line":89,"col":21}},"generated_from_span":null},"id":1785,"kind":{"StorageLive":28},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":89,"col":12},"end":{"line":89,"col":21}},"generated_from_span":null},"id":1790,"kind":{"StorageLive":32},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":89,"col":12},"end":{"line":89,"col":21}},"generated_from_span":null},"id":1840,"kind":{"StorageLive":137},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":89,"col":12},"end":{"line":89,"col":21}},"generated_from_span":null},"id":1841,"kind":{"StorageLive":138},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":89,"col":12},"end":{"line":89,"col":21}},"generated_from_span":null},"id":1842,"kind":{"StorageLive":2},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":89,"col":24},"end":{"line":89,"col":33}},"generated_from_span":null},"id":1843,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":"ArrayRepeat"}},"generics":{"regions":[],"types":[{"Deduplicated":454}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":2},"ty":{"Deduplicated":1428}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":90,"col":17},"end":{"line":90,"col":21}},"generated_from_span":null},"id":1845,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":90,"col":17},"end":{"line":90,"col":21}},"generated_from_span":null},"id":1846,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":90,"col":17},"end":{"line":90,"col":21}},"generated_from_span":null},"id":1847,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":569}},{"Aggregate":[{"Adt":[{"id":{"Adt":1},"generics":{"regions":[],"types":[{"Deduplicated":455}],"const_generics":[],"trait_refs":[]}},null,null]},[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":455}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":455}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":90,"col":17},"end":{"line":90,"col":21}},"generated_from_span":null},"id":1848,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":11}},"generics":{"regions":[],"types":[{"Deduplicated":569},{"Deduplicated":455}],"const_generics":[],"trait_refs":[{"Deduplicated":5158}]}}},"args":[{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":569}}}],"dest":{"kind":{"Local":3},"ty":{"Deduplicated":569}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":90,"col":20},"end":{"line":90,"col":21}},"generated_from_span":null},"id":1849,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":90,"col":17},"end":{"line":90,"col":21}},"generated_from_span":null},"id":1850,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":90,"col":17},"end":{"line":90,"col":21}},"generated_from_span":null},"id":1851,"kind":{"Assign":[{"kind":{"Local":5},"ty":{"Deduplicated":569}},{"Use":[{"Move":{"kind":{"Local":3},"ty":{"Deduplicated":569}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":90,"col":8},"end":{"line":94,"col":9}},"generated_from_span":null},"id":1954,"kind":{"Loop":{"span":{"data":{"file_id":0,"beg":{"line":90,"col":8},"end":{"line":94,"col":9}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":0,"beg":{"line":90,"col":17},"end":{"line":90,"col":21}},"generated_from_span":null},"id":1853,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":90,"col":17},"end":{"line":90,"col":21}},"generated_from_span":null},"id":1854,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":90,"col":17},"end":{"line":90,"col":21}},"generated_from_span":null},"id":1855,"kind":{"StorageLive":8},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":90,"col":17},"end":{"line":90,"col":21}},"generated_from_span":null},"id":1856,"kind":{"Assign":[{"kind":{"Local":8},"ty":{"Deduplicated":599}},{"Ref":{"place":{"kind":{"Local":5},"ty":{"Deduplicated":569}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":90,"col":17},"end":{"line":90,"col":21}},"generated_from_span":null},"id":1857,"kind":{"Assign":[{"kind":{"Local":7},"ty":{"Deduplicated":598}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":8},"ty":{"Deduplicated":599}},"Deref"]},"ty":{"Deduplicated":569}},"kind":"TwoPhaseMut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":90,"col":17},"end":{"line":90,"col":21}},"generated_from_span":null},"id":1858,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":12}},"generics":{"regions":[{"Body":45}],"types":[{"Deduplicated":455}],"const_generics":[],"trait_refs":[{"Deduplicated":960}]}}},"args":[{"Move":{"kind":{"Local":7},"ty":{"Deduplicated":598}}}],"dest":{"kind":{"Local":6},"ty":{"Deduplicated":596}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":90,"col":20},"end":{"line":90,"col":21}},"generated_from_span":null},"id":1859,"kind":{"StorageDead":7},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":90,"col":17},"end":{"line":90,"col":21}},"generated_from_span":null},"id":1864,"kind":{"Switch":{"Match":[{"kind":{"Local":6},"ty":{"Deduplicated":596}},[[[0],{"span":{"data":{"file_id":0,"beg":{"line":90,"col":17},"end":{"line":90,"col":21}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":0,"beg":{"line":90,"col":17},"end":{"line":90,"col":21}},"generated_from_span":null},"id":1861,"kind":{"Break":0},"comments_before":[]}]}],[[1],{"span":{"data":{"file_id":0,"beg":{"line":90,"col":17},"end":{"line":90,"col":21}},"generated_from_span":null},"statements":[]}]],null]}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":90,"col":12},"end":{"line":90,"col":13}},"generated_from_span":null},"id":1865,"kind":{"StorageLive":9},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":90,"col":12},"end":{"line":90,"col":13}},"generated_from_span":null},"id":1866,"kind":{"Assign":[{"kind":{"Local":9},"ty":{"Deduplicated":455}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":6},"ty":{"Deduplicated":596}},{"Field":[{"Adt":[2,1]},0]}]},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":91,"col":21},"end":{"line":91,"col":25}},"generated_from_span":null},"id":1867,"kind":{"StorageLive":10},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":91,"col":21},"end":{"line":91,"col":25}},"generated_from_span":null},"id":1868,"kind":{"StorageLive":11},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":91,"col":21},"end":{"line":91,"col":25}},"generated_from_span":null},"id":1869,"kind":{"Assign":[{"kind":{"Local":11},"ty":{"Deduplicated":569}},{"Aggregate":[{"Adt":[{"id":{"Adt":1},"generics":{"regions":[],"types":[{"Deduplicated":455}],"const_generics":[],"trait_refs":[]}},null,null]},[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":455}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":455}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":91,"col":21},"end":{"line":91,"col":25}},"generated_from_span":null},"id":1870,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":11}},"generics":{"regions":[],"types":[{"Deduplicated":569},{"Deduplicated":455}],"const_generics":[],"trait_refs":[{"Deduplicated":5158}]}}},"args":[{"Move":{"kind":{"Local":11},"ty":{"Deduplicated":569}}}],"dest":{"kind":{"Local":10},"ty":{"Deduplicated":569}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":91,"col":24},"end":{"line":91,"col":25}},"generated_from_span":null},"id":1871,"kind":{"StorageDead":11},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":91,"col":21},"end":{"line":91,"col":25}},"generated_from_span":null},"id":1872,"kind":{"StorageLive":12},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":91,"col":21},"end":{"line":91,"col":25}},"generated_from_span":null},"id":1873,"kind":{"Assign":[{"kind":{"Local":12},"ty":{"Deduplicated":569}},{"Use":[{"Move":{"kind":{"Local":10},"ty":{"Deduplicated":569}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":91,"col":12},"end":{"line":93,"col":13}},"generated_from_span":null},"id":1941,"kind":{"Loop":{"span":{"data":{"file_id":0,"beg":{"line":91,"col":12},"end":{"line":93,"col":13}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":0,"beg":{"line":91,"col":21},"end":{"line":91,"col":25}},"generated_from_span":null},"id":1875,"kind":{"StorageLive":13},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":91,"col":21},"end":{"line":91,"col":25}},"generated_from_span":null},"id":1876,"kind":{"StorageLive":14},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":91,"col":21},"end":{"line":91,"col":25}},"generated_from_span":null},"id":1877,"kind":{"StorageLive":15},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":91,"col":21},"end":{"line":91,"col":25}},"generated_from_span":null},"id":1878,"kind":{"Assign":[{"kind":{"Local":15},"ty":{"Deduplicated":1429}},{"Ref":{"place":{"kind":{"Local":12},"ty":{"Deduplicated":569}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":91,"col":21},"end":{"line":91,"col":25}},"generated_from_span":null},"id":1879,"kind":{"Assign":[{"kind":{"Local":14},"ty":{"Deduplicated":600}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":15},"ty":{"Deduplicated":1429}},"Deref"]},"ty":{"Deduplicated":569}},"kind":"TwoPhaseMut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":91,"col":21},"end":{"line":91,"col":25}},"generated_from_span":null},"id":1880,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":12}},"generics":{"regions":[{"Body":47}],"types":[{"Deduplicated":455}],"const_generics":[],"trait_refs":[{"Deduplicated":960}]}}},"args":[{"Move":{"kind":{"Local":14},"ty":{"Deduplicated":600}}}],"dest":{"kind":{"Local":13},"ty":{"Deduplicated":596}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":91,"col":24},"end":{"line":91,"col":25}},"generated_from_span":null},"id":1881,"kind":{"StorageDead":14},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":91,"col":21},"end":{"line":91,"col":25}},"generated_from_span":null},"id":1886,"kind":{"Switch":{"Match":[{"kind":{"Local":13},"ty":{"Deduplicated":596}},[[[0],{"span":{"data":{"file_id":0,"beg":{"line":91,"col":21},"end":{"line":91,"col":25}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":0,"beg":{"line":91,"col":21},"end":{"line":91,"col":25}},"generated_from_span":null},"id":1883,"kind":{"Break":0},"comments_before":[]}]}],[[1],{"span":{"data":{"file_id":0,"beg":{"line":91,"col":21},"end":{"line":91,"col":25}},"generated_from_span":null},"statements":[]}]],null]}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":91,"col":16},"end":{"line":91,"col":17}},"generated_from_span":null},"id":1887,"kind":{"StorageLive":16},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":91,"col":16},"end":{"line":91,"col":17}},"generated_from_span":null},"id":1888,"kind":{"Assign":[{"kind":{"Local":16},"ty":{"Deduplicated":455}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":13},"ty":{"Deduplicated":596}},{"Field":[{"Adt":[2,1]},0]}]},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":28},"end":{"line":92,"col":66}},"generated_from_span":null},"id":1889,"kind":{"StorageLive":17},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":28},"end":{"line":92,"col":55}},"generated_from_span":null},"id":1890,"kind":{"StorageLive":18},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":29},"end":{"line":92,"col":47}},"generated_from_span":null},"id":1891,"kind":{"StorageLive":19},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":35},"end":{"line":92,"col":46}},"generated_from_span":null},"id":1892,"kind":{"StorageLive":20},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":35},"end":{"line":92,"col":42}},"generated_from_span":null},"id":1893,"kind":{"StorageLive":21},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":36},"end":{"line":92,"col":37}},"generated_from_span":null},"id":1894,"kind":{"StorageLive":22},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":36},"end":{"line":92,"col":37}},"generated_from_span":null},"id":1895,"kind":{"Assign":[{"kind":{"Local":22},"ty":{"Deduplicated":455}},{"Use":[{"Copy":{"kind":{"Local":9},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":35},"end":{"line":92,"col":42}},"generated_from_span":null},"id":1896,"kind":{"Assign":[{"kind":{"Local":23},"ty":{"Deduplicated":455}},{"BinaryOp":[{"Mul":"Panic"},{"Copy":{"kind":{"Local":22},"ty":{"Deduplicated":455}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":455}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":35},"end":{"line":92,"col":42}},"generated_from_span":null},"id":1898,"kind":{"Assign":[{"kind":{"Local":21},"ty":{"Deduplicated":455}},{"Use":[{"Move":{"kind":{"Local":23},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":41},"end":{"line":92,"col":42}},"generated_from_span":null},"id":1899,"kind":{"StorageDead":22},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":45},"end":{"line":92,"col":46}},"generated_from_span":null},"id":1900,"kind":{"StorageLive":24},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":45},"end":{"line":92,"col":46}},"generated_from_span":null},"id":1901,"kind":{"Assign":[{"kind":{"Local":24},"ty":{"Deduplicated":455}},{"Use":[{"Copy":{"kind":{"Local":16},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":35},"end":{"line":92,"col":46}},"generated_from_span":null},"id":1902,"kind":{"Assign":[{"kind":{"Local":25},"ty":{"Deduplicated":455}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":21},"ty":{"Deduplicated":455}}},{"Copy":{"kind":{"Local":24},"ty":{"Deduplicated":455}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":35},"end":{"line":92,"col":46}},"generated_from_span":null},"id":1904,"kind":{"Assign":[{"kind":{"Local":20},"ty":{"Deduplicated":455}},{"Use":[{"Move":{"kind":{"Local":25},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":45},"end":{"line":92,"col":46}},"generated_from_span":null},"id":1905,"kind":{"StorageDead":24},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":45},"end":{"line":92,"col":46}},"generated_from_span":null},"id":1906,"kind":{"StorageDead":21},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":29},"end":{"line":92,"col":47}},"generated_from_span":null},"id":3908,"kind":{"StorageLive":146},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":29},"end":{"line":92,"col":47}},"generated_from_span":null},"id":3909,"kind":{"Assign":[{"kind":{"Local":146},"ty":{"Deduplicated":5015}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":1425}},"Deref"]},"ty":{"Deduplicated":1421}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":29},"end":{"line":92,"col":47}},"generated_from_span":null},"id":3910,"kind":{"StorageLive":147},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":29},"end":{"line":92,"col":47}},"generated_from_span":null},"id":3911,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1016}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","64"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":146},"ty":{"Deduplicated":5015}}},{"Copy":{"kind":{"Local":20},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":147},"ty":{"Deduplicated":5014}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":29},"end":{"line":92,"col":47}},"generated_from_span":null},"id":1909,"kind":{"Assign":[{"kind":{"Local":19},"ty":{"Deduplicated":1016}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":147},"ty":{"Deduplicated":5014}},"Deref"]},"ty":{"Deduplicated":1016}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":28},"end":{"line":92,"col":55}},"generated_from_span":null},"id":1910,"kind":{"Assign":[{"kind":{"Local":18},"ty":{"Deduplicated":454}},{"UnaryOp":[{"Cast":{"Scalar":[{"UInt":"U8"},{"UInt":"U64"}]}},{"Move":{"kind":{"Local":19},"ty":{"Deduplicated":1016}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":54},"end":{"line":92,"col":55}},"generated_from_span":null},"id":1911,"kind":{"StorageDead":19},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":59},"end":{"line":92,"col":66}},"generated_from_span":null},"id":1912,"kind":{"StorageLive":26},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":60},"end":{"line":92,"col":61}},"generated_from_span":null},"id":1913,"kind":{"StorageLive":27},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":60},"end":{"line":92,"col":61}},"generated_from_span":null},"id":1914,"kind":{"Assign":[{"kind":{"Local":27},"ty":{"Deduplicated":455}},{"Use":[{"Copy":{"kind":{"Local":16},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":59},"end":{"line":92,"col":66}},"generated_from_span":null},"id":1915,"kind":{"Assign":[{"kind":{"Local":28},"ty":{"Deduplicated":455}},{"BinaryOp":[{"Mul":"Panic"},{"Copy":{"kind":{"Local":27},"ty":{"Deduplicated":455}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":455}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":59},"end":{"line":92,"col":66}},"generated_from_span":null},"id":1917,"kind":{"Assign":[{"kind":{"Local":26},"ty":{"Deduplicated":455}},{"Use":[{"Move":{"kind":{"Local":28},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":65},"end":{"line":92,"col":66}},"generated_from_span":null},"id":1918,"kind":{"StorageDead":27},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":28},"end":{"line":92,"col":66}},"generated_from_span":null},"id":1921,"kind":{"Assign":[{"kind":{"Local":17},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Shl":"Panic"},{"Move":{"kind":{"Local":18},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":26},"ty":{"Deduplicated":455}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":65},"end":{"line":92,"col":66}},"generated_from_span":null},"id":1922,"kind":{"StorageDead":26},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":65},"end":{"line":92,"col":66}},"generated_from_span":null},"id":1923,"kind":{"StorageDead":18},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":22},"end":{"line":92,"col":23}},"generated_from_span":null},"id":1924,"kind":{"StorageLive":29},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":22},"end":{"line":92,"col":23}},"generated_from_span":null},"id":1925,"kind":{"Assign":[{"kind":{"Local":29},"ty":{"Deduplicated":455}},{"Use":[{"Copy":{"kind":{"Local":9},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":16},"end":{"line":92,"col":66}},"generated_from_span":null},"id":1928,"kind":{"StorageLive":145},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":16},"end":{"line":92,"col":66}},"generated_from_span":null},"id":3912,"kind":{"StorageLive":148},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":16},"end":{"line":92,"col":66}},"generated_from_span":null},"id":3913,"kind":{"Assign":[{"kind":{"Local":148},"ty":{"Deduplicated":5016}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":1428}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":16},"end":{"line":92,"col":66}},"generated_from_span":null},"id":3914,"kind":{"StorageLive":149},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":16},"end":{"line":92,"col":66}},"generated_from_span":null},"id":3915,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":454}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":148},"ty":{"Deduplicated":5016}}},{"Copy":{"kind":{"Local":29},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":149},"ty":{"Deduplicated":4636}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":16},"end":{"line":92,"col":66}},"generated_from_span":null},"id":1929,"kind":{"Assign":[{"kind":{"Local":145},"ty":{"Deduplicated":454}},{"BinaryOp":["BitOr",{"Copy":{"kind":{"Projection":[{"kind":{"Local":149},"ty":{"Deduplicated":4636}},"Deref"]},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":17},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":16},"end":{"line":92,"col":66}},"generated_from_span":null},"id":3916,"kind":{"StorageLive":150},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":16},"end":{"line":92,"col":66}},"generated_from_span":null},"id":3917,"kind":{"Assign":[{"kind":{"Local":150},"ty":{"Deduplicated":5018}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":1428}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":16},"end":{"line":92,"col":66}},"generated_from_span":null},"id":3918,"kind":{"StorageLive":151},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":16},"end":{"line":92,"col":66}},"generated_from_span":null},"id":3919,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Mut","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":454}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":150},"ty":{"Deduplicated":5018}}},{"Copy":{"kind":{"Local":29},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":151},"ty":{"Deduplicated":5017}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":16},"end":{"line":92,"col":66}},"generated_from_span":null},"id":1930,"kind":{"Assign":[{"kind":{"Projection":[{"kind":{"Local":151},"ty":{"Deduplicated":5017}},"Deref"]},"ty":{"Deduplicated":454}},{"Use":[{"Move":{"kind":{"Local":145},"ty":{"Deduplicated":454}}},"No"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":65},"end":{"line":92,"col":66}},"generated_from_span":null},"id":1931,"kind":{"StorageDead":17},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":66},"end":{"line":92,"col":67}},"generated_from_span":null},"id":1932,"kind":{"StorageDead":29},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":92,"col":66},"end":{"line":92,"col":67}},"generated_from_span":null},"id":1933,"kind":{"StorageDead":20},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":93,"col":12},"end":{"line":93,"col":13}},"generated_from_span":null},"id":1935,"kind":{"StorageDead":16},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":93,"col":12},"end":{"line":93,"col":13}},"generated_from_span":null},"id":1936,"kind":{"StorageDead":15},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":93,"col":12},"end":{"line":93,"col":13}},"generated_from_span":null},"id":1937,"kind":{"StorageDead":13},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":91,"col":12},"end":{"line":93,"col":13}},"generated_from_span":null},"id":1940,"kind":{"Continue":0},"comments_before":[]}]}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":93,"col":12},"end":{"line":93,"col":13}},"generated_from_span":null},"id":1943,"kind":{"StorageDead":15},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":93,"col":12},"end":{"line":93,"col":13}},"generated_from_span":null},"id":1944,"kind":{"StorageDead":13},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":93,"col":12},"end":{"line":93,"col":13}},"generated_from_span":null},"id":1946,"kind":{"StorageDead":12},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":93,"col":12},"end":{"line":93,"col":13}},"generated_from_span":null},"id":1947,"kind":{"StorageDead":10},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":94,"col":8},"end":{"line":94,"col":9}},"generated_from_span":null},"id":1948,"kind":{"StorageDead":9},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":94,"col":8},"end":{"line":94,"col":9}},"generated_from_span":null},"id":1949,"kind":{"StorageDead":8},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":94,"col":8},"end":{"line":94,"col":9}},"generated_from_span":null},"id":1950,"kind":{"StorageDead":6},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":90,"col":8},"end":{"line":94,"col":9}},"generated_from_span":null},"id":1953,"kind":{"Continue":0},"comments_before":[]}]}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":94,"col":8},"end":{"line":94,"col":9}},"generated_from_span":null},"id":1956,"kind":{"StorageDead":8},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":94,"col":8},"end":{"line":94,"col":9}},"generated_from_span":null},"id":1957,"kind":{"StorageDead":6},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":94,"col":8},"end":{"line":94,"col":9}},"generated_from_span":null},"id":1959,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":94,"col":8},"end":{"line":94,"col":9}},"generated_from_span":null},"id":1960,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":96,"col":12},"end":{"line":96,"col":16}},"generated_from_span":null},"id":1962,"kind":{"StorageLive":30},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":96,"col":19},"end":{"line":96,"col":31}},"generated_from_span":null},"id":1963,"kind":{"StorageLive":31},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":96,"col":19},"end":{"line":96,"col":31}},"generated_from_span":null},"id":1967,"kind":{"Assign":[{"kind":{"Local":31},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Shl":"Panic"},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","1"]}}},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","52"]}}},"ty":{"Deduplicated":622}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":96,"col":19},"end":{"line":96,"col":35}},"generated_from_span":null},"id":1968,"kind":{"Assign":[{"kind":{"Local":32},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Sub":"Panic"},{"Copy":{"kind":{"Local":31},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","1"]}}},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":96,"col":19},"end":{"line":96,"col":35}},"generated_from_span":null},"id":1970,"kind":{"Assign":[{"kind":{"Local":30},"ty":{"Deduplicated":454}},{"Use":[{"Move":{"kind":{"Local":32},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":96,"col":34},"end":{"line":96,"col":35}},"generated_from_span":null},"id":1971,"kind":{"StorageDead":31},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":97,"col":12},"end":{"line":97,"col":18}},"generated_from_span":null},"id":1972,"kind":{"StorageLive":33},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":97,"col":21},"end":{"line":97,"col":35}},"generated_from_span":null},"id":1973,"kind":{"Assign":[{"kind":{"Local":33},"ty":{"Deduplicated":334}},{"Use":[{"Copy":{"kind":{"Global":{"id":0,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":334}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":98,"col":12},"end":{"line":98,"col":18}},"generated_from_span":null},"id":1974,"kind":{"StorageLive":34},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":98,"col":21},"end":{"line":98,"col":35}},"generated_from_span":null},"id":1975,"kind":{"Assign":[{"kind":{"Local":34},"ty":{"Deduplicated":334}},{"Use":[{"Copy":{"kind":{"Global":{"id":0,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":334}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":100,"col":18},"end":{"line":100,"col":26}},"generated_from_span":null},"id":1976,"kind":{"StorageLive":35},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":100,"col":24},"end":{"line":100,"col":25}},"generated_from_span":null},"id":1977,"kind":{"StorageLive":36},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":100,"col":24},"end":{"line":100,"col":25}},"generated_from_span":null},"id":1978,"kind":{"Assign":[{"kind":{"Local":36},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":100,"col":18},"end":{"line":100,"col":26}},"generated_from_span":null},"id":3920,"kind":{"StorageLive":152},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":100,"col":18},"end":{"line":100,"col":26}},"generated_from_span":null},"id":3921,"kind":{"Assign":[{"kind":{"Local":152},"ty":{"Deduplicated":5016}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":1428}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":100,"col":18},"end":{"line":100,"col":26}},"generated_from_span":null},"id":3922,"kind":{"StorageLive":153},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":100,"col":18},"end":{"line":100,"col":26}},"generated_from_span":null},"id":3923,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":454}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":152},"ty":{"Deduplicated":5016}}},{"Copy":{"kind":{"Local":36},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":153},"ty":{"Deduplicated":4636}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":100,"col":18},"end":{"line":100,"col":26}},"generated_from_span":null},"id":1981,"kind":{"Assign":[{"kind":{"Local":35},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":153},"ty":{"Deduplicated":4636}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":100,"col":57},"end":{"line":100,"col":61}},"generated_from_span":null},"id":1982,"kind":{"StorageLive":37},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":100,"col":57},"end":{"line":100,"col":61}},"generated_from_span":null},"id":1983,"kind":{"Assign":[{"kind":{"Local":37},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":30},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":100,"col":10},"end":{"line":100,"col":13}},"generated_from_span":null},"id":1984,"kind":{"StorageLive":38},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":100,"col":8},"end":{"line":100,"col":10}},"generated_from_span":null},"id":1985,"kind":{"StorageLive":39},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":100,"col":8},"end":{"line":100,"col":10}},"generated_from_span":null},"id":1986,"kind":{"Assign":[{"kind":{"Local":39},"ty":{"Deduplicated":1433}},{"Ref":{"place":{"kind":{"Local":33},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":100,"col":10},"end":{"line":100,"col":13}},"generated_from_span":null},"id":1987,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":14}},"generics":{"regions":[{"Body":49}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":39},"ty":{"Deduplicated":1433}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":38},"ty":{"Deduplicated":1431}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":100,"col":12},"end":{"line":100,"col":13}},"generated_from_span":null},"id":1988,"kind":{"StorageDead":39},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":100,"col":8},"end":{"line":100,"col":61}},"generated_from_span":null},"id":1989,"kind":{"Assign":[{"kind":{"Projection":[{"kind":{"Local":38},"ty":{"Deduplicated":1431}},"Deref"]},"ty":{"Deduplicated":454}},{"BinaryOp":["BitAnd",{"Move":{"kind":{"Local":35},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":37},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":100,"col":60},"end":{"line":100,"col":61}},"generated_from_span":null},"id":1990,"kind":{"StorageDead":37},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":100,"col":60},"end":{"line":100,"col":61}},"generated_from_span":null},"id":1991,"kind":{"StorageDead":35},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":100,"col":61},"end":{"line":100,"col":62}},"generated_from_span":null},"id":1992,"kind":{"StorageDead":38},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":100,"col":61},"end":{"line":100,"col":62}},"generated_from_span":null},"id":1993,"kind":{"StorageDead":36},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":16},"end":{"line":101,"col":54}},"generated_from_span":null},"id":1994,"kind":{"StorageLive":40},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":17},"end":{"line":101,"col":33}},"generated_from_span":null},"id":1995,"kind":{"StorageLive":41},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":18},"end":{"line":101,"col":26}},"generated_from_span":null},"id":1996,"kind":{"StorageLive":42},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":24},"end":{"line":101,"col":25}},"generated_from_span":null},"id":1997,"kind":{"StorageLive":43},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":24},"end":{"line":101,"col":25}},"generated_from_span":null},"id":1998,"kind":{"Assign":[{"kind":{"Local":43},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":18},"end":{"line":101,"col":26}},"generated_from_span":null},"id":3924,"kind":{"StorageLive":154},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":18},"end":{"line":101,"col":26}},"generated_from_span":null},"id":3925,"kind":{"Assign":[{"kind":{"Local":154},"ty":{"Deduplicated":5016}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":1428}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":18},"end":{"line":101,"col":26}},"generated_from_span":null},"id":3926,"kind":{"StorageLive":155},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":18},"end":{"line":101,"col":26}},"generated_from_span":null},"id":3927,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":454}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":154},"ty":{"Deduplicated":5016}}},{"Copy":{"kind":{"Local":43},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":155},"ty":{"Deduplicated":4636}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":18},"end":{"line":101,"col":26}},"generated_from_span":null},"id":2001,"kind":{"Assign":[{"kind":{"Local":42},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":155},"ty":{"Deduplicated":4636}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":17},"end":{"line":101,"col":33}},"generated_from_span":null},"id":2005,"kind":{"Assign":[{"kind":{"Local":41},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Shr":"Panic"},{"Move":{"kind":{"Local":42},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","52"]}}},"ty":{"Deduplicated":622}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":32},"end":{"line":101,"col":33}},"generated_from_span":null},"id":2006,"kind":{"StorageDead":42},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":36},"end":{"line":101,"col":53}},"generated_from_span":null},"id":2007,"kind":{"StorageLive":44},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":37},"end":{"line":101,"col":46}},"generated_from_span":null},"id":2008,"kind":{"StorageLive":45},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":44},"end":{"line":101,"col":45}},"generated_from_span":null},"id":2009,"kind":{"StorageLive":46},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":44},"end":{"line":101,"col":45}},"generated_from_span":null},"id":2010,"kind":{"Assign":[{"kind":{"Local":46},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":37},"end":{"line":101,"col":46}},"generated_from_span":null},"id":3928,"kind":{"StorageLive":156},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":37},"end":{"line":101,"col":46}},"generated_from_span":null},"id":3929,"kind":{"Assign":[{"kind":{"Local":156},"ty":{"Deduplicated":5016}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":1428}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":37},"end":{"line":101,"col":46}},"generated_from_span":null},"id":3930,"kind":{"StorageLive":157},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":37},"end":{"line":101,"col":46}},"generated_from_span":null},"id":3931,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":454}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":156},"ty":{"Deduplicated":5016}}},{"Copy":{"kind":{"Local":46},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":157},"ty":{"Deduplicated":4636}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":37},"end":{"line":101,"col":46}},"generated_from_span":null},"id":2013,"kind":{"Assign":[{"kind":{"Local":45},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":157},"ty":{"Deduplicated":4636}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":36},"end":{"line":101,"col":53}},"generated_from_span":null},"id":2017,"kind":{"Assign":[{"kind":{"Local":44},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Shl":"Panic"},{"Move":{"kind":{"Local":45},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","12"]}}},"ty":{"Deduplicated":622}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":52},"end":{"line":101,"col":53}},"generated_from_span":null},"id":2018,"kind":{"StorageDead":45},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":16},"end":{"line":101,"col":54}},"generated_from_span":null},"id":2019,"kind":{"Assign":[{"kind":{"Local":40},"ty":{"Deduplicated":454}},{"BinaryOp":["BitOr",{"Move":{"kind":{"Local":41},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":44},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":53},"end":{"line":101,"col":54}},"generated_from_span":null},"id":2020,"kind":{"StorageDead":44},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":53},"end":{"line":101,"col":54}},"generated_from_span":null},"id":2021,"kind":{"StorageDead":41},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":57},"end":{"line":101,"col":61}},"generated_from_span":null},"id":2022,"kind":{"StorageLive":47},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":57},"end":{"line":101,"col":61}},"generated_from_span":null},"id":2023,"kind":{"Assign":[{"kind":{"Local":47},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":30},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":10},"end":{"line":101,"col":13}},"generated_from_span":null},"id":2024,"kind":{"StorageLive":48},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":8},"end":{"line":101,"col":10}},"generated_from_span":null},"id":2025,"kind":{"StorageLive":49},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":8},"end":{"line":101,"col":10}},"generated_from_span":null},"id":2026,"kind":{"Assign":[{"kind":{"Local":49},"ty":{"Deduplicated":1434}},{"Ref":{"place":{"kind":{"Local":33},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":10},"end":{"line":101,"col":13}},"generated_from_span":null},"id":2027,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":14}},"generics":{"regions":[{"Body":51}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":49},"ty":{"Deduplicated":1434}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":48},"ty":{"Deduplicated":610}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":12},"end":{"line":101,"col":13}},"generated_from_span":null},"id":2028,"kind":{"StorageDead":49},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":8},"end":{"line":101,"col":61}},"generated_from_span":null},"id":2029,"kind":{"Assign":[{"kind":{"Projection":[{"kind":{"Local":48},"ty":{"Deduplicated":610}},"Deref"]},"ty":{"Deduplicated":454}},{"BinaryOp":["BitAnd",{"Move":{"kind":{"Local":40},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":47},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":60},"end":{"line":101,"col":61}},"generated_from_span":null},"id":2030,"kind":{"StorageDead":47},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":60},"end":{"line":101,"col":61}},"generated_from_span":null},"id":2031,"kind":{"StorageDead":40},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":61},"end":{"line":101,"col":62}},"generated_from_span":null},"id":2032,"kind":{"StorageDead":48},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":61},"end":{"line":101,"col":62}},"generated_from_span":null},"id":2033,"kind":{"StorageDead":46},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":101,"col":61},"end":{"line":101,"col":62}},"generated_from_span":null},"id":2034,"kind":{"StorageDead":43},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":16},"end":{"line":102,"col":54}},"generated_from_span":null},"id":2035,"kind":{"StorageLive":50},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":17},"end":{"line":102,"col":33}},"generated_from_span":null},"id":2036,"kind":{"StorageLive":51},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":18},"end":{"line":102,"col":26}},"generated_from_span":null},"id":2037,"kind":{"StorageLive":52},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":24},"end":{"line":102,"col":25}},"generated_from_span":null},"id":2038,"kind":{"StorageLive":53},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":24},"end":{"line":102,"col":25}},"generated_from_span":null},"id":2039,"kind":{"Assign":[{"kind":{"Local":53},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":18},"end":{"line":102,"col":26}},"generated_from_span":null},"id":3932,"kind":{"StorageLive":158},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":18},"end":{"line":102,"col":26}},"generated_from_span":null},"id":3933,"kind":{"Assign":[{"kind":{"Local":158},"ty":{"Deduplicated":5016}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":1428}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":18},"end":{"line":102,"col":26}},"generated_from_span":null},"id":3934,"kind":{"StorageLive":159},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":18},"end":{"line":102,"col":26}},"generated_from_span":null},"id":3935,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":454}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":158},"ty":{"Deduplicated":5016}}},{"Copy":{"kind":{"Local":53},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":159},"ty":{"Deduplicated":4636}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":18},"end":{"line":102,"col":26}},"generated_from_span":null},"id":2042,"kind":{"Assign":[{"kind":{"Local":52},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":159},"ty":{"Deduplicated":4636}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":17},"end":{"line":102,"col":33}},"generated_from_span":null},"id":2046,"kind":{"Assign":[{"kind":{"Local":51},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Shr":"Panic"},{"Move":{"kind":{"Local":52},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","40"]}}},"ty":{"Deduplicated":622}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":32},"end":{"line":102,"col":33}},"generated_from_span":null},"id":2047,"kind":{"StorageDead":52},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":36},"end":{"line":102,"col":53}},"generated_from_span":null},"id":2048,"kind":{"StorageLive":54},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":37},"end":{"line":102,"col":46}},"generated_from_span":null},"id":2049,"kind":{"StorageLive":55},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":44},"end":{"line":102,"col":45}},"generated_from_span":null},"id":2050,"kind":{"StorageLive":56},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":44},"end":{"line":102,"col":45}},"generated_from_span":null},"id":2051,"kind":{"Assign":[{"kind":{"Local":56},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":37},"end":{"line":102,"col":46}},"generated_from_span":null},"id":3936,"kind":{"StorageLive":160},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":37},"end":{"line":102,"col":46}},"generated_from_span":null},"id":3937,"kind":{"Assign":[{"kind":{"Local":160},"ty":{"Deduplicated":5016}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":1428}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":37},"end":{"line":102,"col":46}},"generated_from_span":null},"id":3938,"kind":{"StorageLive":161},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":37},"end":{"line":102,"col":46}},"generated_from_span":null},"id":3939,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":454}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":160},"ty":{"Deduplicated":5016}}},{"Copy":{"kind":{"Local":56},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":161},"ty":{"Deduplicated":4636}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":37},"end":{"line":102,"col":46}},"generated_from_span":null},"id":2054,"kind":{"Assign":[{"kind":{"Local":55},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":161},"ty":{"Deduplicated":4636}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":36},"end":{"line":102,"col":53}},"generated_from_span":null},"id":2058,"kind":{"Assign":[{"kind":{"Local":54},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Shl":"Panic"},{"Move":{"kind":{"Local":55},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","24"]}}},"ty":{"Deduplicated":622}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":52},"end":{"line":102,"col":53}},"generated_from_span":null},"id":2059,"kind":{"StorageDead":55},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":16},"end":{"line":102,"col":54}},"generated_from_span":null},"id":2060,"kind":{"Assign":[{"kind":{"Local":50},"ty":{"Deduplicated":454}},{"BinaryOp":["BitOr",{"Move":{"kind":{"Local":51},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":54},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":53},"end":{"line":102,"col":54}},"generated_from_span":null},"id":2061,"kind":{"StorageDead":54},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":53},"end":{"line":102,"col":54}},"generated_from_span":null},"id":2062,"kind":{"StorageDead":51},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":57},"end":{"line":102,"col":61}},"generated_from_span":null},"id":2063,"kind":{"StorageLive":57},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":57},"end":{"line":102,"col":61}},"generated_from_span":null},"id":2064,"kind":{"Assign":[{"kind":{"Local":57},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":30},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":10},"end":{"line":102,"col":13}},"generated_from_span":null},"id":2065,"kind":{"StorageLive":58},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":8},"end":{"line":102,"col":10}},"generated_from_span":null},"id":2066,"kind":{"StorageLive":59},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":8},"end":{"line":102,"col":10}},"generated_from_span":null},"id":2067,"kind":{"Assign":[{"kind":{"Local":59},"ty":{"Deduplicated":614}},{"Ref":{"place":{"kind":{"Local":33},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":10},"end":{"line":102,"col":13}},"generated_from_span":null},"id":2068,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":14}},"generics":{"regions":[{"Body":53}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":59},"ty":{"Deduplicated":614}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":58},"ty":{"Deduplicated":1435}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":12},"end":{"line":102,"col":13}},"generated_from_span":null},"id":2069,"kind":{"StorageDead":59},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":8},"end":{"line":102,"col":61}},"generated_from_span":null},"id":2070,"kind":{"Assign":[{"kind":{"Projection":[{"kind":{"Local":58},"ty":{"Deduplicated":1435}},"Deref"]},"ty":{"Deduplicated":454}},{"BinaryOp":["BitAnd",{"Move":{"kind":{"Local":50},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":57},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":60},"end":{"line":102,"col":61}},"generated_from_span":null},"id":2071,"kind":{"StorageDead":57},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":60},"end":{"line":102,"col":61}},"generated_from_span":null},"id":2072,"kind":{"StorageDead":50},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":61},"end":{"line":102,"col":62}},"generated_from_span":null},"id":2073,"kind":{"StorageDead":58},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":61},"end":{"line":102,"col":62}},"generated_from_span":null},"id":2074,"kind":{"StorageDead":56},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":102,"col":61},"end":{"line":102,"col":62}},"generated_from_span":null},"id":2075,"kind":{"StorageDead":53},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":16},"end":{"line":103,"col":54}},"generated_from_span":null},"id":2076,"kind":{"StorageLive":60},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":17},"end":{"line":103,"col":33}},"generated_from_span":null},"id":2077,"kind":{"StorageLive":61},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":18},"end":{"line":103,"col":26}},"generated_from_span":null},"id":2078,"kind":{"StorageLive":62},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":24},"end":{"line":103,"col":25}},"generated_from_span":null},"id":2079,"kind":{"StorageLive":63},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":24},"end":{"line":103,"col":25}},"generated_from_span":null},"id":2080,"kind":{"Assign":[{"kind":{"Local":63},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":18},"end":{"line":103,"col":26}},"generated_from_span":null},"id":3940,"kind":{"StorageLive":162},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":18},"end":{"line":103,"col":26}},"generated_from_span":null},"id":3941,"kind":{"Assign":[{"kind":{"Local":162},"ty":{"Deduplicated":5016}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":1428}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":18},"end":{"line":103,"col":26}},"generated_from_span":null},"id":3942,"kind":{"StorageLive":163},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":18},"end":{"line":103,"col":26}},"generated_from_span":null},"id":3943,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":454}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":162},"ty":{"Deduplicated":5016}}},{"Copy":{"kind":{"Local":63},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":163},"ty":{"Deduplicated":4636}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":18},"end":{"line":103,"col":26}},"generated_from_span":null},"id":2083,"kind":{"Assign":[{"kind":{"Local":62},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":163},"ty":{"Deduplicated":4636}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":17},"end":{"line":103,"col":33}},"generated_from_span":null},"id":2087,"kind":{"Assign":[{"kind":{"Local":61},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Shr":"Panic"},{"Move":{"kind":{"Local":62},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","28"]}}},"ty":{"Deduplicated":622}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":32},"end":{"line":103,"col":33}},"generated_from_span":null},"id":2088,"kind":{"StorageDead":62},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":36},"end":{"line":103,"col":53}},"generated_from_span":null},"id":2089,"kind":{"StorageLive":64},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":37},"end":{"line":103,"col":46}},"generated_from_span":null},"id":2090,"kind":{"StorageLive":65},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":44},"end":{"line":103,"col":45}},"generated_from_span":null},"id":2091,"kind":{"StorageLive":66},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":44},"end":{"line":103,"col":45}},"generated_from_span":null},"id":2092,"kind":{"Assign":[{"kind":{"Local":66},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":37},"end":{"line":103,"col":46}},"generated_from_span":null},"id":3944,"kind":{"StorageLive":164},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":37},"end":{"line":103,"col":46}},"generated_from_span":null},"id":3945,"kind":{"Assign":[{"kind":{"Local":164},"ty":{"Deduplicated":5016}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":1428}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":37},"end":{"line":103,"col":46}},"generated_from_span":null},"id":3946,"kind":{"StorageLive":165},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":37},"end":{"line":103,"col":46}},"generated_from_span":null},"id":3947,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":454}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":164},"ty":{"Deduplicated":5016}}},{"Copy":{"kind":{"Local":66},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":165},"ty":{"Deduplicated":4636}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":37},"end":{"line":103,"col":46}},"generated_from_span":null},"id":2095,"kind":{"Assign":[{"kind":{"Local":65},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":165},"ty":{"Deduplicated":4636}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":36},"end":{"line":103,"col":53}},"generated_from_span":null},"id":2099,"kind":{"Assign":[{"kind":{"Local":64},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Shl":"Panic"},{"Move":{"kind":{"Local":65},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","36"]}}},"ty":{"Deduplicated":622}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":52},"end":{"line":103,"col":53}},"generated_from_span":null},"id":2100,"kind":{"StorageDead":65},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":16},"end":{"line":103,"col":54}},"generated_from_span":null},"id":2101,"kind":{"Assign":[{"kind":{"Local":60},"ty":{"Deduplicated":454}},{"BinaryOp":["BitOr",{"Move":{"kind":{"Local":61},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":64},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":53},"end":{"line":103,"col":54}},"generated_from_span":null},"id":2102,"kind":{"StorageDead":64},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":53},"end":{"line":103,"col":54}},"generated_from_span":null},"id":2103,"kind":{"StorageDead":61},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":57},"end":{"line":103,"col":61}},"generated_from_span":null},"id":2104,"kind":{"StorageLive":67},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":57},"end":{"line":103,"col":61}},"generated_from_span":null},"id":2105,"kind":{"Assign":[{"kind":{"Local":67},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":30},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":10},"end":{"line":103,"col":13}},"generated_from_span":null},"id":2106,"kind":{"StorageLive":68},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":8},"end":{"line":103,"col":10}},"generated_from_span":null},"id":2107,"kind":{"StorageLive":69},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":8},"end":{"line":103,"col":10}},"generated_from_span":null},"id":2108,"kind":{"Assign":[{"kind":{"Local":69},"ty":{"Deduplicated":1437}},{"Ref":{"place":{"kind":{"Local":33},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":10},"end":{"line":103,"col":13}},"generated_from_span":null},"id":2109,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":14}},"generics":{"regions":[{"Body":55}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":69},"ty":{"Deduplicated":1437}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":68},"ty":{"Deduplicated":1436}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":12},"end":{"line":103,"col":13}},"generated_from_span":null},"id":2110,"kind":{"StorageDead":69},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":8},"end":{"line":103,"col":61}},"generated_from_span":null},"id":2111,"kind":{"Assign":[{"kind":{"Projection":[{"kind":{"Local":68},"ty":{"Deduplicated":1436}},"Deref"]},"ty":{"Deduplicated":454}},{"BinaryOp":["BitAnd",{"Move":{"kind":{"Local":60},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":67},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":60},"end":{"line":103,"col":61}},"generated_from_span":null},"id":2112,"kind":{"StorageDead":67},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":60},"end":{"line":103,"col":61}},"generated_from_span":null},"id":2113,"kind":{"StorageDead":60},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":61},"end":{"line":103,"col":62}},"generated_from_span":null},"id":2114,"kind":{"StorageDead":68},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":61},"end":{"line":103,"col":62}},"generated_from_span":null},"id":2115,"kind":{"StorageDead":66},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":103,"col":61},"end":{"line":103,"col":62}},"generated_from_span":null},"id":2116,"kind":{"StorageDead":63},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":16},"end":{"line":104,"col":54}},"generated_from_span":null},"id":2117,"kind":{"StorageLive":70},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":17},"end":{"line":104,"col":33}},"generated_from_span":null},"id":2118,"kind":{"StorageLive":71},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":18},"end":{"line":104,"col":26}},"generated_from_span":null},"id":2119,"kind":{"StorageLive":72},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":24},"end":{"line":104,"col":25}},"generated_from_span":null},"id":2120,"kind":{"StorageLive":73},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":24},"end":{"line":104,"col":25}},"generated_from_span":null},"id":2121,"kind":{"Assign":[{"kind":{"Local":73},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":18},"end":{"line":104,"col":26}},"generated_from_span":null},"id":3948,"kind":{"StorageLive":166},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":18},"end":{"line":104,"col":26}},"generated_from_span":null},"id":3949,"kind":{"Assign":[{"kind":{"Local":166},"ty":{"Deduplicated":5016}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":1428}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":18},"end":{"line":104,"col":26}},"generated_from_span":null},"id":3950,"kind":{"StorageLive":167},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":18},"end":{"line":104,"col":26}},"generated_from_span":null},"id":3951,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":454}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":166},"ty":{"Deduplicated":5016}}},{"Copy":{"kind":{"Local":73},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":167},"ty":{"Deduplicated":4636}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":18},"end":{"line":104,"col":26}},"generated_from_span":null},"id":2124,"kind":{"Assign":[{"kind":{"Local":72},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":167},"ty":{"Deduplicated":4636}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":17},"end":{"line":104,"col":33}},"generated_from_span":null},"id":2128,"kind":{"Assign":[{"kind":{"Local":71},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Shr":"Panic"},{"Move":{"kind":{"Local":72},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","16"]}}},"ty":{"Deduplicated":622}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":32},"end":{"line":104,"col":33}},"generated_from_span":null},"id":2129,"kind":{"StorageDead":72},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":36},"end":{"line":104,"col":53}},"generated_from_span":null},"id":2130,"kind":{"StorageLive":74},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":37},"end":{"line":104,"col":46}},"generated_from_span":null},"id":2131,"kind":{"StorageLive":75},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":44},"end":{"line":104,"col":45}},"generated_from_span":null},"id":2132,"kind":{"StorageLive":76},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":44},"end":{"line":104,"col":45}},"generated_from_span":null},"id":2133,"kind":{"Assign":[{"kind":{"Local":76},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":37},"end":{"line":104,"col":46}},"generated_from_span":null},"id":3952,"kind":{"StorageLive":168},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":37},"end":{"line":104,"col":46}},"generated_from_span":null},"id":3953,"kind":{"Assign":[{"kind":{"Local":168},"ty":{"Deduplicated":5016}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":1428}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":37},"end":{"line":104,"col":46}},"generated_from_span":null},"id":3954,"kind":{"StorageLive":169},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":37},"end":{"line":104,"col":46}},"generated_from_span":null},"id":3955,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":454}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":168},"ty":{"Deduplicated":5016}}},{"Copy":{"kind":{"Local":76},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":169},"ty":{"Deduplicated":4636}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":37},"end":{"line":104,"col":46}},"generated_from_span":null},"id":2136,"kind":{"Assign":[{"kind":{"Local":75},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":169},"ty":{"Deduplicated":4636}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":36},"end":{"line":104,"col":53}},"generated_from_span":null},"id":2140,"kind":{"Assign":[{"kind":{"Local":74},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Shl":"Panic"},{"Move":{"kind":{"Local":75},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","48"]}}},"ty":{"Deduplicated":622}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":52},"end":{"line":104,"col":53}},"generated_from_span":null},"id":2141,"kind":{"StorageDead":75},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":16},"end":{"line":104,"col":54}},"generated_from_span":null},"id":2142,"kind":{"Assign":[{"kind":{"Local":70},"ty":{"Deduplicated":454}},{"BinaryOp":["BitOr",{"Move":{"kind":{"Local":71},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":74},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":53},"end":{"line":104,"col":54}},"generated_from_span":null},"id":2143,"kind":{"StorageDead":74},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":53},"end":{"line":104,"col":54}},"generated_from_span":null},"id":2144,"kind":{"StorageDead":71},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":57},"end":{"line":104,"col":61}},"generated_from_span":null},"id":2145,"kind":{"StorageLive":77},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":57},"end":{"line":104,"col":61}},"generated_from_span":null},"id":2146,"kind":{"Assign":[{"kind":{"Local":77},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":30},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":10},"end":{"line":104,"col":13}},"generated_from_span":null},"id":2147,"kind":{"StorageLive":78},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":8},"end":{"line":104,"col":10}},"generated_from_span":null},"id":2148,"kind":{"StorageLive":79},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":8},"end":{"line":104,"col":10}},"generated_from_span":null},"id":2149,"kind":{"Assign":[{"kind":{"Local":79},"ty":{"Deduplicated":1439}},{"Ref":{"place":{"kind":{"Local":33},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":10},"end":{"line":104,"col":13}},"generated_from_span":null},"id":2150,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":14}},"generics":{"regions":[{"Body":57}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":79},"ty":{"Deduplicated":1439}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":78},"ty":{"Deduplicated":1438}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":12},"end":{"line":104,"col":13}},"generated_from_span":null},"id":2151,"kind":{"StorageDead":79},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":8},"end":{"line":104,"col":61}},"generated_from_span":null},"id":2152,"kind":{"Assign":[{"kind":{"Projection":[{"kind":{"Local":78},"ty":{"Deduplicated":1438}},"Deref"]},"ty":{"Deduplicated":454}},{"BinaryOp":["BitAnd",{"Move":{"kind":{"Local":70},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":77},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":60},"end":{"line":104,"col":61}},"generated_from_span":null},"id":2153,"kind":{"StorageDead":77},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":60},"end":{"line":104,"col":61}},"generated_from_span":null},"id":2154,"kind":{"StorageDead":70},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":61},"end":{"line":104,"col":62}},"generated_from_span":null},"id":2155,"kind":{"StorageDead":78},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":61},"end":{"line":104,"col":62}},"generated_from_span":null},"id":2156,"kind":{"StorageDead":76},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":104,"col":61},"end":{"line":104,"col":62}},"generated_from_span":null},"id":2157,"kind":{"StorageDead":73},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":105,"col":17},"end":{"line":105,"col":33}},"generated_from_span":null},"id":2158,"kind":{"StorageLive":80},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":105,"col":18},"end":{"line":105,"col":26}},"generated_from_span":null},"id":2159,"kind":{"StorageLive":81},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":105,"col":24},"end":{"line":105,"col":25}},"generated_from_span":null},"id":2160,"kind":{"StorageLive":82},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":105,"col":24},"end":{"line":105,"col":25}},"generated_from_span":null},"id":2161,"kind":{"Assign":[{"kind":{"Local":82},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":105,"col":18},"end":{"line":105,"col":26}},"generated_from_span":null},"id":3956,"kind":{"StorageLive":170},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":105,"col":18},"end":{"line":105,"col":26}},"generated_from_span":null},"id":3957,"kind":{"Assign":[{"kind":{"Local":170},"ty":{"Deduplicated":5016}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":1428}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":105,"col":18},"end":{"line":105,"col":26}},"generated_from_span":null},"id":3958,"kind":{"StorageLive":171},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":105,"col":18},"end":{"line":105,"col":26}},"generated_from_span":null},"id":3959,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":454}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":170},"ty":{"Deduplicated":5016}}},{"Copy":{"kind":{"Local":82},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":171},"ty":{"Deduplicated":4636}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":105,"col":18},"end":{"line":105,"col":26}},"generated_from_span":null},"id":2164,"kind":{"Assign":[{"kind":{"Local":81},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":171},"ty":{"Deduplicated":4636}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":105,"col":17},"end":{"line":105,"col":33}},"generated_from_span":null},"id":2168,"kind":{"Assign":[{"kind":{"Local":80},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Shr":"Panic"},{"Move":{"kind":{"Local":81},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","4"]}}},"ty":{"Deduplicated":622}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":105,"col":32},"end":{"line":105,"col":33}},"generated_from_span":null},"id":2169,"kind":{"StorageDead":81},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":105,"col":57},"end":{"line":105,"col":61}},"generated_from_span":null},"id":2170,"kind":{"StorageLive":83},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":105,"col":57},"end":{"line":105,"col":61}},"generated_from_span":null},"id":2171,"kind":{"Assign":[{"kind":{"Local":83},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":30},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":105,"col":10},"end":{"line":105,"col":13}},"generated_from_span":null},"id":2172,"kind":{"StorageLive":84},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":105,"col":8},"end":{"line":105,"col":10}},"generated_from_span":null},"id":2173,"kind":{"StorageLive":85},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":105,"col":8},"end":{"line":105,"col":10}},"generated_from_span":null},"id":2174,"kind":{"Assign":[{"kind":{"Local":85},"ty":{"Deduplicated":1441}},{"Ref":{"place":{"kind":{"Local":34},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":105,"col":10},"end":{"line":105,"col":13}},"generated_from_span":null},"id":2175,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":14}},"generics":{"regions":[{"Body":59}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":85},"ty":{"Deduplicated":1441}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":84},"ty":{"Deduplicated":1440}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":105,"col":12},"end":{"line":105,"col":13}},"generated_from_span":null},"id":2176,"kind":{"StorageDead":85},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":105,"col":8},"end":{"line":105,"col":61}},"generated_from_span":null},"id":2177,"kind":{"Assign":[{"kind":{"Projection":[{"kind":{"Local":84},"ty":{"Deduplicated":1440}},"Deref"]},"ty":{"Deduplicated":454}},{"BinaryOp":["BitAnd",{"Move":{"kind":{"Local":80},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":83},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":105,"col":60},"end":{"line":105,"col":61}},"generated_from_span":null},"id":2178,"kind":{"StorageDead":83},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":105,"col":60},"end":{"line":105,"col":61}},"generated_from_span":null},"id":2179,"kind":{"StorageDead":80},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":105,"col":61},"end":{"line":105,"col":62}},"generated_from_span":null},"id":2180,"kind":{"StorageDead":84},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":105,"col":61},"end":{"line":105,"col":62}},"generated_from_span":null},"id":2181,"kind":{"StorageDead":82},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":16},"end":{"line":106,"col":54}},"generated_from_span":null},"id":2182,"kind":{"StorageLive":86},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":17},"end":{"line":106,"col":33}},"generated_from_span":null},"id":2183,"kind":{"StorageLive":87},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":18},"end":{"line":106,"col":26}},"generated_from_span":null},"id":2184,"kind":{"StorageLive":88},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":24},"end":{"line":106,"col":25}},"generated_from_span":null},"id":2185,"kind":{"StorageLive":89},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":24},"end":{"line":106,"col":25}},"generated_from_span":null},"id":2186,"kind":{"Assign":[{"kind":{"Local":89},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":18},"end":{"line":106,"col":26}},"generated_from_span":null},"id":3960,"kind":{"StorageLive":172},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":18},"end":{"line":106,"col":26}},"generated_from_span":null},"id":3961,"kind":{"Assign":[{"kind":{"Local":172},"ty":{"Deduplicated":5016}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":1428}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":18},"end":{"line":106,"col":26}},"generated_from_span":null},"id":3962,"kind":{"StorageLive":173},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":18},"end":{"line":106,"col":26}},"generated_from_span":null},"id":3963,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":454}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":172},"ty":{"Deduplicated":5016}}},{"Copy":{"kind":{"Local":89},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":173},"ty":{"Deduplicated":4636}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":18},"end":{"line":106,"col":26}},"generated_from_span":null},"id":2189,"kind":{"Assign":[{"kind":{"Local":88},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":173},"ty":{"Deduplicated":4636}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":17},"end":{"line":106,"col":33}},"generated_from_span":null},"id":2193,"kind":{"Assign":[{"kind":{"Local":87},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Shr":"Panic"},{"Move":{"kind":{"Local":88},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","56"]}}},"ty":{"Deduplicated":622}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":32},"end":{"line":106,"col":33}},"generated_from_span":null},"id":2194,"kind":{"StorageDead":88},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":36},"end":{"line":106,"col":53}},"generated_from_span":null},"id":2195,"kind":{"StorageLive":90},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":37},"end":{"line":106,"col":46}},"generated_from_span":null},"id":2196,"kind":{"StorageLive":91},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":44},"end":{"line":106,"col":45}},"generated_from_span":null},"id":2197,"kind":{"StorageLive":92},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":44},"end":{"line":106,"col":45}},"generated_from_span":null},"id":2198,"kind":{"Assign":[{"kind":{"Local":92},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","5"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":37},"end":{"line":106,"col":46}},"generated_from_span":null},"id":3964,"kind":{"StorageLive":174},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":37},"end":{"line":106,"col":46}},"generated_from_span":null},"id":3965,"kind":{"Assign":[{"kind":{"Local":174},"ty":{"Deduplicated":5016}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":1428}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":37},"end":{"line":106,"col":46}},"generated_from_span":null},"id":3966,"kind":{"StorageLive":175},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":37},"end":{"line":106,"col":46}},"generated_from_span":null},"id":3967,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":454}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":174},"ty":{"Deduplicated":5016}}},{"Copy":{"kind":{"Local":92},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":175},"ty":{"Deduplicated":4636}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":37},"end":{"line":106,"col":46}},"generated_from_span":null},"id":2201,"kind":{"Assign":[{"kind":{"Local":91},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":175},"ty":{"Deduplicated":4636}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":36},"end":{"line":106,"col":53}},"generated_from_span":null},"id":2205,"kind":{"Assign":[{"kind":{"Local":90},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Shl":"Panic"},{"Move":{"kind":{"Local":91},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","8"]}}},"ty":{"Deduplicated":622}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":52},"end":{"line":106,"col":53}},"generated_from_span":null},"id":2206,"kind":{"StorageDead":91},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":16},"end":{"line":106,"col":54}},"generated_from_span":null},"id":2207,"kind":{"Assign":[{"kind":{"Local":86},"ty":{"Deduplicated":454}},{"BinaryOp":["BitOr",{"Move":{"kind":{"Local":87},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":90},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":53},"end":{"line":106,"col":54}},"generated_from_span":null},"id":2208,"kind":{"StorageDead":90},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":53},"end":{"line":106,"col":54}},"generated_from_span":null},"id":2209,"kind":{"StorageDead":87},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":57},"end":{"line":106,"col":61}},"generated_from_span":null},"id":2210,"kind":{"StorageLive":93},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":57},"end":{"line":106,"col":61}},"generated_from_span":null},"id":2211,"kind":{"Assign":[{"kind":{"Local":93},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":30},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":10},"end":{"line":106,"col":13}},"generated_from_span":null},"id":2212,"kind":{"StorageLive":94},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":8},"end":{"line":106,"col":10}},"generated_from_span":null},"id":2213,"kind":{"StorageLive":95},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":8},"end":{"line":106,"col":10}},"generated_from_span":null},"id":2214,"kind":{"Assign":[{"kind":{"Local":95},"ty":{"Deduplicated":1443}},{"Ref":{"place":{"kind":{"Local":34},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":10},"end":{"line":106,"col":13}},"generated_from_span":null},"id":2215,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":14}},"generics":{"regions":[{"Body":61}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":95},"ty":{"Deduplicated":1443}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":94},"ty":{"Deduplicated":1442}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":12},"end":{"line":106,"col":13}},"generated_from_span":null},"id":2216,"kind":{"StorageDead":95},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":8},"end":{"line":106,"col":61}},"generated_from_span":null},"id":2217,"kind":{"Assign":[{"kind":{"Projection":[{"kind":{"Local":94},"ty":{"Deduplicated":1442}},"Deref"]},"ty":{"Deduplicated":454}},{"BinaryOp":["BitAnd",{"Move":{"kind":{"Local":86},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":93},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":60},"end":{"line":106,"col":61}},"generated_from_span":null},"id":2218,"kind":{"StorageDead":93},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":60},"end":{"line":106,"col":61}},"generated_from_span":null},"id":2219,"kind":{"StorageDead":86},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":61},"end":{"line":106,"col":62}},"generated_from_span":null},"id":2220,"kind":{"StorageDead":94},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":61},"end":{"line":106,"col":62}},"generated_from_span":null},"id":2221,"kind":{"StorageDead":92},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":106,"col":61},"end":{"line":106,"col":62}},"generated_from_span":null},"id":2222,"kind":{"StorageDead":89},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":16},"end":{"line":107,"col":54}},"generated_from_span":null},"id":2223,"kind":{"StorageLive":96},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":17},"end":{"line":107,"col":33}},"generated_from_span":null},"id":2224,"kind":{"StorageLive":97},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":18},"end":{"line":107,"col":26}},"generated_from_span":null},"id":2225,"kind":{"StorageLive":98},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":24},"end":{"line":107,"col":25}},"generated_from_span":null},"id":2226,"kind":{"StorageLive":99},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":24},"end":{"line":107,"col":25}},"generated_from_span":null},"id":2227,"kind":{"Assign":[{"kind":{"Local":99},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","5"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":18},"end":{"line":107,"col":26}},"generated_from_span":null},"id":3968,"kind":{"StorageLive":176},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":18},"end":{"line":107,"col":26}},"generated_from_span":null},"id":3969,"kind":{"Assign":[{"kind":{"Local":176},"ty":{"Deduplicated":5016}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":1428}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":18},"end":{"line":107,"col":26}},"generated_from_span":null},"id":3970,"kind":{"StorageLive":177},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":18},"end":{"line":107,"col":26}},"generated_from_span":null},"id":3971,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":454}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":176},"ty":{"Deduplicated":5016}}},{"Copy":{"kind":{"Local":99},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":177},"ty":{"Deduplicated":4636}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":18},"end":{"line":107,"col":26}},"generated_from_span":null},"id":2230,"kind":{"Assign":[{"kind":{"Local":98},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":177},"ty":{"Deduplicated":4636}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":17},"end":{"line":107,"col":33}},"generated_from_span":null},"id":2234,"kind":{"Assign":[{"kind":{"Local":97},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Shr":"Panic"},{"Move":{"kind":{"Local":98},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","44"]}}},"ty":{"Deduplicated":622}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":32},"end":{"line":107,"col":33}},"generated_from_span":null},"id":2235,"kind":{"StorageDead":98},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":36},"end":{"line":107,"col":53}},"generated_from_span":null},"id":2236,"kind":{"StorageLive":100},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":37},"end":{"line":107,"col":46}},"generated_from_span":null},"id":2237,"kind":{"StorageLive":101},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":44},"end":{"line":107,"col":45}},"generated_from_span":null},"id":2238,"kind":{"StorageLive":102},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":44},"end":{"line":107,"col":45}},"generated_from_span":null},"id":2239,"kind":{"Assign":[{"kind":{"Local":102},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","6"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":37},"end":{"line":107,"col":46}},"generated_from_span":null},"id":3972,"kind":{"StorageLive":178},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":37},"end":{"line":107,"col":46}},"generated_from_span":null},"id":3973,"kind":{"Assign":[{"kind":{"Local":178},"ty":{"Deduplicated":5016}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":1428}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":37},"end":{"line":107,"col":46}},"generated_from_span":null},"id":3974,"kind":{"StorageLive":179},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":37},"end":{"line":107,"col":46}},"generated_from_span":null},"id":3975,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":454}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":178},"ty":{"Deduplicated":5016}}},{"Copy":{"kind":{"Local":102},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":179},"ty":{"Deduplicated":4636}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":37},"end":{"line":107,"col":46}},"generated_from_span":null},"id":2242,"kind":{"Assign":[{"kind":{"Local":101},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":179},"ty":{"Deduplicated":4636}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":36},"end":{"line":107,"col":53}},"generated_from_span":null},"id":2246,"kind":{"Assign":[{"kind":{"Local":100},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Shl":"Panic"},{"Move":{"kind":{"Local":101},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","20"]}}},"ty":{"Deduplicated":622}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":52},"end":{"line":107,"col":53}},"generated_from_span":null},"id":2247,"kind":{"StorageDead":101},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":16},"end":{"line":107,"col":54}},"generated_from_span":null},"id":2248,"kind":{"Assign":[{"kind":{"Local":96},"ty":{"Deduplicated":454}},{"BinaryOp":["BitOr",{"Move":{"kind":{"Local":97},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":100},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":53},"end":{"line":107,"col":54}},"generated_from_span":null},"id":2249,"kind":{"StorageDead":100},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":53},"end":{"line":107,"col":54}},"generated_from_span":null},"id":2250,"kind":{"StorageDead":97},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":57},"end":{"line":107,"col":61}},"generated_from_span":null},"id":2251,"kind":{"StorageLive":103},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":57},"end":{"line":107,"col":61}},"generated_from_span":null},"id":2252,"kind":{"Assign":[{"kind":{"Local":103},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":30},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":10},"end":{"line":107,"col":13}},"generated_from_span":null},"id":2253,"kind":{"StorageLive":104},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":8},"end":{"line":107,"col":10}},"generated_from_span":null},"id":2254,"kind":{"StorageLive":105},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":8},"end":{"line":107,"col":10}},"generated_from_span":null},"id":2255,"kind":{"Assign":[{"kind":{"Local":105},"ty":{"Deduplicated":1445}},{"Ref":{"place":{"kind":{"Local":34},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":10},"end":{"line":107,"col":13}},"generated_from_span":null},"id":2256,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":14}},"generics":{"regions":[{"Body":63}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":105},"ty":{"Deduplicated":1445}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":104},"ty":{"Deduplicated":1444}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":12},"end":{"line":107,"col":13}},"generated_from_span":null},"id":2257,"kind":{"StorageDead":105},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":8},"end":{"line":107,"col":61}},"generated_from_span":null},"id":2258,"kind":{"Assign":[{"kind":{"Projection":[{"kind":{"Local":104},"ty":{"Deduplicated":1444}},"Deref"]},"ty":{"Deduplicated":454}},{"BinaryOp":["BitAnd",{"Move":{"kind":{"Local":96},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":103},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":60},"end":{"line":107,"col":61}},"generated_from_span":null},"id":2259,"kind":{"StorageDead":103},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":60},"end":{"line":107,"col":61}},"generated_from_span":null},"id":2260,"kind":{"StorageDead":96},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":61},"end":{"line":107,"col":62}},"generated_from_span":null},"id":2261,"kind":{"StorageDead":104},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":61},"end":{"line":107,"col":62}},"generated_from_span":null},"id":2262,"kind":{"StorageDead":102},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":107,"col":61},"end":{"line":107,"col":62}},"generated_from_span":null},"id":2263,"kind":{"StorageDead":99},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":16},"end":{"line":108,"col":54}},"generated_from_span":null},"id":2264,"kind":{"StorageLive":106},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":17},"end":{"line":108,"col":33}},"generated_from_span":null},"id":2265,"kind":{"StorageLive":107},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":18},"end":{"line":108,"col":26}},"generated_from_span":null},"id":2266,"kind":{"StorageLive":108},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":24},"end":{"line":108,"col":25}},"generated_from_span":null},"id":2267,"kind":{"StorageLive":109},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":24},"end":{"line":108,"col":25}},"generated_from_span":null},"id":2268,"kind":{"Assign":[{"kind":{"Local":109},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","6"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":18},"end":{"line":108,"col":26}},"generated_from_span":null},"id":3976,"kind":{"StorageLive":180},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":18},"end":{"line":108,"col":26}},"generated_from_span":null},"id":3977,"kind":{"Assign":[{"kind":{"Local":180},"ty":{"Deduplicated":5016}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":1428}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":18},"end":{"line":108,"col":26}},"generated_from_span":null},"id":3978,"kind":{"StorageLive":181},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":18},"end":{"line":108,"col":26}},"generated_from_span":null},"id":3979,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":454}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":180},"ty":{"Deduplicated":5016}}},{"Copy":{"kind":{"Local":109},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":181},"ty":{"Deduplicated":4636}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":18},"end":{"line":108,"col":26}},"generated_from_span":null},"id":2271,"kind":{"Assign":[{"kind":{"Local":108},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":181},"ty":{"Deduplicated":4636}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":17},"end":{"line":108,"col":33}},"generated_from_span":null},"id":2275,"kind":{"Assign":[{"kind":{"Local":107},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Shr":"Panic"},{"Move":{"kind":{"Local":108},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","32"]}}},"ty":{"Deduplicated":622}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":32},"end":{"line":108,"col":33}},"generated_from_span":null},"id":2276,"kind":{"StorageDead":108},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":36},"end":{"line":108,"col":53}},"generated_from_span":null},"id":2277,"kind":{"StorageLive":110},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":37},"end":{"line":108,"col":46}},"generated_from_span":null},"id":2278,"kind":{"StorageLive":111},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":44},"end":{"line":108,"col":45}},"generated_from_span":null},"id":2279,"kind":{"StorageLive":112},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":44},"end":{"line":108,"col":45}},"generated_from_span":null},"id":2280,"kind":{"Assign":[{"kind":{"Local":112},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","7"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":37},"end":{"line":108,"col":46}},"generated_from_span":null},"id":3980,"kind":{"StorageLive":182},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":37},"end":{"line":108,"col":46}},"generated_from_span":null},"id":3981,"kind":{"Assign":[{"kind":{"Local":182},"ty":{"Deduplicated":5016}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":1428}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":37},"end":{"line":108,"col":46}},"generated_from_span":null},"id":3982,"kind":{"StorageLive":183},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":37},"end":{"line":108,"col":46}},"generated_from_span":null},"id":3983,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":454}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":182},"ty":{"Deduplicated":5016}}},{"Copy":{"kind":{"Local":112},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":183},"ty":{"Deduplicated":4636}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":37},"end":{"line":108,"col":46}},"generated_from_span":null},"id":2283,"kind":{"Assign":[{"kind":{"Local":111},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":183},"ty":{"Deduplicated":4636}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":36},"end":{"line":108,"col":53}},"generated_from_span":null},"id":2287,"kind":{"Assign":[{"kind":{"Local":110},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Shl":"Panic"},{"Move":{"kind":{"Local":111},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","32"]}}},"ty":{"Deduplicated":622}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":52},"end":{"line":108,"col":53}},"generated_from_span":null},"id":2288,"kind":{"StorageDead":111},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":16},"end":{"line":108,"col":54}},"generated_from_span":null},"id":2289,"kind":{"Assign":[{"kind":{"Local":106},"ty":{"Deduplicated":454}},{"BinaryOp":["BitOr",{"Move":{"kind":{"Local":107},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":110},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":53},"end":{"line":108,"col":54}},"generated_from_span":null},"id":2290,"kind":{"StorageDead":110},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":53},"end":{"line":108,"col":54}},"generated_from_span":null},"id":2291,"kind":{"StorageDead":107},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":57},"end":{"line":108,"col":61}},"generated_from_span":null},"id":2292,"kind":{"StorageLive":113},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":57},"end":{"line":108,"col":61}},"generated_from_span":null},"id":2293,"kind":{"Assign":[{"kind":{"Local":113},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":30},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":10},"end":{"line":108,"col":13}},"generated_from_span":null},"id":2294,"kind":{"StorageLive":114},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":8},"end":{"line":108,"col":10}},"generated_from_span":null},"id":2295,"kind":{"StorageLive":115},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":8},"end":{"line":108,"col":10}},"generated_from_span":null},"id":2296,"kind":{"Assign":[{"kind":{"Local":115},"ty":{"Deduplicated":1447}},{"Ref":{"place":{"kind":{"Local":34},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":10},"end":{"line":108,"col":13}},"generated_from_span":null},"id":2297,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":14}},"generics":{"regions":[{"Body":65}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":115},"ty":{"Deduplicated":1447}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":114},"ty":{"Deduplicated":1446}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":12},"end":{"line":108,"col":13}},"generated_from_span":null},"id":2298,"kind":{"StorageDead":115},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":8},"end":{"line":108,"col":61}},"generated_from_span":null},"id":2299,"kind":{"Assign":[{"kind":{"Projection":[{"kind":{"Local":114},"ty":{"Deduplicated":1446}},"Deref"]},"ty":{"Deduplicated":454}},{"BinaryOp":["BitAnd",{"Move":{"kind":{"Local":106},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":113},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":60},"end":{"line":108,"col":61}},"generated_from_span":null},"id":2300,"kind":{"StorageDead":113},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":60},"end":{"line":108,"col":61}},"generated_from_span":null},"id":2301,"kind":{"StorageDead":106},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":61},"end":{"line":108,"col":62}},"generated_from_span":null},"id":2302,"kind":{"StorageDead":114},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":61},"end":{"line":108,"col":62}},"generated_from_span":null},"id":2303,"kind":{"StorageDead":112},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":108,"col":61},"end":{"line":108,"col":62}},"generated_from_span":null},"id":2304,"kind":{"StorageDead":109},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":112,"col":17},"end":{"line":112,"col":33}},"generated_from_span":null},"id":2305,"kind":{"StorageLive":116},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":112,"col":18},"end":{"line":112,"col":26}},"generated_from_span":null},"id":2306,"kind":{"StorageLive":117},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":112,"col":24},"end":{"line":112,"col":25}},"generated_from_span":null},"id":2307,"kind":{"StorageLive":118},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":112,"col":24},"end":{"line":112,"col":25}},"generated_from_span":null},"id":2308,"kind":{"Assign":[{"kind":{"Local":118},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","7"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":["AENEAS-COMPAT: a bare `x >> c` as the full RHS extracts ill-typed","at the pinned Aeneas (wrapping_shr with an unsubstituted i32 cast);","masking is a semantic no-op here (words[7] >> 20 < 2^44 < 2^52)."]},{"span":{"data":{"file_id":0,"beg":{"line":112,"col":18},"end":{"line":112,"col":26}},"generated_from_span":null},"id":3984,"kind":{"StorageLive":184},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":112,"col":18},"end":{"line":112,"col":26}},"generated_from_span":null},"id":3985,"kind":{"Assign":[{"kind":{"Local":184},"ty":{"Deduplicated":5016}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":1428}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":112,"col":18},"end":{"line":112,"col":26}},"generated_from_span":null},"id":3986,"kind":{"StorageLive":185},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":112,"col":18},"end":{"line":112,"col":26}},"generated_from_span":null},"id":3987,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":454}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":184},"ty":{"Deduplicated":5016}}},{"Copy":{"kind":{"Local":118},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":185},"ty":{"Deduplicated":4636}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":112,"col":18},"end":{"line":112,"col":26}},"generated_from_span":null},"id":2311,"kind":{"Assign":[{"kind":{"Local":117},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":185},"ty":{"Deduplicated":4636}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":112,"col":17},"end":{"line":112,"col":33}},"generated_from_span":null},"id":2315,"kind":{"Assign":[{"kind":{"Local":116},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Shr":"Panic"},{"Move":{"kind":{"Local":117},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","20"]}}},"ty":{"Deduplicated":622}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":112,"col":32},"end":{"line":112,"col":33}},"generated_from_span":null},"id":2316,"kind":{"StorageDead":117},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":112,"col":57},"end":{"line":112,"col":61}},"generated_from_span":null},"id":2317,"kind":{"StorageLive":119},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":112,"col":57},"end":{"line":112,"col":61}},"generated_from_span":null},"id":2318,"kind":{"Assign":[{"kind":{"Local":119},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":30},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":112,"col":10},"end":{"line":112,"col":13}},"generated_from_span":null},"id":2319,"kind":{"StorageLive":120},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":112,"col":8},"end":{"line":112,"col":10}},"generated_from_span":null},"id":2320,"kind":{"StorageLive":121},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":112,"col":8},"end":{"line":112,"col":10}},"generated_from_span":null},"id":2321,"kind":{"Assign":[{"kind":{"Local":121},"ty":{"Deduplicated":1449}},{"Ref":{"place":{"kind":{"Local":34},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":112,"col":10},"end":{"line":112,"col":13}},"generated_from_span":null},"id":2322,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":14}},"generics":{"regions":[{"Body":67}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":121},"ty":{"Deduplicated":1449}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":120},"ty":{"Deduplicated":1448}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"id":2323,"kind":{"StorageLive":139},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":114,"col":43},"end":{"line":114,"col":56}},"generated_from_span":null},"id":2324,"kind":{"StorageLive":141},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":114,"col":44},"end":{"line":114,"col":56}},"generated_from_span":null},"id":2325,"kind":{"StorageLive":142},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":114,"col":44},"end":{"line":114,"col":56}},"generated_from_span":null},"id":2326,"kind":{"Assign":[{"kind":{"Local":142},"ty":{"Deduplicated":334}},{"Use":[{"Copy":{"kind":{"Global":{"id":19,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":334}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":114,"col":43},"end":{"line":114,"col":56}},"generated_from_span":null},"id":2327,"kind":{"Assign":[{"kind":{"Local":141},"ty":{"Deduplicated":4984}},{"Ref":{"place":{"kind":{"Local":142},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":114,"col":43},"end":{"line":114,"col":56}},"generated_from_span":null},"id":2328,"kind":{"Assign":[{"kind":{"Local":139},"ty":{"Deduplicated":1343}},{"Use":[{"Move":{"kind":{"Local":141},"ty":{"Deduplicated":4984}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":112,"col":12},"end":{"line":112,"col":13}},"generated_from_span":null},"id":2329,"kind":{"StorageDead":121},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":112,"col":8},"end":{"line":112,"col":61}},"generated_from_span":null},"id":2330,"kind":{"Assign":[{"kind":{"Projection":[{"kind":{"Local":120},"ty":{"Deduplicated":1448}},"Deref"]},"ty":{"Deduplicated":454}},{"BinaryOp":["BitAnd",{"Move":{"kind":{"Local":116},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":119},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":112,"col":60},"end":{"line":112,"col":61}},"generated_from_span":null},"id":2331,"kind":{"StorageDead":119},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":112,"col":60},"end":{"line":112,"col":61}},"generated_from_span":null},"id":2332,"kind":{"StorageDead":116},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":112,"col":61},"end":{"line":112,"col":62}},"generated_from_span":null},"id":2333,"kind":{"StorageDead":120},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":112,"col":61},"end":{"line":112,"col":62}},"generated_from_span":null},"id":2334,"kind":{"StorageDead":118},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":114,"col":13},"end":{"line":114,"col":57}},"generated_from_span":null},"id":2335,"kind":{"StorageLive":122},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":114,"col":38},"end":{"line":114,"col":41}},"generated_from_span":null},"id":2336,"kind":{"StorageLive":123},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":114,"col":38},"end":{"line":114,"col":41}},"generated_from_span":null},"id":2337,"kind":{"StorageLive":124},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":114,"col":38},"end":{"line":114,"col":41}},"generated_from_span":null},"id":2338,"kind":{"Assign":[{"kind":{"Local":124},"ty":{"Deduplicated":1306}},{"Ref":{"place":{"kind":{"Local":33},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":114,"col":38},"end":{"line":114,"col":41}},"generated_from_span":null},"id":2339,"kind":{"Assign":[{"kind":{"Local":123},"ty":{"Deduplicated":1282}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":124},"ty":{"Deduplicated":1306}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":114,"col":43},"end":{"line":114,"col":56}},"generated_from_span":null},"id":2340,"kind":{"StorageLive":125},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":114,"col":43},"end":{"line":114,"col":56}},"generated_from_span":null},"id":2341,"kind":{"StorageLive":126},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":114,"col":43},"end":{"line":114,"col":56}},"generated_from_span":null},"id":2342,"kind":{"Assign":[{"kind":{"Local":138},"ty":{"Deduplicated":1318}},{"Use":[{"Move":{"kind":{"Local":139},"ty":{"Deduplicated":1343}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":114,"col":43},"end":{"line":114,"col":56}},"generated_from_span":null},"id":2343,"kind":{"Assign":[{"kind":{"Local":126},"ty":{"Deduplicated":1450}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":138},"ty":{"Deduplicated":1318}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":114,"col":43},"end":{"line":114,"col":56}},"generated_from_span":null},"id":2344,"kind":{"Assign":[{"kind":{"Local":125},"ty":{"Deduplicated":1284}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":126},"ty":{"Deduplicated":1450}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":114,"col":13},"end":{"line":114,"col":57}},"generated_from_span":null},"id":2345,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":4}},"generics":{"regions":[{"Body":71},{"Body":72}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":123},"ty":{"Deduplicated":1282}}},{"Move":{"kind":{"Local":125},"ty":{"Deduplicated":1284}}}],"dest":{"kind":{"Local":122},"ty":{"Deduplicated":334}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"id":2346,"kind":{"StorageLive":140},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":115,"col":43},"end":{"line":115,"col":57}},"generated_from_span":null},"id":2347,"kind":{"StorageLive":143},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":115,"col":44},"end":{"line":115,"col":57}},"generated_from_span":null},"id":2348,"kind":{"StorageLive":144},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":115,"col":44},"end":{"line":115,"col":57}},"generated_from_span":null},"id":2349,"kind":{"Assign":[{"kind":{"Local":144},"ty":{"Deduplicated":334}},{"Use":[{"Copy":{"kind":{"Global":{"id":18,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":334}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":115,"col":43},"end":{"line":115,"col":57}},"generated_from_span":null},"id":2350,"kind":{"Assign":[{"kind":{"Local":143},"ty":{"Deduplicated":1358}},{"Ref":{"place":{"kind":{"Local":144},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":115,"col":43},"end":{"line":115,"col":57}},"generated_from_span":null},"id":2351,"kind":{"Assign":[{"kind":{"Local":140},"ty":{"Deduplicated":1457}},{"Use":[{"Move":{"kind":{"Local":143},"ty":{"Deduplicated":1358}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":114,"col":56},"end":{"line":114,"col":57}},"generated_from_span":null},"id":2352,"kind":{"StorageDead":125},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":114,"col":56},"end":{"line":114,"col":57}},"generated_from_span":null},"id":2353,"kind":{"StorageDead":123},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":114,"col":8},"end":{"line":114,"col":57}},"generated_from_span":null},"id":2354,"kind":{"Assign":[{"kind":{"Local":33},"ty":{"Deduplicated":334}},{"Use":[{"Move":{"kind":{"Local":122},"ty":{"Deduplicated":334}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":114,"col":56},"end":{"line":114,"col":57}},"generated_from_span":null},"id":2355,"kind":{"StorageDead":122},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":114,"col":57},"end":{"line":114,"col":58}},"generated_from_span":null},"id":2356,"kind":{"StorageDead":126},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":114,"col":57},"end":{"line":114,"col":58}},"generated_from_span":null},"id":2357,"kind":{"StorageDead":124},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":115,"col":13},"end":{"line":115,"col":58}},"generated_from_span":null},"id":2358,"kind":{"StorageLive":127},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":115,"col":38},"end":{"line":115,"col":41}},"generated_from_span":null},"id":2359,"kind":{"StorageLive":128},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":115,"col":38},"end":{"line":115,"col":41}},"generated_from_span":null},"id":2360,"kind":{"StorageLive":129},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":115,"col":38},"end":{"line":115,"col":41}},"generated_from_span":null},"id":2361,"kind":{"Assign":[{"kind":{"Local":129},"ty":{"Deduplicated":1287}},{"Ref":{"place":{"kind":{"Local":34},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":115,"col":38},"end":{"line":115,"col":41}},"generated_from_span":null},"id":2362,"kind":{"Assign":[{"kind":{"Local":128},"ty":{"Deduplicated":1286}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":129},"ty":{"Deduplicated":1287}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":115,"col":43},"end":{"line":115,"col":57}},"generated_from_span":null},"id":2363,"kind":{"StorageLive":130},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":115,"col":43},"end":{"line":115,"col":57}},"generated_from_span":null},"id":2364,"kind":{"StorageLive":131},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":115,"col":43},"end":{"line":115,"col":57}},"generated_from_span":null},"id":2365,"kind":{"Assign":[{"kind":{"Local":137},"ty":{"Deduplicated":1452}},{"Use":[{"Move":{"kind":{"Local":140},"ty":{"Deduplicated":1457}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":115,"col":43},"end":{"line":115,"col":57}},"generated_from_span":null},"id":2366,"kind":{"Assign":[{"kind":{"Local":131},"ty":{"Deduplicated":1289}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":137},"ty":{"Deduplicated":1452}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":115,"col":43},"end":{"line":115,"col":57}},"generated_from_span":null},"id":2367,"kind":{"Assign":[{"kind":{"Local":130},"ty":{"Deduplicated":1288}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":131},"ty":{"Deduplicated":1289}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":115,"col":13},"end":{"line":115,"col":58}},"generated_from_span":null},"id":2368,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":4}},"generics":{"regions":[{"Body":76},{"Body":77}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":128},"ty":{"Deduplicated":1286}}},{"Move":{"kind":{"Local":130},"ty":{"Deduplicated":1288}}}],"dest":{"kind":{"Local":127},"ty":{"Deduplicated":334}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":115,"col":57},"end":{"line":115,"col":58}},"generated_from_span":null},"id":2369,"kind":{"StorageDead":130},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":115,"col":57},"end":{"line":115,"col":58}},"generated_from_span":null},"id":2370,"kind":{"StorageDead":128},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":115,"col":8},"end":{"line":115,"col":58}},"generated_from_span":null},"id":2371,"kind":{"Assign":[{"kind":{"Local":34},"ty":{"Deduplicated":334}},{"Use":[{"Move":{"kind":{"Local":127},"ty":{"Deduplicated":334}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":115,"col":57},"end":{"line":115,"col":58}},"generated_from_span":null},"id":2372,"kind":{"StorageDead":127},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":115,"col":58},"end":{"line":115,"col":59}},"generated_from_span":null},"id":2373,"kind":{"StorageDead":131},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":115,"col":58},"end":{"line":115,"col":59}},"generated_from_span":null},"id":2374,"kind":{"StorageDead":129},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":117,"col":12},"end":{"line":117,"col":19}},"generated_from_span":null},"id":2375,"kind":{"StorageLive":132},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":117,"col":36},"end":{"line":117,"col":39}},"generated_from_span":null},"id":2376,"kind":{"StorageLive":133},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":117,"col":36},"end":{"line":117,"col":39}},"generated_from_span":null},"id":2377,"kind":{"StorageLive":134},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":117,"col":36},"end":{"line":117,"col":39}},"generated_from_span":null},"id":2378,"kind":{"Assign":[{"kind":{"Local":134},"ty":{"Deduplicated":1293}},{"Ref":{"place":{"kind":{"Local":34},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":117,"col":36},"end":{"line":117,"col":39}},"generated_from_span":null},"id":2379,"kind":{"Assign":[{"kind":{"Local":133},"ty":{"Deduplicated":1290}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":134},"ty":{"Deduplicated":1293}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":117,"col":41},"end":{"line":117,"col":44}},"generated_from_span":null},"id":2380,"kind":{"StorageLive":135},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":117,"col":41},"end":{"line":117,"col":44}},"generated_from_span":null},"id":2381,"kind":{"StorageLive":136},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":117,"col":41},"end":{"line":117,"col":44}},"generated_from_span":null},"id":2382,"kind":{"Assign":[{"kind":{"Local":136},"ty":{"Deduplicated":1451}},{"Ref":{"place":{"kind":{"Local":33},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":117,"col":41},"end":{"line":117,"col":44}},"generated_from_span":null},"id":2383,"kind":{"Assign":[{"kind":{"Local":135},"ty":{"Deduplicated":1315}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":136},"ty":{"Deduplicated":1451}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":117,"col":22},"end":{"line":117,"col":45}},"generated_from_span":null},"id":2384,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":0}},"generics":{"regions":[{"Body":80},{"Body":81}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":133},"ty":{"Deduplicated":1290}}},{"Move":{"kind":{"Local":135},"ty":{"Deduplicated":1315}}}],"dest":{"kind":{"Local":132},"ty":{"Deduplicated":334}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":117,"col":44},"end":{"line":117,"col":45}},"generated_from_span":null},"id":2385,"kind":{"StorageDead":135},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":117,"col":44},"end":{"line":117,"col":45}},"generated_from_span":null},"id":2386,"kind":{"StorageDead":133},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":117,"col":45},"end":{"line":117,"col":46}},"generated_from_span":null},"id":2387,"kind":{"StorageDead":136},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":117,"col":45},"end":{"line":117,"col":46}},"generated_from_span":null},"id":2388,"kind":{"StorageDead":134},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":126,"col":8},"end":{"line":126,"col":15}},"generated_from_span":null},"id":2389,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":334}},{"Use":[{"Copy":{"kind":{"Local":132},"ty":{"Deduplicated":334}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":127,"col":4},"end":{"line":127,"col":5}},"generated_from_span":null},"id":2390,"kind":{"StorageDead":132},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":127,"col":4},"end":{"line":127,"col":5}},"generated_from_span":null},"id":2391,"kind":{"StorageDead":34},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":127,"col":4},"end":{"line":127,"col":5}},"generated_from_span":null},"id":2392,"kind":{"StorageDead":33},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":127,"col":4},"end":{"line":127,"col":5}},"generated_from_span":null},"id":2393,"kind":{"StorageDead":30},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":127,"col":4},"end":{"line":127,"col":5}},"generated_from_span":null},"id":2394,"kind":{"StorageDead":2},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":127,"col":5},"end":{"line":127,"col":5}},"generated_from_span":null},"id":2395,"kind":"Return","comments_before":[]}]},"comments":[[112,["AENEAS-COMPAT: a bare `x >> c` as the full RHS extracts ill-typed","at the pinned Aeneas (wrapping_shr with an unsubstituted i32 cast);","masking is a semantic no-op here (words[7] >> 20 < 2^44 < 2^52)."]]]}}},{"def_id":11,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["collect",0]},{"Impl":{"Trait":0}},{"Ident":["into_iter",0]}],"span":{"data":{"file_id":10,"beg":{"line":322,"col":4},"end":{"line":322,"col":27}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":"Hint","rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"I"},{"index":1,"name":"Clause0_Item"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":10,"beg":{"line":317,"col":14},"end":{"line":317,"col":30}},"generated_from_span":null},"origin":"WhereClauseOnImpl","trait_":{"regions":[],"skip_binder":{"id":0,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5334}],"output":{"Deduplicated":5334}},"src":{"TraitImpl":{"impl_ref":{"id":0,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[{"HashConsedValue":[5336,{"kind":{"Clause":{"Free":0}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":0,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}}}]}]}},"trait_ref":{"id":2,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335},{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":12,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Impl":{"Trait":1}},{"Ident":["next",0]}],"span":{"data":{"file_id":14,"beg":{"line":984,"col":4},"end":{"line":984,"col":35}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":"Hint","rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[{"index":0,"name":"A"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":14,"beg":{"line":980,"col":8},"end":{"line":980,"col":12}},"generated_from_span":null},"origin":"WhereClauseOnImpl","trait_":{"regions":[],"skip_binder":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"HashConsedValue":[5390,{"Ref":[{"Var":{"Free":0}},{"HashConsedValue":[5337,{"Adt":{"id":{"Adt":1},"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}}}]},"Mut"]}]}],"output":{"HashConsedValue":[5354,{"Adt":{"id":{"Adt":2},"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}}}]}},"src":{"TraitImpl":{"impl_ref":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[{"HashConsedValue":[5338,{"kind":{"Clause":{"Free":0}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}}}}]}]}},"trait_ref":{"id":0,"generics":{"regions":[],"types":[{"Deduplicated":5337},{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":13,"item_meta":{"name":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Trait":3}},{"Ident":["index",0]}],"span":{"data":{"file_id":0,"beg":{"line":39,"col":4},"end":{"line":41,"col":5}},"generated_from_span":null},"source_text":"fn index(&self, _index: usize) -> &u64 {\n &(self.0[_index])\n }","attr_info":{"attributes":[],"inline":null,"rename":null,"public":true},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5386},{"Deduplicated":455}],"output":{"HashConsedValue":[5391,{"Ref":[{"Var":{"Free":0}},{"Deduplicated":454},"Shared"]}]}},"src":{"TraitImpl":{"impl_ref":{"id":3,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":22,"generics":{"regions":[],"types":[{"Deduplicated":334},{"Deduplicated":455},{"Deduplicated":454}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":0,"beg":{"line":39,"col":4},"end":{"line":41,"col":5}},"generated_from_span":null},"bound_body_regions":5,"locals":{"arg_count":2,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":0,"beg":{"line":39,"col":38},"end":{"line":39,"col":42}},"generated_from_span":null},"ty":{"HashConsedValue":[3888,{"Ref":[{"Body":1},{"Deduplicated":454},"Shared"]}]}},{"index":1,"name":"self","span":{"data":{"file_id":0,"beg":{"line":39,"col":13},"end":{"line":39,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":1222}},{"index":2,"name":"_index","span":{"data":{"file_id":0,"beg":{"line":39,"col":20},"end":{"line":39,"col":26}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":3,"name":null,"span":{"data":{"file_id":0,"beg":{"line":40,"col":8},"end":{"line":40,"col":25}},"generated_from_span":null},"ty":{"HashConsedValue":[1266,{"Ref":[{"Body":4},{"Deduplicated":454},"Shared"]}]}},{"index":4,"name":null,"span":{"data":{"file_id":0,"beg":{"line":40,"col":17},"end":{"line":40,"col":23}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":5,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"HashConsedValue":[5019,{"Ref":["Erased",{"Deduplicated":456},"Shared"]}]}},{"index":6,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":4636}}]},"body":{"span":{"data":{"file_id":0,"beg":{"line":40,"col":8},"end":{"line":41,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":0,"beg":{"line":40,"col":8},"end":{"line":40,"col":25}},"generated_from_span":null},"id":2397,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":40,"col":17},"end":{"line":40,"col":23}},"generated_from_span":null},"id":2398,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":40,"col":17},"end":{"line":40,"col":23}},"generated_from_span":null},"id":2399,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":455}},{"Use":[{"Copy":{"kind":{"Local":2},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":40,"col":8},"end":{"line":40,"col":25}},"generated_from_span":null},"id":3988,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":40,"col":8},"end":{"line":40,"col":25}},"generated_from_span":null},"id":3989,"kind":{"Assign":[{"kind":{"Local":5},"ty":{"Deduplicated":5019}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":1222}},"Deref"]},"ty":{"Deduplicated":334}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":456}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":40,"col":8},"end":{"line":40,"col":25}},"generated_from_span":null},"id":3990,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":40,"col":8},"end":{"line":40,"col":25}},"generated_from_span":null},"id":3991,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":454}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","5"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":5},"ty":{"Deduplicated":5019}}},{"Copy":{"kind":{"Local":4},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":6},"ty":{"Deduplicated":4636}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":40,"col":8},"end":{"line":40,"col":25}},"generated_from_span":null},"id":2402,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":1266}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":6},"ty":{"Deduplicated":4636}},"Deref"]},"ty":{"Deduplicated":454}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":40,"col":8},"end":{"line":40,"col":25}},"generated_from_span":null},"id":2403,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":3888}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":3},"ty":{"Deduplicated":1266}},"Deref"]},"ty":{"Deduplicated":454}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":40,"col":24},"end":{"line":40,"col":25}},"generated_from_span":null},"id":2404,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":40,"col":24},"end":{"line":40,"col":25}},"generated_from_span":null},"id":2405,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":41,"col":5},"end":{"line":41,"col":5}},"generated_from_span":null},"id":2406,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":14,"item_meta":{"name":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Trait":4}},{"Ident":["index_mut",0]}],"span":{"data":{"file_id":0,"beg":{"line":45,"col":4},"end":{"line":47,"col":5}},"generated_from_span":null},"source_text":"fn index_mut(&mut self, _index: usize) -> &mut u64 {\n &mut (self.0[_index])\n }","attr_info":{"attributes":[],"inline":null,"rename":null,"public":true},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"HashConsedValue":[5392,{"Ref":[{"Var":{"Free":0}},{"Deduplicated":334},"Mut"]}]},{"Deduplicated":455}],"output":{"HashConsedValue":[5393,{"Ref":[{"Var":{"Free":0}},{"Deduplicated":454},"Mut"]}]}},"src":{"TraitImpl":{"impl_ref":{"id":4,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":23,"generics":{"regions":[],"types":[{"Deduplicated":334},{"Deduplicated":455},{"Deduplicated":454}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":0,"beg":{"line":45,"col":4},"end":{"line":47,"col":5}},"generated_from_span":null},"bound_body_regions":6,"locals":{"arg_count":2,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":0,"beg":{"line":45,"col":46},"end":{"line":45,"col":54}},"generated_from_span":null},"ty":{"HashConsedValue":[3904,{"Ref":[{"Body":1},{"Deduplicated":454},"Mut"]}]}},{"index":1,"name":"self","span":{"data":{"file_id":0,"beg":{"line":45,"col":17},"end":{"line":45,"col":26}},"generated_from_span":null},"ty":{"HashConsedValue":[3906,{"Ref":[{"Body":3},{"Deduplicated":334},"Mut"]}]}},{"index":2,"name":"_index","span":{"data":{"file_id":0,"beg":{"line":45,"col":28},"end":{"line":45,"col":34}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":3,"name":null,"span":{"data":{"file_id":0,"beg":{"line":46,"col":8},"end":{"line":46,"col":29}},"generated_from_span":null},"ty":{"HashConsedValue":[3907,{"Ref":[{"Body":4},{"Deduplicated":454},"Mut"]}]}},{"index":4,"name":null,"span":{"data":{"file_id":0,"beg":{"line":46,"col":8},"end":{"line":46,"col":29}},"generated_from_span":null},"ty":{"HashConsedValue":[3908,{"Ref":[{"Body":5},{"Deduplicated":454},"Mut"]}]}},{"index":5,"name":null,"span":{"data":{"file_id":0,"beg":{"line":46,"col":21},"end":{"line":46,"col":27}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":6,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"HashConsedValue":[5020,{"Ref":["Erased",{"Deduplicated":456},"Mut"]}]}},{"index":7,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5017}}]},"body":{"span":{"data":{"file_id":0,"beg":{"line":46,"col":8},"end":{"line":47,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":0,"beg":{"line":46,"col":8},"end":{"line":46,"col":29}},"generated_from_span":null},"id":2408,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":46,"col":8},"end":{"line":46,"col":29}},"generated_from_span":null},"id":2409,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":46,"col":21},"end":{"line":46,"col":27}},"generated_from_span":null},"id":2410,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":46,"col":21},"end":{"line":46,"col":27}},"generated_from_span":null},"id":2411,"kind":{"Assign":[{"kind":{"Local":5},"ty":{"Deduplicated":455}},{"Use":[{"Copy":{"kind":{"Local":2},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":46,"col":8},"end":{"line":46,"col":29}},"generated_from_span":null},"id":3992,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":46,"col":8},"end":{"line":46,"col":29}},"generated_from_span":null},"id":3993,"kind":{"Assign":[{"kind":{"Local":6},"ty":{"Deduplicated":5020}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":3906}},"Deref"]},"ty":{"Deduplicated":334}},{"Field":[{"Adt":[0,null]},0]}]},"ty":{"Deduplicated":456}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":46,"col":8},"end":{"line":46,"col":29}},"generated_from_span":null},"id":3994,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":46,"col":8},"end":{"line":46,"col":29}},"generated_from_span":null},"id":3995,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Mut","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":454}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","5"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":6},"ty":{"Deduplicated":5020}}},{"Copy":{"kind":{"Local":5},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":7},"ty":{"Deduplicated":5017}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":46,"col":8},"end":{"line":46,"col":29}},"generated_from_span":null},"id":2414,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":3908}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":7},"ty":{"Deduplicated":5017}},"Deref"]},"ty":{"Deduplicated":454}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":46,"col":8},"end":{"line":46,"col":29}},"generated_from_span":null},"id":2415,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":3907}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":4},"ty":{"Deduplicated":3908}},"Deref"]},"ty":{"Deduplicated":454}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":46,"col":28},"end":{"line":46,"col":29}},"generated_from_span":null},"id":2416,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":46,"col":28},"end":{"line":46,"col":29}},"generated_from_span":null},"id":2417,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":46,"col":8},"end":{"line":46,"col":29}},"generated_from_span":null},"id":2418,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":3904}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":3},"ty":{"Deduplicated":3907}},"Deref"]},"ty":{"Deduplicated":454}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":47,"col":4},"end":{"line":47,"col":5}},"generated_from_span":null},"id":2419,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":47,"col":5},"end":{"line":47,"col":5}},"generated_from_span":null},"id":2420,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":15,"item_meta":{"name":[{"Ident":["subtle",0]},{"Impl":{"Trait":5}},{"Ident":["from",0]}],"span":{"data":{"file_id":15,"beg":{"line":238,"col":4},"end":{"line":238,"col":32}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":"Hint","rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":1016}],"output":{"Deduplicated":1015}},"src":{"TraitImpl":{"impl_ref":{"id":5,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":24,"generics":{"regions":[],"types":[{"Deduplicated":1015},{"Deduplicated":1016}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":16,"item_meta":{"name":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["conditional_add_l",0]}],"span":{"data":{"file_id":0,"beg":{"line":204,"col":4},"end":{"line":215,"col":5}},"generated_from_span":null},"source_text":"pub(crate) fn conditional_add_l(&mut self, condition: Choice) -> u64 {\n let mut carry: u64 = 0;\n let mask = (1u64 << 52) - 1;\n\n for i in 0..5 {\n let addend = u64::conditional_select(&0, &constants::L[i], condition);\n carry = (carry >> 52) + self[i] + addend;\n self[i] = carry & mask;\n }\n\n carry\n }","attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5392},{"Deduplicated":1015}],"output":{"Deduplicated":454}},"src":"TopLevel","is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":0,"beg":{"line":204,"col":4},"end":{"line":215,"col":5}},"generated_from_span":null},"bound_body_regions":36,"locals":{"arg_count":2,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":0,"beg":{"line":204,"col":69},"end":{"line":204,"col":72}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":1,"name":"self","span":{"data":{"file_id":0,"beg":{"line":204,"col":36},"end":{"line":204,"col":45}},"generated_from_span":null},"ty":{"HashConsedValue":[3923,{"Ref":[{"Body":1},{"Deduplicated":334},"Mut"]}]}},{"index":2,"name":"condition","span":{"data":{"file_id":0,"beg":{"line":204,"col":47},"end":{"line":204,"col":56}},"generated_from_span":null},"ty":{"Deduplicated":1015}},{"index":3,"name":"carry","span":{"data":{"file_id":0,"beg":{"line":205,"col":12},"end":{"line":205,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":4,"name":"mask","span":{"data":{"file_id":0,"beg":{"line":206,"col":12},"end":{"line":206,"col":16}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":5,"name":null,"span":{"data":{"file_id":0,"beg":{"line":206,"col":19},"end":{"line":206,"col":31}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":6,"name":null,"span":{"data":{"file_id":0,"beg":{"line":206,"col":19},"end":{"line":206,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":7,"name":null,"span":{"data":{"file_id":0,"beg":{"line":208,"col":17},"end":{"line":208,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":569}},{"index":8,"name":null,"span":{"data":{"file_id":0,"beg":{"line":208,"col":17},"end":{"line":208,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":569}},{"index":9,"name":"iter","span":{"data":{"file_id":0,"beg":{"line":208,"col":17},"end":{"line":208,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":569}},{"index":10,"name":null,"span":{"data":{"file_id":0,"beg":{"line":208,"col":17},"end":{"line":208,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":596}},{"index":11,"name":null,"span":{"data":{"file_id":0,"beg":{"line":208,"col":17},"end":{"line":208,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":598}},{"index":12,"name":null,"span":{"data":{"file_id":0,"beg":{"line":208,"col":17},"end":{"line":208,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":599}},{"index":13,"name":"i","span":{"data":{"file_id":0,"beg":{"line":208,"col":12},"end":{"line":208,"col":13}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":14,"name":"addend","span":{"data":{"file_id":0,"beg":{"line":209,"col":16},"end":{"line":209,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":15,"name":null,"span":{"data":{"file_id":0,"beg":{"line":209,"col":49},"end":{"line":209,"col":51}},"generated_from_span":null},"ty":{"Deduplicated":604}},{"index":16,"name":null,"span":{"data":{"file_id":0,"beg":{"line":209,"col":49},"end":{"line":209,"col":51}},"generated_from_span":null},"ty":{"Deduplicated":605}},{"index":17,"name":null,"span":{"data":{"file_id":0,"beg":{"line":209,"col":53},"end":{"line":209,"col":69}},"generated_from_span":null},"ty":{"HashConsedValue":[3924,{"Ref":[{"Body":8},{"Deduplicated":454},"Shared"]}]}},{"index":18,"name":null,"span":{"data":{"file_id":0,"beg":{"line":209,"col":53},"end":{"line":209,"col":69}},"generated_from_span":null},"ty":{"Deduplicated":607}},{"index":19,"name":null,"span":{"data":{"file_id":0,"beg":{"line":209,"col":66},"end":{"line":209,"col":69}},"generated_from_span":null},"ty":{"HashConsedValue":[3925,{"Ref":[{"Body":10},{"Deduplicated":454},"Shared"]}]}},{"index":20,"name":null,"span":{"data":{"file_id":0,"beg":{"line":209,"col":54},"end":{"line":209,"col":66}},"generated_from_span":null},"ty":{"Deduplicated":1247}},{"index":21,"name":null,"span":{"data":{"file_id":0,"beg":{"line":209,"col":67},"end":{"line":209,"col":68}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":22,"name":null,"span":{"data":{"file_id":0,"beg":{"line":209,"col":71},"end":{"line":209,"col":80}},"generated_from_span":null},"ty":{"Deduplicated":1015}},{"index":23,"name":null,"span":{"data":{"file_id":0,"beg":{"line":210,"col":20},"end":{"line":210,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":24,"name":null,"span":{"data":{"file_id":0,"beg":{"line":210,"col":20},"end":{"line":210,"col":33}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":25,"name":null,"span":{"data":{"file_id":0,"beg":{"line":210,"col":21},"end":{"line":210,"col":26}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":26,"name":null,"span":{"data":{"file_id":0,"beg":{"line":210,"col":36},"end":{"line":210,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":27,"name":null,"span":{"data":{"file_id":0,"beg":{"line":210,"col":40},"end":{"line":210,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1269}},{"index":28,"name":null,"span":{"data":{"file_id":0,"beg":{"line":210,"col":36},"end":{"line":210,"col":40}},"generated_from_span":null},"ty":{"Deduplicated":1232}},{"index":29,"name":null,"span":{"data":{"file_id":0,"beg":{"line":210,"col":41},"end":{"line":210,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":30,"name":null,"span":{"data":{"file_id":0,"beg":{"line":210,"col":20},"end":{"line":210,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":31,"name":null,"span":{"data":{"file_id":0,"beg":{"line":210,"col":46},"end":{"line":210,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":32,"name":null,"span":{"data":{"file_id":0,"beg":{"line":210,"col":20},"end":{"line":210,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":33,"name":null,"span":{"data":{"file_id":0,"beg":{"line":211,"col":22},"end":{"line":211,"col":27}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":34,"name":null,"span":{"data":{"file_id":0,"beg":{"line":211,"col":30},"end":{"line":211,"col":34}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":35,"name":null,"span":{"data":{"file_id":0,"beg":{"line":211,"col":16},"end":{"line":211,"col":19}},"generated_from_span":null},"ty":{"HashConsedValue":[3926,{"Ref":[{"Body":16},{"Deduplicated":454},"Mut"]}]}},{"index":36,"name":null,"span":{"data":{"file_id":0,"beg":{"line":211,"col":12},"end":{"line":211,"col":16}},"generated_from_span":null},"ty":{"HashConsedValue":[3927,{"Ref":[{"Body":17},{"Deduplicated":334},"Mut"]}]}},{"index":37,"name":null,"span":{"data":{"file_id":0,"beg":{"line":211,"col":17},"end":{"line":211,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":38,"name":null,"span":{"data":{"file_id":0,"beg":{"line":209,"col":54},"end":{"line":209,"col":66}},"generated_from_span":null},"ty":{"Deduplicated":618}},{"index":39,"name":null,"span":{"data":{"file_id":0,"beg":{"line":209,"col":49},"end":{"line":209,"col":51}},"generated_from_span":null},"ty":{"Deduplicated":1272}},{"index":40,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"HashConsedValue":[3930,{"Ref":[{"Body":22},{"Deduplicated":454},"Shared"]}]}},{"index":41,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":1302}},{"index":42,"name":null,"span":{"data":{"file_id":0,"beg":{"line":209,"col":49},"end":{"line":209,"col":51}},"generated_from_span":null},"ty":{"HashConsedValue":[3978,{"Ref":[{"Body":34},{"Deduplicated":454},"Shared"]}]}},{"index":43,"name":null,"span":{"data":{"file_id":0,"beg":{"line":209,"col":50},"end":{"line":209,"col":51}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":44,"name":null,"span":{"data":{"file_id":0,"beg":{"line":209,"col":54},"end":{"line":209,"col":66}},"generated_from_span":null},"ty":{"Deduplicated":1287}},{"index":45,"name":null,"span":{"data":{"file_id":0,"beg":{"line":209,"col":54},"end":{"line":209,"col":66}},"generated_from_span":null},"ty":{"Deduplicated":334}}]},"body":{"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":215,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":0,"beg":{"line":205,"col":12},"end":{"line":205,"col":21}},"generated_from_span":null},"id":2423,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":205,"col":12},"end":{"line":205,"col":21}},"generated_from_span":null},"id":2428,"kind":{"StorageLive":30},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":205,"col":12},"end":{"line":205,"col":21}},"generated_from_span":null},"id":2429,"kind":{"StorageLive":32},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":205,"col":12},"end":{"line":205,"col":21}},"generated_from_span":null},"id":2430,"kind":{"StorageLive":38},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":205,"col":12},"end":{"line":205,"col":21}},"generated_from_span":null},"id":2431,"kind":{"StorageLive":39},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":205,"col":12},"end":{"line":205,"col":21}},"generated_from_span":null},"id":2432,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":205,"col":29},"end":{"line":205,"col":30}},"generated_from_span":null},"id":2433,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":454}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":206,"col":12},"end":{"line":206,"col":16}},"generated_from_span":null},"id":2434,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":206,"col":19},"end":{"line":206,"col":31}},"generated_from_span":null},"id":2435,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":206,"col":19},"end":{"line":206,"col":31}},"generated_from_span":null},"id":2439,"kind":{"Assign":[{"kind":{"Local":5},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Shl":"Panic"},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","1"]}}},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","52"]}}},"ty":{"Deduplicated":622}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":206,"col":19},"end":{"line":206,"col":35}},"generated_from_span":null},"id":2440,"kind":{"Assign":[{"kind":{"Local":6},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Sub":"Panic"},{"Copy":{"kind":{"Local":5},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","1"]}}},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":206,"col":19},"end":{"line":206,"col":35}},"generated_from_span":null},"id":2442,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":454}},{"Use":[{"Move":{"kind":{"Local":6},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":206,"col":34},"end":{"line":206,"col":35}},"generated_from_span":null},"id":2443,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":208,"col":17},"end":{"line":208,"col":21}},"generated_from_span":null},"id":2445,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":208,"col":17},"end":{"line":208,"col":21}},"generated_from_span":null},"id":2446,"kind":{"StorageLive":8},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":208,"col":17},"end":{"line":208,"col":21}},"generated_from_span":null},"id":2447,"kind":{"Assign":[{"kind":{"Local":8},"ty":{"Deduplicated":569}},{"Aggregate":[{"Adt":[{"id":{"Adt":1},"generics":{"regions":[],"types":[{"Deduplicated":455}],"const_generics":[],"trait_refs":[]}},null,null]},[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":455}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","5"]}}},"ty":{"Deduplicated":455}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":208,"col":17},"end":{"line":208,"col":21}},"generated_from_span":null},"id":2448,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":11}},"generics":{"regions":[],"types":[{"Deduplicated":569},{"Deduplicated":455}],"const_generics":[],"trait_refs":[{"Deduplicated":5158}]}}},"args":[{"Move":{"kind":{"Local":8},"ty":{"Deduplicated":569}}}],"dest":{"kind":{"Local":7},"ty":{"Deduplicated":569}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":208,"col":20},"end":{"line":208,"col":21}},"generated_from_span":null},"id":2449,"kind":{"StorageDead":8},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":208,"col":17},"end":{"line":208,"col":21}},"generated_from_span":null},"id":2450,"kind":{"StorageLive":9},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":208,"col":17},"end":{"line":208,"col":21}},"generated_from_span":null},"id":2451,"kind":{"Assign":[{"kind":{"Local":9},"ty":{"Deduplicated":569}},{"Use":[{"Move":{"kind":{"Local":7},"ty":{"Deduplicated":569}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":212,"col":9}},"generated_from_span":null},"id":2563,"kind":{"Loop":{"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":212,"col":9}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":0,"beg":{"line":208,"col":17},"end":{"line":208,"col":21}},"generated_from_span":null},"id":2453,"kind":{"StorageLive":10},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":208,"col":17},"end":{"line":208,"col":21}},"generated_from_span":null},"id":2454,"kind":{"StorageLive":11},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":208,"col":17},"end":{"line":208,"col":21}},"generated_from_span":null},"id":2455,"kind":{"StorageLive":12},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":208,"col":17},"end":{"line":208,"col":21}},"generated_from_span":null},"id":2456,"kind":{"Assign":[{"kind":{"Local":12},"ty":{"Deduplicated":599}},{"Ref":{"place":{"kind":{"Local":9},"ty":{"Deduplicated":569}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":208,"col":17},"end":{"line":208,"col":21}},"generated_from_span":null},"id":2457,"kind":{"Assign":[{"kind":{"Local":11},"ty":{"Deduplicated":598}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":12},"ty":{"Deduplicated":599}},"Deref"]},"ty":{"Deduplicated":569}},"kind":"TwoPhaseMut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":208,"col":17},"end":{"line":208,"col":21}},"generated_from_span":null},"id":2458,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":12}},"generics":{"regions":[{"Body":21}],"types":[{"Deduplicated":455}],"const_generics":[],"trait_refs":[{"Deduplicated":960}]}}},"args":[{"Move":{"kind":{"Local":11},"ty":{"Deduplicated":598}}}],"dest":{"kind":{"Local":10},"ty":{"Deduplicated":596}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":208,"col":20},"end":{"line":208,"col":21}},"generated_from_span":null},"id":2459,"kind":{"StorageDead":11},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":208,"col":17},"end":{"line":208,"col":21}},"generated_from_span":null},"id":2464,"kind":{"Switch":{"Match":[{"kind":{"Local":10},"ty":{"Deduplicated":596}},[[[0],{"span":{"data":{"file_id":0,"beg":{"line":208,"col":17},"end":{"line":208,"col":21}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":0,"beg":{"line":208,"col":17},"end":{"line":208,"col":21}},"generated_from_span":null},"id":2461,"kind":{"Break":0},"comments_before":[]}]}],[[1],{"span":{"data":{"file_id":0,"beg":{"line":208,"col":17},"end":{"line":208,"col":21}},"generated_from_span":null},"statements":[]}]],null]}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"id":2465,"kind":{"StorageLive":41},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":54},"end":{"line":209,"col":66}},"generated_from_span":null},"id":2466,"kind":{"StorageLive":44},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":54},"end":{"line":209,"col":66}},"generated_from_span":null},"id":2467,"kind":{"StorageLive":45},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":54},"end":{"line":209,"col":66}},"generated_from_span":null},"id":2468,"kind":{"Assign":[{"kind":{"Local":45},"ty":{"Deduplicated":334}},{"Use":[{"Copy":{"kind":{"Global":{"id":17,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":334}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":54},"end":{"line":209,"col":66}},"generated_from_span":null},"id":2469,"kind":{"Assign":[{"kind":{"Local":44},"ty":{"Deduplicated":1287}},{"Ref":{"place":{"kind":{"Local":45},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":54},"end":{"line":209,"col":66}},"generated_from_span":null},"id":2470,"kind":{"Assign":[{"kind":{"Local":41},"ty":{"Deduplicated":1302}},{"Use":[{"Move":{"kind":{"Local":44},"ty":{"Deduplicated":1287}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"id":2471,"kind":{"StorageLive":40},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":49},"end":{"line":209,"col":51}},"generated_from_span":null},"id":2472,"kind":{"StorageLive":42},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":50},"end":{"line":209,"col":51}},"generated_from_span":null},"id":2473,"kind":{"StorageLive":43},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":50},"end":{"line":209,"col":51}},"generated_from_span":null},"id":2474,"kind":{"Assign":[{"kind":{"Local":43},"ty":{"Deduplicated":454}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":49},"end":{"line":209,"col":51}},"generated_from_span":null},"id":2475,"kind":{"Assign":[{"kind":{"Local":42},"ty":{"Deduplicated":3978}},{"Ref":{"place":{"kind":{"Local":43},"ty":{"Deduplicated":454}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":49},"end":{"line":209,"col":51}},"generated_from_span":null},"id":2476,"kind":{"Assign":[{"kind":{"Local":40},"ty":{"Deduplicated":3930}},{"Use":[{"Move":{"kind":{"Local":42},"ty":{"Deduplicated":3978}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":208,"col":12},"end":{"line":208,"col":13}},"generated_from_span":null},"id":2477,"kind":{"StorageLive":13},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":208,"col":12},"end":{"line":208,"col":13}},"generated_from_span":null},"id":2478,"kind":{"Assign":[{"kind":{"Local":13},"ty":{"Deduplicated":455}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":10},"ty":{"Deduplicated":596}},{"Field":[{"Adt":[2,1]},0]}]},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":16},"end":{"line":209,"col":22}},"generated_from_span":null},"id":2479,"kind":{"StorageLive":14},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":49},"end":{"line":209,"col":51}},"generated_from_span":null},"id":2480,"kind":{"StorageLive":15},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":49},"end":{"line":209,"col":51}},"generated_from_span":null},"id":2481,"kind":{"StorageLive":16},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":49},"end":{"line":209,"col":51}},"generated_from_span":null},"id":2482,"kind":{"Assign":[{"kind":{"Local":39},"ty":{"Deduplicated":1272}},{"Use":[{"Move":{"kind":{"Local":40},"ty":{"Deduplicated":3930}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":49},"end":{"line":209,"col":51}},"generated_from_span":null},"id":2483,"kind":{"Assign":[{"kind":{"Local":16},"ty":{"Deduplicated":605}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":39},"ty":{"Deduplicated":1272}},"Deref"]},"ty":{"Deduplicated":454}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":49},"end":{"line":209,"col":51}},"generated_from_span":null},"id":2484,"kind":{"Assign":[{"kind":{"Local":15},"ty":{"Deduplicated":604}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":16},"ty":{"Deduplicated":605}},"Deref"]},"ty":{"Deduplicated":454}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":53},"end":{"line":209,"col":69}},"generated_from_span":null},"id":2485,"kind":{"StorageLive":17},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":53},"end":{"line":209,"col":69}},"generated_from_span":null},"id":2486,"kind":{"StorageLive":18},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":66},"end":{"line":209,"col":69}},"generated_from_span":null},"id":2487,"kind":{"StorageLive":19},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":54},"end":{"line":209,"col":66}},"generated_from_span":null},"id":2488,"kind":{"StorageLive":20},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":54},"end":{"line":209,"col":66}},"generated_from_span":null},"id":2489,"kind":{"Assign":[{"kind":{"Local":38},"ty":{"Deduplicated":618}},{"Use":[{"Move":{"kind":{"Local":41},"ty":{"Deduplicated":1302}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":54},"end":{"line":209,"col":66}},"generated_from_span":null},"id":2490,"kind":{"Assign":[{"kind":{"Local":20},"ty":{"Deduplicated":1247}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":38},"ty":{"Deduplicated":618}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":67},"end":{"line":209,"col":68}},"generated_from_span":null},"id":2491,"kind":{"StorageLive":21},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":67},"end":{"line":209,"col":68}},"generated_from_span":null},"id":2492,"kind":{"Assign":[{"kind":{"Local":21},"ty":{"Deduplicated":455}},{"Use":[{"Copy":{"kind":{"Local":13},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":66},"end":{"line":209,"col":69}},"generated_from_span":null},"id":2493,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":25}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":20},"ty":{"Deduplicated":1247}}},{"Move":{"kind":{"Local":21},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":19},"ty":{"Deduplicated":3925}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":68},"end":{"line":209,"col":69}},"generated_from_span":null},"id":2494,"kind":{"StorageDead":21},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":68},"end":{"line":209,"col":69}},"generated_from_span":null},"id":2495,"kind":{"StorageDead":20},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":53},"end":{"line":209,"col":69}},"generated_from_span":null},"id":2496,"kind":{"Assign":[{"kind":{"Local":18},"ty":{"Deduplicated":607}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":19},"ty":{"Deduplicated":3925}},"Deref"]},"ty":{"Deduplicated":454}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":53},"end":{"line":209,"col":69}},"generated_from_span":null},"id":2497,"kind":{"Assign":[{"kind":{"Local":17},"ty":{"Deduplicated":3924}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":18},"ty":{"Deduplicated":607}},"Deref"]},"ty":{"Deduplicated":454}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":71},"end":{"line":209,"col":80}},"generated_from_span":null},"id":2498,"kind":{"StorageLive":22},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":71},"end":{"line":209,"col":80}},"generated_from_span":null},"id":2499,"kind":{"Assign":[{"kind":{"Local":22},"ty":{"Deduplicated":1015}},{"Use":[{"Copy":{"kind":{"Local":2},"ty":{"Deduplicated":1015}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":25},"end":{"line":209,"col":81}},"generated_from_span":null},"id":2500,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":126}},"generics":{"regions":[{"Body":28},{"Body":29}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":15},"ty":{"Deduplicated":604}}},{"Move":{"kind":{"Local":17},"ty":{"Deduplicated":3924}}},{"Move":{"kind":{"Local":22},"ty":{"Deduplicated":1015}}}],"dest":{"kind":{"Local":14},"ty":{"Deduplicated":454}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":80},"end":{"line":209,"col":81}},"generated_from_span":null},"id":2501,"kind":{"StorageDead":22},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":80},"end":{"line":209,"col":81}},"generated_from_span":null},"id":2502,"kind":{"StorageDead":17},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":80},"end":{"line":209,"col":81}},"generated_from_span":null},"id":2503,"kind":{"StorageDead":15},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":81},"end":{"line":209,"col":82}},"generated_from_span":null},"id":2504,"kind":{"StorageDead":19},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":81},"end":{"line":209,"col":82}},"generated_from_span":null},"id":2505,"kind":{"StorageDead":18},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":209,"col":81},"end":{"line":209,"col":82}},"generated_from_span":null},"id":2506,"kind":{"StorageDead":16},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":210,"col":20},"end":{"line":210,"col":43}},"generated_from_span":null},"id":2507,"kind":{"StorageLive":23},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":210,"col":20},"end":{"line":210,"col":33}},"generated_from_span":null},"id":2508,"kind":{"StorageLive":24},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":210,"col":21},"end":{"line":210,"col":26}},"generated_from_span":null},"id":2509,"kind":{"StorageLive":25},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":210,"col":21},"end":{"line":210,"col":26}},"generated_from_span":null},"id":2510,"kind":{"Assign":[{"kind":{"Local":25},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":3},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":210,"col":20},"end":{"line":210,"col":33}},"generated_from_span":null},"id":2514,"kind":{"Assign":[{"kind":{"Local":24},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Shr":"Panic"},{"Move":{"kind":{"Local":25},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","52"]}}},"ty":{"Deduplicated":622}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":210,"col":32},"end":{"line":210,"col":33}},"generated_from_span":null},"id":2515,"kind":{"StorageDead":25},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":210,"col":36},"end":{"line":210,"col":43}},"generated_from_span":null},"id":2516,"kind":{"StorageLive":26},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":210,"col":40},"end":{"line":210,"col":43}},"generated_from_span":null},"id":2517,"kind":{"StorageLive":27},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":210,"col":36},"end":{"line":210,"col":40}},"generated_from_span":null},"id":2518,"kind":{"StorageLive":28},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":210,"col":36},"end":{"line":210,"col":40}},"generated_from_span":null},"id":2519,"kind":{"Assign":[{"kind":{"Local":28},"ty":{"Deduplicated":1232}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":3923}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":210,"col":41},"end":{"line":210,"col":42}},"generated_from_span":null},"id":2520,"kind":{"StorageLive":29},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":210,"col":41},"end":{"line":210,"col":42}},"generated_from_span":null},"id":2521,"kind":{"Assign":[{"kind":{"Local":29},"ty":{"Deduplicated":455}},{"Use":[{"Copy":{"kind":{"Local":13},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":210,"col":40},"end":{"line":210,"col":43}},"generated_from_span":null},"id":2522,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":31}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":28},"ty":{"Deduplicated":1232}}},{"Move":{"kind":{"Local":29},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":27},"ty":{"Deduplicated":1269}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":210,"col":36},"end":{"line":210,"col":43}},"generated_from_span":null},"id":2523,"kind":{"Assign":[{"kind":{"Local":26},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":27},"ty":{"Deduplicated":1269}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":210,"col":42},"end":{"line":210,"col":43}},"generated_from_span":null},"id":2524,"kind":{"StorageDead":29},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":210,"col":42},"end":{"line":210,"col":43}},"generated_from_span":null},"id":2525,"kind":{"StorageDead":28},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":210,"col":20},"end":{"line":210,"col":43}},"generated_from_span":null},"id":2526,"kind":{"Assign":[{"kind":{"Local":30},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":24},"ty":{"Deduplicated":454}}},{"Copy":{"kind":{"Local":26},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":210,"col":20},"end":{"line":210,"col":43}},"generated_from_span":null},"id":2528,"kind":{"Assign":[{"kind":{"Local":23},"ty":{"Deduplicated":454}},{"Use":[{"Move":{"kind":{"Local":30},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":210,"col":42},"end":{"line":210,"col":43}},"generated_from_span":null},"id":2529,"kind":{"StorageDead":26},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":210,"col":42},"end":{"line":210,"col":43}},"generated_from_span":null},"id":2530,"kind":{"StorageDead":24},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":210,"col":46},"end":{"line":210,"col":52}},"generated_from_span":null},"id":2531,"kind":{"StorageLive":31},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":210,"col":46},"end":{"line":210,"col":52}},"generated_from_span":null},"id":2532,"kind":{"Assign":[{"kind":{"Local":31},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":14},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":210,"col":20},"end":{"line":210,"col":52}},"generated_from_span":null},"id":2533,"kind":{"Assign":[{"kind":{"Local":32},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":23},"ty":{"Deduplicated":454}}},{"Copy":{"kind":{"Local":31},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":210,"col":12},"end":{"line":210,"col":52}},"generated_from_span":null},"id":2535,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":454}},{"Use":[{"Move":{"kind":{"Local":32},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":210,"col":51},"end":{"line":210,"col":52}},"generated_from_span":null},"id":2536,"kind":{"StorageDead":31},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":210,"col":51},"end":{"line":210,"col":52}},"generated_from_span":null},"id":2537,"kind":{"StorageDead":23},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":210,"col":52},"end":{"line":210,"col":53}},"generated_from_span":null},"id":2538,"kind":{"StorageDead":27},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":211,"col":22},"end":{"line":211,"col":27}},"generated_from_span":null},"id":2539,"kind":{"StorageLive":33},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":211,"col":22},"end":{"line":211,"col":27}},"generated_from_span":null},"id":2540,"kind":{"Assign":[{"kind":{"Local":33},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":3},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":211,"col":30},"end":{"line":211,"col":34}},"generated_from_span":null},"id":2541,"kind":{"StorageLive":34},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":211,"col":30},"end":{"line":211,"col":34}},"generated_from_span":null},"id":2542,"kind":{"Assign":[{"kind":{"Local":34},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":4},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":211,"col":16},"end":{"line":211,"col":19}},"generated_from_span":null},"id":2543,"kind":{"StorageLive":35},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":211,"col":12},"end":{"line":211,"col":16}},"generated_from_span":null},"id":2544,"kind":{"StorageLive":36},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":211,"col":12},"end":{"line":211,"col":16}},"generated_from_span":null},"id":2545,"kind":{"Assign":[{"kind":{"Local":36},"ty":{"Deduplicated":3927}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":3923}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":211,"col":17},"end":{"line":211,"col":18}},"generated_from_span":null},"id":2546,"kind":{"StorageLive":37},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":211,"col":17},"end":{"line":211,"col":18}},"generated_from_span":null},"id":2547,"kind":{"Assign":[{"kind":{"Local":37},"ty":{"Deduplicated":455}},{"Use":[{"Copy":{"kind":{"Local":13},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":211,"col":16},"end":{"line":211,"col":19}},"generated_from_span":null},"id":2548,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":14}},"generics":{"regions":[{"Body":33}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":36},"ty":{"Deduplicated":3927}}},{"Move":{"kind":{"Local":37},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":35},"ty":{"Deduplicated":3926}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":211,"col":18},"end":{"line":211,"col":19}},"generated_from_span":null},"id":2549,"kind":{"StorageDead":37},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":211,"col":18},"end":{"line":211,"col":19}},"generated_from_span":null},"id":2550,"kind":{"StorageDead":36},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":211,"col":12},"end":{"line":211,"col":34}},"generated_from_span":null},"id":2551,"kind":{"Assign":[{"kind":{"Projection":[{"kind":{"Local":35},"ty":{"Deduplicated":3926}},"Deref"]},"ty":{"Deduplicated":454}},{"BinaryOp":["BitAnd",{"Move":{"kind":{"Local":33},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":34},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":211,"col":33},"end":{"line":211,"col":34}},"generated_from_span":null},"id":2552,"kind":{"StorageDead":34},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":211,"col":33},"end":{"line":211,"col":34}},"generated_from_span":null},"id":2553,"kind":{"StorageDead":33},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":211,"col":34},"end":{"line":211,"col":35}},"generated_from_span":null},"id":2554,"kind":{"StorageDead":35},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":212,"col":8},"end":{"line":212,"col":9}},"generated_from_span":null},"id":2556,"kind":{"StorageDead":14},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":212,"col":8},"end":{"line":212,"col":9}},"generated_from_span":null},"id":2557,"kind":{"StorageDead":13},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":212,"col":8},"end":{"line":212,"col":9}},"generated_from_span":null},"id":2558,"kind":{"StorageDead":12},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":212,"col":8},"end":{"line":212,"col":9}},"generated_from_span":null},"id":2559,"kind":{"StorageDead":10},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":208,"col":8},"end":{"line":212,"col":9}},"generated_from_span":null},"id":2562,"kind":{"Continue":0},"comments_before":[]}]}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":212,"col":8},"end":{"line":212,"col":9}},"generated_from_span":null},"id":2565,"kind":{"StorageDead":12},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":212,"col":8},"end":{"line":212,"col":9}},"generated_from_span":null},"id":2566,"kind":{"StorageDead":10},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":212,"col":8},"end":{"line":212,"col":9}},"generated_from_span":null},"id":2568,"kind":{"StorageDead":9},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":212,"col":8},"end":{"line":212,"col":9}},"generated_from_span":null},"id":2569,"kind":{"StorageDead":7},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":214,"col":8},"end":{"line":214,"col":13}},"generated_from_span":null},"id":2571,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":3},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":215,"col":4},"end":{"line":215,"col":5}},"generated_from_span":null},"id":2572,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":215,"col":4},"end":{"line":215,"col":5}},"generated_from_span":null},"id":2573,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":215,"col":5},"end":{"line":215,"col":5}},"generated_from_span":null},"id":2574,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":17,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["num",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":454},"kind":"InherentImplBlock"}}},{"Ident":["wrapping_sub",0]}],"span":{"data":{"file_id":16,"beg":{"line":2620,"col":8},"end":{"line":2620,"col":58}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Wrapping (modular) subtraction. Computes `self - rhs`,"},{"DocComment":" wrapping around at the boundary of the type."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":"assert_eq!(100u64.wrapping_sub(100), 0);"},{"DocComment":"assert_eq!(100u64.wrapping_sub(u64::MAX), 101);"},{"DocComment":" ```"}],"inline":"Always","rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":454},{"Deduplicated":454}],"output":{"Deduplicated":454}},"src":"TopLevel","is_global_initializer":null,"body":"Opaque"},{"def_id":18,"item_meta":{"name":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["mul_internal",0]}],"span":{"data":{"file_id":0,"beg":{"line":233,"col":4},"end":{"line":247,"col":5}},"generated_from_span":null},"source_text":"pub (crate) fn mul_internal(a: &Scalar52, b: &Scalar52) -> [u128; 9] {\n let mut z = [0u128; 9];\n\n z[0] = m(a[0], b[0]);\n z[1] = m(a[0], b[1]) + m(a[1], b[0]);\n z[2] = m(a[0], b[2]) + m(a[1], b[1]) + m(a[2], b[0]);\n z[3] = m(a[0], b[3]) + m(a[1], b[2]) + m(a[2], b[1]) + m(a[3], b[0]);\n z[4] = m(a[0], b[4]) + m(a[1], b[3]) + m(a[2], b[2]) + m(a[3], b[1]) + m(a[4], b[0]);\n z[5] = m(a[1], b[4]) + m(a[2], b[3]) + m(a[3], b[2]) + m(a[4], b[1]);\n z[6] = m(a[2], b[4]) + m(a[3], b[3]) + m(a[4], b[2]);\n z[7] = m(a[3], b[4]) + m(a[4], b[3]);\n z[8] = m(a[4], b[4]);\n\n z\n }","attr_info":{"attributes":[{"DocComment":" Compute `a * b`"},{"Unknown":{"path":"rustfmt::skip","args":null}}],"inline":"Always","rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"},{"index":1,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5386},{"Deduplicated":5387}],"output":{"Deduplicated":1221}},"src":"TopLevel","is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":0,"beg":{"line":233,"col":4},"end":{"line":247,"col":5}},"generated_from_span":null},"bound_body_regions":204,"locals":{"arg_count":2,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":0,"beg":{"line":233,"col":63},"end":{"line":233,"col":72}},"generated_from_span":null},"ty":{"Deduplicated":1221}},{"index":1,"name":"a","span":{"data":{"file_id":0,"beg":{"line":233,"col":32},"end":{"line":233,"col":33}},"generated_from_span":null},"ty":{"Deduplicated":463}},{"index":2,"name":"b","span":{"data":{"file_id":0,"beg":{"line":233,"col":46},"end":{"line":233,"col":47}},"generated_from_span":null},"ty":{"Deduplicated":464}},{"index":3,"name":"z","span":{"data":{"file_id":0,"beg":{"line":234,"col":12},"end":{"line":234,"col":17}},"generated_from_span":null},"ty":{"Deduplicated":1221}},{"index":4,"name":null,"span":{"data":{"file_id":0,"beg":{"line":236,"col":15},"end":{"line":236,"col":28}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":5,"name":null,"span":{"data":{"file_id":0,"beg":{"line":236,"col":17},"end":{"line":236,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":6,"name":null,"span":{"data":{"file_id":0,"beg":{"line":236,"col":18},"end":{"line":236,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":1266}},{"index":7,"name":null,"span":{"data":{"file_id":0,"beg":{"line":236,"col":17},"end":{"line":236,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":1300}},{"index":8,"name":null,"span":{"data":{"file_id":0,"beg":{"line":236,"col":23},"end":{"line":236,"col":27}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":9,"name":null,"span":{"data":{"file_id":0,"beg":{"line":236,"col":24},"end":{"line":236,"col":27}},"generated_from_span":null},"ty":{"Deduplicated":604}},{"index":10,"name":null,"span":{"data":{"file_id":0,"beg":{"line":236,"col":23},"end":{"line":236,"col":24}},"generated_from_span":null},"ty":{"Deduplicated":1244}},{"index":11,"name":null,"span":{"data":{"file_id":0,"beg":{"line":236,"col":10},"end":{"line":236,"col":11}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":12,"name":null,"span":{"data":{"file_id":0,"beg":{"line":237,"col":15},"end":{"line":237,"col":28}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":13,"name":null,"span":{"data":{"file_id":0,"beg":{"line":237,"col":17},"end":{"line":237,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":14,"name":null,"span":{"data":{"file_id":0,"beg":{"line":237,"col":18},"end":{"line":237,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":3924}},{"index":15,"name":null,"span":{"data":{"file_id":0,"beg":{"line":237,"col":17},"end":{"line":237,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":1228}},{"index":16,"name":null,"span":{"data":{"file_id":0,"beg":{"line":237,"col":23},"end":{"line":237,"col":27}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":17,"name":null,"span":{"data":{"file_id":0,"beg":{"line":237,"col":24},"end":{"line":237,"col":27}},"generated_from_span":null},"ty":{"Deduplicated":3925}},{"index":18,"name":null,"span":{"data":{"file_id":0,"beg":{"line":237,"col":23},"end":{"line":237,"col":24}},"generated_from_span":null},"ty":{"Deduplicated":1229}},{"index":19,"name":null,"span":{"data":{"file_id":0,"beg":{"line":237,"col":31},"end":{"line":237,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":20,"name":null,"span":{"data":{"file_id":0,"beg":{"line":237,"col":33},"end":{"line":237,"col":37}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":21,"name":null,"span":{"data":{"file_id":0,"beg":{"line":237,"col":34},"end":{"line":237,"col":37}},"generated_from_span":null},"ty":{"HashConsedValue":[3968,{"Ref":[{"Body":12},{"Deduplicated":454},"Shared"]}]}},{"index":22,"name":null,"span":{"data":{"file_id":0,"beg":{"line":237,"col":33},"end":{"line":237,"col":34}},"generated_from_span":null},"ty":{"Deduplicated":1301}},{"index":23,"name":null,"span":{"data":{"file_id":0,"beg":{"line":237,"col":39},"end":{"line":237,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":24,"name":null,"span":{"data":{"file_id":0,"beg":{"line":237,"col":40},"end":{"line":237,"col":43}},"generated_from_span":null},"ty":{"HashConsedValue":[3969,{"Ref":[{"Body":14},{"Deduplicated":454},"Shared"]}]}},{"index":25,"name":null,"span":{"data":{"file_id":0,"beg":{"line":237,"col":39},"end":{"line":237,"col":40}},"generated_from_span":null},"ty":{"Deduplicated":615}},{"index":26,"name":null,"span":{"data":{"file_id":0,"beg":{"line":237,"col":15},"end":{"line":237,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":27,"name":null,"span":{"data":{"file_id":0,"beg":{"line":237,"col":10},"end":{"line":237,"col":11}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":28,"name":null,"span":{"data":{"file_id":0,"beg":{"line":238,"col":15},"end":{"line":238,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":29,"name":null,"span":{"data":{"file_id":0,"beg":{"line":238,"col":15},"end":{"line":238,"col":28}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":30,"name":null,"span":{"data":{"file_id":0,"beg":{"line":238,"col":17},"end":{"line":238,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":31,"name":null,"span":{"data":{"file_id":0,"beg":{"line":238,"col":18},"end":{"line":238,"col":21}},"generated_from_span":null},"ty":{"HashConsedValue":[3970,{"Ref":[{"Body":16},{"Deduplicated":454},"Shared"]}]}},{"index":32,"name":null,"span":{"data":{"file_id":0,"beg":{"line":238,"col":17},"end":{"line":238,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":617}},{"index":33,"name":null,"span":{"data":{"file_id":0,"beg":{"line":238,"col":23},"end":{"line":238,"col":27}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":34,"name":null,"span":{"data":{"file_id":0,"beg":{"line":238,"col":24},"end":{"line":238,"col":27}},"generated_from_span":null},"ty":{"HashConsedValue":[3971,{"Ref":[{"Body":18},{"Deduplicated":454},"Shared"]}]}},{"index":35,"name":null,"span":{"data":{"file_id":0,"beg":{"line":238,"col":23},"end":{"line":238,"col":24}},"generated_from_span":null},"ty":{"Deduplicated":619}},{"index":36,"name":null,"span":{"data":{"file_id":0,"beg":{"line":238,"col":31},"end":{"line":238,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":37,"name":null,"span":{"data":{"file_id":0,"beg":{"line":238,"col":33},"end":{"line":238,"col":37}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":38,"name":null,"span":{"data":{"file_id":0,"beg":{"line":238,"col":34},"end":{"line":238,"col":37}},"generated_from_span":null},"ty":{"HashConsedValue":[3972,{"Ref":[{"Body":20},{"Deduplicated":454},"Shared"]}]}},{"index":39,"name":null,"span":{"data":{"file_id":0,"beg":{"line":238,"col":33},"end":{"line":238,"col":34}},"generated_from_span":null},"ty":{"Deduplicated":1240}},{"index":40,"name":null,"span":{"data":{"file_id":0,"beg":{"line":238,"col":39},"end":{"line":238,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":41,"name":null,"span":{"data":{"file_id":0,"beg":{"line":238,"col":40},"end":{"line":238,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":3930}},{"index":42,"name":null,"span":{"data":{"file_id":0,"beg":{"line":238,"col":39},"end":{"line":238,"col":40}},"generated_from_span":null},"ty":{"Deduplicated":1302}},{"index":43,"name":null,"span":{"data":{"file_id":0,"beg":{"line":238,"col":15},"end":{"line":238,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":44,"name":null,"span":{"data":{"file_id":0,"beg":{"line":238,"col":47},"end":{"line":238,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":45,"name":null,"span":{"data":{"file_id":0,"beg":{"line":238,"col":49},"end":{"line":238,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":46,"name":null,"span":{"data":{"file_id":0,"beg":{"line":238,"col":50},"end":{"line":238,"col":53}},"generated_from_span":null},"ty":{"HashConsedValue":[3973,{"Ref":[{"Body":24},{"Deduplicated":454},"Shared"]}]}},{"index":47,"name":null,"span":{"data":{"file_id":0,"beg":{"line":238,"col":49},"end":{"line":238,"col":50}},"generated_from_span":null},"ty":{"Deduplicated":1303}},{"index":48,"name":null,"span":{"data":{"file_id":0,"beg":{"line":238,"col":55},"end":{"line":238,"col":59}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":49,"name":null,"span":{"data":{"file_id":0,"beg":{"line":238,"col":56},"end":{"line":238,"col":59}},"generated_from_span":null},"ty":{"HashConsedValue":[3974,{"Ref":[{"Body":26},{"Deduplicated":454},"Shared"]}]}},{"index":50,"name":null,"span":{"data":{"file_id":0,"beg":{"line":238,"col":55},"end":{"line":238,"col":56}},"generated_from_span":null},"ty":{"Deduplicated":1304}},{"index":51,"name":null,"span":{"data":{"file_id":0,"beg":{"line":238,"col":15},"end":{"line":238,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":52,"name":null,"span":{"data":{"file_id":0,"beg":{"line":238,"col":10},"end":{"line":238,"col":11}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":53,"name":null,"span":{"data":{"file_id":0,"beg":{"line":239,"col":15},"end":{"line":239,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":54,"name":null,"span":{"data":{"file_id":0,"beg":{"line":239,"col":15},"end":{"line":239,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":55,"name":null,"span":{"data":{"file_id":0,"beg":{"line":239,"col":15},"end":{"line":239,"col":28}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":56,"name":null,"span":{"data":{"file_id":0,"beg":{"line":239,"col":17},"end":{"line":239,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":57,"name":null,"span":{"data":{"file_id":0,"beg":{"line":239,"col":18},"end":{"line":239,"col":21}},"generated_from_span":null},"ty":{"HashConsedValue":[3975,{"Ref":[{"Body":28},{"Deduplicated":454},"Shared"]}]}},{"index":58,"name":null,"span":{"data":{"file_id":0,"beg":{"line":239,"col":17},"end":{"line":239,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":1305}},{"index":59,"name":null,"span":{"data":{"file_id":0,"beg":{"line":239,"col":23},"end":{"line":239,"col":27}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":60,"name":null,"span":{"data":{"file_id":0,"beg":{"line":239,"col":24},"end":{"line":239,"col":27}},"generated_from_span":null},"ty":{"HashConsedValue":[3976,{"Ref":[{"Body":30},{"Deduplicated":454},"Shared"]}]}},{"index":61,"name":null,"span":{"data":{"file_id":0,"beg":{"line":239,"col":23},"end":{"line":239,"col":24}},"generated_from_span":null},"ty":{"Deduplicated":1306}},{"index":62,"name":null,"span":{"data":{"file_id":0,"beg":{"line":239,"col":31},"end":{"line":239,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":63,"name":null,"span":{"data":{"file_id":0,"beg":{"line":239,"col":33},"end":{"line":239,"col":37}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":64,"name":null,"span":{"data":{"file_id":0,"beg":{"line":239,"col":34},"end":{"line":239,"col":37}},"generated_from_span":null},"ty":{"HashConsedValue":[3977,{"Ref":[{"Body":32},{"Deduplicated":454},"Shared"]}]}},{"index":65,"name":null,"span":{"data":{"file_id":0,"beg":{"line":239,"col":33},"end":{"line":239,"col":34}},"generated_from_span":null},"ty":{"Deduplicated":1450}},{"index":66,"name":null,"span":{"data":{"file_id":0,"beg":{"line":239,"col":39},"end":{"line":239,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":67,"name":null,"span":{"data":{"file_id":0,"beg":{"line":239,"col":40},"end":{"line":239,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":3978}},{"index":68,"name":null,"span":{"data":{"file_id":0,"beg":{"line":239,"col":39},"end":{"line":239,"col":40}},"generated_from_span":null},"ty":{"Deduplicated":1287}},{"index":69,"name":null,"span":{"data":{"file_id":0,"beg":{"line":239,"col":15},"end":{"line":239,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":70,"name":null,"span":{"data":{"file_id":0,"beg":{"line":239,"col":47},"end":{"line":239,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":71,"name":null,"span":{"data":{"file_id":0,"beg":{"line":239,"col":49},"end":{"line":239,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":72,"name":null,"span":{"data":{"file_id":0,"beg":{"line":239,"col":50},"end":{"line":239,"col":53}},"generated_from_span":null},"ty":{"HashConsedValue":[3979,{"Ref":[{"Body":36},{"Deduplicated":454},"Shared"]}]}},{"index":73,"name":null,"span":{"data":{"file_id":0,"beg":{"line":239,"col":49},"end":{"line":239,"col":50}},"generated_from_span":null},"ty":{"Deduplicated":1289}},{"index":74,"name":null,"span":{"data":{"file_id":0,"beg":{"line":239,"col":55},"end":{"line":239,"col":59}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":75,"name":null,"span":{"data":{"file_id":0,"beg":{"line":239,"col":56},"end":{"line":239,"col":59}},"generated_from_span":null},"ty":{"HashConsedValue":[3980,{"Ref":[{"Body":38},{"Deduplicated":454},"Shared"]}]}},{"index":76,"name":null,"span":{"data":{"file_id":0,"beg":{"line":239,"col":55},"end":{"line":239,"col":56}},"generated_from_span":null},"ty":{"Deduplicated":1293}},{"index":77,"name":null,"span":{"data":{"file_id":0,"beg":{"line":239,"col":15},"end":{"line":239,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":78,"name":null,"span":{"data":{"file_id":0,"beg":{"line":239,"col":63},"end":{"line":239,"col":76}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":79,"name":null,"span":{"data":{"file_id":0,"beg":{"line":239,"col":65},"end":{"line":239,"col":69}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":80,"name":null,"span":{"data":{"file_id":0,"beg":{"line":239,"col":66},"end":{"line":239,"col":69}},"generated_from_span":null},"ty":{"HashConsedValue":[3981,{"Ref":[{"Body":40},{"Deduplicated":454},"Shared"]}]}},{"index":81,"name":null,"span":{"data":{"file_id":0,"beg":{"line":239,"col":65},"end":{"line":239,"col":66}},"generated_from_span":null},"ty":{"Deduplicated":1451}},{"index":82,"name":null,"span":{"data":{"file_id":0,"beg":{"line":239,"col":71},"end":{"line":239,"col":75}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":83,"name":null,"span":{"data":{"file_id":0,"beg":{"line":239,"col":72},"end":{"line":239,"col":75}},"generated_from_span":null},"ty":{"HashConsedValue":[3982,{"Ref":[{"Body":42},{"Deduplicated":454},"Shared"]}]}},{"index":84,"name":null,"span":{"data":{"file_id":0,"beg":{"line":239,"col":71},"end":{"line":239,"col":72}},"generated_from_span":null},"ty":{"Deduplicated":1318}},{"index":85,"name":null,"span":{"data":{"file_id":0,"beg":{"line":239,"col":15},"end":{"line":239,"col":76}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":86,"name":null,"span":{"data":{"file_id":0,"beg":{"line":239,"col":10},"end":{"line":239,"col":11}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":87,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":15},"end":{"line":240,"col":76}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":88,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":15},"end":{"line":240,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":89,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":15},"end":{"line":240,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":90,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":15},"end":{"line":240,"col":28}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":91,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":17},"end":{"line":240,"col":21}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":92,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":18},"end":{"line":240,"col":21}},"generated_from_span":null},"ty":{"HashConsedValue":[3983,{"Ref":[{"Body":44},{"Deduplicated":454},"Shared"]}]}},{"index":93,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":17},"end":{"line":240,"col":18}},"generated_from_span":null},"ty":{"HashConsedValue":[3984,{"Ref":[{"Body":45},{"Deduplicated":334},"Shared"]}]}},{"index":94,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":23},"end":{"line":240,"col":27}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":95,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":24},"end":{"line":240,"col":27}},"generated_from_span":null},"ty":{"HashConsedValue":[3985,{"Ref":[{"Body":46},{"Deduplicated":454},"Shared"]}]}},{"index":96,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":23},"end":{"line":240,"col":24}},"generated_from_span":null},"ty":{"Deduplicated":1322}},{"index":97,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":31},"end":{"line":240,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":98,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":33},"end":{"line":240,"col":37}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":99,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":34},"end":{"line":240,"col":37}},"generated_from_span":null},"ty":{"HashConsedValue":[3986,{"Ref":[{"Body":48},{"Deduplicated":454},"Shared"]}]}},{"index":100,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":33},"end":{"line":240,"col":34}},"generated_from_span":null},"ty":{"HashConsedValue":[3987,{"Ref":[{"Body":49},{"Deduplicated":334},"Shared"]}]}},{"index":101,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":39},"end":{"line":240,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":102,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":40},"end":{"line":240,"col":43}},"generated_from_span":null},"ty":{"HashConsedValue":[3988,{"Ref":[{"Body":50},{"Deduplicated":454},"Shared"]}]}},{"index":103,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":39},"end":{"line":240,"col":40}},"generated_from_span":null},"ty":{"Deduplicated":1326}},{"index":104,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":15},"end":{"line":240,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":105,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":47},"end":{"line":240,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":106,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":49},"end":{"line":240,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":107,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":50},"end":{"line":240,"col":53}},"generated_from_span":null},"ty":{"HashConsedValue":[3989,{"Ref":[{"Body":52},{"Deduplicated":454},"Shared"]}]}},{"index":108,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":49},"end":{"line":240,"col":50}},"generated_from_span":null},"ty":{"HashConsedValue":[3990,{"Ref":[{"Body":53},{"Deduplicated":334},"Shared"]}]}},{"index":109,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":55},"end":{"line":240,"col":59}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":110,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":56},"end":{"line":240,"col":59}},"generated_from_span":null},"ty":{"HashConsedValue":[3991,{"Ref":[{"Body":54},{"Deduplicated":454},"Shared"]}]}},{"index":111,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":55},"end":{"line":240,"col":56}},"generated_from_span":null},"ty":{"Deduplicated":1330}},{"index":112,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":15},"end":{"line":240,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":113,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":63},"end":{"line":240,"col":76}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":114,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":65},"end":{"line":240,"col":69}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":115,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":66},"end":{"line":240,"col":69}},"generated_from_span":null},"ty":{"HashConsedValue":[3992,{"Ref":[{"Body":56},{"Deduplicated":454},"Shared"]}]}},{"index":116,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":65},"end":{"line":240,"col":66}},"generated_from_span":null},"ty":{"HashConsedValue":[3993,{"Ref":[{"Body":57},{"Deduplicated":334},"Shared"]}]}},{"index":117,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":71},"end":{"line":240,"col":75}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":118,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":72},"end":{"line":240,"col":75}},"generated_from_span":null},"ty":{"HashConsedValue":[3994,{"Ref":[{"Body":58},{"Deduplicated":454},"Shared"]}]}},{"index":119,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":71},"end":{"line":240,"col":72}},"generated_from_span":null},"ty":{"Deduplicated":1334}},{"index":120,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":15},"end":{"line":240,"col":76}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":121,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":79},"end":{"line":240,"col":92}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":122,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":81},"end":{"line":240,"col":85}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":123,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":82},"end":{"line":240,"col":85}},"generated_from_span":null},"ty":{"HashConsedValue":[3995,{"Ref":[{"Body":60},{"Deduplicated":454},"Shared"]}]}},{"index":124,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":81},"end":{"line":240,"col":82}},"generated_from_span":null},"ty":{"HashConsedValue":[3996,{"Ref":[{"Body":61},{"Deduplicated":334},"Shared"]}]}},{"index":125,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":87},"end":{"line":240,"col":91}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":126,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":88},"end":{"line":240,"col":91}},"generated_from_span":null},"ty":{"HashConsedValue":[3997,{"Ref":[{"Body":62},{"Deduplicated":454},"Shared"]}]}},{"index":127,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":87},"end":{"line":240,"col":88}},"generated_from_span":null},"ty":{"Deduplicated":1338}},{"index":128,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":15},"end":{"line":240,"col":92}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":129,"name":null,"span":{"data":{"file_id":0,"beg":{"line":240,"col":10},"end":{"line":240,"col":11}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":130,"name":null,"span":{"data":{"file_id":0,"beg":{"line":241,"col":31},"end":{"line":241,"col":76}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":131,"name":null,"span":{"data":{"file_id":0,"beg":{"line":241,"col":31},"end":{"line":241,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":132,"name":null,"span":{"data":{"file_id":0,"beg":{"line":241,"col":31},"end":{"line":241,"col":44}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":133,"name":null,"span":{"data":{"file_id":0,"beg":{"line":241,"col":33},"end":{"line":241,"col":37}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":134,"name":null,"span":{"data":{"file_id":0,"beg":{"line":241,"col":34},"end":{"line":241,"col":37}},"generated_from_span":null},"ty":{"HashConsedValue":[3998,{"Ref":[{"Body":64},{"Deduplicated":454},"Shared"]}]}},{"index":135,"name":null,"span":{"data":{"file_id":0,"beg":{"line":241,"col":33},"end":{"line":241,"col":34}},"generated_from_span":null},"ty":{"HashConsedValue":[3999,{"Ref":[{"Body":65},{"Deduplicated":334},"Shared"]}]}},{"index":136,"name":null,"span":{"data":{"file_id":0,"beg":{"line":241,"col":39},"end":{"line":241,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":137,"name":null,"span":{"data":{"file_id":0,"beg":{"line":241,"col":40},"end":{"line":241,"col":43}},"generated_from_span":null},"ty":{"HashConsedValue":[4000,{"Ref":[{"Body":66},{"Deduplicated":454},"Shared"]}]}},{"index":138,"name":null,"span":{"data":{"file_id":0,"beg":{"line":241,"col":39},"end":{"line":241,"col":40}},"generated_from_span":null},"ty":{"Deduplicated":1342}},{"index":139,"name":null,"span":{"data":{"file_id":0,"beg":{"line":241,"col":47},"end":{"line":241,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":140,"name":null,"span":{"data":{"file_id":0,"beg":{"line":241,"col":49},"end":{"line":241,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":141,"name":null,"span":{"data":{"file_id":0,"beg":{"line":241,"col":50},"end":{"line":241,"col":53}},"generated_from_span":null},"ty":{"HashConsedValue":[4001,{"Ref":[{"Body":68},{"Deduplicated":454},"Shared"]}]}},{"index":142,"name":null,"span":{"data":{"file_id":0,"beg":{"line":241,"col":49},"end":{"line":241,"col":50}},"generated_from_span":null},"ty":{"HashConsedValue":[4002,{"Ref":[{"Body":69},{"Deduplicated":334},"Shared"]}]}},{"index":143,"name":null,"span":{"data":{"file_id":0,"beg":{"line":241,"col":55},"end":{"line":241,"col":59}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":144,"name":null,"span":{"data":{"file_id":0,"beg":{"line":241,"col":56},"end":{"line":241,"col":59}},"generated_from_span":null},"ty":{"HashConsedValue":[4003,{"Ref":[{"Body":70},{"Deduplicated":454},"Shared"]}]}},{"index":145,"name":null,"span":{"data":{"file_id":0,"beg":{"line":241,"col":55},"end":{"line":241,"col":56}},"generated_from_span":null},"ty":{"Deduplicated":1346}},{"index":146,"name":null,"span":{"data":{"file_id":0,"beg":{"line":241,"col":31},"end":{"line":241,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":147,"name":null,"span":{"data":{"file_id":0,"beg":{"line":241,"col":63},"end":{"line":241,"col":76}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":148,"name":null,"span":{"data":{"file_id":0,"beg":{"line":241,"col":65},"end":{"line":241,"col":69}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":149,"name":null,"span":{"data":{"file_id":0,"beg":{"line":241,"col":66},"end":{"line":241,"col":69}},"generated_from_span":null},"ty":{"HashConsedValue":[4004,{"Ref":[{"Body":72},{"Deduplicated":454},"Shared"]}]}},{"index":150,"name":null,"span":{"data":{"file_id":0,"beg":{"line":241,"col":65},"end":{"line":241,"col":66}},"generated_from_span":null},"ty":{"Deduplicated":1457}},{"index":151,"name":null,"span":{"data":{"file_id":0,"beg":{"line":241,"col":71},"end":{"line":241,"col":75}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":152,"name":null,"span":{"data":{"file_id":0,"beg":{"line":241,"col":72},"end":{"line":241,"col":75}},"generated_from_span":null},"ty":{"HashConsedValue":[4005,{"Ref":[{"Body":74},{"Deduplicated":454},"Shared"]}]}},{"index":153,"name":null,"span":{"data":{"file_id":0,"beg":{"line":241,"col":71},"end":{"line":241,"col":72}},"generated_from_span":null},"ty":{"Deduplicated":1350}},{"index":154,"name":null,"span":{"data":{"file_id":0,"beg":{"line":241,"col":31},"end":{"line":241,"col":76}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":155,"name":null,"span":{"data":{"file_id":0,"beg":{"line":241,"col":79},"end":{"line":241,"col":92}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":156,"name":null,"span":{"data":{"file_id":0,"beg":{"line":241,"col":81},"end":{"line":241,"col":85}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":157,"name":null,"span":{"data":{"file_id":0,"beg":{"line":241,"col":82},"end":{"line":241,"col":85}},"generated_from_span":null},"ty":{"HashConsedValue":[4006,{"Ref":[{"Body":76},{"Deduplicated":454},"Shared"]}]}},{"index":158,"name":null,"span":{"data":{"file_id":0,"beg":{"line":241,"col":81},"end":{"line":241,"col":82}},"generated_from_span":null},"ty":{"HashConsedValue":[4007,{"Ref":[{"Body":77},{"Deduplicated":334},"Shared"]}]}},{"index":159,"name":null,"span":{"data":{"file_id":0,"beg":{"line":241,"col":87},"end":{"line":241,"col":91}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":160,"name":null,"span":{"data":{"file_id":0,"beg":{"line":241,"col":88},"end":{"line":241,"col":91}},"generated_from_span":null},"ty":{"HashConsedValue":[4008,{"Ref":[{"Body":78},{"Deduplicated":454},"Shared"]}]}},{"index":161,"name":null,"span":{"data":{"file_id":0,"beg":{"line":241,"col":87},"end":{"line":241,"col":88}},"generated_from_span":null},"ty":{"Deduplicated":1354}},{"index":162,"name":null,"span":{"data":{"file_id":0,"beg":{"line":241,"col":31},"end":{"line":241,"col":92}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":163,"name":null,"span":{"data":{"file_id":0,"beg":{"line":241,"col":10},"end":{"line":241,"col":11}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":164,"name":null,"span":{"data":{"file_id":0,"beg":{"line":242,"col":47},"end":{"line":242,"col":76}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":165,"name":null,"span":{"data":{"file_id":0,"beg":{"line":242,"col":47},"end":{"line":242,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":166,"name":null,"span":{"data":{"file_id":0,"beg":{"line":242,"col":49},"end":{"line":242,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":167,"name":null,"span":{"data":{"file_id":0,"beg":{"line":242,"col":50},"end":{"line":242,"col":53}},"generated_from_span":null},"ty":{"HashConsedValue":[4009,{"Ref":[{"Body":80},{"Deduplicated":454},"Shared"]}]}},{"index":168,"name":null,"span":{"data":{"file_id":0,"beg":{"line":242,"col":49},"end":{"line":242,"col":50}},"generated_from_span":null},"ty":{"HashConsedValue":[4010,{"Ref":[{"Body":81},{"Deduplicated":334},"Shared"]}]}},{"index":169,"name":null,"span":{"data":{"file_id":0,"beg":{"line":242,"col":55},"end":{"line":242,"col":59}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":170,"name":null,"span":{"data":{"file_id":0,"beg":{"line":242,"col":56},"end":{"line":242,"col":59}},"generated_from_span":null},"ty":{"HashConsedValue":[4011,{"Ref":[{"Body":82},{"Deduplicated":454},"Shared"]}]}},{"index":171,"name":null,"span":{"data":{"file_id":0,"beg":{"line":242,"col":55},"end":{"line":242,"col":56}},"generated_from_span":null},"ty":{"Deduplicated":1358}},{"index":172,"name":null,"span":{"data":{"file_id":0,"beg":{"line":242,"col":63},"end":{"line":242,"col":76}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":173,"name":null,"span":{"data":{"file_id":0,"beg":{"line":242,"col":65},"end":{"line":242,"col":69}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":174,"name":null,"span":{"data":{"file_id":0,"beg":{"line":242,"col":66},"end":{"line":242,"col":69}},"generated_from_span":null},"ty":{"HashConsedValue":[4012,{"Ref":[{"Body":84},{"Deduplicated":454},"Shared"]}]}},{"index":175,"name":null,"span":{"data":{"file_id":0,"beg":{"line":242,"col":65},"end":{"line":242,"col":66}},"generated_from_span":null},"ty":{"HashConsedValue":[4013,{"Ref":[{"Body":85},{"Deduplicated":334},"Shared"]}]}},{"index":176,"name":null,"span":{"data":{"file_id":0,"beg":{"line":242,"col":71},"end":{"line":242,"col":75}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":177,"name":null,"span":{"data":{"file_id":0,"beg":{"line":242,"col":72},"end":{"line":242,"col":75}},"generated_from_span":null},"ty":{"HashConsedValue":[4014,{"Ref":[{"Body":86},{"Deduplicated":454},"Shared"]}]}},{"index":178,"name":null,"span":{"data":{"file_id":0,"beg":{"line":242,"col":71},"end":{"line":242,"col":72}},"generated_from_span":null},"ty":{"Deduplicated":1362}},{"index":179,"name":null,"span":{"data":{"file_id":0,"beg":{"line":242,"col":47},"end":{"line":242,"col":76}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":180,"name":null,"span":{"data":{"file_id":0,"beg":{"line":242,"col":79},"end":{"line":242,"col":92}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":181,"name":null,"span":{"data":{"file_id":0,"beg":{"line":242,"col":81},"end":{"line":242,"col":85}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":182,"name":null,"span":{"data":{"file_id":0,"beg":{"line":242,"col":82},"end":{"line":242,"col":85}},"generated_from_span":null},"ty":{"HashConsedValue":[4015,{"Ref":[{"Body":88},{"Deduplicated":454},"Shared"]}]}},{"index":183,"name":null,"span":{"data":{"file_id":0,"beg":{"line":242,"col":81},"end":{"line":242,"col":82}},"generated_from_span":null},"ty":{"HashConsedValue":[4016,{"Ref":[{"Body":89},{"Deduplicated":334},"Shared"]}]}},{"index":184,"name":null,"span":{"data":{"file_id":0,"beg":{"line":242,"col":87},"end":{"line":242,"col":91}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":185,"name":null,"span":{"data":{"file_id":0,"beg":{"line":242,"col":88},"end":{"line":242,"col":91}},"generated_from_span":null},"ty":{"HashConsedValue":[4017,{"Ref":[{"Body":90},{"Deduplicated":454},"Shared"]}]}},{"index":186,"name":null,"span":{"data":{"file_id":0,"beg":{"line":242,"col":87},"end":{"line":242,"col":88}},"generated_from_span":null},"ty":{"Deduplicated":1366}},{"index":187,"name":null,"span":{"data":{"file_id":0,"beg":{"line":242,"col":47},"end":{"line":242,"col":92}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":188,"name":null,"span":{"data":{"file_id":0,"beg":{"line":242,"col":10},"end":{"line":242,"col":11}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":189,"name":null,"span":{"data":{"file_id":0,"beg":{"line":243,"col":63},"end":{"line":243,"col":76}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":190,"name":null,"span":{"data":{"file_id":0,"beg":{"line":243,"col":65},"end":{"line":243,"col":69}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":191,"name":null,"span":{"data":{"file_id":0,"beg":{"line":243,"col":66},"end":{"line":243,"col":69}},"generated_from_span":null},"ty":{"HashConsedValue":[4018,{"Ref":[{"Body":92},{"Deduplicated":454},"Shared"]}]}},{"index":192,"name":null,"span":{"data":{"file_id":0,"beg":{"line":243,"col":65},"end":{"line":243,"col":66}},"generated_from_span":null},"ty":{"HashConsedValue":[4019,{"Ref":[{"Body":93},{"Deduplicated":334},"Shared"]}]}},{"index":193,"name":null,"span":{"data":{"file_id":0,"beg":{"line":243,"col":71},"end":{"line":243,"col":75}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":194,"name":null,"span":{"data":{"file_id":0,"beg":{"line":243,"col":72},"end":{"line":243,"col":75}},"generated_from_span":null},"ty":{"HashConsedValue":[4020,{"Ref":[{"Body":94},{"Deduplicated":454},"Shared"]}]}},{"index":195,"name":null,"span":{"data":{"file_id":0,"beg":{"line":243,"col":71},"end":{"line":243,"col":72}},"generated_from_span":null},"ty":{"Deduplicated":1370}},{"index":196,"name":null,"span":{"data":{"file_id":0,"beg":{"line":243,"col":79},"end":{"line":243,"col":92}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":197,"name":null,"span":{"data":{"file_id":0,"beg":{"line":243,"col":81},"end":{"line":243,"col":85}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":198,"name":null,"span":{"data":{"file_id":0,"beg":{"line":243,"col":82},"end":{"line":243,"col":85}},"generated_from_span":null},"ty":{"HashConsedValue":[4021,{"Ref":[{"Body":96},{"Deduplicated":454},"Shared"]}]}},{"index":199,"name":null,"span":{"data":{"file_id":0,"beg":{"line":243,"col":81},"end":{"line":243,"col":82}},"generated_from_span":null},"ty":{"HashConsedValue":[4022,{"Ref":[{"Body":97},{"Deduplicated":334},"Shared"]}]}},{"index":200,"name":null,"span":{"data":{"file_id":0,"beg":{"line":243,"col":87},"end":{"line":243,"col":91}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":201,"name":null,"span":{"data":{"file_id":0,"beg":{"line":243,"col":88},"end":{"line":243,"col":91}},"generated_from_span":null},"ty":{"HashConsedValue":[4023,{"Ref":[{"Body":98},{"Deduplicated":454},"Shared"]}]}},{"index":202,"name":null,"span":{"data":{"file_id":0,"beg":{"line":243,"col":87},"end":{"line":243,"col":88}},"generated_from_span":null},"ty":{"Deduplicated":1374}},{"index":203,"name":null,"span":{"data":{"file_id":0,"beg":{"line":243,"col":63},"end":{"line":243,"col":92}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":204,"name":null,"span":{"data":{"file_id":0,"beg":{"line":243,"col":10},"end":{"line":243,"col":11}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":205,"name":null,"span":{"data":{"file_id":0,"beg":{"line":244,"col":79},"end":{"line":244,"col":92}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":206,"name":null,"span":{"data":{"file_id":0,"beg":{"line":244,"col":81},"end":{"line":244,"col":85}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":207,"name":null,"span":{"data":{"file_id":0,"beg":{"line":244,"col":82},"end":{"line":244,"col":85}},"generated_from_span":null},"ty":{"HashConsedValue":[4024,{"Ref":[{"Body":100},{"Deduplicated":454},"Shared"]}]}},{"index":208,"name":null,"span":{"data":{"file_id":0,"beg":{"line":244,"col":81},"end":{"line":244,"col":82}},"generated_from_span":null},"ty":{"HashConsedValue":[4025,{"Ref":[{"Body":101},{"Deduplicated":334},"Shared"]}]}},{"index":209,"name":null,"span":{"data":{"file_id":0,"beg":{"line":244,"col":87},"end":{"line":244,"col":91}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":210,"name":null,"span":{"data":{"file_id":0,"beg":{"line":244,"col":88},"end":{"line":244,"col":91}},"generated_from_span":null},"ty":{"HashConsedValue":[4026,{"Ref":[{"Body":102},{"Deduplicated":454},"Shared"]}]}},{"index":211,"name":null,"span":{"data":{"file_id":0,"beg":{"line":244,"col":87},"end":{"line":244,"col":88}},"generated_from_span":null},"ty":{"Deduplicated":1378}},{"index":212,"name":null,"span":{"data":{"file_id":0,"beg":{"line":244,"col":10},"end":{"line":244,"col":11}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":213,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5013}},{"index":214,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5012}},{"index":215,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5013}},{"index":216,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5012}},{"index":217,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5013}},{"index":218,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5012}},{"index":219,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5013}},{"index":220,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5012}},{"index":221,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5013}},{"index":222,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5012}},{"index":223,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5013}},{"index":224,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5012}},{"index":225,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5013}},{"index":226,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5012}},{"index":227,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5013}},{"index":228,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5012}},{"index":229,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5013}},{"index":230,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5012}}]},"body":{"span":{"data":{"file_id":0,"beg":{"line":234,"col":12},"end":{"line":247,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":0,"beg":{"line":234,"col":12},"end":{"line":234,"col":17}},"generated_from_span":null},"id":2576,"kind":{"StorageLive":26},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":234,"col":12},"end":{"line":234,"col":17}},"generated_from_span":null},"id":2578,"kind":{"StorageLive":43},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":234,"col":12},"end":{"line":234,"col":17}},"generated_from_span":null},"id":2579,"kind":{"StorageLive":51},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":234,"col":12},"end":{"line":234,"col":17}},"generated_from_span":null},"id":2581,"kind":{"StorageLive":69},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":234,"col":12},"end":{"line":234,"col":17}},"generated_from_span":null},"id":2582,"kind":{"StorageLive":77},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":234,"col":12},"end":{"line":234,"col":17}},"generated_from_span":null},"id":2583,"kind":{"StorageLive":85},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":234,"col":12},"end":{"line":234,"col":17}},"generated_from_span":null},"id":2585,"kind":{"StorageLive":104},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":234,"col":12},"end":{"line":234,"col":17}},"generated_from_span":null},"id":2586,"kind":{"StorageLive":112},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":234,"col":12},"end":{"line":234,"col":17}},"generated_from_span":null},"id":2587,"kind":{"StorageLive":120},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":234,"col":12},"end":{"line":234,"col":17}},"generated_from_span":null},"id":2588,"kind":{"StorageLive":128},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":234,"col":12},"end":{"line":234,"col":17}},"generated_from_span":null},"id":2590,"kind":{"StorageLive":146},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":234,"col":12},"end":{"line":234,"col":17}},"generated_from_span":null},"id":2591,"kind":{"StorageLive":154},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":234,"col":12},"end":{"line":234,"col":17}},"generated_from_span":null},"id":2592,"kind":{"StorageLive":162},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":234,"col":12},"end":{"line":234,"col":17}},"generated_from_span":null},"id":2594,"kind":{"StorageLive":179},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":234,"col":12},"end":{"line":234,"col":17}},"generated_from_span":null},"id":2595,"kind":{"StorageLive":187},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":234,"col":12},"end":{"line":234,"col":17}},"generated_from_span":null},"id":2597,"kind":{"StorageLive":203},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":234,"col":12},"end":{"line":234,"col":17}},"generated_from_span":null},"id":2600,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":234,"col":20},"end":{"line":234,"col":30}},"generated_from_span":null},"id":2601,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":"ArrayRepeat"}},"generics":{"regions":[],"types":[{"Deduplicated":1220}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","9"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U128","0"]}}},"ty":{"Deduplicated":1220}}}],"dest":{"kind":{"Local":3},"ty":{"Deduplicated":1221}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":236,"col":15},"end":{"line":236,"col":28}},"generated_from_span":null},"id":2602,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":236,"col":17},"end":{"line":236,"col":21}},"generated_from_span":null},"id":2603,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":236,"col":18},"end":{"line":236,"col":21}},"generated_from_span":null},"id":2604,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":236,"col":17},"end":{"line":236,"col":18}},"generated_from_span":null},"id":2605,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":236,"col":17},"end":{"line":236,"col":18}},"generated_from_span":null},"id":2606,"kind":{"Assign":[{"kind":{"Local":7},"ty":{"Deduplicated":1300}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":236,"col":18},"end":{"line":236,"col":21}},"generated_from_span":null},"id":2607,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":105}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":7},"ty":{"Deduplicated":1300}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":6},"ty":{"Deduplicated":1266}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":236,"col":17},"end":{"line":236,"col":21}},"generated_from_span":null},"id":2608,"kind":{"Assign":[{"kind":{"Local":5},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":6},"ty":{"Deduplicated":1266}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":236,"col":20},"end":{"line":236,"col":21}},"generated_from_span":null},"id":2609,"kind":{"StorageDead":7},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":236,"col":23},"end":{"line":236,"col":27}},"generated_from_span":null},"id":2610,"kind":{"StorageLive":8},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":236,"col":24},"end":{"line":236,"col":27}},"generated_from_span":null},"id":2611,"kind":{"StorageLive":9},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":236,"col":23},"end":{"line":236,"col":24}},"generated_from_span":null},"id":2612,"kind":{"StorageLive":10},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":236,"col":23},"end":{"line":236,"col":24}},"generated_from_span":null},"id":2613,"kind":{"Assign":[{"kind":{"Local":10},"ty":{"Deduplicated":1244}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":464}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":236,"col":24},"end":{"line":236,"col":27}},"generated_from_span":null},"id":2614,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":107}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":10},"ty":{"Deduplicated":1244}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":9},"ty":{"Deduplicated":604}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":236,"col":23},"end":{"line":236,"col":27}},"generated_from_span":null},"id":2615,"kind":{"Assign":[{"kind":{"Local":8},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":9},"ty":{"Deduplicated":604}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":236,"col":26},"end":{"line":236,"col":27}},"generated_from_span":null},"id":2616,"kind":{"StorageDead":10},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":236,"col":15},"end":{"line":236,"col":28}},"generated_from_span":null},"id":2617,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":5},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":8},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":4},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":236,"col":27},"end":{"line":236,"col":28}},"generated_from_span":null},"id":2618,"kind":{"StorageDead":8},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":236,"col":27},"end":{"line":236,"col":28}},"generated_from_span":null},"id":2619,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":236,"col":10},"end":{"line":236,"col":11}},"generated_from_span":null},"id":2620,"kind":{"StorageLive":11},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":236,"col":10},"end":{"line":236,"col":11}},"generated_from_span":null},"id":2621,"kind":{"Assign":[{"kind":{"Local":11},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":236,"col":8},"end":{"line":236,"col":28}},"generated_from_span":null},"id":3996,"kind":{"StorageLive":213},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":236,"col":8},"end":{"line":236,"col":28}},"generated_from_span":null},"id":3997,"kind":{"Assign":[{"kind":{"Local":213},"ty":{"Deduplicated":5013}},{"Ref":{"place":{"kind":{"Local":3},"ty":{"Deduplicated":1221}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":236,"col":8},"end":{"line":236,"col":28}},"generated_from_span":null},"id":3998,"kind":{"StorageLive":214},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":236,"col":8},"end":{"line":236,"col":28}},"generated_from_span":null},"id":3999,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Mut","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1220}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","9"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":213},"ty":{"Deduplicated":5013}}},{"Copy":{"kind":{"Local":11},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":214},"ty":{"Deduplicated":5012}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":236,"col":8},"end":{"line":236,"col":28}},"generated_from_span":null},"id":2624,"kind":{"Assign":[{"kind":{"Projection":[{"kind":{"Local":214},"ty":{"Deduplicated":5012}},"Deref"]},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":236,"col":27},"end":{"line":236,"col":28}},"generated_from_span":null},"id":2625,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":236,"col":28},"end":{"line":236,"col":29}},"generated_from_span":null},"id":2626,"kind":{"StorageDead":11},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":236,"col":28},"end":{"line":236,"col":29}},"generated_from_span":null},"id":2627,"kind":{"StorageDead":9},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":236,"col":28},"end":{"line":236,"col":29}},"generated_from_span":null},"id":2628,"kind":{"StorageDead":6},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":15},"end":{"line":237,"col":28}},"generated_from_span":null},"id":2629,"kind":{"StorageLive":12},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":17},"end":{"line":237,"col":21}},"generated_from_span":null},"id":2630,"kind":{"StorageLive":13},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":18},"end":{"line":237,"col":21}},"generated_from_span":null},"id":2631,"kind":{"StorageLive":14},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":17},"end":{"line":237,"col":18}},"generated_from_span":null},"id":2632,"kind":{"StorageLive":15},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":17},"end":{"line":237,"col":18}},"generated_from_span":null},"id":2633,"kind":{"Assign":[{"kind":{"Local":15},"ty":{"Deduplicated":1228}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":18},"end":{"line":237,"col":21}},"generated_from_span":null},"id":2634,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":109}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":15},"ty":{"Deduplicated":1228}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":14},"ty":{"Deduplicated":3924}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":17},"end":{"line":237,"col":21}},"generated_from_span":null},"id":2635,"kind":{"Assign":[{"kind":{"Local":13},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":14},"ty":{"Deduplicated":3924}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":20},"end":{"line":237,"col":21}},"generated_from_span":null},"id":2636,"kind":{"StorageDead":15},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":23},"end":{"line":237,"col":27}},"generated_from_span":null},"id":2637,"kind":{"StorageLive":16},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":24},"end":{"line":237,"col":27}},"generated_from_span":null},"id":2638,"kind":{"StorageLive":17},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":23},"end":{"line":237,"col":24}},"generated_from_span":null},"id":2639,"kind":{"StorageLive":18},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":23},"end":{"line":237,"col":24}},"generated_from_span":null},"id":2640,"kind":{"Assign":[{"kind":{"Local":18},"ty":{"Deduplicated":1229}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":464}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":24},"end":{"line":237,"col":27}},"generated_from_span":null},"id":2641,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":111}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":18},"ty":{"Deduplicated":1229}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":17},"ty":{"Deduplicated":3925}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":23},"end":{"line":237,"col":27}},"generated_from_span":null},"id":2642,"kind":{"Assign":[{"kind":{"Local":16},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":17},"ty":{"Deduplicated":3925}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":26},"end":{"line":237,"col":27}},"generated_from_span":null},"id":2643,"kind":{"StorageDead":18},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":15},"end":{"line":237,"col":28}},"generated_from_span":null},"id":2644,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":13},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":16},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":12},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":27},"end":{"line":237,"col":28}},"generated_from_span":null},"id":2645,"kind":{"StorageDead":16},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":27},"end":{"line":237,"col":28}},"generated_from_span":null},"id":2646,"kind":{"StorageDead":13},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":31},"end":{"line":237,"col":44}},"generated_from_span":null},"id":2647,"kind":{"StorageLive":19},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":33},"end":{"line":237,"col":37}},"generated_from_span":null},"id":2648,"kind":{"StorageLive":20},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":34},"end":{"line":237,"col":37}},"generated_from_span":null},"id":2649,"kind":{"StorageLive":21},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":33},"end":{"line":237,"col":34}},"generated_from_span":null},"id":2650,"kind":{"StorageLive":22},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":33},"end":{"line":237,"col":34}},"generated_from_span":null},"id":2651,"kind":{"Assign":[{"kind":{"Local":22},"ty":{"Deduplicated":1301}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":34},"end":{"line":237,"col":37}},"generated_from_span":null},"id":2652,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":113}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":22},"ty":{"Deduplicated":1301}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":21},"ty":{"Deduplicated":3968}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":33},"end":{"line":237,"col":37}},"generated_from_span":null},"id":2653,"kind":{"Assign":[{"kind":{"Local":20},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":21},"ty":{"Deduplicated":3968}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":36},"end":{"line":237,"col":37}},"generated_from_span":null},"id":2654,"kind":{"StorageDead":22},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":39},"end":{"line":237,"col":43}},"generated_from_span":null},"id":2655,"kind":{"StorageLive":23},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":40},"end":{"line":237,"col":43}},"generated_from_span":null},"id":2656,"kind":{"StorageLive":24},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":39},"end":{"line":237,"col":40}},"generated_from_span":null},"id":2657,"kind":{"StorageLive":25},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":39},"end":{"line":237,"col":40}},"generated_from_span":null},"id":2658,"kind":{"Assign":[{"kind":{"Local":25},"ty":{"Deduplicated":615}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":464}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":40},"end":{"line":237,"col":43}},"generated_from_span":null},"id":2659,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":115}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":25},"ty":{"Deduplicated":615}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":24},"ty":{"Deduplicated":3969}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":39},"end":{"line":237,"col":43}},"generated_from_span":null},"id":2660,"kind":{"Assign":[{"kind":{"Local":23},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":24},"ty":{"Deduplicated":3969}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":42},"end":{"line":237,"col":43}},"generated_from_span":null},"id":2661,"kind":{"StorageDead":25},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":31},"end":{"line":237,"col":44}},"generated_from_span":null},"id":2662,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":20},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":23},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":19},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":43},"end":{"line":237,"col":44}},"generated_from_span":null},"id":2663,"kind":{"StorageDead":23},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":43},"end":{"line":237,"col":44}},"generated_from_span":null},"id":2664,"kind":{"StorageDead":20},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":15},"end":{"line":237,"col":44}},"generated_from_span":null},"id":2665,"kind":{"Assign":[{"kind":{"Local":26},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":12},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":19},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":10},"end":{"line":237,"col":11}},"generated_from_span":null},"id":2667,"kind":{"StorageLive":27},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":10},"end":{"line":237,"col":11}},"generated_from_span":null},"id":2668,"kind":{"Assign":[{"kind":{"Local":27},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":8},"end":{"line":237,"col":44}},"generated_from_span":null},"id":4000,"kind":{"StorageLive":215},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":8},"end":{"line":237,"col":44}},"generated_from_span":null},"id":4001,"kind":{"Assign":[{"kind":{"Local":215},"ty":{"Deduplicated":5013}},{"Ref":{"place":{"kind":{"Local":3},"ty":{"Deduplicated":1221}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":8},"end":{"line":237,"col":44}},"generated_from_span":null},"id":4002,"kind":{"StorageLive":216},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":8},"end":{"line":237,"col":44}},"generated_from_span":null},"id":4003,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Mut","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1220}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","9"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":215},"ty":{"Deduplicated":5013}}},{"Copy":{"kind":{"Local":27},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":216},"ty":{"Deduplicated":5012}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":8},"end":{"line":237,"col":44}},"generated_from_span":null},"id":2671,"kind":{"Assign":[{"kind":{"Projection":[{"kind":{"Local":216},"ty":{"Deduplicated":5012}},"Deref"]},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":26},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":43},"end":{"line":237,"col":44}},"generated_from_span":null},"id":2672,"kind":{"StorageDead":19},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":43},"end":{"line":237,"col":44}},"generated_from_span":null},"id":2673,"kind":{"StorageDead":12},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":44},"end":{"line":237,"col":45}},"generated_from_span":null},"id":2674,"kind":{"StorageDead":27},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":44},"end":{"line":237,"col":45}},"generated_from_span":null},"id":2675,"kind":{"StorageDead":24},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":44},"end":{"line":237,"col":45}},"generated_from_span":null},"id":2676,"kind":{"StorageDead":21},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":44},"end":{"line":237,"col":45}},"generated_from_span":null},"id":2677,"kind":{"StorageDead":17},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":237,"col":44},"end":{"line":237,"col":45}},"generated_from_span":null},"id":2678,"kind":{"StorageDead":14},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":15},"end":{"line":238,"col":44}},"generated_from_span":null},"id":2679,"kind":{"StorageLive":28},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":15},"end":{"line":238,"col":28}},"generated_from_span":null},"id":2680,"kind":{"StorageLive":29},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":17},"end":{"line":238,"col":21}},"generated_from_span":null},"id":2681,"kind":{"StorageLive":30},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":18},"end":{"line":238,"col":21}},"generated_from_span":null},"id":2682,"kind":{"StorageLive":31},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":17},"end":{"line":238,"col":18}},"generated_from_span":null},"id":2683,"kind":{"StorageLive":32},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":17},"end":{"line":238,"col":18}},"generated_from_span":null},"id":2684,"kind":{"Assign":[{"kind":{"Local":32},"ty":{"Deduplicated":617}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":18},"end":{"line":238,"col":21}},"generated_from_span":null},"id":2685,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":117}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":32},"ty":{"Deduplicated":617}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":31},"ty":{"Deduplicated":3970}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":17},"end":{"line":238,"col":21}},"generated_from_span":null},"id":2686,"kind":{"Assign":[{"kind":{"Local":30},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":31},"ty":{"Deduplicated":3970}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":20},"end":{"line":238,"col":21}},"generated_from_span":null},"id":2687,"kind":{"StorageDead":32},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":23},"end":{"line":238,"col":27}},"generated_from_span":null},"id":2688,"kind":{"StorageLive":33},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":24},"end":{"line":238,"col":27}},"generated_from_span":null},"id":2689,"kind":{"StorageLive":34},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":23},"end":{"line":238,"col":24}},"generated_from_span":null},"id":2690,"kind":{"StorageLive":35},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":23},"end":{"line":238,"col":24}},"generated_from_span":null},"id":2691,"kind":{"Assign":[{"kind":{"Local":35},"ty":{"Deduplicated":619}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":464}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":24},"end":{"line":238,"col":27}},"generated_from_span":null},"id":2692,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":119}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":35},"ty":{"Deduplicated":619}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":34},"ty":{"Deduplicated":3971}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":23},"end":{"line":238,"col":27}},"generated_from_span":null},"id":2693,"kind":{"Assign":[{"kind":{"Local":33},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":34},"ty":{"Deduplicated":3971}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":26},"end":{"line":238,"col":27}},"generated_from_span":null},"id":2694,"kind":{"StorageDead":35},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":15},"end":{"line":238,"col":28}},"generated_from_span":null},"id":2695,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":30},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":33},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":29},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":27},"end":{"line":238,"col":28}},"generated_from_span":null},"id":2696,"kind":{"StorageDead":33},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":27},"end":{"line":238,"col":28}},"generated_from_span":null},"id":2697,"kind":{"StorageDead":30},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":31},"end":{"line":238,"col":44}},"generated_from_span":null},"id":2698,"kind":{"StorageLive":36},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":33},"end":{"line":238,"col":37}},"generated_from_span":null},"id":2699,"kind":{"StorageLive":37},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":34},"end":{"line":238,"col":37}},"generated_from_span":null},"id":2700,"kind":{"StorageLive":38},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":33},"end":{"line":238,"col":34}},"generated_from_span":null},"id":2701,"kind":{"StorageLive":39},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":33},"end":{"line":238,"col":34}},"generated_from_span":null},"id":2702,"kind":{"Assign":[{"kind":{"Local":39},"ty":{"Deduplicated":1240}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":34},"end":{"line":238,"col":37}},"generated_from_span":null},"id":2703,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":121}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":39},"ty":{"Deduplicated":1240}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":38},"ty":{"Deduplicated":3972}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":33},"end":{"line":238,"col":37}},"generated_from_span":null},"id":2704,"kind":{"Assign":[{"kind":{"Local":37},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":38},"ty":{"Deduplicated":3972}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":36},"end":{"line":238,"col":37}},"generated_from_span":null},"id":2705,"kind":{"StorageDead":39},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":39},"end":{"line":238,"col":43}},"generated_from_span":null},"id":2706,"kind":{"StorageLive":40},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":40},"end":{"line":238,"col":43}},"generated_from_span":null},"id":2707,"kind":{"StorageLive":41},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":39},"end":{"line":238,"col":40}},"generated_from_span":null},"id":2708,"kind":{"StorageLive":42},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":39},"end":{"line":238,"col":40}},"generated_from_span":null},"id":2709,"kind":{"Assign":[{"kind":{"Local":42},"ty":{"Deduplicated":1302}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":464}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":40},"end":{"line":238,"col":43}},"generated_from_span":null},"id":2710,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":123}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":42},"ty":{"Deduplicated":1302}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":41},"ty":{"Deduplicated":3930}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":39},"end":{"line":238,"col":43}},"generated_from_span":null},"id":2711,"kind":{"Assign":[{"kind":{"Local":40},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":41},"ty":{"Deduplicated":3930}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":42},"end":{"line":238,"col":43}},"generated_from_span":null},"id":2712,"kind":{"StorageDead":42},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":31},"end":{"line":238,"col":44}},"generated_from_span":null},"id":2713,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":37},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":40},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":36},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":43},"end":{"line":238,"col":44}},"generated_from_span":null},"id":2714,"kind":{"StorageDead":40},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":43},"end":{"line":238,"col":44}},"generated_from_span":null},"id":2715,"kind":{"StorageDead":37},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":15},"end":{"line":238,"col":44}},"generated_from_span":null},"id":2716,"kind":{"Assign":[{"kind":{"Local":43},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":29},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":36},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":15},"end":{"line":238,"col":44}},"generated_from_span":null},"id":2718,"kind":{"Assign":[{"kind":{"Local":28},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":43},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":43},"end":{"line":238,"col":44}},"generated_from_span":null},"id":2719,"kind":{"StorageDead":36},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":43},"end":{"line":238,"col":44}},"generated_from_span":null},"id":2720,"kind":{"StorageDead":29},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":47},"end":{"line":238,"col":60}},"generated_from_span":null},"id":2721,"kind":{"StorageLive":44},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":49},"end":{"line":238,"col":53}},"generated_from_span":null},"id":2722,"kind":{"StorageLive":45},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":50},"end":{"line":238,"col":53}},"generated_from_span":null},"id":2723,"kind":{"StorageLive":46},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":49},"end":{"line":238,"col":50}},"generated_from_span":null},"id":2724,"kind":{"StorageLive":47},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":49},"end":{"line":238,"col":50}},"generated_from_span":null},"id":2725,"kind":{"Assign":[{"kind":{"Local":47},"ty":{"Deduplicated":1303}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":50},"end":{"line":238,"col":53}},"generated_from_span":null},"id":2726,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":125}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":47},"ty":{"Deduplicated":1303}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":46},"ty":{"Deduplicated":3973}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":49},"end":{"line":238,"col":53}},"generated_from_span":null},"id":2727,"kind":{"Assign":[{"kind":{"Local":45},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":46},"ty":{"Deduplicated":3973}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":52},"end":{"line":238,"col":53}},"generated_from_span":null},"id":2728,"kind":{"StorageDead":47},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":55},"end":{"line":238,"col":59}},"generated_from_span":null},"id":2729,"kind":{"StorageLive":48},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":56},"end":{"line":238,"col":59}},"generated_from_span":null},"id":2730,"kind":{"StorageLive":49},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":55},"end":{"line":238,"col":56}},"generated_from_span":null},"id":2731,"kind":{"StorageLive":50},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":55},"end":{"line":238,"col":56}},"generated_from_span":null},"id":2732,"kind":{"Assign":[{"kind":{"Local":50},"ty":{"Deduplicated":1304}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":464}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":56},"end":{"line":238,"col":59}},"generated_from_span":null},"id":2733,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":127}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":50},"ty":{"Deduplicated":1304}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":49},"ty":{"Deduplicated":3974}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":55},"end":{"line":238,"col":59}},"generated_from_span":null},"id":2734,"kind":{"Assign":[{"kind":{"Local":48},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":49},"ty":{"Deduplicated":3974}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":58},"end":{"line":238,"col":59}},"generated_from_span":null},"id":2735,"kind":{"StorageDead":50},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":47},"end":{"line":238,"col":60}},"generated_from_span":null},"id":2736,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":45},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":48},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":44},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":59},"end":{"line":238,"col":60}},"generated_from_span":null},"id":2737,"kind":{"StorageDead":48},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":59},"end":{"line":238,"col":60}},"generated_from_span":null},"id":2738,"kind":{"StorageDead":45},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":15},"end":{"line":238,"col":60}},"generated_from_span":null},"id":2739,"kind":{"Assign":[{"kind":{"Local":51},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":28},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":44},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":10},"end":{"line":238,"col":11}},"generated_from_span":null},"id":2741,"kind":{"StorageLive":52},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":10},"end":{"line":238,"col":11}},"generated_from_span":null},"id":2742,"kind":{"Assign":[{"kind":{"Local":52},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":8},"end":{"line":238,"col":60}},"generated_from_span":null},"id":4004,"kind":{"StorageLive":217},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":8},"end":{"line":238,"col":60}},"generated_from_span":null},"id":4005,"kind":{"Assign":[{"kind":{"Local":217},"ty":{"Deduplicated":5013}},{"Ref":{"place":{"kind":{"Local":3},"ty":{"Deduplicated":1221}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":8},"end":{"line":238,"col":60}},"generated_from_span":null},"id":4006,"kind":{"StorageLive":218},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":8},"end":{"line":238,"col":60}},"generated_from_span":null},"id":4007,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Mut","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1220}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","9"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":217},"ty":{"Deduplicated":5013}}},{"Copy":{"kind":{"Local":52},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":218},"ty":{"Deduplicated":5012}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":8},"end":{"line":238,"col":60}},"generated_from_span":null},"id":2745,"kind":{"Assign":[{"kind":{"Projection":[{"kind":{"Local":218},"ty":{"Deduplicated":5012}},"Deref"]},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":51},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":59},"end":{"line":238,"col":60}},"generated_from_span":null},"id":2746,"kind":{"StorageDead":44},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":59},"end":{"line":238,"col":60}},"generated_from_span":null},"id":2747,"kind":{"StorageDead":28},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":60},"end":{"line":238,"col":61}},"generated_from_span":null},"id":2748,"kind":{"StorageDead":52},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":60},"end":{"line":238,"col":61}},"generated_from_span":null},"id":2749,"kind":{"StorageDead":49},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":60},"end":{"line":238,"col":61}},"generated_from_span":null},"id":2750,"kind":{"StorageDead":46},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":60},"end":{"line":238,"col":61}},"generated_from_span":null},"id":2751,"kind":{"StorageDead":41},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":60},"end":{"line":238,"col":61}},"generated_from_span":null},"id":2752,"kind":{"StorageDead":38},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":60},"end":{"line":238,"col":61}},"generated_from_span":null},"id":2753,"kind":{"StorageDead":34},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":238,"col":60},"end":{"line":238,"col":61}},"generated_from_span":null},"id":2754,"kind":{"StorageDead":31},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":15},"end":{"line":239,"col":60}},"generated_from_span":null},"id":2755,"kind":{"StorageLive":53},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":15},"end":{"line":239,"col":44}},"generated_from_span":null},"id":2756,"kind":{"StorageLive":54},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":15},"end":{"line":239,"col":28}},"generated_from_span":null},"id":2757,"kind":{"StorageLive":55},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":17},"end":{"line":239,"col":21}},"generated_from_span":null},"id":2758,"kind":{"StorageLive":56},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":18},"end":{"line":239,"col":21}},"generated_from_span":null},"id":2759,"kind":{"StorageLive":57},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":17},"end":{"line":239,"col":18}},"generated_from_span":null},"id":2760,"kind":{"StorageLive":58},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":17},"end":{"line":239,"col":18}},"generated_from_span":null},"id":2761,"kind":{"Assign":[{"kind":{"Local":58},"ty":{"Deduplicated":1305}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":18},"end":{"line":239,"col":21}},"generated_from_span":null},"id":2762,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":129}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":58},"ty":{"Deduplicated":1305}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":57},"ty":{"Deduplicated":3975}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":17},"end":{"line":239,"col":21}},"generated_from_span":null},"id":2763,"kind":{"Assign":[{"kind":{"Local":56},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":57},"ty":{"Deduplicated":3975}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":20},"end":{"line":239,"col":21}},"generated_from_span":null},"id":2764,"kind":{"StorageDead":58},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":23},"end":{"line":239,"col":27}},"generated_from_span":null},"id":2765,"kind":{"StorageLive":59},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":24},"end":{"line":239,"col":27}},"generated_from_span":null},"id":2766,"kind":{"StorageLive":60},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":23},"end":{"line":239,"col":24}},"generated_from_span":null},"id":2767,"kind":{"StorageLive":61},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":23},"end":{"line":239,"col":24}},"generated_from_span":null},"id":2768,"kind":{"Assign":[{"kind":{"Local":61},"ty":{"Deduplicated":1306}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":464}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":24},"end":{"line":239,"col":27}},"generated_from_span":null},"id":2769,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":131}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":61},"ty":{"Deduplicated":1306}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":60},"ty":{"Deduplicated":3976}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":23},"end":{"line":239,"col":27}},"generated_from_span":null},"id":2770,"kind":{"Assign":[{"kind":{"Local":59},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":60},"ty":{"Deduplicated":3976}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":26},"end":{"line":239,"col":27}},"generated_from_span":null},"id":2771,"kind":{"StorageDead":61},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":15},"end":{"line":239,"col":28}},"generated_from_span":null},"id":2772,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":56},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":59},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":55},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":27},"end":{"line":239,"col":28}},"generated_from_span":null},"id":2773,"kind":{"StorageDead":59},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":27},"end":{"line":239,"col":28}},"generated_from_span":null},"id":2774,"kind":{"StorageDead":56},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":31},"end":{"line":239,"col":44}},"generated_from_span":null},"id":2775,"kind":{"StorageLive":62},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":33},"end":{"line":239,"col":37}},"generated_from_span":null},"id":2776,"kind":{"StorageLive":63},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":34},"end":{"line":239,"col":37}},"generated_from_span":null},"id":2777,"kind":{"StorageLive":64},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":33},"end":{"line":239,"col":34}},"generated_from_span":null},"id":2778,"kind":{"StorageLive":65},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":33},"end":{"line":239,"col":34}},"generated_from_span":null},"id":2779,"kind":{"Assign":[{"kind":{"Local":65},"ty":{"Deduplicated":1450}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":34},"end":{"line":239,"col":37}},"generated_from_span":null},"id":2780,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":133}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":65},"ty":{"Deduplicated":1450}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":64},"ty":{"Deduplicated":3977}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":33},"end":{"line":239,"col":37}},"generated_from_span":null},"id":2781,"kind":{"Assign":[{"kind":{"Local":63},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":64},"ty":{"Deduplicated":3977}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":36},"end":{"line":239,"col":37}},"generated_from_span":null},"id":2782,"kind":{"StorageDead":65},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":39},"end":{"line":239,"col":43}},"generated_from_span":null},"id":2783,"kind":{"StorageLive":66},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":40},"end":{"line":239,"col":43}},"generated_from_span":null},"id":2784,"kind":{"StorageLive":67},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":39},"end":{"line":239,"col":40}},"generated_from_span":null},"id":2785,"kind":{"StorageLive":68},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":39},"end":{"line":239,"col":40}},"generated_from_span":null},"id":2786,"kind":{"Assign":[{"kind":{"Local":68},"ty":{"Deduplicated":1287}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":464}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":40},"end":{"line":239,"col":43}},"generated_from_span":null},"id":2787,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":135}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":68},"ty":{"Deduplicated":1287}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":67},"ty":{"Deduplicated":3978}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":39},"end":{"line":239,"col":43}},"generated_from_span":null},"id":2788,"kind":{"Assign":[{"kind":{"Local":66},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":67},"ty":{"Deduplicated":3978}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":42},"end":{"line":239,"col":43}},"generated_from_span":null},"id":2789,"kind":{"StorageDead":68},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":31},"end":{"line":239,"col":44}},"generated_from_span":null},"id":2790,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":63},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":66},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":62},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":43},"end":{"line":239,"col":44}},"generated_from_span":null},"id":2791,"kind":{"StorageDead":66},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":43},"end":{"line":239,"col":44}},"generated_from_span":null},"id":2792,"kind":{"StorageDead":63},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":15},"end":{"line":239,"col":44}},"generated_from_span":null},"id":2793,"kind":{"Assign":[{"kind":{"Local":69},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":55},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":62},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":15},"end":{"line":239,"col":44}},"generated_from_span":null},"id":2795,"kind":{"Assign":[{"kind":{"Local":54},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":69},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":43},"end":{"line":239,"col":44}},"generated_from_span":null},"id":2796,"kind":{"StorageDead":62},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":43},"end":{"line":239,"col":44}},"generated_from_span":null},"id":2797,"kind":{"StorageDead":55},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":47},"end":{"line":239,"col":60}},"generated_from_span":null},"id":2798,"kind":{"StorageLive":70},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":49},"end":{"line":239,"col":53}},"generated_from_span":null},"id":2799,"kind":{"StorageLive":71},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":50},"end":{"line":239,"col":53}},"generated_from_span":null},"id":2800,"kind":{"StorageLive":72},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":49},"end":{"line":239,"col":50}},"generated_from_span":null},"id":2801,"kind":{"StorageLive":73},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":49},"end":{"line":239,"col":50}},"generated_from_span":null},"id":2802,"kind":{"Assign":[{"kind":{"Local":73},"ty":{"Deduplicated":1289}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":50},"end":{"line":239,"col":53}},"generated_from_span":null},"id":2803,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":137}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":73},"ty":{"Deduplicated":1289}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":72},"ty":{"Deduplicated":3979}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":49},"end":{"line":239,"col":53}},"generated_from_span":null},"id":2804,"kind":{"Assign":[{"kind":{"Local":71},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":72},"ty":{"Deduplicated":3979}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":52},"end":{"line":239,"col":53}},"generated_from_span":null},"id":2805,"kind":{"StorageDead":73},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":55},"end":{"line":239,"col":59}},"generated_from_span":null},"id":2806,"kind":{"StorageLive":74},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":56},"end":{"line":239,"col":59}},"generated_from_span":null},"id":2807,"kind":{"StorageLive":75},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":55},"end":{"line":239,"col":56}},"generated_from_span":null},"id":2808,"kind":{"StorageLive":76},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":55},"end":{"line":239,"col":56}},"generated_from_span":null},"id":2809,"kind":{"Assign":[{"kind":{"Local":76},"ty":{"Deduplicated":1293}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":464}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":56},"end":{"line":239,"col":59}},"generated_from_span":null},"id":2810,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":139}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":76},"ty":{"Deduplicated":1293}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":75},"ty":{"Deduplicated":3980}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":55},"end":{"line":239,"col":59}},"generated_from_span":null},"id":2811,"kind":{"Assign":[{"kind":{"Local":74},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":75},"ty":{"Deduplicated":3980}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":58},"end":{"line":239,"col":59}},"generated_from_span":null},"id":2812,"kind":{"StorageDead":76},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":47},"end":{"line":239,"col":60}},"generated_from_span":null},"id":2813,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":71},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":74},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":70},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":59},"end":{"line":239,"col":60}},"generated_from_span":null},"id":2814,"kind":{"StorageDead":74},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":59},"end":{"line":239,"col":60}},"generated_from_span":null},"id":2815,"kind":{"StorageDead":71},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":15},"end":{"line":239,"col":60}},"generated_from_span":null},"id":2816,"kind":{"Assign":[{"kind":{"Local":77},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":54},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":70},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":15},"end":{"line":239,"col":60}},"generated_from_span":null},"id":2818,"kind":{"Assign":[{"kind":{"Local":53},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":77},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":59},"end":{"line":239,"col":60}},"generated_from_span":null},"id":2819,"kind":{"StorageDead":70},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":59},"end":{"line":239,"col":60}},"generated_from_span":null},"id":2820,"kind":{"StorageDead":54},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":63},"end":{"line":239,"col":76}},"generated_from_span":null},"id":2821,"kind":{"StorageLive":78},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":65},"end":{"line":239,"col":69}},"generated_from_span":null},"id":2822,"kind":{"StorageLive":79},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":66},"end":{"line":239,"col":69}},"generated_from_span":null},"id":2823,"kind":{"StorageLive":80},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":65},"end":{"line":239,"col":66}},"generated_from_span":null},"id":2824,"kind":{"StorageLive":81},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":65},"end":{"line":239,"col":66}},"generated_from_span":null},"id":2825,"kind":{"Assign":[{"kind":{"Local":81},"ty":{"Deduplicated":1451}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":66},"end":{"line":239,"col":69}},"generated_from_span":null},"id":2826,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":141}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":81},"ty":{"Deduplicated":1451}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":80},"ty":{"Deduplicated":3981}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":65},"end":{"line":239,"col":69}},"generated_from_span":null},"id":2827,"kind":{"Assign":[{"kind":{"Local":79},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":80},"ty":{"Deduplicated":3981}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":68},"end":{"line":239,"col":69}},"generated_from_span":null},"id":2828,"kind":{"StorageDead":81},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":71},"end":{"line":239,"col":75}},"generated_from_span":null},"id":2829,"kind":{"StorageLive":82},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":72},"end":{"line":239,"col":75}},"generated_from_span":null},"id":2830,"kind":{"StorageLive":83},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":71},"end":{"line":239,"col":72}},"generated_from_span":null},"id":2831,"kind":{"StorageLive":84},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":71},"end":{"line":239,"col":72}},"generated_from_span":null},"id":2832,"kind":{"Assign":[{"kind":{"Local":84},"ty":{"Deduplicated":1318}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":464}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":72},"end":{"line":239,"col":75}},"generated_from_span":null},"id":2833,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":143}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":84},"ty":{"Deduplicated":1318}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":83},"ty":{"Deduplicated":3982}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":71},"end":{"line":239,"col":75}},"generated_from_span":null},"id":2834,"kind":{"Assign":[{"kind":{"Local":82},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":83},"ty":{"Deduplicated":3982}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":74},"end":{"line":239,"col":75}},"generated_from_span":null},"id":2835,"kind":{"StorageDead":84},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":63},"end":{"line":239,"col":76}},"generated_from_span":null},"id":2836,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":79},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":82},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":78},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":75},"end":{"line":239,"col":76}},"generated_from_span":null},"id":2837,"kind":{"StorageDead":82},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":75},"end":{"line":239,"col":76}},"generated_from_span":null},"id":2838,"kind":{"StorageDead":79},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":15},"end":{"line":239,"col":76}},"generated_from_span":null},"id":2839,"kind":{"Assign":[{"kind":{"Local":85},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":53},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":78},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":10},"end":{"line":239,"col":11}},"generated_from_span":null},"id":2841,"kind":{"StorageLive":86},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":10},"end":{"line":239,"col":11}},"generated_from_span":null},"id":2842,"kind":{"Assign":[{"kind":{"Local":86},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":8},"end":{"line":239,"col":76}},"generated_from_span":null},"id":4008,"kind":{"StorageLive":219},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":8},"end":{"line":239,"col":76}},"generated_from_span":null},"id":4009,"kind":{"Assign":[{"kind":{"Local":219},"ty":{"Deduplicated":5013}},{"Ref":{"place":{"kind":{"Local":3},"ty":{"Deduplicated":1221}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":8},"end":{"line":239,"col":76}},"generated_from_span":null},"id":4010,"kind":{"StorageLive":220},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":8},"end":{"line":239,"col":76}},"generated_from_span":null},"id":4011,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Mut","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1220}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","9"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":219},"ty":{"Deduplicated":5013}}},{"Copy":{"kind":{"Local":86},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":220},"ty":{"Deduplicated":5012}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":8},"end":{"line":239,"col":76}},"generated_from_span":null},"id":2845,"kind":{"Assign":[{"kind":{"Projection":[{"kind":{"Local":220},"ty":{"Deduplicated":5012}},"Deref"]},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":85},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":75},"end":{"line":239,"col":76}},"generated_from_span":null},"id":2846,"kind":{"StorageDead":78},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":75},"end":{"line":239,"col":76}},"generated_from_span":null},"id":2847,"kind":{"StorageDead":53},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":76},"end":{"line":239,"col":77}},"generated_from_span":null},"id":2848,"kind":{"StorageDead":86},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":76},"end":{"line":239,"col":77}},"generated_from_span":null},"id":2849,"kind":{"StorageDead":83},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":76},"end":{"line":239,"col":77}},"generated_from_span":null},"id":2850,"kind":{"StorageDead":80},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":76},"end":{"line":239,"col":77}},"generated_from_span":null},"id":2851,"kind":{"StorageDead":75},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":76},"end":{"line":239,"col":77}},"generated_from_span":null},"id":2852,"kind":{"StorageDead":72},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":76},"end":{"line":239,"col":77}},"generated_from_span":null},"id":2853,"kind":{"StorageDead":67},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":76},"end":{"line":239,"col":77}},"generated_from_span":null},"id":2854,"kind":{"StorageDead":64},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":76},"end":{"line":239,"col":77}},"generated_from_span":null},"id":2855,"kind":{"StorageDead":60},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":239,"col":76},"end":{"line":239,"col":77}},"generated_from_span":null},"id":2856,"kind":{"StorageDead":57},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":15},"end":{"line":240,"col":76}},"generated_from_span":null},"id":2857,"kind":{"StorageLive":87},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":15},"end":{"line":240,"col":60}},"generated_from_span":null},"id":2858,"kind":{"StorageLive":88},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":15},"end":{"line":240,"col":44}},"generated_from_span":null},"id":2859,"kind":{"StorageLive":89},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":15},"end":{"line":240,"col":28}},"generated_from_span":null},"id":2860,"kind":{"StorageLive":90},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":17},"end":{"line":240,"col":21}},"generated_from_span":null},"id":2861,"kind":{"StorageLive":91},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":18},"end":{"line":240,"col":21}},"generated_from_span":null},"id":2862,"kind":{"StorageLive":92},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":17},"end":{"line":240,"col":18}},"generated_from_span":null},"id":2863,"kind":{"StorageLive":93},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":17},"end":{"line":240,"col":18}},"generated_from_span":null},"id":2864,"kind":{"Assign":[{"kind":{"Local":93},"ty":{"Deduplicated":3984}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":18},"end":{"line":240,"col":21}},"generated_from_span":null},"id":2865,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":145}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":93},"ty":{"Deduplicated":3984}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":92},"ty":{"Deduplicated":3983}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":17},"end":{"line":240,"col":21}},"generated_from_span":null},"id":2866,"kind":{"Assign":[{"kind":{"Local":91},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":92},"ty":{"Deduplicated":3983}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":20},"end":{"line":240,"col":21}},"generated_from_span":null},"id":2867,"kind":{"StorageDead":93},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":23},"end":{"line":240,"col":27}},"generated_from_span":null},"id":2868,"kind":{"StorageLive":94},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":24},"end":{"line":240,"col":27}},"generated_from_span":null},"id":2869,"kind":{"StorageLive":95},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":23},"end":{"line":240,"col":24}},"generated_from_span":null},"id":2870,"kind":{"StorageLive":96},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":23},"end":{"line":240,"col":24}},"generated_from_span":null},"id":2871,"kind":{"Assign":[{"kind":{"Local":96},"ty":{"Deduplicated":1322}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":464}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":24},"end":{"line":240,"col":27}},"generated_from_span":null},"id":2872,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":147}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":96},"ty":{"Deduplicated":1322}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":95},"ty":{"Deduplicated":3985}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":23},"end":{"line":240,"col":27}},"generated_from_span":null},"id":2873,"kind":{"Assign":[{"kind":{"Local":94},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":95},"ty":{"Deduplicated":3985}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":26},"end":{"line":240,"col":27}},"generated_from_span":null},"id":2874,"kind":{"StorageDead":96},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":15},"end":{"line":240,"col":28}},"generated_from_span":null},"id":2875,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":91},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":94},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":90},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":27},"end":{"line":240,"col":28}},"generated_from_span":null},"id":2876,"kind":{"StorageDead":94},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":27},"end":{"line":240,"col":28}},"generated_from_span":null},"id":2877,"kind":{"StorageDead":91},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":31},"end":{"line":240,"col":44}},"generated_from_span":null},"id":2878,"kind":{"StorageLive":97},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":33},"end":{"line":240,"col":37}},"generated_from_span":null},"id":2879,"kind":{"StorageLive":98},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":34},"end":{"line":240,"col":37}},"generated_from_span":null},"id":2880,"kind":{"StorageLive":99},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":33},"end":{"line":240,"col":34}},"generated_from_span":null},"id":2881,"kind":{"StorageLive":100},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":33},"end":{"line":240,"col":34}},"generated_from_span":null},"id":2882,"kind":{"Assign":[{"kind":{"Local":100},"ty":{"Deduplicated":3987}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":34},"end":{"line":240,"col":37}},"generated_from_span":null},"id":2883,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":149}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":100},"ty":{"Deduplicated":3987}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":99},"ty":{"Deduplicated":3986}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":33},"end":{"line":240,"col":37}},"generated_from_span":null},"id":2884,"kind":{"Assign":[{"kind":{"Local":98},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":99},"ty":{"Deduplicated":3986}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":36},"end":{"line":240,"col":37}},"generated_from_span":null},"id":2885,"kind":{"StorageDead":100},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":39},"end":{"line":240,"col":43}},"generated_from_span":null},"id":2886,"kind":{"StorageLive":101},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":40},"end":{"line":240,"col":43}},"generated_from_span":null},"id":2887,"kind":{"StorageLive":102},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":39},"end":{"line":240,"col":40}},"generated_from_span":null},"id":2888,"kind":{"StorageLive":103},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":39},"end":{"line":240,"col":40}},"generated_from_span":null},"id":2889,"kind":{"Assign":[{"kind":{"Local":103},"ty":{"Deduplicated":1326}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":464}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":40},"end":{"line":240,"col":43}},"generated_from_span":null},"id":2890,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":151}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":103},"ty":{"Deduplicated":1326}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":102},"ty":{"Deduplicated":3988}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":39},"end":{"line":240,"col":43}},"generated_from_span":null},"id":2891,"kind":{"Assign":[{"kind":{"Local":101},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":102},"ty":{"Deduplicated":3988}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":42},"end":{"line":240,"col":43}},"generated_from_span":null},"id":2892,"kind":{"StorageDead":103},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":31},"end":{"line":240,"col":44}},"generated_from_span":null},"id":2893,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":98},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":101},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":97},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":43},"end":{"line":240,"col":44}},"generated_from_span":null},"id":2894,"kind":{"StorageDead":101},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":43},"end":{"line":240,"col":44}},"generated_from_span":null},"id":2895,"kind":{"StorageDead":98},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":15},"end":{"line":240,"col":44}},"generated_from_span":null},"id":2896,"kind":{"Assign":[{"kind":{"Local":104},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":90},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":97},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":15},"end":{"line":240,"col":44}},"generated_from_span":null},"id":2898,"kind":{"Assign":[{"kind":{"Local":89},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":104},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":43},"end":{"line":240,"col":44}},"generated_from_span":null},"id":2899,"kind":{"StorageDead":97},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":43},"end":{"line":240,"col":44}},"generated_from_span":null},"id":2900,"kind":{"StorageDead":90},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":47},"end":{"line":240,"col":60}},"generated_from_span":null},"id":2901,"kind":{"StorageLive":105},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":49},"end":{"line":240,"col":53}},"generated_from_span":null},"id":2902,"kind":{"StorageLive":106},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":50},"end":{"line":240,"col":53}},"generated_from_span":null},"id":2903,"kind":{"StorageLive":107},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":49},"end":{"line":240,"col":50}},"generated_from_span":null},"id":2904,"kind":{"StorageLive":108},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":49},"end":{"line":240,"col":50}},"generated_from_span":null},"id":2905,"kind":{"Assign":[{"kind":{"Local":108},"ty":{"Deduplicated":3990}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":50},"end":{"line":240,"col":53}},"generated_from_span":null},"id":2906,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":153}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":108},"ty":{"Deduplicated":3990}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":107},"ty":{"Deduplicated":3989}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":49},"end":{"line":240,"col":53}},"generated_from_span":null},"id":2907,"kind":{"Assign":[{"kind":{"Local":106},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":107},"ty":{"Deduplicated":3989}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":52},"end":{"line":240,"col":53}},"generated_from_span":null},"id":2908,"kind":{"StorageDead":108},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":55},"end":{"line":240,"col":59}},"generated_from_span":null},"id":2909,"kind":{"StorageLive":109},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":56},"end":{"line":240,"col":59}},"generated_from_span":null},"id":2910,"kind":{"StorageLive":110},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":55},"end":{"line":240,"col":56}},"generated_from_span":null},"id":2911,"kind":{"StorageLive":111},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":55},"end":{"line":240,"col":56}},"generated_from_span":null},"id":2912,"kind":{"Assign":[{"kind":{"Local":111},"ty":{"Deduplicated":1330}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":464}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":56},"end":{"line":240,"col":59}},"generated_from_span":null},"id":2913,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":155}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":111},"ty":{"Deduplicated":1330}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":110},"ty":{"Deduplicated":3991}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":55},"end":{"line":240,"col":59}},"generated_from_span":null},"id":2914,"kind":{"Assign":[{"kind":{"Local":109},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":110},"ty":{"Deduplicated":3991}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":58},"end":{"line":240,"col":59}},"generated_from_span":null},"id":2915,"kind":{"StorageDead":111},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":47},"end":{"line":240,"col":60}},"generated_from_span":null},"id":2916,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":106},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":109},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":105},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":59},"end":{"line":240,"col":60}},"generated_from_span":null},"id":2917,"kind":{"StorageDead":109},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":59},"end":{"line":240,"col":60}},"generated_from_span":null},"id":2918,"kind":{"StorageDead":106},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":15},"end":{"line":240,"col":60}},"generated_from_span":null},"id":2919,"kind":{"Assign":[{"kind":{"Local":112},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":89},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":105},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":15},"end":{"line":240,"col":60}},"generated_from_span":null},"id":2921,"kind":{"Assign":[{"kind":{"Local":88},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":112},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":59},"end":{"line":240,"col":60}},"generated_from_span":null},"id":2922,"kind":{"StorageDead":105},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":59},"end":{"line":240,"col":60}},"generated_from_span":null},"id":2923,"kind":{"StorageDead":89},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":63},"end":{"line":240,"col":76}},"generated_from_span":null},"id":2924,"kind":{"StorageLive":113},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":65},"end":{"line":240,"col":69}},"generated_from_span":null},"id":2925,"kind":{"StorageLive":114},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":66},"end":{"line":240,"col":69}},"generated_from_span":null},"id":2926,"kind":{"StorageLive":115},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":65},"end":{"line":240,"col":66}},"generated_from_span":null},"id":2927,"kind":{"StorageLive":116},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":65},"end":{"line":240,"col":66}},"generated_from_span":null},"id":2928,"kind":{"Assign":[{"kind":{"Local":116},"ty":{"Deduplicated":3993}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":66},"end":{"line":240,"col":69}},"generated_from_span":null},"id":2929,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":157}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":116},"ty":{"Deduplicated":3993}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":115},"ty":{"Deduplicated":3992}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":65},"end":{"line":240,"col":69}},"generated_from_span":null},"id":2930,"kind":{"Assign":[{"kind":{"Local":114},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":115},"ty":{"Deduplicated":3992}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":68},"end":{"line":240,"col":69}},"generated_from_span":null},"id":2931,"kind":{"StorageDead":116},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":71},"end":{"line":240,"col":75}},"generated_from_span":null},"id":2932,"kind":{"StorageLive":117},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":72},"end":{"line":240,"col":75}},"generated_from_span":null},"id":2933,"kind":{"StorageLive":118},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":71},"end":{"line":240,"col":72}},"generated_from_span":null},"id":2934,"kind":{"StorageLive":119},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":71},"end":{"line":240,"col":72}},"generated_from_span":null},"id":2935,"kind":{"Assign":[{"kind":{"Local":119},"ty":{"Deduplicated":1334}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":464}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":72},"end":{"line":240,"col":75}},"generated_from_span":null},"id":2936,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":159}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":119},"ty":{"Deduplicated":1334}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":118},"ty":{"Deduplicated":3994}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":71},"end":{"line":240,"col":75}},"generated_from_span":null},"id":2937,"kind":{"Assign":[{"kind":{"Local":117},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":118},"ty":{"Deduplicated":3994}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":74},"end":{"line":240,"col":75}},"generated_from_span":null},"id":2938,"kind":{"StorageDead":119},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":63},"end":{"line":240,"col":76}},"generated_from_span":null},"id":2939,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":114},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":117},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":113},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":75},"end":{"line":240,"col":76}},"generated_from_span":null},"id":2940,"kind":{"StorageDead":117},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":75},"end":{"line":240,"col":76}},"generated_from_span":null},"id":2941,"kind":{"StorageDead":114},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":15},"end":{"line":240,"col":76}},"generated_from_span":null},"id":2942,"kind":{"Assign":[{"kind":{"Local":120},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":88},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":113},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":15},"end":{"line":240,"col":76}},"generated_from_span":null},"id":2944,"kind":{"Assign":[{"kind":{"Local":87},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":120},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":75},"end":{"line":240,"col":76}},"generated_from_span":null},"id":2945,"kind":{"StorageDead":113},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":75},"end":{"line":240,"col":76}},"generated_from_span":null},"id":2946,"kind":{"StorageDead":88},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":79},"end":{"line":240,"col":92}},"generated_from_span":null},"id":2947,"kind":{"StorageLive":121},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":81},"end":{"line":240,"col":85}},"generated_from_span":null},"id":2948,"kind":{"StorageLive":122},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":82},"end":{"line":240,"col":85}},"generated_from_span":null},"id":2949,"kind":{"StorageLive":123},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":81},"end":{"line":240,"col":82}},"generated_from_span":null},"id":2950,"kind":{"StorageLive":124},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":81},"end":{"line":240,"col":82}},"generated_from_span":null},"id":2951,"kind":{"Assign":[{"kind":{"Local":124},"ty":{"Deduplicated":3996}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":82},"end":{"line":240,"col":85}},"generated_from_span":null},"id":2952,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":161}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":124},"ty":{"Deduplicated":3996}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":123},"ty":{"Deduplicated":3995}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":81},"end":{"line":240,"col":85}},"generated_from_span":null},"id":2953,"kind":{"Assign":[{"kind":{"Local":122},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":123},"ty":{"Deduplicated":3995}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":84},"end":{"line":240,"col":85}},"generated_from_span":null},"id":2954,"kind":{"StorageDead":124},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":87},"end":{"line":240,"col":91}},"generated_from_span":null},"id":2955,"kind":{"StorageLive":125},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":88},"end":{"line":240,"col":91}},"generated_from_span":null},"id":2956,"kind":{"StorageLive":126},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":87},"end":{"line":240,"col":88}},"generated_from_span":null},"id":2957,"kind":{"StorageLive":127},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":87},"end":{"line":240,"col":88}},"generated_from_span":null},"id":2958,"kind":{"Assign":[{"kind":{"Local":127},"ty":{"Deduplicated":1338}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":464}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":88},"end":{"line":240,"col":91}},"generated_from_span":null},"id":2959,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":163}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":127},"ty":{"Deduplicated":1338}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":126},"ty":{"Deduplicated":3997}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":87},"end":{"line":240,"col":91}},"generated_from_span":null},"id":2960,"kind":{"Assign":[{"kind":{"Local":125},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":126},"ty":{"Deduplicated":3997}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":90},"end":{"line":240,"col":91}},"generated_from_span":null},"id":2961,"kind":{"StorageDead":127},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":79},"end":{"line":240,"col":92}},"generated_from_span":null},"id":2962,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":122},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":125},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":121},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":91},"end":{"line":240,"col":92}},"generated_from_span":null},"id":2963,"kind":{"StorageDead":125},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":91},"end":{"line":240,"col":92}},"generated_from_span":null},"id":2964,"kind":{"StorageDead":122},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":15},"end":{"line":240,"col":92}},"generated_from_span":null},"id":2965,"kind":{"Assign":[{"kind":{"Local":128},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":87},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":121},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":10},"end":{"line":240,"col":11}},"generated_from_span":null},"id":2967,"kind":{"StorageLive":129},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":10},"end":{"line":240,"col":11}},"generated_from_span":null},"id":2968,"kind":{"Assign":[{"kind":{"Local":129},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":8},"end":{"line":240,"col":92}},"generated_from_span":null},"id":4012,"kind":{"StorageLive":221},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":8},"end":{"line":240,"col":92}},"generated_from_span":null},"id":4013,"kind":{"Assign":[{"kind":{"Local":221},"ty":{"Deduplicated":5013}},{"Ref":{"place":{"kind":{"Local":3},"ty":{"Deduplicated":1221}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":8},"end":{"line":240,"col":92}},"generated_from_span":null},"id":4014,"kind":{"StorageLive":222},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":8},"end":{"line":240,"col":92}},"generated_from_span":null},"id":4015,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Mut","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1220}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","9"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":221},"ty":{"Deduplicated":5013}}},{"Copy":{"kind":{"Local":129},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":222},"ty":{"Deduplicated":5012}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":8},"end":{"line":240,"col":92}},"generated_from_span":null},"id":2971,"kind":{"Assign":[{"kind":{"Projection":[{"kind":{"Local":222},"ty":{"Deduplicated":5012}},"Deref"]},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":128},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":91},"end":{"line":240,"col":92}},"generated_from_span":null},"id":2972,"kind":{"StorageDead":121},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":91},"end":{"line":240,"col":92}},"generated_from_span":null},"id":2973,"kind":{"StorageDead":87},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":92},"end":{"line":240,"col":93}},"generated_from_span":null},"id":2974,"kind":{"StorageDead":129},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":92},"end":{"line":240,"col":93}},"generated_from_span":null},"id":2975,"kind":{"StorageDead":126},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":92},"end":{"line":240,"col":93}},"generated_from_span":null},"id":2976,"kind":{"StorageDead":123},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":92},"end":{"line":240,"col":93}},"generated_from_span":null},"id":2977,"kind":{"StorageDead":118},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":92},"end":{"line":240,"col":93}},"generated_from_span":null},"id":2978,"kind":{"StorageDead":115},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":92},"end":{"line":240,"col":93}},"generated_from_span":null},"id":2979,"kind":{"StorageDead":110},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":92},"end":{"line":240,"col":93}},"generated_from_span":null},"id":2980,"kind":{"StorageDead":107},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":92},"end":{"line":240,"col":93}},"generated_from_span":null},"id":2981,"kind":{"StorageDead":102},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":92},"end":{"line":240,"col":93}},"generated_from_span":null},"id":2982,"kind":{"StorageDead":99},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":92},"end":{"line":240,"col":93}},"generated_from_span":null},"id":2983,"kind":{"StorageDead":95},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":240,"col":92},"end":{"line":240,"col":93}},"generated_from_span":null},"id":2984,"kind":{"StorageDead":92},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":31},"end":{"line":241,"col":76}},"generated_from_span":null},"id":2985,"kind":{"StorageLive":130},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":31},"end":{"line":241,"col":60}},"generated_from_span":null},"id":2986,"kind":{"StorageLive":131},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":31},"end":{"line":241,"col":44}},"generated_from_span":null},"id":2987,"kind":{"StorageLive":132},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":33},"end":{"line":241,"col":37}},"generated_from_span":null},"id":2988,"kind":{"StorageLive":133},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":34},"end":{"line":241,"col":37}},"generated_from_span":null},"id":2989,"kind":{"StorageLive":134},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":33},"end":{"line":241,"col":34}},"generated_from_span":null},"id":2990,"kind":{"StorageLive":135},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":33},"end":{"line":241,"col":34}},"generated_from_span":null},"id":2991,"kind":{"Assign":[{"kind":{"Local":135},"ty":{"Deduplicated":3999}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":34},"end":{"line":241,"col":37}},"generated_from_span":null},"id":2992,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":165}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":135},"ty":{"Deduplicated":3999}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":134},"ty":{"Deduplicated":3998}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":33},"end":{"line":241,"col":37}},"generated_from_span":null},"id":2993,"kind":{"Assign":[{"kind":{"Local":133},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":134},"ty":{"Deduplicated":3998}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":36},"end":{"line":241,"col":37}},"generated_from_span":null},"id":2994,"kind":{"StorageDead":135},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":39},"end":{"line":241,"col":43}},"generated_from_span":null},"id":2995,"kind":{"StorageLive":136},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":40},"end":{"line":241,"col":43}},"generated_from_span":null},"id":2996,"kind":{"StorageLive":137},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":39},"end":{"line":241,"col":40}},"generated_from_span":null},"id":2997,"kind":{"StorageLive":138},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":39},"end":{"line":241,"col":40}},"generated_from_span":null},"id":2998,"kind":{"Assign":[{"kind":{"Local":138},"ty":{"Deduplicated":1342}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":464}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":40},"end":{"line":241,"col":43}},"generated_from_span":null},"id":2999,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":167}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":138},"ty":{"Deduplicated":1342}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":137},"ty":{"Deduplicated":4000}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":39},"end":{"line":241,"col":43}},"generated_from_span":null},"id":3000,"kind":{"Assign":[{"kind":{"Local":136},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":137},"ty":{"Deduplicated":4000}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":42},"end":{"line":241,"col":43}},"generated_from_span":null},"id":3001,"kind":{"StorageDead":138},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":31},"end":{"line":241,"col":44}},"generated_from_span":null},"id":3002,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":133},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":136},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":132},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":43},"end":{"line":241,"col":44}},"generated_from_span":null},"id":3003,"kind":{"StorageDead":136},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":43},"end":{"line":241,"col":44}},"generated_from_span":null},"id":3004,"kind":{"StorageDead":133},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":47},"end":{"line":241,"col":60}},"generated_from_span":null},"id":3005,"kind":{"StorageLive":139},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":49},"end":{"line":241,"col":53}},"generated_from_span":null},"id":3006,"kind":{"StorageLive":140},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":50},"end":{"line":241,"col":53}},"generated_from_span":null},"id":3007,"kind":{"StorageLive":141},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":49},"end":{"line":241,"col":50}},"generated_from_span":null},"id":3008,"kind":{"StorageLive":142},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":49},"end":{"line":241,"col":50}},"generated_from_span":null},"id":3009,"kind":{"Assign":[{"kind":{"Local":142},"ty":{"Deduplicated":4002}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":50},"end":{"line":241,"col":53}},"generated_from_span":null},"id":3010,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":169}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":142},"ty":{"Deduplicated":4002}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":141},"ty":{"Deduplicated":4001}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":49},"end":{"line":241,"col":53}},"generated_from_span":null},"id":3011,"kind":{"Assign":[{"kind":{"Local":140},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":141},"ty":{"Deduplicated":4001}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":52},"end":{"line":241,"col":53}},"generated_from_span":null},"id":3012,"kind":{"StorageDead":142},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":55},"end":{"line":241,"col":59}},"generated_from_span":null},"id":3013,"kind":{"StorageLive":143},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":56},"end":{"line":241,"col":59}},"generated_from_span":null},"id":3014,"kind":{"StorageLive":144},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":55},"end":{"line":241,"col":56}},"generated_from_span":null},"id":3015,"kind":{"StorageLive":145},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":55},"end":{"line":241,"col":56}},"generated_from_span":null},"id":3016,"kind":{"Assign":[{"kind":{"Local":145},"ty":{"Deduplicated":1346}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":464}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":56},"end":{"line":241,"col":59}},"generated_from_span":null},"id":3017,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":171}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":145},"ty":{"Deduplicated":1346}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":144},"ty":{"Deduplicated":4003}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":55},"end":{"line":241,"col":59}},"generated_from_span":null},"id":3018,"kind":{"Assign":[{"kind":{"Local":143},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":144},"ty":{"Deduplicated":4003}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":58},"end":{"line":241,"col":59}},"generated_from_span":null},"id":3019,"kind":{"StorageDead":145},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":47},"end":{"line":241,"col":60}},"generated_from_span":null},"id":3020,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":140},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":143},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":139},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":59},"end":{"line":241,"col":60}},"generated_from_span":null},"id":3021,"kind":{"StorageDead":143},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":59},"end":{"line":241,"col":60}},"generated_from_span":null},"id":3022,"kind":{"StorageDead":140},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":31},"end":{"line":241,"col":60}},"generated_from_span":null},"id":3023,"kind":{"Assign":[{"kind":{"Local":146},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":132},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":139},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":31},"end":{"line":241,"col":60}},"generated_from_span":null},"id":3025,"kind":{"Assign":[{"kind":{"Local":131},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":146},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":59},"end":{"line":241,"col":60}},"generated_from_span":null},"id":3026,"kind":{"StorageDead":139},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":59},"end":{"line":241,"col":60}},"generated_from_span":null},"id":3027,"kind":{"StorageDead":132},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":63},"end":{"line":241,"col":76}},"generated_from_span":null},"id":3028,"kind":{"StorageLive":147},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":65},"end":{"line":241,"col":69}},"generated_from_span":null},"id":3029,"kind":{"StorageLive":148},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":66},"end":{"line":241,"col":69}},"generated_from_span":null},"id":3030,"kind":{"StorageLive":149},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":65},"end":{"line":241,"col":66}},"generated_from_span":null},"id":3031,"kind":{"StorageLive":150},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":65},"end":{"line":241,"col":66}},"generated_from_span":null},"id":3032,"kind":{"Assign":[{"kind":{"Local":150},"ty":{"Deduplicated":1457}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":66},"end":{"line":241,"col":69}},"generated_from_span":null},"id":3033,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":173}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":150},"ty":{"Deduplicated":1457}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":149},"ty":{"Deduplicated":4004}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":65},"end":{"line":241,"col":69}},"generated_from_span":null},"id":3034,"kind":{"Assign":[{"kind":{"Local":148},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":149},"ty":{"Deduplicated":4004}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":68},"end":{"line":241,"col":69}},"generated_from_span":null},"id":3035,"kind":{"StorageDead":150},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":71},"end":{"line":241,"col":75}},"generated_from_span":null},"id":3036,"kind":{"StorageLive":151},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":72},"end":{"line":241,"col":75}},"generated_from_span":null},"id":3037,"kind":{"StorageLive":152},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":71},"end":{"line":241,"col":72}},"generated_from_span":null},"id":3038,"kind":{"StorageLive":153},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":71},"end":{"line":241,"col":72}},"generated_from_span":null},"id":3039,"kind":{"Assign":[{"kind":{"Local":153},"ty":{"Deduplicated":1350}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":464}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":72},"end":{"line":241,"col":75}},"generated_from_span":null},"id":3040,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":175}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":153},"ty":{"Deduplicated":1350}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":152},"ty":{"Deduplicated":4005}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":71},"end":{"line":241,"col":75}},"generated_from_span":null},"id":3041,"kind":{"Assign":[{"kind":{"Local":151},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":152},"ty":{"Deduplicated":4005}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":74},"end":{"line":241,"col":75}},"generated_from_span":null},"id":3042,"kind":{"StorageDead":153},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":63},"end":{"line":241,"col":76}},"generated_from_span":null},"id":3043,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":148},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":151},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":147},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":75},"end":{"line":241,"col":76}},"generated_from_span":null},"id":3044,"kind":{"StorageDead":151},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":75},"end":{"line":241,"col":76}},"generated_from_span":null},"id":3045,"kind":{"StorageDead":148},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":31},"end":{"line":241,"col":76}},"generated_from_span":null},"id":3046,"kind":{"Assign":[{"kind":{"Local":154},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":131},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":147},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":31},"end":{"line":241,"col":76}},"generated_from_span":null},"id":3048,"kind":{"Assign":[{"kind":{"Local":130},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":154},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":75},"end":{"line":241,"col":76}},"generated_from_span":null},"id":3049,"kind":{"StorageDead":147},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":75},"end":{"line":241,"col":76}},"generated_from_span":null},"id":3050,"kind":{"StorageDead":131},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":79},"end":{"line":241,"col":92}},"generated_from_span":null},"id":3051,"kind":{"StorageLive":155},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":81},"end":{"line":241,"col":85}},"generated_from_span":null},"id":3052,"kind":{"StorageLive":156},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":82},"end":{"line":241,"col":85}},"generated_from_span":null},"id":3053,"kind":{"StorageLive":157},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":81},"end":{"line":241,"col":82}},"generated_from_span":null},"id":3054,"kind":{"StorageLive":158},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":81},"end":{"line":241,"col":82}},"generated_from_span":null},"id":3055,"kind":{"Assign":[{"kind":{"Local":158},"ty":{"Deduplicated":4007}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":82},"end":{"line":241,"col":85}},"generated_from_span":null},"id":3056,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":177}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":158},"ty":{"Deduplicated":4007}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":157},"ty":{"Deduplicated":4006}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":81},"end":{"line":241,"col":85}},"generated_from_span":null},"id":3057,"kind":{"Assign":[{"kind":{"Local":156},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":157},"ty":{"Deduplicated":4006}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":84},"end":{"line":241,"col":85}},"generated_from_span":null},"id":3058,"kind":{"StorageDead":158},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":87},"end":{"line":241,"col":91}},"generated_from_span":null},"id":3059,"kind":{"StorageLive":159},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":88},"end":{"line":241,"col":91}},"generated_from_span":null},"id":3060,"kind":{"StorageLive":160},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":87},"end":{"line":241,"col":88}},"generated_from_span":null},"id":3061,"kind":{"StorageLive":161},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":87},"end":{"line":241,"col":88}},"generated_from_span":null},"id":3062,"kind":{"Assign":[{"kind":{"Local":161},"ty":{"Deduplicated":1354}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":464}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":88},"end":{"line":241,"col":91}},"generated_from_span":null},"id":3063,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":179}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":161},"ty":{"Deduplicated":1354}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":160},"ty":{"Deduplicated":4008}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":87},"end":{"line":241,"col":91}},"generated_from_span":null},"id":3064,"kind":{"Assign":[{"kind":{"Local":159},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":160},"ty":{"Deduplicated":4008}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":90},"end":{"line":241,"col":91}},"generated_from_span":null},"id":3065,"kind":{"StorageDead":161},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":79},"end":{"line":241,"col":92}},"generated_from_span":null},"id":3066,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":156},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":159},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":155},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":91},"end":{"line":241,"col":92}},"generated_from_span":null},"id":3067,"kind":{"StorageDead":159},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":91},"end":{"line":241,"col":92}},"generated_from_span":null},"id":3068,"kind":{"StorageDead":156},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":31},"end":{"line":241,"col":92}},"generated_from_span":null},"id":3069,"kind":{"Assign":[{"kind":{"Local":162},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":130},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":155},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":10},"end":{"line":241,"col":11}},"generated_from_span":null},"id":3071,"kind":{"StorageLive":163},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":10},"end":{"line":241,"col":11}},"generated_from_span":null},"id":3072,"kind":{"Assign":[{"kind":{"Local":163},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","5"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":8},"end":{"line":241,"col":92}},"generated_from_span":null},"id":4016,"kind":{"StorageLive":223},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":8},"end":{"line":241,"col":92}},"generated_from_span":null},"id":4017,"kind":{"Assign":[{"kind":{"Local":223},"ty":{"Deduplicated":5013}},{"Ref":{"place":{"kind":{"Local":3},"ty":{"Deduplicated":1221}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":8},"end":{"line":241,"col":92}},"generated_from_span":null},"id":4018,"kind":{"StorageLive":224},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":8},"end":{"line":241,"col":92}},"generated_from_span":null},"id":4019,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Mut","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1220}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","9"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":223},"ty":{"Deduplicated":5013}}},{"Copy":{"kind":{"Local":163},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":224},"ty":{"Deduplicated":5012}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":8},"end":{"line":241,"col":92}},"generated_from_span":null},"id":3075,"kind":{"Assign":[{"kind":{"Projection":[{"kind":{"Local":224},"ty":{"Deduplicated":5012}},"Deref"]},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":162},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":91},"end":{"line":241,"col":92}},"generated_from_span":null},"id":3076,"kind":{"StorageDead":155},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":91},"end":{"line":241,"col":92}},"generated_from_span":null},"id":3077,"kind":{"StorageDead":130},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":92},"end":{"line":241,"col":93}},"generated_from_span":null},"id":3078,"kind":{"StorageDead":163},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":92},"end":{"line":241,"col":93}},"generated_from_span":null},"id":3079,"kind":{"StorageDead":160},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":92},"end":{"line":241,"col":93}},"generated_from_span":null},"id":3080,"kind":{"StorageDead":157},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":92},"end":{"line":241,"col":93}},"generated_from_span":null},"id":3081,"kind":{"StorageDead":152},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":92},"end":{"line":241,"col":93}},"generated_from_span":null},"id":3082,"kind":{"StorageDead":149},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":92},"end":{"line":241,"col":93}},"generated_from_span":null},"id":3083,"kind":{"StorageDead":144},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":92},"end":{"line":241,"col":93}},"generated_from_span":null},"id":3084,"kind":{"StorageDead":141},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":92},"end":{"line":241,"col":93}},"generated_from_span":null},"id":3085,"kind":{"StorageDead":137},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":241,"col":92},"end":{"line":241,"col":93}},"generated_from_span":null},"id":3086,"kind":{"StorageDead":134},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":47},"end":{"line":242,"col":76}},"generated_from_span":null},"id":3087,"kind":{"StorageLive":164},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":47},"end":{"line":242,"col":60}},"generated_from_span":null},"id":3088,"kind":{"StorageLive":165},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":49},"end":{"line":242,"col":53}},"generated_from_span":null},"id":3089,"kind":{"StorageLive":166},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":50},"end":{"line":242,"col":53}},"generated_from_span":null},"id":3090,"kind":{"StorageLive":167},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":49},"end":{"line":242,"col":50}},"generated_from_span":null},"id":3091,"kind":{"StorageLive":168},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":49},"end":{"line":242,"col":50}},"generated_from_span":null},"id":3092,"kind":{"Assign":[{"kind":{"Local":168},"ty":{"Deduplicated":4010}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":50},"end":{"line":242,"col":53}},"generated_from_span":null},"id":3093,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":181}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":168},"ty":{"Deduplicated":4010}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":167},"ty":{"Deduplicated":4009}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":49},"end":{"line":242,"col":53}},"generated_from_span":null},"id":3094,"kind":{"Assign":[{"kind":{"Local":166},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":167},"ty":{"Deduplicated":4009}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":52},"end":{"line":242,"col":53}},"generated_from_span":null},"id":3095,"kind":{"StorageDead":168},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":55},"end":{"line":242,"col":59}},"generated_from_span":null},"id":3096,"kind":{"StorageLive":169},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":56},"end":{"line":242,"col":59}},"generated_from_span":null},"id":3097,"kind":{"StorageLive":170},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":55},"end":{"line":242,"col":56}},"generated_from_span":null},"id":3098,"kind":{"StorageLive":171},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":55},"end":{"line":242,"col":56}},"generated_from_span":null},"id":3099,"kind":{"Assign":[{"kind":{"Local":171},"ty":{"Deduplicated":1358}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":464}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":56},"end":{"line":242,"col":59}},"generated_from_span":null},"id":3100,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":183}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":171},"ty":{"Deduplicated":1358}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":170},"ty":{"Deduplicated":4011}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":55},"end":{"line":242,"col":59}},"generated_from_span":null},"id":3101,"kind":{"Assign":[{"kind":{"Local":169},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":170},"ty":{"Deduplicated":4011}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":58},"end":{"line":242,"col":59}},"generated_from_span":null},"id":3102,"kind":{"StorageDead":171},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":47},"end":{"line":242,"col":60}},"generated_from_span":null},"id":3103,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":166},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":169},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":165},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":59},"end":{"line":242,"col":60}},"generated_from_span":null},"id":3104,"kind":{"StorageDead":169},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":59},"end":{"line":242,"col":60}},"generated_from_span":null},"id":3105,"kind":{"StorageDead":166},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":63},"end":{"line":242,"col":76}},"generated_from_span":null},"id":3106,"kind":{"StorageLive":172},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":65},"end":{"line":242,"col":69}},"generated_from_span":null},"id":3107,"kind":{"StorageLive":173},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":66},"end":{"line":242,"col":69}},"generated_from_span":null},"id":3108,"kind":{"StorageLive":174},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":65},"end":{"line":242,"col":66}},"generated_from_span":null},"id":3109,"kind":{"StorageLive":175},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":65},"end":{"line":242,"col":66}},"generated_from_span":null},"id":3110,"kind":{"Assign":[{"kind":{"Local":175},"ty":{"Deduplicated":4013}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":66},"end":{"line":242,"col":69}},"generated_from_span":null},"id":3111,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":185}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":175},"ty":{"Deduplicated":4013}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":174},"ty":{"Deduplicated":4012}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":65},"end":{"line":242,"col":69}},"generated_from_span":null},"id":3112,"kind":{"Assign":[{"kind":{"Local":173},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":174},"ty":{"Deduplicated":4012}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":68},"end":{"line":242,"col":69}},"generated_from_span":null},"id":3113,"kind":{"StorageDead":175},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":71},"end":{"line":242,"col":75}},"generated_from_span":null},"id":3114,"kind":{"StorageLive":176},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":72},"end":{"line":242,"col":75}},"generated_from_span":null},"id":3115,"kind":{"StorageLive":177},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":71},"end":{"line":242,"col":72}},"generated_from_span":null},"id":3116,"kind":{"StorageLive":178},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":71},"end":{"line":242,"col":72}},"generated_from_span":null},"id":3117,"kind":{"Assign":[{"kind":{"Local":178},"ty":{"Deduplicated":1362}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":464}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":72},"end":{"line":242,"col":75}},"generated_from_span":null},"id":3118,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":187}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":178},"ty":{"Deduplicated":1362}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":177},"ty":{"Deduplicated":4014}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":71},"end":{"line":242,"col":75}},"generated_from_span":null},"id":3119,"kind":{"Assign":[{"kind":{"Local":176},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":177},"ty":{"Deduplicated":4014}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":74},"end":{"line":242,"col":75}},"generated_from_span":null},"id":3120,"kind":{"StorageDead":178},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":63},"end":{"line":242,"col":76}},"generated_from_span":null},"id":3121,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":173},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":176},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":172},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":75},"end":{"line":242,"col":76}},"generated_from_span":null},"id":3122,"kind":{"StorageDead":176},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":75},"end":{"line":242,"col":76}},"generated_from_span":null},"id":3123,"kind":{"StorageDead":173},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":47},"end":{"line":242,"col":76}},"generated_from_span":null},"id":3124,"kind":{"Assign":[{"kind":{"Local":179},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":165},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":172},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":47},"end":{"line":242,"col":76}},"generated_from_span":null},"id":3126,"kind":{"Assign":[{"kind":{"Local":164},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":179},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":75},"end":{"line":242,"col":76}},"generated_from_span":null},"id":3127,"kind":{"StorageDead":172},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":75},"end":{"line":242,"col":76}},"generated_from_span":null},"id":3128,"kind":{"StorageDead":165},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":79},"end":{"line":242,"col":92}},"generated_from_span":null},"id":3129,"kind":{"StorageLive":180},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":81},"end":{"line":242,"col":85}},"generated_from_span":null},"id":3130,"kind":{"StorageLive":181},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":82},"end":{"line":242,"col":85}},"generated_from_span":null},"id":3131,"kind":{"StorageLive":182},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":81},"end":{"line":242,"col":82}},"generated_from_span":null},"id":3132,"kind":{"StorageLive":183},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":81},"end":{"line":242,"col":82}},"generated_from_span":null},"id":3133,"kind":{"Assign":[{"kind":{"Local":183},"ty":{"Deduplicated":4016}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":82},"end":{"line":242,"col":85}},"generated_from_span":null},"id":3134,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":189}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":183},"ty":{"Deduplicated":4016}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":182},"ty":{"Deduplicated":4015}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":81},"end":{"line":242,"col":85}},"generated_from_span":null},"id":3135,"kind":{"Assign":[{"kind":{"Local":181},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":182},"ty":{"Deduplicated":4015}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":84},"end":{"line":242,"col":85}},"generated_from_span":null},"id":3136,"kind":{"StorageDead":183},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":87},"end":{"line":242,"col":91}},"generated_from_span":null},"id":3137,"kind":{"StorageLive":184},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":88},"end":{"line":242,"col":91}},"generated_from_span":null},"id":3138,"kind":{"StorageLive":185},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":87},"end":{"line":242,"col":88}},"generated_from_span":null},"id":3139,"kind":{"StorageLive":186},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":87},"end":{"line":242,"col":88}},"generated_from_span":null},"id":3140,"kind":{"Assign":[{"kind":{"Local":186},"ty":{"Deduplicated":1366}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":464}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":88},"end":{"line":242,"col":91}},"generated_from_span":null},"id":3141,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":191}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":186},"ty":{"Deduplicated":1366}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":185},"ty":{"Deduplicated":4017}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":87},"end":{"line":242,"col":91}},"generated_from_span":null},"id":3142,"kind":{"Assign":[{"kind":{"Local":184},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":185},"ty":{"Deduplicated":4017}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":90},"end":{"line":242,"col":91}},"generated_from_span":null},"id":3143,"kind":{"StorageDead":186},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":79},"end":{"line":242,"col":92}},"generated_from_span":null},"id":3144,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":181},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":184},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":180},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":91},"end":{"line":242,"col":92}},"generated_from_span":null},"id":3145,"kind":{"StorageDead":184},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":91},"end":{"line":242,"col":92}},"generated_from_span":null},"id":3146,"kind":{"StorageDead":181},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":47},"end":{"line":242,"col":92}},"generated_from_span":null},"id":3147,"kind":{"Assign":[{"kind":{"Local":187},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":164},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":180},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":10},"end":{"line":242,"col":11}},"generated_from_span":null},"id":3149,"kind":{"StorageLive":188},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":10},"end":{"line":242,"col":11}},"generated_from_span":null},"id":3150,"kind":{"Assign":[{"kind":{"Local":188},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","6"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":8},"end":{"line":242,"col":92}},"generated_from_span":null},"id":4020,"kind":{"StorageLive":225},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":8},"end":{"line":242,"col":92}},"generated_from_span":null},"id":4021,"kind":{"Assign":[{"kind":{"Local":225},"ty":{"Deduplicated":5013}},{"Ref":{"place":{"kind":{"Local":3},"ty":{"Deduplicated":1221}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":8},"end":{"line":242,"col":92}},"generated_from_span":null},"id":4022,"kind":{"StorageLive":226},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":8},"end":{"line":242,"col":92}},"generated_from_span":null},"id":4023,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Mut","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1220}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","9"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":225},"ty":{"Deduplicated":5013}}},{"Copy":{"kind":{"Local":188},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":226},"ty":{"Deduplicated":5012}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":8},"end":{"line":242,"col":92}},"generated_from_span":null},"id":3153,"kind":{"Assign":[{"kind":{"Projection":[{"kind":{"Local":226},"ty":{"Deduplicated":5012}},"Deref"]},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":187},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":91},"end":{"line":242,"col":92}},"generated_from_span":null},"id":3154,"kind":{"StorageDead":180},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":91},"end":{"line":242,"col":92}},"generated_from_span":null},"id":3155,"kind":{"StorageDead":164},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":92},"end":{"line":242,"col":93}},"generated_from_span":null},"id":3156,"kind":{"StorageDead":188},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":92},"end":{"line":242,"col":93}},"generated_from_span":null},"id":3157,"kind":{"StorageDead":185},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":92},"end":{"line":242,"col":93}},"generated_from_span":null},"id":3158,"kind":{"StorageDead":182},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":92},"end":{"line":242,"col":93}},"generated_from_span":null},"id":3159,"kind":{"StorageDead":177},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":92},"end":{"line":242,"col":93}},"generated_from_span":null},"id":3160,"kind":{"StorageDead":174},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":92},"end":{"line":242,"col":93}},"generated_from_span":null},"id":3161,"kind":{"StorageDead":170},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":242,"col":92},"end":{"line":242,"col":93}},"generated_from_span":null},"id":3162,"kind":{"StorageDead":167},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":63},"end":{"line":243,"col":76}},"generated_from_span":null},"id":3163,"kind":{"StorageLive":189},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":65},"end":{"line":243,"col":69}},"generated_from_span":null},"id":3164,"kind":{"StorageLive":190},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":66},"end":{"line":243,"col":69}},"generated_from_span":null},"id":3165,"kind":{"StorageLive":191},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":65},"end":{"line":243,"col":66}},"generated_from_span":null},"id":3166,"kind":{"StorageLive":192},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":65},"end":{"line":243,"col":66}},"generated_from_span":null},"id":3167,"kind":{"Assign":[{"kind":{"Local":192},"ty":{"Deduplicated":4019}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":66},"end":{"line":243,"col":69}},"generated_from_span":null},"id":3168,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":193}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":192},"ty":{"Deduplicated":4019}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":191},"ty":{"Deduplicated":4018}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":65},"end":{"line":243,"col":69}},"generated_from_span":null},"id":3169,"kind":{"Assign":[{"kind":{"Local":190},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":191},"ty":{"Deduplicated":4018}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":68},"end":{"line":243,"col":69}},"generated_from_span":null},"id":3170,"kind":{"StorageDead":192},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":71},"end":{"line":243,"col":75}},"generated_from_span":null},"id":3171,"kind":{"StorageLive":193},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":72},"end":{"line":243,"col":75}},"generated_from_span":null},"id":3172,"kind":{"StorageLive":194},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":71},"end":{"line":243,"col":72}},"generated_from_span":null},"id":3173,"kind":{"StorageLive":195},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":71},"end":{"line":243,"col":72}},"generated_from_span":null},"id":3174,"kind":{"Assign":[{"kind":{"Local":195},"ty":{"Deduplicated":1370}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":464}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":72},"end":{"line":243,"col":75}},"generated_from_span":null},"id":3175,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":195}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":195},"ty":{"Deduplicated":1370}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":194},"ty":{"Deduplicated":4020}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":71},"end":{"line":243,"col":75}},"generated_from_span":null},"id":3176,"kind":{"Assign":[{"kind":{"Local":193},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":194},"ty":{"Deduplicated":4020}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":74},"end":{"line":243,"col":75}},"generated_from_span":null},"id":3177,"kind":{"StorageDead":195},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":63},"end":{"line":243,"col":76}},"generated_from_span":null},"id":3178,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":190},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":193},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":189},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":75},"end":{"line":243,"col":76}},"generated_from_span":null},"id":3179,"kind":{"StorageDead":193},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":75},"end":{"line":243,"col":76}},"generated_from_span":null},"id":3180,"kind":{"StorageDead":190},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":79},"end":{"line":243,"col":92}},"generated_from_span":null},"id":3181,"kind":{"StorageLive":196},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":81},"end":{"line":243,"col":85}},"generated_from_span":null},"id":3182,"kind":{"StorageLive":197},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":82},"end":{"line":243,"col":85}},"generated_from_span":null},"id":3183,"kind":{"StorageLive":198},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":81},"end":{"line":243,"col":82}},"generated_from_span":null},"id":3184,"kind":{"StorageLive":199},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":81},"end":{"line":243,"col":82}},"generated_from_span":null},"id":3185,"kind":{"Assign":[{"kind":{"Local":199},"ty":{"Deduplicated":4022}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":82},"end":{"line":243,"col":85}},"generated_from_span":null},"id":3186,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":197}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":199},"ty":{"Deduplicated":4022}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":198},"ty":{"Deduplicated":4021}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":81},"end":{"line":243,"col":85}},"generated_from_span":null},"id":3187,"kind":{"Assign":[{"kind":{"Local":197},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":198},"ty":{"Deduplicated":4021}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":84},"end":{"line":243,"col":85}},"generated_from_span":null},"id":3188,"kind":{"StorageDead":199},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":87},"end":{"line":243,"col":91}},"generated_from_span":null},"id":3189,"kind":{"StorageLive":200},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":88},"end":{"line":243,"col":91}},"generated_from_span":null},"id":3190,"kind":{"StorageLive":201},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":87},"end":{"line":243,"col":88}},"generated_from_span":null},"id":3191,"kind":{"StorageLive":202},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":87},"end":{"line":243,"col":88}},"generated_from_span":null},"id":3192,"kind":{"Assign":[{"kind":{"Local":202},"ty":{"Deduplicated":1374}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":464}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":88},"end":{"line":243,"col":91}},"generated_from_span":null},"id":3193,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":199}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":202},"ty":{"Deduplicated":1374}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":201},"ty":{"Deduplicated":4023}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":87},"end":{"line":243,"col":91}},"generated_from_span":null},"id":3194,"kind":{"Assign":[{"kind":{"Local":200},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":201},"ty":{"Deduplicated":4023}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":90},"end":{"line":243,"col":91}},"generated_from_span":null},"id":3195,"kind":{"StorageDead":202},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":79},"end":{"line":243,"col":92}},"generated_from_span":null},"id":3196,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":197},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":200},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":196},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":91},"end":{"line":243,"col":92}},"generated_from_span":null},"id":3197,"kind":{"StorageDead":200},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":91},"end":{"line":243,"col":92}},"generated_from_span":null},"id":3198,"kind":{"StorageDead":197},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":63},"end":{"line":243,"col":92}},"generated_from_span":null},"id":3199,"kind":{"Assign":[{"kind":{"Local":203},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":189},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":196},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":10},"end":{"line":243,"col":11}},"generated_from_span":null},"id":3201,"kind":{"StorageLive":204},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":10},"end":{"line":243,"col":11}},"generated_from_span":null},"id":3202,"kind":{"Assign":[{"kind":{"Local":204},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","7"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":8},"end":{"line":243,"col":92}},"generated_from_span":null},"id":4024,"kind":{"StorageLive":227},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":8},"end":{"line":243,"col":92}},"generated_from_span":null},"id":4025,"kind":{"Assign":[{"kind":{"Local":227},"ty":{"Deduplicated":5013}},{"Ref":{"place":{"kind":{"Local":3},"ty":{"Deduplicated":1221}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":8},"end":{"line":243,"col":92}},"generated_from_span":null},"id":4026,"kind":{"StorageLive":228},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":8},"end":{"line":243,"col":92}},"generated_from_span":null},"id":4027,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Mut","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1220}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","9"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":227},"ty":{"Deduplicated":5013}}},{"Copy":{"kind":{"Local":204},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":228},"ty":{"Deduplicated":5012}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":8},"end":{"line":243,"col":92}},"generated_from_span":null},"id":3205,"kind":{"Assign":[{"kind":{"Projection":[{"kind":{"Local":228},"ty":{"Deduplicated":5012}},"Deref"]},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":203},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":91},"end":{"line":243,"col":92}},"generated_from_span":null},"id":3206,"kind":{"StorageDead":196},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":91},"end":{"line":243,"col":92}},"generated_from_span":null},"id":3207,"kind":{"StorageDead":189},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":92},"end":{"line":243,"col":93}},"generated_from_span":null},"id":3208,"kind":{"StorageDead":204},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":92},"end":{"line":243,"col":93}},"generated_from_span":null},"id":3209,"kind":{"StorageDead":201},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":92},"end":{"line":243,"col":93}},"generated_from_span":null},"id":3210,"kind":{"StorageDead":198},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":92},"end":{"line":243,"col":93}},"generated_from_span":null},"id":3211,"kind":{"StorageDead":194},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":243,"col":92},"end":{"line":243,"col":93}},"generated_from_span":null},"id":3212,"kind":{"StorageDead":191},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":244,"col":79},"end":{"line":244,"col":92}},"generated_from_span":null},"id":3213,"kind":{"StorageLive":205},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":244,"col":81},"end":{"line":244,"col":85}},"generated_from_span":null},"id":3214,"kind":{"StorageLive":206},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":244,"col":82},"end":{"line":244,"col":85}},"generated_from_span":null},"id":3215,"kind":{"StorageLive":207},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":244,"col":81},"end":{"line":244,"col":82}},"generated_from_span":null},"id":3216,"kind":{"StorageLive":208},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":244,"col":81},"end":{"line":244,"col":82}},"generated_from_span":null},"id":3217,"kind":{"Assign":[{"kind":{"Local":208},"ty":{"Deduplicated":4025}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":244,"col":82},"end":{"line":244,"col":85}},"generated_from_span":null},"id":3218,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":201}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":208},"ty":{"Deduplicated":4025}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":207},"ty":{"Deduplicated":4024}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":244,"col":81},"end":{"line":244,"col":85}},"generated_from_span":null},"id":3219,"kind":{"Assign":[{"kind":{"Local":206},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":207},"ty":{"Deduplicated":4024}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":244,"col":84},"end":{"line":244,"col":85}},"generated_from_span":null},"id":3220,"kind":{"StorageDead":208},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":244,"col":87},"end":{"line":244,"col":91}},"generated_from_span":null},"id":3221,"kind":{"StorageLive":209},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":244,"col":88},"end":{"line":244,"col":91}},"generated_from_span":null},"id":3222,"kind":{"StorageLive":210},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":244,"col":87},"end":{"line":244,"col":88}},"generated_from_span":null},"id":3223,"kind":{"StorageLive":211},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":244,"col":87},"end":{"line":244,"col":88}},"generated_from_span":null},"id":3224,"kind":{"Assign":[{"kind":{"Local":211},"ty":{"Deduplicated":1378}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":2},"ty":{"Deduplicated":464}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":244,"col":88},"end":{"line":244,"col":91}},"generated_from_span":null},"id":3225,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":203}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":211},"ty":{"Deduplicated":1378}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":210},"ty":{"Deduplicated":4026}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":244,"col":87},"end":{"line":244,"col":91}},"generated_from_span":null},"id":3226,"kind":{"Assign":[{"kind":{"Local":209},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":210},"ty":{"Deduplicated":4026}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":244,"col":90},"end":{"line":244,"col":91}},"generated_from_span":null},"id":3227,"kind":{"StorageDead":211},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":244,"col":79},"end":{"line":244,"col":92}},"generated_from_span":null},"id":3228,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":206},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":209},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":205},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":244,"col":91},"end":{"line":244,"col":92}},"generated_from_span":null},"id":3229,"kind":{"StorageDead":209},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":244,"col":91},"end":{"line":244,"col":92}},"generated_from_span":null},"id":3230,"kind":{"StorageDead":206},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":244,"col":10},"end":{"line":244,"col":11}},"generated_from_span":null},"id":3231,"kind":{"StorageLive":212},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":244,"col":10},"end":{"line":244,"col":11}},"generated_from_span":null},"id":3232,"kind":{"Assign":[{"kind":{"Local":212},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","8"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":244,"col":8},"end":{"line":244,"col":92}},"generated_from_span":null},"id":4028,"kind":{"StorageLive":229},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":244,"col":8},"end":{"line":244,"col":92}},"generated_from_span":null},"id":4029,"kind":{"Assign":[{"kind":{"Local":229},"ty":{"Deduplicated":5013}},{"Ref":{"place":{"kind":{"Local":3},"ty":{"Deduplicated":1221}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":244,"col":8},"end":{"line":244,"col":92}},"generated_from_span":null},"id":4030,"kind":{"StorageLive":230},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":244,"col":8},"end":{"line":244,"col":92}},"generated_from_span":null},"id":4031,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Mut","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":1220}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","9"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":229},"ty":{"Deduplicated":5013}}},{"Copy":{"kind":{"Local":212},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":230},"ty":{"Deduplicated":5012}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":244,"col":8},"end":{"line":244,"col":92}},"generated_from_span":null},"id":3235,"kind":{"Assign":[{"kind":{"Projection":[{"kind":{"Local":230},"ty":{"Deduplicated":5012}},"Deref"]},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":205},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":244,"col":91},"end":{"line":244,"col":92}},"generated_from_span":null},"id":3236,"kind":{"StorageDead":205},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":244,"col":92},"end":{"line":244,"col":93}},"generated_from_span":null},"id":3237,"kind":{"StorageDead":212},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":244,"col":92},"end":{"line":244,"col":93}},"generated_from_span":null},"id":3238,"kind":{"StorageDead":210},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":244,"col":92},"end":{"line":244,"col":93}},"generated_from_span":null},"id":3239,"kind":{"StorageDead":207},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":246,"col":8},"end":{"line":246,"col":9}},"generated_from_span":null},"id":3240,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1221}},{"Use":[{"Copy":{"kind":{"Local":3},"ty":{"Deduplicated":1221}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":247,"col":4},"end":{"line":247,"col":5}},"generated_from_span":null},"id":3241,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":247,"col":5},"end":{"line":247,"col":5}},"generated_from_span":null},"id":3242,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":19,"item_meta":{"name":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["square_internal",0]}],"span":{"data":{"file_id":0,"beg":{"line":252,"col":4},"end":{"line":271,"col":5}},"generated_from_span":null},"source_text":"fn square_internal(a: &Scalar52) -> [u128; 9] {\n let aa = [\n a[0] * 2,\n a[1] * 2,\n a[2] * 2,\n a[3] * 2,\n ];\n\n [\n m( a[0], a[0]),\n m(aa[0], a[1]),\n m(aa[0], a[2]) + m( a[1], a[1]),\n m(aa[0], a[3]) + m(aa[1], a[2]),\n m(aa[0], a[4]) + m(aa[1], a[3]) + m( a[2], a[2]),\n m(aa[1], a[4]) + m(aa[2], a[3]),\n m(aa[2], a[4]) + m( a[3], a[3]),\n m(aa[3], a[4]),\n m(a[4], a[4])\n ]\n }","attr_info":{"attributes":[{"DocComment":" Compute `a^2`"},{"Unknown":{"path":"rustfmt::skip","args":null}}],"inline":"Always","rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5386}],"output":{"Deduplicated":1221}},"src":"TopLevel","is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":0,"beg":{"line":252,"col":4},"end":{"line":271,"col":5}},"generated_from_span":null},"bound_body_regions":99,"locals":{"arg_count":1,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":0,"beg":{"line":252,"col":40},"end":{"line":252,"col":49}},"generated_from_span":null},"ty":{"Deduplicated":1221}},{"index":1,"name":"a","span":{"data":{"file_id":0,"beg":{"line":252,"col":23},"end":{"line":252,"col":24}},"generated_from_span":null},"ty":{"Deduplicated":463}},{"index":2,"name":"aa","span":{"data":{"file_id":0,"beg":{"line":253,"col":12},"end":{"line":253,"col":14}},"generated_from_span":null},"ty":{"HashConsedValue":[4029,{"Array":[{"Deduplicated":454},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}]}]}},{"index":3,"name":null,"span":{"data":{"file_id":0,"beg":{"line":254,"col":12},"end":{"line":254,"col":20}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":4,"name":null,"span":{"data":{"file_id":0,"beg":{"line":254,"col":12},"end":{"line":254,"col":16}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":5,"name":null,"span":{"data":{"file_id":0,"beg":{"line":254,"col":13},"end":{"line":254,"col":16}},"generated_from_span":null},"ty":{"HashConsedValue":[3967,{"Ref":[{"Body":3},{"Deduplicated":454},"Shared"]}]}},{"index":6,"name":null,"span":{"data":{"file_id":0,"beg":{"line":254,"col":12},"end":{"line":254,"col":13}},"generated_from_span":null},"ty":{"Deduplicated":1223}},{"index":7,"name":null,"span":{"data":{"file_id":0,"beg":{"line":254,"col":12},"end":{"line":254,"col":20}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":8,"name":null,"span":{"data":{"file_id":0,"beg":{"line":255,"col":12},"end":{"line":255,"col":20}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":9,"name":null,"span":{"data":{"file_id":0,"beg":{"line":255,"col":12},"end":{"line":255,"col":16}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":10,"name":null,"span":{"data":{"file_id":0,"beg":{"line":255,"col":13},"end":{"line":255,"col":16}},"generated_from_span":null},"ty":{"Deduplicated":1267}},{"index":11,"name":null,"span":{"data":{"file_id":0,"beg":{"line":255,"col":12},"end":{"line":255,"col":13}},"generated_from_span":null},"ty":{"Deduplicated":1243}},{"index":12,"name":null,"span":{"data":{"file_id":0,"beg":{"line":255,"col":12},"end":{"line":255,"col":20}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":13,"name":null,"span":{"data":{"file_id":0,"beg":{"line":256,"col":12},"end":{"line":256,"col":20}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":14,"name":null,"span":{"data":{"file_id":0,"beg":{"line":256,"col":12},"end":{"line":256,"col":16}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":15,"name":null,"span":{"data":{"file_id":0,"beg":{"line":256,"col":13},"end":{"line":256,"col":16}},"generated_from_span":null},"ty":{"Deduplicated":605}},{"index":16,"name":null,"span":{"data":{"file_id":0,"beg":{"line":256,"col":12},"end":{"line":256,"col":13}},"generated_from_span":null},"ty":{"Deduplicated":606}},{"index":17,"name":null,"span":{"data":{"file_id":0,"beg":{"line":256,"col":12},"end":{"line":256,"col":20}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":18,"name":null,"span":{"data":{"file_id":0,"beg":{"line":257,"col":12},"end":{"line":257,"col":20}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":19,"name":null,"span":{"data":{"file_id":0,"beg":{"line":257,"col":12},"end":{"line":257,"col":16}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":20,"name":null,"span":{"data":{"file_id":0,"beg":{"line":257,"col":13},"end":{"line":257,"col":16}},"generated_from_span":null},"ty":{"Deduplicated":607}},{"index":21,"name":null,"span":{"data":{"file_id":0,"beg":{"line":257,"col":12},"end":{"line":257,"col":13}},"generated_from_span":null},"ty":{"Deduplicated":608}},{"index":22,"name":null,"span":{"data":{"file_id":0,"beg":{"line":257,"col":12},"end":{"line":257,"col":20}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":23,"name":null,"span":{"data":{"file_id":0,"beg":{"line":261,"col":12},"end":{"line":261,"col":26}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":24,"name":null,"span":{"data":{"file_id":0,"beg":{"line":261,"col":15},"end":{"line":261,"col":19}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":25,"name":null,"span":{"data":{"file_id":0,"beg":{"line":261,"col":16},"end":{"line":261,"col":19}},"generated_from_span":null},"ty":{"Deduplicated":1268}},{"index":26,"name":null,"span":{"data":{"file_id":0,"beg":{"line":261,"col":15},"end":{"line":261,"col":16}},"generated_from_span":null},"ty":{"Deduplicated":1247}},{"index":27,"name":null,"span":{"data":{"file_id":0,"beg":{"line":261,"col":21},"end":{"line":261,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":28,"name":null,"span":{"data":{"file_id":0,"beg":{"line":261,"col":22},"end":{"line":261,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":1269}},{"index":29,"name":null,"span":{"data":{"file_id":0,"beg":{"line":261,"col":21},"end":{"line":261,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1232}},{"index":30,"name":null,"span":{"data":{"file_id":0,"beg":{"line":262,"col":12},"end":{"line":262,"col":26}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":31,"name":null,"span":{"data":{"file_id":0,"beg":{"line":262,"col":14},"end":{"line":262,"col":19}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":32,"name":null,"span":{"data":{"file_id":0,"beg":{"line":262,"col":17},"end":{"line":262,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":33,"name":null,"span":{"data":{"file_id":0,"beg":{"line":262,"col":21},"end":{"line":262,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":34,"name":null,"span":{"data":{"file_id":0,"beg":{"line":262,"col":22},"end":{"line":262,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":1270}},{"index":35,"name":null,"span":{"data":{"file_id":0,"beg":{"line":262,"col":21},"end":{"line":262,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":616}},{"index":36,"name":null,"span":{"data":{"file_id":0,"beg":{"line":263,"col":12},"end":{"line":263,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":37,"name":null,"span":{"data":{"file_id":0,"beg":{"line":263,"col":12},"end":{"line":263,"col":26}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":38,"name":null,"span":{"data":{"file_id":0,"beg":{"line":263,"col":14},"end":{"line":263,"col":19}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":39,"name":null,"span":{"data":{"file_id":0,"beg":{"line":263,"col":17},"end":{"line":263,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":40,"name":null,"span":{"data":{"file_id":0,"beg":{"line":263,"col":21},"end":{"line":263,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":41,"name":null,"span":{"data":{"file_id":0,"beg":{"line":263,"col":22},"end":{"line":263,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":1271}},{"index":42,"name":null,"span":{"data":{"file_id":0,"beg":{"line":263,"col":21},"end":{"line":263,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":618}},{"index":43,"name":null,"span":{"data":{"file_id":0,"beg":{"line":263,"col":29},"end":{"line":263,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":44,"name":null,"span":{"data":{"file_id":0,"beg":{"line":263,"col":32},"end":{"line":263,"col":36}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":45,"name":null,"span":{"data":{"file_id":0,"beg":{"line":263,"col":33},"end":{"line":263,"col":36}},"generated_from_span":null},"ty":{"Deduplicated":1272}},{"index":46,"name":null,"span":{"data":{"file_id":0,"beg":{"line":263,"col":32},"end":{"line":263,"col":33}},"generated_from_span":null},"ty":{"Deduplicated":1273}},{"index":47,"name":null,"span":{"data":{"file_id":0,"beg":{"line":263,"col":38},"end":{"line":263,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":48,"name":null,"span":{"data":{"file_id":0,"beg":{"line":263,"col":39},"end":{"line":263,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1274}},{"index":49,"name":null,"span":{"data":{"file_id":0,"beg":{"line":263,"col":38},"end":{"line":263,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":1275}},{"index":50,"name":null,"span":{"data":{"file_id":0,"beg":{"line":263,"col":12},"end":{"line":263,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":51,"name":null,"span":{"data":{"file_id":0,"beg":{"line":264,"col":12},"end":{"line":264,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":52,"name":null,"span":{"data":{"file_id":0,"beg":{"line":264,"col":12},"end":{"line":264,"col":26}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":53,"name":null,"span":{"data":{"file_id":0,"beg":{"line":264,"col":14},"end":{"line":264,"col":19}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":54,"name":null,"span":{"data":{"file_id":0,"beg":{"line":264,"col":17},"end":{"line":264,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":55,"name":null,"span":{"data":{"file_id":0,"beg":{"line":264,"col":21},"end":{"line":264,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":56,"name":null,"span":{"data":{"file_id":0,"beg":{"line":264,"col":22},"end":{"line":264,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":1276}},{"index":57,"name":null,"span":{"data":{"file_id":0,"beg":{"line":264,"col":21},"end":{"line":264,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":990}},{"index":58,"name":null,"span":{"data":{"file_id":0,"beg":{"line":264,"col":29},"end":{"line":264,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":59,"name":null,"span":{"data":{"file_id":0,"beg":{"line":264,"col":31},"end":{"line":264,"col":36}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":60,"name":null,"span":{"data":{"file_id":0,"beg":{"line":264,"col":34},"end":{"line":264,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":61,"name":null,"span":{"data":{"file_id":0,"beg":{"line":264,"col":38},"end":{"line":264,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":62,"name":null,"span":{"data":{"file_id":0,"beg":{"line":264,"col":39},"end":{"line":264,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1277}},{"index":63,"name":null,"span":{"data":{"file_id":0,"beg":{"line":264,"col":38},"end":{"line":264,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":1278}},{"index":64,"name":null,"span":{"data":{"file_id":0,"beg":{"line":264,"col":12},"end":{"line":264,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":65,"name":null,"span":{"data":{"file_id":0,"beg":{"line":265,"col":12},"end":{"line":265,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":66,"name":null,"span":{"data":{"file_id":0,"beg":{"line":265,"col":12},"end":{"line":265,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":67,"name":null,"span":{"data":{"file_id":0,"beg":{"line":265,"col":12},"end":{"line":265,"col":26}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":68,"name":null,"span":{"data":{"file_id":0,"beg":{"line":265,"col":14},"end":{"line":265,"col":19}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":69,"name":null,"span":{"data":{"file_id":0,"beg":{"line":265,"col":17},"end":{"line":265,"col":18}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":70,"name":null,"span":{"data":{"file_id":0,"beg":{"line":265,"col":21},"end":{"line":265,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":71,"name":null,"span":{"data":{"file_id":0,"beg":{"line":265,"col":22},"end":{"line":265,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":1279}},{"index":72,"name":null,"span":{"data":{"file_id":0,"beg":{"line":265,"col":21},"end":{"line":265,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1280}},{"index":73,"name":null,"span":{"data":{"file_id":0,"beg":{"line":265,"col":29},"end":{"line":265,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":74,"name":null,"span":{"data":{"file_id":0,"beg":{"line":265,"col":31},"end":{"line":265,"col":36}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":75,"name":null,"span":{"data":{"file_id":0,"beg":{"line":265,"col":34},"end":{"line":265,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":76,"name":null,"span":{"data":{"file_id":0,"beg":{"line":265,"col":38},"end":{"line":265,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":77,"name":null,"span":{"data":{"file_id":0,"beg":{"line":265,"col":39},"end":{"line":265,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1281}},{"index":78,"name":null,"span":{"data":{"file_id":0,"beg":{"line":265,"col":38},"end":{"line":265,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":1282}},{"index":79,"name":null,"span":{"data":{"file_id":0,"beg":{"line":265,"col":12},"end":{"line":265,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":80,"name":null,"span":{"data":{"file_id":0,"beg":{"line":265,"col":46},"end":{"line":265,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":81,"name":null,"span":{"data":{"file_id":0,"beg":{"line":265,"col":49},"end":{"line":265,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":82,"name":null,"span":{"data":{"file_id":0,"beg":{"line":265,"col":50},"end":{"line":265,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":1283}},{"index":83,"name":null,"span":{"data":{"file_id":0,"beg":{"line":265,"col":49},"end":{"line":265,"col":50}},"generated_from_span":null},"ty":{"Deduplicated":1284}},{"index":84,"name":null,"span":{"data":{"file_id":0,"beg":{"line":265,"col":55},"end":{"line":265,"col":59}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":85,"name":null,"span":{"data":{"file_id":0,"beg":{"line":265,"col":56},"end":{"line":265,"col":59}},"generated_from_span":null},"ty":{"Deduplicated":1285}},{"index":86,"name":null,"span":{"data":{"file_id":0,"beg":{"line":265,"col":55},"end":{"line":265,"col":56}},"generated_from_span":null},"ty":{"Deduplicated":1286}},{"index":87,"name":null,"span":{"data":{"file_id":0,"beg":{"line":265,"col":12},"end":{"line":265,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":88,"name":null,"span":{"data":{"file_id":0,"beg":{"line":266,"col":29},"end":{"line":266,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":89,"name":null,"span":{"data":{"file_id":0,"beg":{"line":266,"col":29},"end":{"line":266,"col":43}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":90,"name":null,"span":{"data":{"file_id":0,"beg":{"line":266,"col":31},"end":{"line":266,"col":36}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":91,"name":null,"span":{"data":{"file_id":0,"beg":{"line":266,"col":34},"end":{"line":266,"col":35}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":92,"name":null,"span":{"data":{"file_id":0,"beg":{"line":266,"col":38},"end":{"line":266,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":93,"name":null,"span":{"data":{"file_id":0,"beg":{"line":266,"col":39},"end":{"line":266,"col":42}},"generated_from_span":null},"ty":{"HashConsedValue":[4031,{"Ref":[{"Body":35},{"Deduplicated":454},"Shared"]}]}},{"index":94,"name":null,"span":{"data":{"file_id":0,"beg":{"line":266,"col":38},"end":{"line":266,"col":39}},"generated_from_span":null},"ty":{"Deduplicated":1288}},{"index":95,"name":null,"span":{"data":{"file_id":0,"beg":{"line":266,"col":46},"end":{"line":266,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":96,"name":null,"span":{"data":{"file_id":0,"beg":{"line":266,"col":48},"end":{"line":266,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":97,"name":null,"span":{"data":{"file_id":0,"beg":{"line":266,"col":51},"end":{"line":266,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":98,"name":null,"span":{"data":{"file_id":0,"beg":{"line":266,"col":55},"end":{"line":266,"col":59}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":99,"name":null,"span":{"data":{"file_id":0,"beg":{"line":266,"col":56},"end":{"line":266,"col":59}},"generated_from_span":null},"ty":{"HashConsedValue":[4032,{"Ref":[{"Body":37},{"Deduplicated":454},"Shared"]}]}},{"index":100,"name":null,"span":{"data":{"file_id":0,"beg":{"line":266,"col":55},"end":{"line":266,"col":56}},"generated_from_span":null},"ty":{"Deduplicated":1290}},{"index":101,"name":null,"span":{"data":{"file_id":0,"beg":{"line":266,"col":29},"end":{"line":266,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":102,"name":null,"span":{"data":{"file_id":0,"beg":{"line":267,"col":46},"end":{"line":267,"col":77}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":103,"name":null,"span":{"data":{"file_id":0,"beg":{"line":267,"col":46},"end":{"line":267,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":104,"name":null,"span":{"data":{"file_id":0,"beg":{"line":267,"col":48},"end":{"line":267,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":105,"name":null,"span":{"data":{"file_id":0,"beg":{"line":267,"col":51},"end":{"line":267,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":106,"name":null,"span":{"data":{"file_id":0,"beg":{"line":267,"col":55},"end":{"line":267,"col":59}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":107,"name":null,"span":{"data":{"file_id":0,"beg":{"line":267,"col":56},"end":{"line":267,"col":59}},"generated_from_span":null},"ty":{"HashConsedValue":[4033,{"Ref":[{"Body":39},{"Deduplicated":454},"Shared"]}]}},{"index":108,"name":null,"span":{"data":{"file_id":0,"beg":{"line":267,"col":55},"end":{"line":267,"col":56}},"generated_from_span":null},"ty":{"Deduplicated":1315}},{"index":109,"name":null,"span":{"data":{"file_id":0,"beg":{"line":267,"col":63},"end":{"line":267,"col":77}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":110,"name":null,"span":{"data":{"file_id":0,"beg":{"line":267,"col":66},"end":{"line":267,"col":70}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":111,"name":null,"span":{"data":{"file_id":0,"beg":{"line":267,"col":67},"end":{"line":267,"col":70}},"generated_from_span":null},"ty":{"HashConsedValue":[4034,{"Ref":[{"Body":41},{"Deduplicated":454},"Shared"]}]}},{"index":112,"name":null,"span":{"data":{"file_id":0,"beg":{"line":267,"col":66},"end":{"line":267,"col":67}},"generated_from_span":null},"ty":{"Deduplicated":1452}},{"index":113,"name":null,"span":{"data":{"file_id":0,"beg":{"line":267,"col":72},"end":{"line":267,"col":76}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":114,"name":null,"span":{"data":{"file_id":0,"beg":{"line":267,"col":73},"end":{"line":267,"col":76}},"generated_from_span":null},"ty":{"HashConsedValue":[4035,{"Ref":[{"Body":43},{"Deduplicated":454},"Shared"]}]}},{"index":115,"name":null,"span":{"data":{"file_id":0,"beg":{"line":267,"col":72},"end":{"line":267,"col":73}},"generated_from_span":null},"ty":{"Deduplicated":1319}},{"index":116,"name":null,"span":{"data":{"file_id":0,"beg":{"line":267,"col":46},"end":{"line":267,"col":77}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":117,"name":null,"span":{"data":{"file_id":0,"beg":{"line":268,"col":63},"end":{"line":268,"col":77}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":118,"name":null,"span":{"data":{"file_id":0,"beg":{"line":268,"col":65},"end":{"line":268,"col":70}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":119,"name":null,"span":{"data":{"file_id":0,"beg":{"line":268,"col":68},"end":{"line":268,"col":69}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":120,"name":null,"span":{"data":{"file_id":0,"beg":{"line":268,"col":72},"end":{"line":268,"col":76}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":121,"name":null,"span":{"data":{"file_id":0,"beg":{"line":268,"col":73},"end":{"line":268,"col":76}},"generated_from_span":null},"ty":{"HashConsedValue":[4036,{"Ref":[{"Body":45},{"Deduplicated":454},"Shared"]}]}},{"index":122,"name":null,"span":{"data":{"file_id":0,"beg":{"line":268,"col":72},"end":{"line":268,"col":73}},"generated_from_span":null},"ty":{"HashConsedValue":[4037,{"Ref":[{"Body":46},{"Deduplicated":334},"Shared"]}]}},{"index":123,"name":null,"span":{"data":{"file_id":0,"beg":{"line":269,"col":80},"end":{"line":269,"col":93}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":124,"name":null,"span":{"data":{"file_id":0,"beg":{"line":269,"col":82},"end":{"line":269,"col":86}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":125,"name":null,"span":{"data":{"file_id":0,"beg":{"line":269,"col":83},"end":{"line":269,"col":86}},"generated_from_span":null},"ty":{"HashConsedValue":[4038,{"Ref":[{"Body":47},{"Deduplicated":454},"Shared"]}]}},{"index":126,"name":null,"span":{"data":{"file_id":0,"beg":{"line":269,"col":82},"end":{"line":269,"col":83}},"generated_from_span":null},"ty":{"Deduplicated":1323}},{"index":127,"name":null,"span":{"data":{"file_id":0,"beg":{"line":269,"col":88},"end":{"line":269,"col":92}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":128,"name":null,"span":{"data":{"file_id":0,"beg":{"line":269,"col":89},"end":{"line":269,"col":92}},"generated_from_span":null},"ty":{"HashConsedValue":[4039,{"Ref":[{"Body":49},{"Deduplicated":454},"Shared"]}]}},{"index":129,"name":null,"span":{"data":{"file_id":0,"beg":{"line":269,"col":88},"end":{"line":269,"col":89}},"generated_from_span":null},"ty":{"HashConsedValue":[4040,{"Ref":[{"Body":50},{"Deduplicated":334},"Shared"]}]}},{"index":130,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"HashConsedValue":[5021,{"Ref":["Erased",{"Deduplicated":4029},"Shared"]}]}},{"index":131,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":4636}},{"index":132,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5021}},{"index":133,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":4636}},{"index":134,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5021}},{"index":135,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":4636}},{"index":136,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5021}},{"index":137,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":4636}},{"index":138,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5021}},{"index":139,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":4636}},{"index":140,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5021}},{"index":141,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":4636}},{"index":142,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5021}},{"index":143,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":4636}},{"index":144,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5021}},{"index":145,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":4636}},{"index":146,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5021}},{"index":147,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":4636}},{"index":148,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":5021}},{"index":149,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":4636}}]},"body":{"span":{"data":{"file_id":0,"beg":{"line":253,"col":12},"end":{"line":271,"col":5}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":0,"beg":{"line":253,"col":12},"end":{"line":253,"col":14}},"generated_from_span":null},"id":3243,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":253,"col":12},"end":{"line":253,"col":14}},"generated_from_span":null},"id":3244,"kind":{"StorageLive":12},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":253,"col":12},"end":{"line":253,"col":14}},"generated_from_span":null},"id":3245,"kind":{"StorageLive":17},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":253,"col":12},"end":{"line":253,"col":14}},"generated_from_span":null},"id":3246,"kind":{"StorageLive":22},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":253,"col":12},"end":{"line":253,"col":14}},"generated_from_span":null},"id":3249,"kind":{"StorageLive":50},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":253,"col":12},"end":{"line":253,"col":14}},"generated_from_span":null},"id":3252,"kind":{"StorageLive":64},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":253,"col":12},"end":{"line":253,"col":14}},"generated_from_span":null},"id":3255,"kind":{"StorageLive":79},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":253,"col":12},"end":{"line":253,"col":14}},"generated_from_span":null},"id":3256,"kind":{"StorageLive":87},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":253,"col":12},"end":{"line":253,"col":14}},"generated_from_span":null},"id":3259,"kind":{"StorageLive":101},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":253,"col":12},"end":{"line":253,"col":14}},"generated_from_span":null},"id":3261,"kind":{"StorageLive":116},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":253,"col":12},"end":{"line":253,"col":14}},"generated_from_span":null},"id":3263,"kind":{"StorageLive":2},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":254,"col":12},"end":{"line":254,"col":20}},"generated_from_span":null},"id":3264,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":254,"col":12},"end":{"line":254,"col":16}},"generated_from_span":null},"id":3265,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":254,"col":13},"end":{"line":254,"col":16}},"generated_from_span":null},"id":3266,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":254,"col":12},"end":{"line":254,"col":13}},"generated_from_span":null},"id":3267,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":254,"col":12},"end":{"line":254,"col":13}},"generated_from_span":null},"id":3268,"kind":{"Assign":[{"kind":{"Local":6},"ty":{"Deduplicated":1223}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":254,"col":13},"end":{"line":254,"col":16}},"generated_from_span":null},"id":3269,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":52}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":6},"ty":{"Deduplicated":1223}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":5},"ty":{"Deduplicated":3967}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":254,"col":12},"end":{"line":254,"col":16}},"generated_from_span":null},"id":3270,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":5},"ty":{"Deduplicated":3967}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":254,"col":15},"end":{"line":254,"col":16}},"generated_from_span":null},"id":3271,"kind":{"StorageDead":6},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":254,"col":12},"end":{"line":254,"col":20}},"generated_from_span":null},"id":3272,"kind":{"Assign":[{"kind":{"Local":7},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Mul":"Panic"},{"Copy":{"kind":{"Local":4},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","2"]}}},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":254,"col":12},"end":{"line":254,"col":20}},"generated_from_span":null},"id":3274,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":454}},{"Use":[{"Move":{"kind":{"Local":7},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":254,"col":19},"end":{"line":254,"col":20}},"generated_from_span":null},"id":3275,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":255,"col":12},"end":{"line":255,"col":20}},"generated_from_span":null},"id":3276,"kind":{"StorageLive":8},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":255,"col":12},"end":{"line":255,"col":16}},"generated_from_span":null},"id":3277,"kind":{"StorageLive":9},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":255,"col":13},"end":{"line":255,"col":16}},"generated_from_span":null},"id":3278,"kind":{"StorageLive":10},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":255,"col":12},"end":{"line":255,"col":13}},"generated_from_span":null},"id":3279,"kind":{"StorageLive":11},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":255,"col":12},"end":{"line":255,"col":13}},"generated_from_span":null},"id":3280,"kind":{"Assign":[{"kind":{"Local":11},"ty":{"Deduplicated":1243}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":255,"col":13},"end":{"line":255,"col":16}},"generated_from_span":null},"id":3281,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":54}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":11},"ty":{"Deduplicated":1243}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":10},"ty":{"Deduplicated":1267}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":255,"col":12},"end":{"line":255,"col":16}},"generated_from_span":null},"id":3282,"kind":{"Assign":[{"kind":{"Local":9},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":10},"ty":{"Deduplicated":1267}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":255,"col":15},"end":{"line":255,"col":16}},"generated_from_span":null},"id":3283,"kind":{"StorageDead":11},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":255,"col":12},"end":{"line":255,"col":20}},"generated_from_span":null},"id":3284,"kind":{"Assign":[{"kind":{"Local":12},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Mul":"Panic"},{"Copy":{"kind":{"Local":9},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","2"]}}},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":255,"col":12},"end":{"line":255,"col":20}},"generated_from_span":null},"id":3286,"kind":{"Assign":[{"kind":{"Local":8},"ty":{"Deduplicated":454}},{"Use":[{"Move":{"kind":{"Local":12},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":255,"col":19},"end":{"line":255,"col":20}},"generated_from_span":null},"id":3287,"kind":{"StorageDead":9},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":256,"col":12},"end":{"line":256,"col":20}},"generated_from_span":null},"id":3288,"kind":{"StorageLive":13},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":256,"col":12},"end":{"line":256,"col":16}},"generated_from_span":null},"id":3289,"kind":{"StorageLive":14},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":256,"col":13},"end":{"line":256,"col":16}},"generated_from_span":null},"id":3290,"kind":{"StorageLive":15},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":256,"col":12},"end":{"line":256,"col":13}},"generated_from_span":null},"id":3291,"kind":{"StorageLive":16},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":256,"col":12},"end":{"line":256,"col":13}},"generated_from_span":null},"id":3292,"kind":{"Assign":[{"kind":{"Local":16},"ty":{"Deduplicated":606}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":256,"col":13},"end":{"line":256,"col":16}},"generated_from_span":null},"id":3293,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":56}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":16},"ty":{"Deduplicated":606}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":15},"ty":{"Deduplicated":605}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":256,"col":12},"end":{"line":256,"col":16}},"generated_from_span":null},"id":3294,"kind":{"Assign":[{"kind":{"Local":14},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":15},"ty":{"Deduplicated":605}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":256,"col":15},"end":{"line":256,"col":16}},"generated_from_span":null},"id":3295,"kind":{"StorageDead":16},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":256,"col":12},"end":{"line":256,"col":20}},"generated_from_span":null},"id":3296,"kind":{"Assign":[{"kind":{"Local":17},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Mul":"Panic"},{"Copy":{"kind":{"Local":14},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","2"]}}},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":256,"col":12},"end":{"line":256,"col":20}},"generated_from_span":null},"id":3298,"kind":{"Assign":[{"kind":{"Local":13},"ty":{"Deduplicated":454}},{"Use":[{"Move":{"kind":{"Local":17},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":256,"col":19},"end":{"line":256,"col":20}},"generated_from_span":null},"id":3299,"kind":{"StorageDead":14},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":257,"col":12},"end":{"line":257,"col":20}},"generated_from_span":null},"id":3300,"kind":{"StorageLive":18},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":257,"col":12},"end":{"line":257,"col":16}},"generated_from_span":null},"id":3301,"kind":{"StorageLive":19},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":257,"col":13},"end":{"line":257,"col":16}},"generated_from_span":null},"id":3302,"kind":{"StorageLive":20},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":257,"col":12},"end":{"line":257,"col":13}},"generated_from_span":null},"id":3303,"kind":{"StorageLive":21},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":257,"col":12},"end":{"line":257,"col":13}},"generated_from_span":null},"id":3304,"kind":{"Assign":[{"kind":{"Local":21},"ty":{"Deduplicated":608}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":257,"col":13},"end":{"line":257,"col":16}},"generated_from_span":null},"id":3305,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":58}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":21},"ty":{"Deduplicated":608}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":20},"ty":{"Deduplicated":607}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":257,"col":12},"end":{"line":257,"col":16}},"generated_from_span":null},"id":3306,"kind":{"Assign":[{"kind":{"Local":19},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":20},"ty":{"Deduplicated":607}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":257,"col":15},"end":{"line":257,"col":16}},"generated_from_span":null},"id":3307,"kind":{"StorageDead":21},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":257,"col":12},"end":{"line":257,"col":20}},"generated_from_span":null},"id":3308,"kind":{"Assign":[{"kind":{"Local":22},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Mul":"Panic"},{"Copy":{"kind":{"Local":19},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","2"]}}},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":257,"col":12},"end":{"line":257,"col":20}},"generated_from_span":null},"id":3310,"kind":{"Assign":[{"kind":{"Local":18},"ty":{"Deduplicated":454}},{"Use":[{"Move":{"kind":{"Local":22},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":257,"col":19},"end":{"line":257,"col":20}},"generated_from_span":null},"id":3311,"kind":{"StorageDead":19},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":253,"col":17},"end":{"line":258,"col":9}},"generated_from_span":null},"id":3312,"kind":{"Assign":[{"kind":{"Local":2},"ty":{"Deduplicated":4029}},{"Aggregate":[{"Array":[{"Deduplicated":454},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}]},[{"Move":{"kind":{"Local":3},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":8},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":13},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":18},"ty":{"Deduplicated":454}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":258,"col":8},"end":{"line":258,"col":9}},"generated_from_span":null},"id":3313,"kind":{"StorageDead":18},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":258,"col":8},"end":{"line":258,"col":9}},"generated_from_span":null},"id":3314,"kind":{"StorageDead":13},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":258,"col":8},"end":{"line":258,"col":9}},"generated_from_span":null},"id":3315,"kind":{"StorageDead":8},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":258,"col":8},"end":{"line":258,"col":9}},"generated_from_span":null},"id":3316,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":258,"col":9},"end":{"line":258,"col":10}},"generated_from_span":null},"id":3317,"kind":{"StorageDead":20},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":258,"col":9},"end":{"line":258,"col":10}},"generated_from_span":null},"id":3318,"kind":{"StorageDead":15},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":258,"col":9},"end":{"line":258,"col":10}},"generated_from_span":null},"id":3319,"kind":{"StorageDead":10},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":258,"col":9},"end":{"line":258,"col":10}},"generated_from_span":null},"id":3320,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":261,"col":12},"end":{"line":261,"col":26}},"generated_from_span":null},"id":3321,"kind":{"StorageLive":23},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":261,"col":15},"end":{"line":261,"col":19}},"generated_from_span":null},"id":3322,"kind":{"StorageLive":24},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":261,"col":16},"end":{"line":261,"col":19}},"generated_from_span":null},"id":3323,"kind":{"StorageLive":25},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":261,"col":15},"end":{"line":261,"col":16}},"generated_from_span":null},"id":3324,"kind":{"StorageLive":26},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":261,"col":15},"end":{"line":261,"col":16}},"generated_from_span":null},"id":3325,"kind":{"Assign":[{"kind":{"Local":26},"ty":{"Deduplicated":1247}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":261,"col":16},"end":{"line":261,"col":19}},"generated_from_span":null},"id":3326,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":60}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":26},"ty":{"Deduplicated":1247}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":25},"ty":{"Deduplicated":1268}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":261,"col":15},"end":{"line":261,"col":19}},"generated_from_span":null},"id":3327,"kind":{"Assign":[{"kind":{"Local":24},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":25},"ty":{"Deduplicated":1268}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":261,"col":18},"end":{"line":261,"col":19}},"generated_from_span":null},"id":3328,"kind":{"StorageDead":26},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":261,"col":21},"end":{"line":261,"col":25}},"generated_from_span":null},"id":3329,"kind":{"StorageLive":27},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":261,"col":22},"end":{"line":261,"col":25}},"generated_from_span":null},"id":3330,"kind":{"StorageLive":28},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":261,"col":21},"end":{"line":261,"col":22}},"generated_from_span":null},"id":3331,"kind":{"StorageLive":29},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":261,"col":21},"end":{"line":261,"col":22}},"generated_from_span":null},"id":3332,"kind":{"Assign":[{"kind":{"Local":29},"ty":{"Deduplicated":1232}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":261,"col":22},"end":{"line":261,"col":25}},"generated_from_span":null},"id":3333,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":62}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":29},"ty":{"Deduplicated":1232}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":28},"ty":{"Deduplicated":1269}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":261,"col":21},"end":{"line":261,"col":25}},"generated_from_span":null},"id":3334,"kind":{"Assign":[{"kind":{"Local":27},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":28},"ty":{"Deduplicated":1269}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":261,"col":24},"end":{"line":261,"col":25}},"generated_from_span":null},"id":3335,"kind":{"StorageDead":29},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":261,"col":12},"end":{"line":261,"col":26}},"generated_from_span":null},"id":3336,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":24},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":27},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":23},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":261,"col":25},"end":{"line":261,"col":26}},"generated_from_span":null},"id":3337,"kind":{"StorageDead":27},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":261,"col":25},"end":{"line":261,"col":26}},"generated_from_span":null},"id":3338,"kind":{"StorageDead":24},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":262,"col":12},"end":{"line":262,"col":26}},"generated_from_span":null},"id":3339,"kind":{"StorageLive":30},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":262,"col":14},"end":{"line":262,"col":19}},"generated_from_span":null},"id":3340,"kind":{"StorageLive":31},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":262,"col":17},"end":{"line":262,"col":18}},"generated_from_span":null},"id":3341,"kind":{"StorageLive":32},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":262,"col":17},"end":{"line":262,"col":18}},"generated_from_span":null},"id":3342,"kind":{"Assign":[{"kind":{"Local":32},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":262,"col":14},"end":{"line":262,"col":19}},"generated_from_span":null},"id":4032,"kind":{"StorageLive":130},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":262,"col":14},"end":{"line":262,"col":19}},"generated_from_span":null},"id":4033,"kind":{"Assign":[{"kind":{"Local":130},"ty":{"Deduplicated":5021}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":4029}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":262,"col":14},"end":{"line":262,"col":19}},"generated_from_span":null},"id":4034,"kind":{"StorageLive":131},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":262,"col":14},"end":{"line":262,"col":19}},"generated_from_span":null},"id":4035,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":454}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":130},"ty":{"Deduplicated":5021}}},{"Copy":{"kind":{"Local":32},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":131},"ty":{"Deduplicated":4636}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":262,"col":14},"end":{"line":262,"col":19}},"generated_from_span":null},"id":3345,"kind":{"Assign":[{"kind":{"Local":31},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":131},"ty":{"Deduplicated":4636}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":262,"col":21},"end":{"line":262,"col":25}},"generated_from_span":null},"id":3346,"kind":{"StorageLive":33},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":262,"col":22},"end":{"line":262,"col":25}},"generated_from_span":null},"id":3347,"kind":{"StorageLive":34},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":262,"col":21},"end":{"line":262,"col":22}},"generated_from_span":null},"id":3348,"kind":{"StorageLive":35},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":262,"col":21},"end":{"line":262,"col":22}},"generated_from_span":null},"id":3349,"kind":{"Assign":[{"kind":{"Local":35},"ty":{"Deduplicated":616}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":262,"col":22},"end":{"line":262,"col":25}},"generated_from_span":null},"id":3350,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":64}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":35},"ty":{"Deduplicated":616}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":34},"ty":{"Deduplicated":1270}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":262,"col":21},"end":{"line":262,"col":25}},"generated_from_span":null},"id":3351,"kind":{"Assign":[{"kind":{"Local":33},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":34},"ty":{"Deduplicated":1270}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":262,"col":24},"end":{"line":262,"col":25}},"generated_from_span":null},"id":3352,"kind":{"StorageDead":35},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":262,"col":12},"end":{"line":262,"col":26}},"generated_from_span":null},"id":3353,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":31},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":33},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":30},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":262,"col":25},"end":{"line":262,"col":26}},"generated_from_span":null},"id":3354,"kind":{"StorageDead":33},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":262,"col":25},"end":{"line":262,"col":26}},"generated_from_span":null},"id":3355,"kind":{"StorageDead":31},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":12},"end":{"line":263,"col":43}},"generated_from_span":null},"id":3356,"kind":{"StorageLive":36},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":12},"end":{"line":263,"col":26}},"generated_from_span":null},"id":3357,"kind":{"StorageLive":37},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":14},"end":{"line":263,"col":19}},"generated_from_span":null},"id":3358,"kind":{"StorageLive":38},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":17},"end":{"line":263,"col":18}},"generated_from_span":null},"id":3359,"kind":{"StorageLive":39},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":17},"end":{"line":263,"col":18}},"generated_from_span":null},"id":3360,"kind":{"Assign":[{"kind":{"Local":39},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":14},"end":{"line":263,"col":19}},"generated_from_span":null},"id":4036,"kind":{"StorageLive":132},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":14},"end":{"line":263,"col":19}},"generated_from_span":null},"id":4037,"kind":{"Assign":[{"kind":{"Local":132},"ty":{"Deduplicated":5021}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":4029}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":14},"end":{"line":263,"col":19}},"generated_from_span":null},"id":4038,"kind":{"StorageLive":133},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":14},"end":{"line":263,"col":19}},"generated_from_span":null},"id":4039,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":454}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":132},"ty":{"Deduplicated":5021}}},{"Copy":{"kind":{"Local":39},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":133},"ty":{"Deduplicated":4636}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":14},"end":{"line":263,"col":19}},"generated_from_span":null},"id":3363,"kind":{"Assign":[{"kind":{"Local":38},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":133},"ty":{"Deduplicated":4636}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":21},"end":{"line":263,"col":25}},"generated_from_span":null},"id":3364,"kind":{"StorageLive":40},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":22},"end":{"line":263,"col":25}},"generated_from_span":null},"id":3365,"kind":{"StorageLive":41},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":21},"end":{"line":263,"col":22}},"generated_from_span":null},"id":3366,"kind":{"StorageLive":42},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":21},"end":{"line":263,"col":22}},"generated_from_span":null},"id":3367,"kind":{"Assign":[{"kind":{"Local":42},"ty":{"Deduplicated":618}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":22},"end":{"line":263,"col":25}},"generated_from_span":null},"id":3368,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":66}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":42},"ty":{"Deduplicated":618}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":41},"ty":{"Deduplicated":1271}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":21},"end":{"line":263,"col":25}},"generated_from_span":null},"id":3369,"kind":{"Assign":[{"kind":{"Local":40},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":41},"ty":{"Deduplicated":1271}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":24},"end":{"line":263,"col":25}},"generated_from_span":null},"id":3370,"kind":{"StorageDead":42},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":12},"end":{"line":263,"col":26}},"generated_from_span":null},"id":3371,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":38},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":40},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":37},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":25},"end":{"line":263,"col":26}},"generated_from_span":null},"id":3372,"kind":{"StorageDead":40},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":25},"end":{"line":263,"col":26}},"generated_from_span":null},"id":3373,"kind":{"StorageDead":38},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":29},"end":{"line":263,"col":43}},"generated_from_span":null},"id":3374,"kind":{"StorageLive":43},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":32},"end":{"line":263,"col":36}},"generated_from_span":null},"id":3375,"kind":{"StorageLive":44},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":33},"end":{"line":263,"col":36}},"generated_from_span":null},"id":3376,"kind":{"StorageLive":45},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":32},"end":{"line":263,"col":33}},"generated_from_span":null},"id":3377,"kind":{"StorageLive":46},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":32},"end":{"line":263,"col":33}},"generated_from_span":null},"id":3378,"kind":{"Assign":[{"kind":{"Local":46},"ty":{"Deduplicated":1273}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":33},"end":{"line":263,"col":36}},"generated_from_span":null},"id":3379,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":68}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":46},"ty":{"Deduplicated":1273}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":45},"ty":{"Deduplicated":1272}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":32},"end":{"line":263,"col":36}},"generated_from_span":null},"id":3380,"kind":{"Assign":[{"kind":{"Local":44},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":45},"ty":{"Deduplicated":1272}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":35},"end":{"line":263,"col":36}},"generated_from_span":null},"id":3381,"kind":{"StorageDead":46},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":38},"end":{"line":263,"col":42}},"generated_from_span":null},"id":3382,"kind":{"StorageLive":47},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":39},"end":{"line":263,"col":42}},"generated_from_span":null},"id":3383,"kind":{"StorageLive":48},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":38},"end":{"line":263,"col":39}},"generated_from_span":null},"id":3384,"kind":{"StorageLive":49},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":38},"end":{"line":263,"col":39}},"generated_from_span":null},"id":3385,"kind":{"Assign":[{"kind":{"Local":49},"ty":{"Deduplicated":1275}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":39},"end":{"line":263,"col":42}},"generated_from_span":null},"id":3386,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":70}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":49},"ty":{"Deduplicated":1275}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":48},"ty":{"Deduplicated":1274}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":38},"end":{"line":263,"col":42}},"generated_from_span":null},"id":3387,"kind":{"Assign":[{"kind":{"Local":47},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":48},"ty":{"Deduplicated":1274}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":41},"end":{"line":263,"col":42}},"generated_from_span":null},"id":3388,"kind":{"StorageDead":49},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":29},"end":{"line":263,"col":43}},"generated_from_span":null},"id":3389,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":44},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":47},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":43},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":42},"end":{"line":263,"col":43}},"generated_from_span":null},"id":3390,"kind":{"StorageDead":47},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":42},"end":{"line":263,"col":43}},"generated_from_span":null},"id":3391,"kind":{"StorageDead":44},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":12},"end":{"line":263,"col":43}},"generated_from_span":null},"id":3392,"kind":{"Assign":[{"kind":{"Local":50},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":37},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":43},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":12},"end":{"line":263,"col":43}},"generated_from_span":null},"id":3394,"kind":{"Assign":[{"kind":{"Local":36},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":50},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":42},"end":{"line":263,"col":43}},"generated_from_span":null},"id":3395,"kind":{"StorageDead":43},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":263,"col":42},"end":{"line":263,"col":43}},"generated_from_span":null},"id":3396,"kind":{"StorageDead":37},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":12},"end":{"line":264,"col":43}},"generated_from_span":null},"id":3397,"kind":{"StorageLive":51},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":12},"end":{"line":264,"col":26}},"generated_from_span":null},"id":3398,"kind":{"StorageLive":52},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":14},"end":{"line":264,"col":19}},"generated_from_span":null},"id":3399,"kind":{"StorageLive":53},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":17},"end":{"line":264,"col":18}},"generated_from_span":null},"id":3400,"kind":{"StorageLive":54},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":17},"end":{"line":264,"col":18}},"generated_from_span":null},"id":3401,"kind":{"Assign":[{"kind":{"Local":54},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":14},"end":{"line":264,"col":19}},"generated_from_span":null},"id":4040,"kind":{"StorageLive":134},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":14},"end":{"line":264,"col":19}},"generated_from_span":null},"id":4041,"kind":{"Assign":[{"kind":{"Local":134},"ty":{"Deduplicated":5021}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":4029}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":14},"end":{"line":264,"col":19}},"generated_from_span":null},"id":4042,"kind":{"StorageLive":135},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":14},"end":{"line":264,"col":19}},"generated_from_span":null},"id":4043,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":454}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":134},"ty":{"Deduplicated":5021}}},{"Copy":{"kind":{"Local":54},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":135},"ty":{"Deduplicated":4636}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":14},"end":{"line":264,"col":19}},"generated_from_span":null},"id":3404,"kind":{"Assign":[{"kind":{"Local":53},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":135},"ty":{"Deduplicated":4636}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":21},"end":{"line":264,"col":25}},"generated_from_span":null},"id":3405,"kind":{"StorageLive":55},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":22},"end":{"line":264,"col":25}},"generated_from_span":null},"id":3406,"kind":{"StorageLive":56},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":21},"end":{"line":264,"col":22}},"generated_from_span":null},"id":3407,"kind":{"StorageLive":57},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":21},"end":{"line":264,"col":22}},"generated_from_span":null},"id":3408,"kind":{"Assign":[{"kind":{"Local":57},"ty":{"Deduplicated":990}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":22},"end":{"line":264,"col":25}},"generated_from_span":null},"id":3409,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":72}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":57},"ty":{"Deduplicated":990}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":56},"ty":{"Deduplicated":1276}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":21},"end":{"line":264,"col":25}},"generated_from_span":null},"id":3410,"kind":{"Assign":[{"kind":{"Local":55},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":56},"ty":{"Deduplicated":1276}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":24},"end":{"line":264,"col":25}},"generated_from_span":null},"id":3411,"kind":{"StorageDead":57},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":12},"end":{"line":264,"col":26}},"generated_from_span":null},"id":3412,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":53},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":55},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":52},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":25},"end":{"line":264,"col":26}},"generated_from_span":null},"id":3413,"kind":{"StorageDead":55},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":25},"end":{"line":264,"col":26}},"generated_from_span":null},"id":3414,"kind":{"StorageDead":53},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":29},"end":{"line":264,"col":43}},"generated_from_span":null},"id":3415,"kind":{"StorageLive":58},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":31},"end":{"line":264,"col":36}},"generated_from_span":null},"id":3416,"kind":{"StorageLive":59},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":34},"end":{"line":264,"col":35}},"generated_from_span":null},"id":3417,"kind":{"StorageLive":60},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":34},"end":{"line":264,"col":35}},"generated_from_span":null},"id":3418,"kind":{"Assign":[{"kind":{"Local":60},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":31},"end":{"line":264,"col":36}},"generated_from_span":null},"id":4044,"kind":{"StorageLive":136},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":31},"end":{"line":264,"col":36}},"generated_from_span":null},"id":4045,"kind":{"Assign":[{"kind":{"Local":136},"ty":{"Deduplicated":5021}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":4029}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":31},"end":{"line":264,"col":36}},"generated_from_span":null},"id":4046,"kind":{"StorageLive":137},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":31},"end":{"line":264,"col":36}},"generated_from_span":null},"id":4047,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":454}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":136},"ty":{"Deduplicated":5021}}},{"Copy":{"kind":{"Local":60},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":137},"ty":{"Deduplicated":4636}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":31},"end":{"line":264,"col":36}},"generated_from_span":null},"id":3421,"kind":{"Assign":[{"kind":{"Local":59},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":137},"ty":{"Deduplicated":4636}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":38},"end":{"line":264,"col":42}},"generated_from_span":null},"id":3422,"kind":{"StorageLive":61},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":39},"end":{"line":264,"col":42}},"generated_from_span":null},"id":3423,"kind":{"StorageLive":62},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":38},"end":{"line":264,"col":39}},"generated_from_span":null},"id":3424,"kind":{"StorageLive":63},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":38},"end":{"line":264,"col":39}},"generated_from_span":null},"id":3425,"kind":{"Assign":[{"kind":{"Local":63},"ty":{"Deduplicated":1278}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":39},"end":{"line":264,"col":42}},"generated_from_span":null},"id":3426,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":74}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":63},"ty":{"Deduplicated":1278}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":62},"ty":{"Deduplicated":1277}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":38},"end":{"line":264,"col":42}},"generated_from_span":null},"id":3427,"kind":{"Assign":[{"kind":{"Local":61},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":62},"ty":{"Deduplicated":1277}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":41},"end":{"line":264,"col":42}},"generated_from_span":null},"id":3428,"kind":{"StorageDead":63},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":29},"end":{"line":264,"col":43}},"generated_from_span":null},"id":3429,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":59},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":61},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":58},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":42},"end":{"line":264,"col":43}},"generated_from_span":null},"id":3430,"kind":{"StorageDead":61},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":42},"end":{"line":264,"col":43}},"generated_from_span":null},"id":3431,"kind":{"StorageDead":59},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":12},"end":{"line":264,"col":43}},"generated_from_span":null},"id":3432,"kind":{"Assign":[{"kind":{"Local":64},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":52},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":58},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":12},"end":{"line":264,"col":43}},"generated_from_span":null},"id":3434,"kind":{"Assign":[{"kind":{"Local":51},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":64},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":42},"end":{"line":264,"col":43}},"generated_from_span":null},"id":3435,"kind":{"StorageDead":58},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":264,"col":42},"end":{"line":264,"col":43}},"generated_from_span":null},"id":3436,"kind":{"StorageDead":52},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":12},"end":{"line":265,"col":60}},"generated_from_span":null},"id":3437,"kind":{"StorageLive":65},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":12},"end":{"line":265,"col":43}},"generated_from_span":null},"id":3438,"kind":{"StorageLive":66},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":12},"end":{"line":265,"col":26}},"generated_from_span":null},"id":3439,"kind":{"StorageLive":67},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":14},"end":{"line":265,"col":19}},"generated_from_span":null},"id":3440,"kind":{"StorageLive":68},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":17},"end":{"line":265,"col":18}},"generated_from_span":null},"id":3441,"kind":{"StorageLive":69},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":17},"end":{"line":265,"col":18}},"generated_from_span":null},"id":3442,"kind":{"Assign":[{"kind":{"Local":69},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":14},"end":{"line":265,"col":19}},"generated_from_span":null},"id":4048,"kind":{"StorageLive":138},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":14},"end":{"line":265,"col":19}},"generated_from_span":null},"id":4049,"kind":{"Assign":[{"kind":{"Local":138},"ty":{"Deduplicated":5021}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":4029}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":14},"end":{"line":265,"col":19}},"generated_from_span":null},"id":4050,"kind":{"StorageLive":139},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":14},"end":{"line":265,"col":19}},"generated_from_span":null},"id":4051,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":454}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":138},"ty":{"Deduplicated":5021}}},{"Copy":{"kind":{"Local":69},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":139},"ty":{"Deduplicated":4636}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":14},"end":{"line":265,"col":19}},"generated_from_span":null},"id":3445,"kind":{"Assign":[{"kind":{"Local":68},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":139},"ty":{"Deduplicated":4636}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":21},"end":{"line":265,"col":25}},"generated_from_span":null},"id":3446,"kind":{"StorageLive":70},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":22},"end":{"line":265,"col":25}},"generated_from_span":null},"id":3447,"kind":{"StorageLive":71},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":21},"end":{"line":265,"col":22}},"generated_from_span":null},"id":3448,"kind":{"StorageLive":72},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":21},"end":{"line":265,"col":22}},"generated_from_span":null},"id":3449,"kind":{"Assign":[{"kind":{"Local":72},"ty":{"Deduplicated":1280}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":22},"end":{"line":265,"col":25}},"generated_from_span":null},"id":3450,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":76}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":72},"ty":{"Deduplicated":1280}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":71},"ty":{"Deduplicated":1279}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":21},"end":{"line":265,"col":25}},"generated_from_span":null},"id":3451,"kind":{"Assign":[{"kind":{"Local":70},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":71},"ty":{"Deduplicated":1279}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":24},"end":{"line":265,"col":25}},"generated_from_span":null},"id":3452,"kind":{"StorageDead":72},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":12},"end":{"line":265,"col":26}},"generated_from_span":null},"id":3453,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":68},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":70},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":67},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":25},"end":{"line":265,"col":26}},"generated_from_span":null},"id":3454,"kind":{"StorageDead":70},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":25},"end":{"line":265,"col":26}},"generated_from_span":null},"id":3455,"kind":{"StorageDead":68},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":29},"end":{"line":265,"col":43}},"generated_from_span":null},"id":3456,"kind":{"StorageLive":73},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":31},"end":{"line":265,"col":36}},"generated_from_span":null},"id":3457,"kind":{"StorageLive":74},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":34},"end":{"line":265,"col":35}},"generated_from_span":null},"id":3458,"kind":{"StorageLive":75},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":34},"end":{"line":265,"col":35}},"generated_from_span":null},"id":3459,"kind":{"Assign":[{"kind":{"Local":75},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":31},"end":{"line":265,"col":36}},"generated_from_span":null},"id":4052,"kind":{"StorageLive":140},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":31},"end":{"line":265,"col":36}},"generated_from_span":null},"id":4053,"kind":{"Assign":[{"kind":{"Local":140},"ty":{"Deduplicated":5021}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":4029}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":31},"end":{"line":265,"col":36}},"generated_from_span":null},"id":4054,"kind":{"StorageLive":141},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":31},"end":{"line":265,"col":36}},"generated_from_span":null},"id":4055,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":454}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":140},"ty":{"Deduplicated":5021}}},{"Copy":{"kind":{"Local":75},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":141},"ty":{"Deduplicated":4636}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":31},"end":{"line":265,"col":36}},"generated_from_span":null},"id":3462,"kind":{"Assign":[{"kind":{"Local":74},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":141},"ty":{"Deduplicated":4636}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":38},"end":{"line":265,"col":42}},"generated_from_span":null},"id":3463,"kind":{"StorageLive":76},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":39},"end":{"line":265,"col":42}},"generated_from_span":null},"id":3464,"kind":{"StorageLive":77},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":38},"end":{"line":265,"col":39}},"generated_from_span":null},"id":3465,"kind":{"StorageLive":78},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":38},"end":{"line":265,"col":39}},"generated_from_span":null},"id":3466,"kind":{"Assign":[{"kind":{"Local":78},"ty":{"Deduplicated":1282}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":39},"end":{"line":265,"col":42}},"generated_from_span":null},"id":3467,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":78}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":78},"ty":{"Deduplicated":1282}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":77},"ty":{"Deduplicated":1281}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":38},"end":{"line":265,"col":42}},"generated_from_span":null},"id":3468,"kind":{"Assign":[{"kind":{"Local":76},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":77},"ty":{"Deduplicated":1281}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":41},"end":{"line":265,"col":42}},"generated_from_span":null},"id":3469,"kind":{"StorageDead":78},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":29},"end":{"line":265,"col":43}},"generated_from_span":null},"id":3470,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":74},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":76},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":73},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":42},"end":{"line":265,"col":43}},"generated_from_span":null},"id":3471,"kind":{"StorageDead":76},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":42},"end":{"line":265,"col":43}},"generated_from_span":null},"id":3472,"kind":{"StorageDead":74},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":12},"end":{"line":265,"col":43}},"generated_from_span":null},"id":3473,"kind":{"Assign":[{"kind":{"Local":79},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":67},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":73},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":12},"end":{"line":265,"col":43}},"generated_from_span":null},"id":3475,"kind":{"Assign":[{"kind":{"Local":66},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":79},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":42},"end":{"line":265,"col":43}},"generated_from_span":null},"id":3476,"kind":{"StorageDead":73},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":42},"end":{"line":265,"col":43}},"generated_from_span":null},"id":3477,"kind":{"StorageDead":67},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":46},"end":{"line":265,"col":60}},"generated_from_span":null},"id":3478,"kind":{"StorageLive":80},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":49},"end":{"line":265,"col":53}},"generated_from_span":null},"id":3479,"kind":{"StorageLive":81},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":50},"end":{"line":265,"col":53}},"generated_from_span":null},"id":3480,"kind":{"StorageLive":82},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":49},"end":{"line":265,"col":50}},"generated_from_span":null},"id":3481,"kind":{"StorageLive":83},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":49},"end":{"line":265,"col":50}},"generated_from_span":null},"id":3482,"kind":{"Assign":[{"kind":{"Local":83},"ty":{"Deduplicated":1284}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":50},"end":{"line":265,"col":53}},"generated_from_span":null},"id":3483,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":80}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":83},"ty":{"Deduplicated":1284}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":82},"ty":{"Deduplicated":1283}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":49},"end":{"line":265,"col":53}},"generated_from_span":null},"id":3484,"kind":{"Assign":[{"kind":{"Local":81},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":82},"ty":{"Deduplicated":1283}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":52},"end":{"line":265,"col":53}},"generated_from_span":null},"id":3485,"kind":{"StorageDead":83},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":55},"end":{"line":265,"col":59}},"generated_from_span":null},"id":3486,"kind":{"StorageLive":84},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":56},"end":{"line":265,"col":59}},"generated_from_span":null},"id":3487,"kind":{"StorageLive":85},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":55},"end":{"line":265,"col":56}},"generated_from_span":null},"id":3488,"kind":{"StorageLive":86},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":55},"end":{"line":265,"col":56}},"generated_from_span":null},"id":3489,"kind":{"Assign":[{"kind":{"Local":86},"ty":{"Deduplicated":1286}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":56},"end":{"line":265,"col":59}},"generated_from_span":null},"id":3490,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":82}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":86},"ty":{"Deduplicated":1286}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":85},"ty":{"Deduplicated":1285}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":55},"end":{"line":265,"col":59}},"generated_from_span":null},"id":3491,"kind":{"Assign":[{"kind":{"Local":84},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":85},"ty":{"Deduplicated":1285}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":58},"end":{"line":265,"col":59}},"generated_from_span":null},"id":3492,"kind":{"StorageDead":86},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":46},"end":{"line":265,"col":60}},"generated_from_span":null},"id":3493,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":81},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":84},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":80},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":59},"end":{"line":265,"col":60}},"generated_from_span":null},"id":3494,"kind":{"StorageDead":84},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":59},"end":{"line":265,"col":60}},"generated_from_span":null},"id":3495,"kind":{"StorageDead":81},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":12},"end":{"line":265,"col":60}},"generated_from_span":null},"id":3496,"kind":{"Assign":[{"kind":{"Local":87},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":66},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":80},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":12},"end":{"line":265,"col":60}},"generated_from_span":null},"id":3498,"kind":{"Assign":[{"kind":{"Local":65},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":87},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":59},"end":{"line":265,"col":60}},"generated_from_span":null},"id":3499,"kind":{"StorageDead":80},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":265,"col":59},"end":{"line":265,"col":60}},"generated_from_span":null},"id":3500,"kind":{"StorageDead":66},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":29},"end":{"line":266,"col":60}},"generated_from_span":null},"id":3501,"kind":{"StorageLive":88},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":29},"end":{"line":266,"col":43}},"generated_from_span":null},"id":3502,"kind":{"StorageLive":89},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":31},"end":{"line":266,"col":36}},"generated_from_span":null},"id":3503,"kind":{"StorageLive":90},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":34},"end":{"line":266,"col":35}},"generated_from_span":null},"id":3504,"kind":{"StorageLive":91},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":34},"end":{"line":266,"col":35}},"generated_from_span":null},"id":3505,"kind":{"Assign":[{"kind":{"Local":91},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","1"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":31},"end":{"line":266,"col":36}},"generated_from_span":null},"id":4056,"kind":{"StorageLive":142},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":31},"end":{"line":266,"col":36}},"generated_from_span":null},"id":4057,"kind":{"Assign":[{"kind":{"Local":142},"ty":{"Deduplicated":5021}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":4029}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":31},"end":{"line":266,"col":36}},"generated_from_span":null},"id":4058,"kind":{"StorageLive":143},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":31},"end":{"line":266,"col":36}},"generated_from_span":null},"id":4059,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":454}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":142},"ty":{"Deduplicated":5021}}},{"Copy":{"kind":{"Local":91},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":143},"ty":{"Deduplicated":4636}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":31},"end":{"line":266,"col":36}},"generated_from_span":null},"id":3508,"kind":{"Assign":[{"kind":{"Local":90},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":143},"ty":{"Deduplicated":4636}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":38},"end":{"line":266,"col":42}},"generated_from_span":null},"id":3509,"kind":{"StorageLive":92},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":39},"end":{"line":266,"col":42}},"generated_from_span":null},"id":3510,"kind":{"StorageLive":93},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":38},"end":{"line":266,"col":39}},"generated_from_span":null},"id":3511,"kind":{"StorageLive":94},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":38},"end":{"line":266,"col":39}},"generated_from_span":null},"id":3512,"kind":{"Assign":[{"kind":{"Local":94},"ty":{"Deduplicated":1288}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":39},"end":{"line":266,"col":42}},"generated_from_span":null},"id":3513,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":84}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":94},"ty":{"Deduplicated":1288}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":93},"ty":{"Deduplicated":4031}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":38},"end":{"line":266,"col":42}},"generated_from_span":null},"id":3514,"kind":{"Assign":[{"kind":{"Local":92},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":93},"ty":{"Deduplicated":4031}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":41},"end":{"line":266,"col":42}},"generated_from_span":null},"id":3515,"kind":{"StorageDead":94},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":29},"end":{"line":266,"col":43}},"generated_from_span":null},"id":3516,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":90},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":92},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":89},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":42},"end":{"line":266,"col":43}},"generated_from_span":null},"id":3517,"kind":{"StorageDead":92},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":42},"end":{"line":266,"col":43}},"generated_from_span":null},"id":3518,"kind":{"StorageDead":90},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":46},"end":{"line":266,"col":60}},"generated_from_span":null},"id":3519,"kind":{"StorageLive":95},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":48},"end":{"line":266,"col":53}},"generated_from_span":null},"id":3520,"kind":{"StorageLive":96},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":51},"end":{"line":266,"col":52}},"generated_from_span":null},"id":3521,"kind":{"StorageLive":97},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":51},"end":{"line":266,"col":52}},"generated_from_span":null},"id":3522,"kind":{"Assign":[{"kind":{"Local":97},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":48},"end":{"line":266,"col":53}},"generated_from_span":null},"id":4060,"kind":{"StorageLive":144},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":48},"end":{"line":266,"col":53}},"generated_from_span":null},"id":4061,"kind":{"Assign":[{"kind":{"Local":144},"ty":{"Deduplicated":5021}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":4029}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":48},"end":{"line":266,"col":53}},"generated_from_span":null},"id":4062,"kind":{"StorageLive":145},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":48},"end":{"line":266,"col":53}},"generated_from_span":null},"id":4063,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":454}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":144},"ty":{"Deduplicated":5021}}},{"Copy":{"kind":{"Local":97},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":145},"ty":{"Deduplicated":4636}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":48},"end":{"line":266,"col":53}},"generated_from_span":null},"id":3525,"kind":{"Assign":[{"kind":{"Local":96},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":145},"ty":{"Deduplicated":4636}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":55},"end":{"line":266,"col":59}},"generated_from_span":null},"id":3526,"kind":{"StorageLive":98},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":56},"end":{"line":266,"col":59}},"generated_from_span":null},"id":3527,"kind":{"StorageLive":99},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":55},"end":{"line":266,"col":56}},"generated_from_span":null},"id":3528,"kind":{"StorageLive":100},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":55},"end":{"line":266,"col":56}},"generated_from_span":null},"id":3529,"kind":{"Assign":[{"kind":{"Local":100},"ty":{"Deduplicated":1290}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":56},"end":{"line":266,"col":59}},"generated_from_span":null},"id":3530,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":86}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":100},"ty":{"Deduplicated":1290}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":99},"ty":{"Deduplicated":4032}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":55},"end":{"line":266,"col":59}},"generated_from_span":null},"id":3531,"kind":{"Assign":[{"kind":{"Local":98},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":99},"ty":{"Deduplicated":4032}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":58},"end":{"line":266,"col":59}},"generated_from_span":null},"id":3532,"kind":{"StorageDead":100},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":46},"end":{"line":266,"col":60}},"generated_from_span":null},"id":3533,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":96},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":98},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":95},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":59},"end":{"line":266,"col":60}},"generated_from_span":null},"id":3534,"kind":{"StorageDead":98},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":59},"end":{"line":266,"col":60}},"generated_from_span":null},"id":3535,"kind":{"StorageDead":96},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":29},"end":{"line":266,"col":60}},"generated_from_span":null},"id":3536,"kind":{"Assign":[{"kind":{"Local":101},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":89},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":95},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":29},"end":{"line":266,"col":60}},"generated_from_span":null},"id":3538,"kind":{"Assign":[{"kind":{"Local":88},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":101},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":59},"end":{"line":266,"col":60}},"generated_from_span":null},"id":3539,"kind":{"StorageDead":95},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":266,"col":59},"end":{"line":266,"col":60}},"generated_from_span":null},"id":3540,"kind":{"StorageDead":89},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":46},"end":{"line":267,"col":77}},"generated_from_span":null},"id":3541,"kind":{"StorageLive":102},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":46},"end":{"line":267,"col":60}},"generated_from_span":null},"id":3542,"kind":{"StorageLive":103},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":48},"end":{"line":267,"col":53}},"generated_from_span":null},"id":3543,"kind":{"StorageLive":104},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":51},"end":{"line":267,"col":52}},"generated_from_span":null},"id":3544,"kind":{"StorageLive":105},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":51},"end":{"line":267,"col":52}},"generated_from_span":null},"id":3545,"kind":{"Assign":[{"kind":{"Local":105},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","2"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":48},"end":{"line":267,"col":53}},"generated_from_span":null},"id":4064,"kind":{"StorageLive":146},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":48},"end":{"line":267,"col":53}},"generated_from_span":null},"id":4065,"kind":{"Assign":[{"kind":{"Local":146},"ty":{"Deduplicated":5021}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":4029}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":48},"end":{"line":267,"col":53}},"generated_from_span":null},"id":4066,"kind":{"StorageLive":147},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":48},"end":{"line":267,"col":53}},"generated_from_span":null},"id":4067,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":454}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":146},"ty":{"Deduplicated":5021}}},{"Copy":{"kind":{"Local":105},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":147},"ty":{"Deduplicated":4636}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":48},"end":{"line":267,"col":53}},"generated_from_span":null},"id":3548,"kind":{"Assign":[{"kind":{"Local":104},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":147},"ty":{"Deduplicated":4636}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":55},"end":{"line":267,"col":59}},"generated_from_span":null},"id":3549,"kind":{"StorageLive":106},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":56},"end":{"line":267,"col":59}},"generated_from_span":null},"id":3550,"kind":{"StorageLive":107},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":55},"end":{"line":267,"col":56}},"generated_from_span":null},"id":3551,"kind":{"StorageLive":108},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":55},"end":{"line":267,"col":56}},"generated_from_span":null},"id":3552,"kind":{"Assign":[{"kind":{"Local":108},"ty":{"Deduplicated":1315}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":56},"end":{"line":267,"col":59}},"generated_from_span":null},"id":3553,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":88}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":108},"ty":{"Deduplicated":1315}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":107},"ty":{"Deduplicated":4033}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":55},"end":{"line":267,"col":59}},"generated_from_span":null},"id":3554,"kind":{"Assign":[{"kind":{"Local":106},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":107},"ty":{"Deduplicated":4033}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":58},"end":{"line":267,"col":59}},"generated_from_span":null},"id":3555,"kind":{"StorageDead":108},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":46},"end":{"line":267,"col":60}},"generated_from_span":null},"id":3556,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":104},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":106},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":103},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":59},"end":{"line":267,"col":60}},"generated_from_span":null},"id":3557,"kind":{"StorageDead":106},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":59},"end":{"line":267,"col":60}},"generated_from_span":null},"id":3558,"kind":{"StorageDead":104},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":63},"end":{"line":267,"col":77}},"generated_from_span":null},"id":3559,"kind":{"StorageLive":109},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":66},"end":{"line":267,"col":70}},"generated_from_span":null},"id":3560,"kind":{"StorageLive":110},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":67},"end":{"line":267,"col":70}},"generated_from_span":null},"id":3561,"kind":{"StorageLive":111},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":66},"end":{"line":267,"col":67}},"generated_from_span":null},"id":3562,"kind":{"StorageLive":112},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":66},"end":{"line":267,"col":67}},"generated_from_span":null},"id":3563,"kind":{"Assign":[{"kind":{"Local":112},"ty":{"Deduplicated":1452}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":67},"end":{"line":267,"col":70}},"generated_from_span":null},"id":3564,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":90}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":112},"ty":{"Deduplicated":1452}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":111},"ty":{"Deduplicated":4034}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":66},"end":{"line":267,"col":70}},"generated_from_span":null},"id":3565,"kind":{"Assign":[{"kind":{"Local":110},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":111},"ty":{"Deduplicated":4034}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":69},"end":{"line":267,"col":70}},"generated_from_span":null},"id":3566,"kind":{"StorageDead":112},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":72},"end":{"line":267,"col":76}},"generated_from_span":null},"id":3567,"kind":{"StorageLive":113},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":73},"end":{"line":267,"col":76}},"generated_from_span":null},"id":3568,"kind":{"StorageLive":114},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":72},"end":{"line":267,"col":73}},"generated_from_span":null},"id":3569,"kind":{"StorageLive":115},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":72},"end":{"line":267,"col":73}},"generated_from_span":null},"id":3570,"kind":{"Assign":[{"kind":{"Local":115},"ty":{"Deduplicated":1319}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":73},"end":{"line":267,"col":76}},"generated_from_span":null},"id":3571,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":92}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":115},"ty":{"Deduplicated":1319}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":114},"ty":{"Deduplicated":4035}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":72},"end":{"line":267,"col":76}},"generated_from_span":null},"id":3572,"kind":{"Assign":[{"kind":{"Local":113},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":114},"ty":{"Deduplicated":4035}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":75},"end":{"line":267,"col":76}},"generated_from_span":null},"id":3573,"kind":{"StorageDead":115},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":63},"end":{"line":267,"col":77}},"generated_from_span":null},"id":3574,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":110},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":113},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":109},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":76},"end":{"line":267,"col":77}},"generated_from_span":null},"id":3575,"kind":{"StorageDead":113},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":76},"end":{"line":267,"col":77}},"generated_from_span":null},"id":3576,"kind":{"StorageDead":110},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":46},"end":{"line":267,"col":77}},"generated_from_span":null},"id":3577,"kind":{"Assign":[{"kind":{"Local":116},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":103},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":109},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":46},"end":{"line":267,"col":77}},"generated_from_span":null},"id":3579,"kind":{"Assign":[{"kind":{"Local":102},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":116},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":76},"end":{"line":267,"col":77}},"generated_from_span":null},"id":3580,"kind":{"StorageDead":109},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":267,"col":76},"end":{"line":267,"col":77}},"generated_from_span":null},"id":3581,"kind":{"StorageDead":103},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":268,"col":63},"end":{"line":268,"col":77}},"generated_from_span":null},"id":3582,"kind":{"StorageLive":117},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":268,"col":65},"end":{"line":268,"col":70}},"generated_from_span":null},"id":3583,"kind":{"StorageLive":118},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":268,"col":68},"end":{"line":268,"col":69}},"generated_from_span":null},"id":3584,"kind":{"StorageLive":119},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":268,"col":68},"end":{"line":268,"col":69}},"generated_from_span":null},"id":3585,"kind":{"Assign":[{"kind":{"Local":119},"ty":{"Deduplicated":455}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","3"]}}},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":268,"col":65},"end":{"line":268,"col":70}},"generated_from_span":null},"id":4068,"kind":{"StorageLive":148},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":268,"col":65},"end":{"line":268,"col":70}},"generated_from_span":null},"id":4069,"kind":{"Assign":[{"kind":{"Local":148},"ty":{"Deduplicated":5021}},{"Ref":{"place":{"kind":{"Local":2},"ty":{"Deduplicated":4029}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":268,"col":65},"end":{"line":268,"col":70}},"generated_from_span":null},"id":4070,"kind":{"StorageLive":149},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":268,"col":65},"end":{"line":268,"col":70}},"generated_from_span":null},"id":4071,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":{"Index":{"is_array":true,"mutability":"Shared","is_range":false}}}},"generics":{"regions":["Erased"],"types":[{"Deduplicated":454}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":148},"ty":{"Deduplicated":5021}}},{"Copy":{"kind":{"Local":119},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":149},"ty":{"Deduplicated":4636}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":268,"col":65},"end":{"line":268,"col":70}},"generated_from_span":null},"id":3588,"kind":{"Assign":[{"kind":{"Local":118},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":149},"ty":{"Deduplicated":4636}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":268,"col":72},"end":{"line":268,"col":76}},"generated_from_span":null},"id":3589,"kind":{"StorageLive":120},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":268,"col":73},"end":{"line":268,"col":76}},"generated_from_span":null},"id":3590,"kind":{"StorageLive":121},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":268,"col":72},"end":{"line":268,"col":73}},"generated_from_span":null},"id":3591,"kind":{"StorageLive":122},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":268,"col":72},"end":{"line":268,"col":73}},"generated_from_span":null},"id":3592,"kind":{"Assign":[{"kind":{"Local":122},"ty":{"Deduplicated":4037}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":268,"col":73},"end":{"line":268,"col":76}},"generated_from_span":null},"id":3593,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":94}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":122},"ty":{"Deduplicated":4037}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":121},"ty":{"Deduplicated":4036}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":268,"col":72},"end":{"line":268,"col":76}},"generated_from_span":null},"id":3594,"kind":{"Assign":[{"kind":{"Local":120},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":121},"ty":{"Deduplicated":4036}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":268,"col":75},"end":{"line":268,"col":76}},"generated_from_span":null},"id":3595,"kind":{"StorageDead":122},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":268,"col":63},"end":{"line":268,"col":77}},"generated_from_span":null},"id":3596,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":118},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":120},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":117},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":268,"col":76},"end":{"line":268,"col":77}},"generated_from_span":null},"id":3597,"kind":{"StorageDead":120},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":268,"col":76},"end":{"line":268,"col":77}},"generated_from_span":null},"id":3598,"kind":{"StorageDead":118},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":269,"col":80},"end":{"line":269,"col":93}},"generated_from_span":null},"id":3599,"kind":{"StorageLive":123},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":269,"col":82},"end":{"line":269,"col":86}},"generated_from_span":null},"id":3600,"kind":{"StorageLive":124},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":269,"col":83},"end":{"line":269,"col":86}},"generated_from_span":null},"id":3601,"kind":{"StorageLive":125},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":269,"col":82},"end":{"line":269,"col":83}},"generated_from_span":null},"id":3602,"kind":{"StorageLive":126},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":269,"col":82},"end":{"line":269,"col":83}},"generated_from_span":null},"id":3603,"kind":{"Assign":[{"kind":{"Local":126},"ty":{"Deduplicated":1323}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":269,"col":83},"end":{"line":269,"col":86}},"generated_from_span":null},"id":3604,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":96}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":126},"ty":{"Deduplicated":1323}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":125},"ty":{"Deduplicated":4038}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":269,"col":82},"end":{"line":269,"col":86}},"generated_from_span":null},"id":3605,"kind":{"Assign":[{"kind":{"Local":124},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":125},"ty":{"Deduplicated":4038}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":269,"col":85},"end":{"line":269,"col":86}},"generated_from_span":null},"id":3606,"kind":{"StorageDead":126},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":269,"col":88},"end":{"line":269,"col":92}},"generated_from_span":null},"id":3607,"kind":{"StorageLive":127},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":269,"col":89},"end":{"line":269,"col":92}},"generated_from_span":null},"id":3608,"kind":{"StorageLive":128},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":269,"col":88},"end":{"line":269,"col":89}},"generated_from_span":null},"id":3609,"kind":{"StorageLive":129},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":269,"col":88},"end":{"line":269,"col":89}},"generated_from_span":null},"id":3610,"kind":{"Assign":[{"kind":{"Local":129},"ty":{"Deduplicated":4040}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":463}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":269,"col":89},"end":{"line":269,"col":92}},"generated_from_span":null},"id":3611,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":98}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":129},"ty":{"Deduplicated":4040}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","4"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":128},"ty":{"Deduplicated":4039}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":269,"col":88},"end":{"line":269,"col":92}},"generated_from_span":null},"id":3612,"kind":{"Assign":[{"kind":{"Local":127},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":128},"ty":{"Deduplicated":4039}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":269,"col":91},"end":{"line":269,"col":92}},"generated_from_span":null},"id":3613,"kind":{"StorageDead":129},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":269,"col":80},"end":{"line":269,"col":93}},"generated_from_span":null},"id":3614,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":124},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":127},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":123},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":269,"col":92},"end":{"line":269,"col":93}},"generated_from_span":null},"id":3615,"kind":{"StorageDead":127},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":269,"col":92},"end":{"line":269,"col":93}},"generated_from_span":null},"id":3616,"kind":{"StorageDead":124},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":260,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3617,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1221}},{"Aggregate":[{"Array":[{"Deduplicated":1220},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","9"]}}},"ty":{"Deduplicated":455}}]},[{"Move":{"kind":{"Local":23},"ty":{"Deduplicated":1220}}},{"Move":{"kind":{"Local":30},"ty":{"Deduplicated":1220}}},{"Move":{"kind":{"Local":36},"ty":{"Deduplicated":1220}}},{"Move":{"kind":{"Local":51},"ty":{"Deduplicated":1220}}},{"Move":{"kind":{"Local":65},"ty":{"Deduplicated":1220}}},{"Move":{"kind":{"Local":88},"ty":{"Deduplicated":1220}}},{"Move":{"kind":{"Local":102},"ty":{"Deduplicated":1220}}},{"Move":{"kind":{"Local":117},"ty":{"Deduplicated":1220}}},{"Move":{"kind":{"Local":123},"ty":{"Deduplicated":1220}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3618,"kind":{"StorageDead":128},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3619,"kind":{"StorageDead":125},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3620,"kind":{"StorageDead":123},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3621,"kind":{"StorageDead":121},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3622,"kind":{"StorageDead":119},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3623,"kind":{"StorageDead":117},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3624,"kind":{"StorageDead":114},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3625,"kind":{"StorageDead":111},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3626,"kind":{"StorageDead":107},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3627,"kind":{"StorageDead":105},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3628,"kind":{"StorageDead":102},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3629,"kind":{"StorageDead":99},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3630,"kind":{"StorageDead":97},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3631,"kind":{"StorageDead":93},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3632,"kind":{"StorageDead":91},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3633,"kind":{"StorageDead":88},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3634,"kind":{"StorageDead":85},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3635,"kind":{"StorageDead":82},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3636,"kind":{"StorageDead":77},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3637,"kind":{"StorageDead":75},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3638,"kind":{"StorageDead":71},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3639,"kind":{"StorageDead":69},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3640,"kind":{"StorageDead":65},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3641,"kind":{"StorageDead":62},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3642,"kind":{"StorageDead":60},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3643,"kind":{"StorageDead":56},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3644,"kind":{"StorageDead":54},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3645,"kind":{"StorageDead":51},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3646,"kind":{"StorageDead":48},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3647,"kind":{"StorageDead":45},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3648,"kind":{"StorageDead":41},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3649,"kind":{"StorageDead":39},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3650,"kind":{"StorageDead":36},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3651,"kind":{"StorageDead":34},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3652,"kind":{"StorageDead":32},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3653,"kind":{"StorageDead":30},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3654,"kind":{"StorageDead":28},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3655,"kind":{"StorageDead":25},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":270,"col":8},"end":{"line":270,"col":9}},"generated_from_span":null},"id":3656,"kind":{"StorageDead":23},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":271,"col":4},"end":{"line":271,"col":5}},"generated_from_span":null},"id":3657,"kind":{"StorageDead":2},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":271,"col":5},"end":{"line":271,"col":5}},"generated_from_span":null},"id":3658,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":20,"item_meta":{"name":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["montgomery_reduce",0]},{"Ident":["part1",0]}],"span":{"data":{"file_id":0,"beg":{"line":279,"col":8},"end":{"line":282,"col":9}},"generated_from_span":null},"source_text":"fn part1(sum: u128) -> (u128, u64) {\n let p = (sum as u64).wrapping_mul(constants::LFACTOR) & ((1u64 << 52) - 1);\n ((sum + m(p, constants::L[0])) >> 52, p)\n }","attr_info":{"attributes":[],"inline":"Always","rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":1220}],"output":{"Deduplicated":1262}},"src":"TopLevel","is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":0,"beg":{"line":279,"col":8},"end":{"line":282,"col":9}},"generated_from_span":null},"bound_body_regions":9,"locals":{"arg_count":1,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":0,"beg":{"line":279,"col":31},"end":{"line":279,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1262}},{"index":1,"name":"sum","span":{"data":{"file_id":0,"beg":{"line":279,"col":17},"end":{"line":279,"col":20}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":2,"name":"p","span":{"data":{"file_id":0,"beg":{"line":280,"col":16},"end":{"line":280,"col":17}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":3,"name":null,"span":{"data":{"file_id":0,"beg":{"line":280,"col":20},"end":{"line":280,"col":65}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":4,"name":null,"span":{"data":{"file_id":0,"beg":{"line":280,"col":20},"end":{"line":280,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":5,"name":null,"span":{"data":{"file_id":0,"beg":{"line":280,"col":21},"end":{"line":280,"col":24}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":6,"name":null,"span":{"data":{"file_id":0,"beg":{"line":280,"col":68},"end":{"line":280,"col":86}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":7,"name":null,"span":{"data":{"file_id":0,"beg":{"line":280,"col":69},"end":{"line":280,"col":81}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":8,"name":null,"span":{"data":{"file_id":0,"beg":{"line":280,"col":68},"end":{"line":280,"col":86}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":9,"name":null,"span":{"data":{"file_id":0,"beg":{"line":281,"col":13},"end":{"line":281,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":10,"name":null,"span":{"data":{"file_id":0,"beg":{"line":281,"col":13},"end":{"line":281,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":11,"name":null,"span":{"data":{"file_id":0,"beg":{"line":281,"col":14},"end":{"line":281,"col":17}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":12,"name":null,"span":{"data":{"file_id":0,"beg":{"line":281,"col":20},"end":{"line":281,"col":41}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":13,"name":null,"span":{"data":{"file_id":0,"beg":{"line":281,"col":22},"end":{"line":281,"col":23}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":14,"name":null,"span":{"data":{"file_id":0,"beg":{"line":281,"col":25},"end":{"line":281,"col":40}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":15,"name":null,"span":{"data":{"file_id":0,"beg":{"line":281,"col":37},"end":{"line":281,"col":40}},"generated_from_span":null},"ty":{"Deduplicated":3888}},{"index":16,"name":null,"span":{"data":{"file_id":0,"beg":{"line":281,"col":25},"end":{"line":281,"col":37}},"generated_from_span":null},"ty":{"Deduplicated":1222}},{"index":17,"name":null,"span":{"data":{"file_id":0,"beg":{"line":281,"col":13},"end":{"line":281,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":18,"name":null,"span":{"data":{"file_id":0,"beg":{"line":281,"col":50},"end":{"line":281,"col":51}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":19,"name":null,"span":{"data":{"file_id":0,"beg":{"line":281,"col":25},"end":{"line":281,"col":37}},"generated_from_span":null},"ty":{"Deduplicated":1223}},{"index":20,"name":null,"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"ty":{"Deduplicated":1300}},{"index":21,"name":null,"span":{"data":{"file_id":0,"beg":{"line":281,"col":25},"end":{"line":281,"col":37}},"generated_from_span":null},"ty":{"Deduplicated":606}},{"index":22,"name":null,"span":{"data":{"file_id":0,"beg":{"line":281,"col":25},"end":{"line":281,"col":37}},"generated_from_span":null},"ty":{"Deduplicated":334}}]},"body":{"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":282,"col":9}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":0,"beg":{"line":280,"col":16},"end":{"line":280,"col":17}},"generated_from_span":null},"id":3661,"kind":{"StorageLive":8},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":280,"col":16},"end":{"line":280,"col":17}},"generated_from_span":null},"id":3662,"kind":{"StorageLive":17},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":280,"col":16},"end":{"line":280,"col":17}},"generated_from_span":null},"id":3665,"kind":{"StorageLive":19},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":280,"col":16},"end":{"line":280,"col":17}},"generated_from_span":null},"id":3666,"kind":{"StorageLive":2},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":280,"col":20},"end":{"line":280,"col":65}},"generated_from_span":null},"id":3667,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":280,"col":20},"end":{"line":280,"col":32}},"generated_from_span":null},"id":3668,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":280,"col":21},"end":{"line":280,"col":24}},"generated_from_span":null},"id":3669,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":280,"col":21},"end":{"line":280,"col":24}},"generated_from_span":null},"id":3670,"kind":{"Assign":[{"kind":{"Local":5},"ty":{"Deduplicated":1220}},{"Use":[{"Copy":{"kind":{"Local":1},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":280,"col":20},"end":{"line":280,"col":32}},"generated_from_span":null},"id":3671,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":454}},{"UnaryOp":[{"Cast":{"Scalar":[{"UInt":"U128"},{"UInt":"U64"}]}},{"Move":{"kind":{"Local":5},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":280,"col":31},"end":{"line":280,"col":32}},"generated_from_span":null},"id":3672,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":280,"col":20},"end":{"line":280,"col":65}},"generated_from_span":null},"id":3673,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":129}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":454}}},{"Copy":{"kind":{"Global":{"id":14,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":3},"ty":{"Deduplicated":454}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":280,"col":64},"end":{"line":280,"col":65}},"generated_from_span":null},"id":3674,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":280,"col":68},"end":{"line":280,"col":86}},"generated_from_span":null},"id":3675,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":280,"col":69},"end":{"line":280,"col":81}},"generated_from_span":null},"id":3676,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":280,"col":69},"end":{"line":280,"col":81}},"generated_from_span":null},"id":3680,"kind":{"Assign":[{"kind":{"Local":7},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Shl":"Panic"},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","1"]}}},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","52"]}}},"ty":{"Deduplicated":622}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":280,"col":68},"end":{"line":280,"col":86}},"generated_from_span":null},"id":3681,"kind":{"Assign":[{"kind":{"Local":8},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Sub":"Panic"},{"Copy":{"kind":{"Local":7},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","1"]}}},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"id":3683,"kind":{"StorageLive":20},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":281,"col":25},"end":{"line":281,"col":37}},"generated_from_span":null},"id":3684,"kind":{"StorageLive":21},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":281,"col":25},"end":{"line":281,"col":37}},"generated_from_span":null},"id":3685,"kind":{"StorageLive":22},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":281,"col":25},"end":{"line":281,"col":37}},"generated_from_span":null},"id":3686,"kind":{"Assign":[{"kind":{"Local":22},"ty":{"Deduplicated":334}},{"Use":[{"Copy":{"kind":{"Global":{"id":17,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"ty":{"Deduplicated":334}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":281,"col":25},"end":{"line":281,"col":37}},"generated_from_span":null},"id":3687,"kind":{"Assign":[{"kind":{"Local":21},"ty":{"Deduplicated":606}},{"Ref":{"place":{"kind":{"Local":22},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":281,"col":25},"end":{"line":281,"col":37}},"generated_from_span":null},"id":3688,"kind":{"Assign":[{"kind":{"Local":20},"ty":{"Deduplicated":1300}},{"Use":[{"Move":{"kind":{"Local":21},"ty":{"Deduplicated":606}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":280,"col":68},"end":{"line":280,"col":86}},"generated_from_span":null},"id":3689,"kind":{"Assign":[{"kind":{"Local":6},"ty":{"Deduplicated":454}},{"Use":[{"Move":{"kind":{"Local":8},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":280,"col":85},"end":{"line":280,"col":86}},"generated_from_span":null},"id":3690,"kind":{"StorageDead":7},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":280,"col":20},"end":{"line":280,"col":86}},"generated_from_span":null},"id":3691,"kind":{"Assign":[{"kind":{"Local":2},"ty":{"Deduplicated":454}},{"BinaryOp":["BitAnd",{"Move":{"kind":{"Local":3},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":6},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":280,"col":85},"end":{"line":280,"col":86}},"generated_from_span":null},"id":3692,"kind":{"StorageDead":6},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":280,"col":85},"end":{"line":280,"col":86}},"generated_from_span":null},"id":3693,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":281,"col":13},"end":{"line":281,"col":48}},"generated_from_span":null},"id":3694,"kind":{"StorageLive":9},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":281,"col":13},"end":{"line":281,"col":42}},"generated_from_span":null},"id":3695,"kind":{"StorageLive":10},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":281,"col":14},"end":{"line":281,"col":17}},"generated_from_span":null},"id":3696,"kind":{"StorageLive":11},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":281,"col":14},"end":{"line":281,"col":17}},"generated_from_span":null},"id":3697,"kind":{"Assign":[{"kind":{"Local":11},"ty":{"Deduplicated":1220}},{"Use":[{"Copy":{"kind":{"Local":1},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":281,"col":20},"end":{"line":281,"col":41}},"generated_from_span":null},"id":3698,"kind":{"StorageLive":12},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":281,"col":22},"end":{"line":281,"col":23}},"generated_from_span":null},"id":3699,"kind":{"StorageLive":13},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":281,"col":22},"end":{"line":281,"col":23}},"generated_from_span":null},"id":3700,"kind":{"Assign":[{"kind":{"Local":13},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":2},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":281,"col":25},"end":{"line":281,"col":40}},"generated_from_span":null},"id":3701,"kind":{"StorageLive":14},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":281,"col":37},"end":{"line":281,"col":40}},"generated_from_span":null},"id":3702,"kind":{"StorageLive":15},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":281,"col":25},"end":{"line":281,"col":37}},"generated_from_span":null},"id":3703,"kind":{"StorageLive":16},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":281,"col":25},"end":{"line":281,"col":37}},"generated_from_span":null},"id":3704,"kind":{"Assign":[{"kind":{"Local":19},"ty":{"Deduplicated":1223}},{"Use":[{"Move":{"kind":{"Local":20},"ty":{"Deduplicated":1300}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":281,"col":25},"end":{"line":281,"col":37}},"generated_from_span":null},"id":3705,"kind":{"Assign":[{"kind":{"Local":16},"ty":{"Deduplicated":1222}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":19},"ty":{"Deduplicated":1223}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":281,"col":37},"end":{"line":281,"col":40}},"generated_from_span":null},"id":3706,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":13}},"generics":{"regions":[{"Body":7}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":16},"ty":{"Deduplicated":1222}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":455}}}],"dest":{"kind":{"Local":15},"ty":{"Deduplicated":3888}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":281,"col":25},"end":{"line":281,"col":40}},"generated_from_span":null},"id":3707,"kind":{"Assign":[{"kind":{"Local":14},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Projection":[{"kind":{"Local":15},"ty":{"Deduplicated":3888}},"Deref"]},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":281,"col":39},"end":{"line":281,"col":40}},"generated_from_span":null},"id":3708,"kind":{"StorageDead":16},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":281,"col":20},"end":{"line":281,"col":41}},"generated_from_span":null},"id":3709,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":22}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":13},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":14},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":12},"ty":{"Deduplicated":1220}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":281,"col":40},"end":{"line":281,"col":41}},"generated_from_span":null},"id":3710,"kind":{"StorageDead":14},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":281,"col":40},"end":{"line":281,"col":41}},"generated_from_span":null},"id":3711,"kind":{"StorageDead":13},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":281,"col":13},"end":{"line":281,"col":42}},"generated_from_span":null},"id":3712,"kind":{"Assign":[{"kind":{"Local":17},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Add":"Panic"},{"Copy":{"kind":{"Local":11},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":12},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":281,"col":13},"end":{"line":281,"col":42}},"generated_from_span":null},"id":3714,"kind":{"Assign":[{"kind":{"Local":10},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":17},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":281,"col":41},"end":{"line":281,"col":42}},"generated_from_span":null},"id":3715,"kind":{"StorageDead":12},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":281,"col":41},"end":{"line":281,"col":42}},"generated_from_span":null},"id":3716,"kind":{"StorageDead":11},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":281,"col":13},"end":{"line":281,"col":48}},"generated_from_span":null},"id":3720,"kind":{"Assign":[{"kind":{"Local":9},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Shr":"Panic"},{"Move":{"kind":{"Local":10},"ty":{"Deduplicated":1220}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","52"]}}},"ty":{"Deduplicated":622}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":281,"col":47},"end":{"line":281,"col":48}},"generated_from_span":null},"id":3721,"kind":{"StorageDead":10},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":281,"col":50},"end":{"line":281,"col":51}},"generated_from_span":null},"id":3722,"kind":{"StorageLive":18},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":281,"col":50},"end":{"line":281,"col":51}},"generated_from_span":null},"id":3723,"kind":{"Assign":[{"kind":{"Local":18},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":2},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":281,"col":12},"end":{"line":281,"col":52}},"generated_from_span":null},"id":3724,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1262}},{"Aggregate":[{"Adt":[{"id":"Tuple","generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[{"Move":{"kind":{"Local":9},"ty":{"Deduplicated":1220}}},{"Move":{"kind":{"Local":18},"ty":{"Deduplicated":454}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":281,"col":51},"end":{"line":281,"col":52}},"generated_from_span":null},"id":3725,"kind":{"StorageDead":18},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":281,"col":51},"end":{"line":281,"col":52}},"generated_from_span":null},"id":3726,"kind":{"StorageDead":15},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":281,"col":51},"end":{"line":281,"col":52}},"generated_from_span":null},"id":3727,"kind":{"StorageDead":9},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":282,"col":8},"end":{"line":282,"col":9}},"generated_from_span":null},"id":3728,"kind":{"StorageDead":2},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":282,"col":9},"end":{"line":282,"col":9}},"generated_from_span":null},"id":3729,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":21,"item_meta":{"name":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["montgomery_reduce",0]},{"Ident":["part2",0]}],"span":{"data":{"file_id":0,"beg":{"line":285,"col":8},"end":{"line":288,"col":9}},"generated_from_span":null},"source_text":"fn part2(sum: u128) -> (u128, u64) {\n let w = (sum as u64) & ((1u64 << 52) - 1);\n (sum >> 52, w)\n }","attr_info":{"attributes":[],"inline":"Always","rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":1220}],"output":{"Deduplicated":1262}},"src":"TopLevel","is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":0,"beg":{"line":285,"col":8},"end":{"line":288,"col":9}},"generated_from_span":null},"bound_body_regions":0,"locals":{"arg_count":1,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":0,"beg":{"line":285,"col":31},"end":{"line":285,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":1262}},{"index":1,"name":"sum","span":{"data":{"file_id":0,"beg":{"line":285,"col":17},"end":{"line":285,"col":20}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":2,"name":"w","span":{"data":{"file_id":0,"beg":{"line":286,"col":16},"end":{"line":286,"col":17}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":3,"name":null,"span":{"data":{"file_id":0,"beg":{"line":286,"col":20},"end":{"line":286,"col":32}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":4,"name":null,"span":{"data":{"file_id":0,"beg":{"line":286,"col":21},"end":{"line":286,"col":24}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":5,"name":null,"span":{"data":{"file_id":0,"beg":{"line":286,"col":35},"end":{"line":286,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":6,"name":null,"span":{"data":{"file_id":0,"beg":{"line":286,"col":36},"end":{"line":286,"col":48}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":7,"name":null,"span":{"data":{"file_id":0,"beg":{"line":286,"col":35},"end":{"line":286,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":8,"name":null,"span":{"data":{"file_id":0,"beg":{"line":287,"col":13},"end":{"line":287,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":9,"name":null,"span":{"data":{"file_id":0,"beg":{"line":287,"col":13},"end":{"line":287,"col":16}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":10,"name":null,"span":{"data":{"file_id":0,"beg":{"line":287,"col":24},"end":{"line":287,"col":25}},"generated_from_span":null},"ty":{"Deduplicated":454}}]},"body":{"span":{"data":{"file_id":0,"beg":{"line":286,"col":16},"end":{"line":288,"col":9}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":0,"beg":{"line":286,"col":16},"end":{"line":286,"col":17}},"generated_from_span":null},"id":3732,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":286,"col":16},"end":{"line":286,"col":17}},"generated_from_span":null},"id":3735,"kind":{"StorageLive":2},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":286,"col":20},"end":{"line":286,"col":32}},"generated_from_span":null},"id":3736,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":286,"col":21},"end":{"line":286,"col":24}},"generated_from_span":null},"id":3737,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":286,"col":21},"end":{"line":286,"col":24}},"generated_from_span":null},"id":3738,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":1220}},{"Use":[{"Copy":{"kind":{"Local":1},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":286,"col":20},"end":{"line":286,"col":32}},"generated_from_span":null},"id":3739,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":454}},{"UnaryOp":[{"Cast":{"Scalar":[{"UInt":"U128"},{"UInt":"U64"}]}},{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":286,"col":31},"end":{"line":286,"col":32}},"generated_from_span":null},"id":3740,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":286,"col":35},"end":{"line":286,"col":53}},"generated_from_span":null},"id":3741,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":286,"col":36},"end":{"line":286,"col":48}},"generated_from_span":null},"id":3742,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":286,"col":36},"end":{"line":286,"col":48}},"generated_from_span":null},"id":3746,"kind":{"Assign":[{"kind":{"Local":6},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Shl":"Panic"},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","1"]}}},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","52"]}}},"ty":{"Deduplicated":622}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":286,"col":35},"end":{"line":286,"col":53}},"generated_from_span":null},"id":3747,"kind":{"Assign":[{"kind":{"Local":7},"ty":{"Deduplicated":454}},{"BinaryOp":[{"Sub":"Panic"},{"Copy":{"kind":{"Local":6},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","1"]}}},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":286,"col":35},"end":{"line":286,"col":53}},"generated_from_span":null},"id":3749,"kind":{"Assign":[{"kind":{"Local":5},"ty":{"Deduplicated":454}},{"Use":[{"Move":{"kind":{"Local":7},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":286,"col":52},"end":{"line":286,"col":53}},"generated_from_span":null},"id":3750,"kind":{"StorageDead":6},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":286,"col":20},"end":{"line":286,"col":53}},"generated_from_span":null},"id":3751,"kind":{"Assign":[{"kind":{"Local":2},"ty":{"Deduplicated":454}},{"BinaryOp":["BitAnd",{"Move":{"kind":{"Local":3},"ty":{"Deduplicated":454}}},{"Move":{"kind":{"Local":5},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":286,"col":52},"end":{"line":286,"col":53}},"generated_from_span":null},"id":3752,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":286,"col":52},"end":{"line":286,"col":53}},"generated_from_span":null},"id":3753,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":287,"col":13},"end":{"line":287,"col":22}},"generated_from_span":null},"id":3754,"kind":{"StorageLive":8},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":287,"col":13},"end":{"line":287,"col":16}},"generated_from_span":null},"id":3755,"kind":{"StorageLive":9},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":287,"col":13},"end":{"line":287,"col":16}},"generated_from_span":null},"id":3756,"kind":{"Assign":[{"kind":{"Local":9},"ty":{"Deduplicated":1220}},{"Use":[{"Copy":{"kind":{"Local":1},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":287,"col":13},"end":{"line":287,"col":22}},"generated_from_span":null},"id":3760,"kind":{"Assign":[{"kind":{"Local":8},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Shr":"Panic"},{"Move":{"kind":{"Local":9},"ty":{"Deduplicated":1220}}},{"Const":{"kind":{"Literal":{"Scalar":{"Signed":["I32","52"]}}},"ty":{"Deduplicated":622}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":287,"col":21},"end":{"line":287,"col":22}},"generated_from_span":null},"id":3761,"kind":{"StorageDead":9},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":287,"col":24},"end":{"line":287,"col":25}},"generated_from_span":null},"id":3762,"kind":{"StorageLive":10},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":287,"col":24},"end":{"line":287,"col":25}},"generated_from_span":null},"id":3763,"kind":{"Assign":[{"kind":{"Local":10},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":2},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":287,"col":12},"end":{"line":287,"col":26}},"generated_from_span":null},"id":3764,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1262}},{"Aggregate":[{"Adt":[{"id":"Tuple","generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[{"Move":{"kind":{"Local":8},"ty":{"Deduplicated":1220}}},{"Move":{"kind":{"Local":10},"ty":{"Deduplicated":454}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":287,"col":25},"end":{"line":287,"col":26}},"generated_from_span":null},"id":3765,"kind":{"StorageDead":10},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":287,"col":25},"end":{"line":287,"col":26}},"generated_from_span":null},"id":3766,"kind":{"StorageDead":8},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":288,"col":8},"end":{"line":288,"col":9}},"generated_from_span":null},"id":3767,"kind":{"StorageDead":2},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":288,"col":9},"end":{"line":288,"col":9}},"generated_from_span":null},"id":3768,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":22,"item_meta":{"name":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Ident":["m",0]}],"span":{"data":{"file_id":0,"beg":{"line":52,"col":0},"end":{"line":54,"col":1}},"generated_from_span":null},"source_text":"fn m(x: u64, y: u64) -> u128 {\n (x as u128) * (y as u128)\n}","attr_info":{"attributes":[{"DocComment":" u64 * u64 = u128 multiply helper"}],"inline":"Always","rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":454},{"Deduplicated":454}],"output":{"Deduplicated":1220}},"src":"TopLevel","is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":0,"beg":{"line":52,"col":0},"end":{"line":54,"col":1}},"generated_from_span":null},"bound_body_regions":0,"locals":{"arg_count":2,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":0,"beg":{"line":52,"col":24},"end":{"line":52,"col":28}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":1,"name":"x","span":{"data":{"file_id":0,"beg":{"line":52,"col":5},"end":{"line":52,"col":6}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":2,"name":"y","span":{"data":{"file_id":0,"beg":{"line":52,"col":13},"end":{"line":52,"col":14}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":3,"name":null,"span":{"data":{"file_id":0,"beg":{"line":53,"col":4},"end":{"line":53,"col":15}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":4,"name":null,"span":{"data":{"file_id":0,"beg":{"line":53,"col":5},"end":{"line":53,"col":6}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":5,"name":null,"span":{"data":{"file_id":0,"beg":{"line":53,"col":18},"end":{"line":53,"col":29}},"generated_from_span":null},"ty":{"Deduplicated":1220}},{"index":6,"name":null,"span":{"data":{"file_id":0,"beg":{"line":53,"col":19},"end":{"line":53,"col":20}},"generated_from_span":null},"ty":{"Deduplicated":454}},{"index":7,"name":null,"span":{"data":{"file_id":0,"beg":{"line":53,"col":4},"end":{"line":53,"col":29}},"generated_from_span":null},"ty":{"Deduplicated":1220}}]},"body":{"span":{"data":{"file_id":0,"beg":{"line":53,"col":4},"end":{"line":54,"col":1}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":0,"beg":{"line":53,"col":4},"end":{"line":53,"col":15}},"generated_from_span":null},"id":3769,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":53,"col":4},"end":{"line":53,"col":15}},"generated_from_span":null},"id":3770,"kind":{"StorageLive":3},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":53,"col":5},"end":{"line":53,"col":6}},"generated_from_span":null},"id":3771,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":53,"col":5},"end":{"line":53,"col":6}},"generated_from_span":null},"id":3772,"kind":{"Assign":[{"kind":{"Local":4},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":1},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":53,"col":4},"end":{"line":53,"col":15}},"generated_from_span":null},"id":3773,"kind":{"Assign":[{"kind":{"Local":3},"ty":{"Deduplicated":1220}},{"UnaryOp":[{"Cast":{"Scalar":[{"UInt":"U64"},{"UInt":"U128"}]}},{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":53,"col":14},"end":{"line":53,"col":15}},"generated_from_span":null},"id":3774,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":53,"col":18},"end":{"line":53,"col":29}},"generated_from_span":null},"id":3775,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":53,"col":19},"end":{"line":53,"col":20}},"generated_from_span":null},"id":3776,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":53,"col":19},"end":{"line":53,"col":20}},"generated_from_span":null},"id":3777,"kind":{"Assign":[{"kind":{"Local":6},"ty":{"Deduplicated":454}},{"Use":[{"Copy":{"kind":{"Local":2},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":53,"col":18},"end":{"line":53,"col":29}},"generated_from_span":null},"id":3778,"kind":{"Assign":[{"kind":{"Local":5},"ty":{"Deduplicated":1220}},{"UnaryOp":[{"Cast":{"Scalar":[{"UInt":"U64"},{"UInt":"U128"}]}},{"Move":{"kind":{"Local":6},"ty":{"Deduplicated":454}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":53,"col":28},"end":{"line":53,"col":29}},"generated_from_span":null},"id":3779,"kind":{"StorageDead":6},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":53,"col":4},"end":{"line":53,"col":29}},"generated_from_span":null},"id":3780,"kind":{"Assign":[{"kind":{"Local":7},"ty":{"Deduplicated":1220}},{"BinaryOp":[{"Mul":"Panic"},{"Copy":{"kind":{"Local":3},"ty":{"Deduplicated":1220}}},{"Copy":{"kind":{"Local":5},"ty":{"Deduplicated":1220}}}]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":53,"col":4},"end":{"line":53,"col":29}},"generated_from_span":null},"id":3782,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":1220}},{"Use":[{"Move":{"kind":{"Local":7},"ty":{"Deduplicated":1220}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":53,"col":28},"end":{"line":53,"col":29}},"generated_from_span":null},"id":3783,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":53,"col":28},"end":{"line":53,"col":29}},"generated_from_span":null},"id":3784,"kind":{"StorageDead":3},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":54,"col":1},"end":{"line":54,"col":1}},"generated_from_span":null},"id":3785,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":23,"item_meta":{"name":[{"Ident":["curve25519",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["montgomery_invert",0]},{"Ident":["square_multiply",0]}],"span":{"data":{"file_id":5,"beg":{"line":1345,"col":8},"end":{"line":1350,"col":9}},"generated_from_span":null},"source_text":"fn square_multiply(y: &mut UnpackedScalar, squarings: usize, x: &UnpackedScalar) {\n for _ in 0..squarings {\n *y = y.montgomery_square();\n }\n *y = UnpackedScalar::montgomery_mul(y, x);\n }","attr_info":{"attributes":[],"inline":"Hint","rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"},{"index":1,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5392},{"Deduplicated":455},{"Deduplicated":5387}],"output":{"Deduplicated":476}},"src":"TopLevel","is_global_initializer":null,"body":{"Structured":{"span":{"data":{"file_id":5,"beg":{"line":1345,"col":8},"end":{"line":1350,"col":9}},"generated_from_span":null},"bound_body_regions":18,"locals":{"arg_count":3,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1345,"col":88},"end":{"line":1345,"col":88}},"generated_from_span":null},"ty":{"Deduplicated":476}},{"index":1,"name":"y","span":{"data":{"file_id":5,"beg":{"line":1345,"col":27},"end":{"line":1345,"col":28}},"generated_from_span":null},"ty":{"Deduplicated":3923}},{"index":2,"name":"squarings","span":{"data":{"file_id":5,"beg":{"line":1345,"col":51},"end":{"line":1345,"col":60}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":3,"name":"x","span":{"data":{"file_id":5,"beg":{"line":1345,"col":69},"end":{"line":1345,"col":70}},"generated_from_span":null},"ty":{"Deduplicated":1222}},{"index":4,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1346,"col":21},"end":{"line":1346,"col":33}},"generated_from_span":null},"ty":{"Deduplicated":569}},{"index":5,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1346,"col":21},"end":{"line":1346,"col":33}},"generated_from_span":null},"ty":{"Deduplicated":569}},{"index":6,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1346,"col":24},"end":{"line":1346,"col":33}},"generated_from_span":null},"ty":{"Deduplicated":455}},{"index":7,"name":"iter","span":{"data":{"file_id":5,"beg":{"line":1346,"col":21},"end":{"line":1346,"col":33}},"generated_from_span":null},"ty":{"Deduplicated":569}},{"index":8,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1346,"col":21},"end":{"line":1346,"col":33}},"generated_from_span":null},"ty":{"Deduplicated":596}},{"index":9,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1346,"col":21},"end":{"line":1346,"col":33}},"generated_from_span":null},"ty":{"Deduplicated":600}},{"index":10,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1346,"col":21},"end":{"line":1346,"col":33}},"generated_from_span":null},"ty":{"Deduplicated":1429}},{"index":11,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1347,"col":21},"end":{"line":1347,"col":42}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":12,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1347,"col":21},"end":{"line":1347,"col":22}},"generated_from_span":null},"ty":{"Deduplicated":1244}},{"index":13,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1349,"col":17},"end":{"line":1349,"col":53}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":14,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1349,"col":48},"end":{"line":1349,"col":49}},"generated_from_span":null},"ty":{"Deduplicated":606}},{"index":15,"name":null,"span":{"data":{"file_id":5,"beg":{"line":1349,"col":51},"end":{"line":1349,"col":52}},"generated_from_span":null},"ty":{"Deduplicated":1228}}]},"body":{"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":0,"beg":{"line":0,"col":0},"end":{"line":0,"col":0}},"generated_from_span":null},"id":3788,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":476}},{"Aggregate":[{"Adt":[{"id":"Tuple","generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[]]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1346,"col":21},"end":{"line":1346,"col":33}},"generated_from_span":null},"id":3790,"kind":{"StorageLive":4},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1346,"col":21},"end":{"line":1346,"col":33}},"generated_from_span":null},"id":3791,"kind":{"StorageLive":5},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1346,"col":24},"end":{"line":1346,"col":33}},"generated_from_span":null},"id":3792,"kind":{"StorageLive":6},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1346,"col":24},"end":{"line":1346,"col":33}},"generated_from_span":null},"id":3793,"kind":{"Assign":[{"kind":{"Local":6},"ty":{"Deduplicated":455}},{"Use":[{"Copy":{"kind":{"Local":2},"ty":{"Deduplicated":455}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1346,"col":21},"end":{"line":1346,"col":33}},"generated_from_span":null},"id":3794,"kind":{"Assign":[{"kind":{"Local":5},"ty":{"Deduplicated":569}},{"Aggregate":[{"Adt":[{"id":{"Adt":1},"generics":{"regions":[],"types":[{"Deduplicated":455}],"const_generics":[],"trait_refs":[]}},null,null]},[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","0"]}}},"ty":{"Deduplicated":455}}},{"Move":{"kind":{"Local":6},"ty":{"Deduplicated":455}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1346,"col":32},"end":{"line":1346,"col":33}},"generated_from_span":null},"id":3795,"kind":{"StorageDead":6},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1346,"col":21},"end":{"line":1346,"col":33}},"generated_from_span":null},"id":3796,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":11}},"generics":{"regions":[],"types":[{"Deduplicated":569},{"Deduplicated":455}],"const_generics":[],"trait_refs":[{"Deduplicated":5158}]}}},"args":[{"Move":{"kind":{"Local":5},"ty":{"Deduplicated":569}}}],"dest":{"kind":{"Local":4},"ty":{"Deduplicated":569}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1346,"col":32},"end":{"line":1346,"col":33}},"generated_from_span":null},"id":3797,"kind":{"StorageDead":5},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1346,"col":21},"end":{"line":1346,"col":33}},"generated_from_span":null},"id":3798,"kind":{"StorageLive":7},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1346,"col":21},"end":{"line":1346,"col":33}},"generated_from_span":null},"id":3799,"kind":{"Assign":[{"kind":{"Local":7},"ty":{"Deduplicated":569}},{"Use":[{"Move":{"kind":{"Local":4},"ty":{"Deduplicated":569}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1346,"col":12},"end":{"line":1348,"col":13}},"generated_from_span":null},"id":3826,"kind":{"Loop":{"span":{"data":{"file_id":5,"beg":{"line":1346,"col":12},"end":{"line":1348,"col":13}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":5,"beg":{"line":1346,"col":21},"end":{"line":1346,"col":33}},"generated_from_span":null},"id":3801,"kind":{"StorageLive":8},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1346,"col":21},"end":{"line":1346,"col":33}},"generated_from_span":null},"id":3802,"kind":{"StorageLive":9},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1346,"col":21},"end":{"line":1346,"col":33}},"generated_from_span":null},"id":3803,"kind":{"StorageLive":10},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1346,"col":21},"end":{"line":1346,"col":33}},"generated_from_span":null},"id":3804,"kind":{"Assign":[{"kind":{"Local":10},"ty":{"Deduplicated":1429}},{"Ref":{"place":{"kind":{"Local":7},"ty":{"Deduplicated":569}},"kind":"Mut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1346,"col":21},"end":{"line":1346,"col":33}},"generated_from_span":null},"id":3805,"kind":{"Assign":[{"kind":{"Local":9},"ty":{"Deduplicated":600}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":10},"ty":{"Deduplicated":1429}},"Deref"]},"ty":{"Deduplicated":569}},"kind":"TwoPhaseMut","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1346,"col":21},"end":{"line":1346,"col":33}},"generated_from_span":null},"id":3806,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":12}},"generics":{"regions":[{"Body":11}],"types":[{"Deduplicated":455}],"const_generics":[],"trait_refs":[{"Deduplicated":960}]}}},"args":[{"Move":{"kind":{"Local":9},"ty":{"Deduplicated":600}}}],"dest":{"kind":{"Local":8},"ty":{"Deduplicated":596}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1346,"col":32},"end":{"line":1346,"col":33}},"generated_from_span":null},"id":3807,"kind":{"StorageDead":9},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1346,"col":21},"end":{"line":1346,"col":33}},"generated_from_span":null},"id":3812,"kind":{"Switch":{"Match":[{"kind":{"Local":8},"ty":{"Deduplicated":596}},[[[0],{"span":{"data":{"file_id":5,"beg":{"line":1346,"col":21},"end":{"line":1346,"col":33}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":5,"beg":{"line":1346,"col":21},"end":{"line":1346,"col":33}},"generated_from_span":null},"id":3809,"kind":{"Break":0},"comments_before":[]}]}],[[1],{"span":{"data":{"file_id":5,"beg":{"line":1346,"col":21},"end":{"line":1346,"col":33}},"generated_from_span":null},"statements":[]}]],null]}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1347,"col":21},"end":{"line":1347,"col":42}},"generated_from_span":null},"id":3813,"kind":{"StorageLive":11},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1347,"col":21},"end":{"line":1347,"col":22}},"generated_from_span":null},"id":3814,"kind":{"StorageLive":12},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1347,"col":21},"end":{"line":1347,"col":22}},"generated_from_span":null},"id":3815,"kind":{"Assign":[{"kind":{"Local":12},"ty":{"Deduplicated":1244}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":3923}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1347,"col":21},"end":{"line":1347,"col":42}},"generated_from_span":null},"id":3816,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":5}},"generics":{"regions":[{"Body":13}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":12},"ty":{"Deduplicated":1244}}}],"dest":{"kind":{"Local":11},"ty":{"Deduplicated":334}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1347,"col":41},"end":{"line":1347,"col":42}},"generated_from_span":null},"id":3817,"kind":{"StorageDead":12},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1347,"col":16},"end":{"line":1347,"col":42}},"generated_from_span":null},"id":3818,"kind":{"Assign":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":3923}},"Deref"]},"ty":{"Deduplicated":334}},{"Use":[{"Move":{"kind":{"Local":11},"ty":{"Deduplicated":334}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1347,"col":41},"end":{"line":1347,"col":42}},"generated_from_span":null},"id":3819,"kind":{"StorageDead":11},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1348,"col":12},"end":{"line":1348,"col":13}},"generated_from_span":null},"id":3821,"kind":{"StorageDead":10},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1348,"col":12},"end":{"line":1348,"col":13}},"generated_from_span":null},"id":3822,"kind":{"StorageDead":8},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1346,"col":12},"end":{"line":1348,"col":13}},"generated_from_span":null},"id":3825,"kind":{"Continue":0},"comments_before":[]}]}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1348,"col":12},"end":{"line":1348,"col":13}},"generated_from_span":null},"id":3828,"kind":{"StorageDead":10},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1348,"col":12},"end":{"line":1348,"col":13}},"generated_from_span":null},"id":3829,"kind":{"StorageDead":8},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1348,"col":12},"end":{"line":1348,"col":13}},"generated_from_span":null},"id":3831,"kind":{"StorageDead":7},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1348,"col":12},"end":{"line":1348,"col":13}},"generated_from_span":null},"id":3832,"kind":{"StorageDead":4},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1349,"col":17},"end":{"line":1349,"col":53}},"generated_from_span":null},"id":3834,"kind":{"StorageLive":13},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1349,"col":48},"end":{"line":1349,"col":49}},"generated_from_span":null},"id":3835,"kind":{"StorageLive":14},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1349,"col":48},"end":{"line":1349,"col":49}},"generated_from_span":null},"id":3836,"kind":{"Assign":[{"kind":{"Local":14},"ty":{"Deduplicated":606}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":3923}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1349,"col":51},"end":{"line":1349,"col":52}},"generated_from_span":null},"id":3837,"kind":{"StorageLive":15},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1349,"col":51},"end":{"line":1349,"col":52}},"generated_from_span":null},"id":3838,"kind":{"Assign":[{"kind":{"Local":15},"ty":{"Deduplicated":1228}},{"Ref":{"place":{"kind":{"Projection":[{"kind":{"Local":3},"ty":{"Deduplicated":1222}},"Deref"]},"ty":{"Deduplicated":334}},"kind":"Shared","ptr_metadata":{"Const":{"kind":{"Adt":[null,[]]},"ty":{"Deduplicated":476}}}}}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1349,"col":17},"end":{"line":1349,"col":53}},"generated_from_span":null},"id":3839,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Regular":4}},"generics":{"regions":[{"Body":16},{"Body":17}],"types":[],"const_generics":[],"trait_refs":[]}}},"args":[{"Move":{"kind":{"Local":14},"ty":{"Deduplicated":606}}},{"Move":{"kind":{"Local":15},"ty":{"Deduplicated":1228}}}],"dest":{"kind":{"Local":13},"ty":{"Deduplicated":334}}}},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1349,"col":52},"end":{"line":1349,"col":53}},"generated_from_span":null},"id":3840,"kind":{"StorageDead":15},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1349,"col":52},"end":{"line":1349,"col":53}},"generated_from_span":null},"id":3841,"kind":{"StorageDead":14},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1349,"col":12},"end":{"line":1349,"col":53}},"generated_from_span":null},"id":3842,"kind":{"Assign":[{"kind":{"Projection":[{"kind":{"Local":1},"ty":{"Deduplicated":3923}},"Deref"]},"ty":{"Deduplicated":334}},{"Use":[{"Move":{"kind":{"Local":13},"ty":{"Deduplicated":334}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1349,"col":52},"end":{"line":1349,"col":53}},"generated_from_span":null},"id":3843,"kind":{"StorageDead":13},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1345,"col":89},"end":{"line":1350,"col":9}},"generated_from_span":null},"id":3844,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":476}},{"Aggregate":[{"Adt":[{"id":"Tuple","generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[]]}]},"comments_before":[]},{"span":{"data":{"file_id":5,"beg":{"line":1350,"col":9},"end":{"line":1350,"col":9}},"generated_from_span":null},"id":3845,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":24,"item_meta":{"name":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["ZERO",0]}],"span":{"data":{"file_id":0,"beg":{"line":58,"col":4},"end":{"line":58,"col":57}},"generated_from_span":null},"source_text":"pub const ZERO: Scalar52 = Scalar52([0, 0, 0, 0, 0]);","attr_info":{"attributes":[{"DocComment":" The scalar \\\\( 0 \\\\)."}],"inline":null,"rename":null,"public":true},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[],"output":{"Deduplicated":334}},"src":"TopLevel","is_global_initializer":0,"body":{"Structured":{"span":{"data":{"file_id":0,"beg":{"line":58,"col":4},"end":{"line":58,"col":57}},"generated_from_span":null},"bound_body_regions":0,"locals":{"arg_count":0,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":0,"beg":{"line":58,"col":20},"end":{"line":58,"col":28}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":1,"name":null,"span":{"data":{"file_id":0,"beg":{"line":58,"col":40},"end":{"line":58,"col":55}},"generated_from_span":null},"ty":{"Deduplicated":456}}]},"body":{"span":{"data":{"file_id":0,"beg":{"line":58,"col":4},"end":{"line":58,"col":57}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":0,"beg":{"line":58,"col":40},"end":{"line":58,"col":55}},"generated_from_span":null},"id":3846,"kind":{"StorageLive":1},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":58,"col":40},"end":{"line":58,"col":55}},"generated_from_span":null},"id":3847,"kind":{"Call":{"func":{"Regular":{"kind":{"Fun":{"Builtin":"ArrayRepeat"}},"generics":{"regions":[],"types":[{"Deduplicated":454}],"const_generics":[{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","5"]}}},"ty":{"Deduplicated":455}}],"trait_refs":[]}}},"args":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":454}}}],"dest":{"kind":{"Local":1},"ty":{"Deduplicated":456}}}},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":58,"col":31},"end":{"line":58,"col":56}},"generated_from_span":null},"id":3848,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":334}},{"Aggregate":[{"Adt":[{"id":{"Adt":0},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[{"Move":{"kind":{"Local":1},"ty":{"Deduplicated":456}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":58,"col":55},"end":{"line":58,"col":56}},"generated_from_span":null},"id":3849,"kind":{"StorageDead":1},"comments_before":[]},{"span":{"data":{"file_id":0,"beg":{"line":58,"col":4},"end":{"line":58,"col":57}},"generated_from_span":null},"id":3850,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":25,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]},{"Ident":["next",0]}],"span":{"data":{"file_id":13,"beg":{"line":78,"col":4},"end":{"line":78,"col":45}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Advances the iterator and returns the next value."},{"DocComment":""},{"DocComment":" Returns [`None`] when iteration is finished. Individual iterator"},{"DocComment":" implementations may choose to resume iteration, and so calling `next()`"},{"DocComment":" again may or may not eventually start returning [`Some(Item)`] again at some"},{"DocComment":" point."},{"DocComment":""},{"DocComment":" [`Some(Item)`]: Some"},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let a = [1, 2, 3];"},{"DocComment":""},{"DocComment":" let mut iter = a.into_iter();"},{"DocComment":""},{"DocComment":" // A call to next() returns the next value..."},{"DocComment":" assert_eq!(Some(1), iter.next());"},{"DocComment":" assert_eq!(Some(2), iter.next());"},{"DocComment":" assert_eq!(Some(3), iter.next());"},{"DocComment":""},{"DocComment":" // ... and then None once it's over."},{"DocComment":" assert_eq!(None, iter.next());"},{"DocComment":""},{"DocComment":" // More calls may or may not return `None`. Here, they always will."},{"DocComment":" assert_eq!(None, iter.next());"},{"DocComment":" assert_eq!(None, iter.next());"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"next"},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[{"index":0,"name":"Self"},{"index":1,"name":"Clause0_Item"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":4,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":0,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"HashConsedValue":[5394,{"Ref":[{"Var":{"Free":0}},{"Deduplicated":5334},"Mut"]}]}],"output":{"HashConsedValue":[5349,{"Adt":{"id":{"Adt":2},"generics":{"regions":[],"types":[{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}}]}},"src":{"TraitDecl":{"trait_ref":{"id":0,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,{"def_id":111,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Ident":["Step",0]},{"Ident":["steps_between",0]}],"span":{"data":{"file_id":14,"beg":{"line":49,"col":4},"end":{"line":49,"col":73}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Returns the bounds on the number of *successor* steps required to get from `start` to `end`"},{"DocComment":" like [`Iterator::size_hint()`][Iterator::size_hint()]."},{"DocComment":""},{"DocComment":" Returns `(usize::MAX, None)` if the number of steps would overflow `usize`, or is infinite."},{"DocComment":""},{"DocComment":" # Invariants"},{"DocComment":""},{"DocComment":" For any `a`, `b`, and `n`:"},{"DocComment":""},{"DocComment":" * `steps_between(&a, &b) == (n, Some(n))` if and only if `Step::forward_checked(&a, n) == Some(b)`"},{"DocComment":" * `steps_between(&a, &b) == (n, Some(n))` if and only if `Step::backward_checked(&b, n) == Some(a)`"},{"DocComment":" * `steps_between(&a, &b) == (n, Some(n))` only if `a <= b`"},{"DocComment":" * Corollary: `steps_between(&a, &b) == (0, Some(0))` if and only if `a == b`"},{"DocComment":" * `steps_between(&a, &b) == (0, None)` if `a > b`"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"},{"index":1,"name":null,"mutability":"Unknown"}],"types":[{"index":0,"name":"Self"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":4,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"HashConsedValue":[5395,{"Ref":[{"Var":{"Free":0}},{"Deduplicated":5334},"Shared"]}]},{"HashConsedValue":[5396,{"Ref":[{"Var":{"Free":1}},{"Deduplicated":5334},"Shared"]}]}],"output":{"HashConsedValue":[1598,{"Adt":{"id":"Tuple","generics":{"regions":[],"types":[{"Deduplicated":455},{"Deduplicated":596}],"const_generics":[],"trait_refs":[]}}}]}},"src":{"TraitDecl":{"trait_ref":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":112,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Ident":["Step",0]},{"Ident":["forward_checked",0]}],"span":{"data":{"file_id":14,"beg":{"line":67,"col":4},"end":{"line":67,"col":66}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Returns the value that would be obtained by taking the *successor*"},{"DocComment":" of `self` `count` times."},{"DocComment":""},{"DocComment":" If this would overflow the range of values supported by `Self`, returns `None`."},{"DocComment":""},{"DocComment":" # Invariants"},{"DocComment":""},{"DocComment":" For any `a`, `n`, and `m`:"},{"DocComment":""},{"DocComment":" * `Step::forward_checked(a, n).and_then(|x| Step::forward_checked(x, m)) == Step::forward_checked(a, m).and_then(|x| Step::forward_checked(x, n))`"},{"DocComment":" * `Step::forward_checked(a, n).and_then(|x| Step::forward_checked(x, m)) == try { Step::forward_checked(a, n.checked_add(m)) }`"},{"DocComment":""},{"DocComment":" For any `a` and `n`:"},{"DocComment":""},{"DocComment":" * `Step::forward_checked(a, n) == (0..n).try_fold(a, |x, _| Step::forward_checked(&x, 1))`"},{"DocComment":" * Corollary: `Step::forward_checked(a, 0) == Some(a)`"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"Self"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":4,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5334},{"Deduplicated":455}],"output":{"Deduplicated":5354}},"src":{"TraitDecl":{"trait_ref":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":1},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},null,null,{"def_id":115,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Ident":["Step",0]},{"Ident":["backward_checked",0]}],"span":{"data":{"file_id":14,"beg":{"line":137,"col":4},"end":{"line":137,"col":67}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Returns the value that would be obtained by taking the *predecessor*"},{"DocComment":" of `self` `count` times."},{"DocComment":""},{"DocComment":" If this would overflow the range of values supported by `Self`, returns `None`."},{"DocComment":""},{"DocComment":" # Invariants"},{"DocComment":""},{"DocComment":" For any `a`, `n`, and `m`:"},{"DocComment":""},{"DocComment":" * `Step::backward_checked(a, n).and_then(|x| Step::backward_checked(x, m)) == n.checked_add(m).and_then(|x| Step::backward_checked(a, x))`"},{"DocComment":" * `Step::backward_checked(a, n).and_then(|x| Step::backward_checked(x, m)) == try { Step::backward_checked(a, n.checked_add(m)?) }`"},{"DocComment":""},{"DocComment":" For any `a` and `n`:"},{"DocComment":""},{"DocComment":" * `Step::backward_checked(a, n) == (0..n).try_fold(a, |x, _| Step::backward_checked(x, 1))`"},{"DocComment":" * Corollary: `Step::backward_checked(a, 0) == Some(a)`"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"Self"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":4,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5334},{"Deduplicated":455}],"output":{"Deduplicated":5354}},"src":{"TraitDecl":{"trait_ref":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":4},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},null,null,{"def_id":118,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Impl":{"Trait":2}},{"Ident":["steps_between",0]}],"span":{"data":{"file_id":14,"beg":{"line":271,"col":16},"end":{"line":271,"col":84}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":"Hint","rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"},{"index":1,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"HashConsedValue":[5397,{"Ref":[{"Var":{"Free":0}},{"Deduplicated":455},"Shared"]}]},{"HashConsedValue":[5398,{"Ref":[{"Var":{"Free":1}},{"Deduplicated":455},"Shared"]}]}],"output":{"Deduplicated":1598}},"src":{"TraitImpl":{"impl_ref":{"id":2,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":455}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":119,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Impl":{"Trait":2}},{"Ident":["forward_checked",0]}],"span":{"data":{"file_id":14,"beg":{"line":282,"col":16},"end":{"line":282,"col":73}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":"Hint","rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":455},{"Deduplicated":455}],"output":{"Deduplicated":596}},"src":{"TraitImpl":{"impl_ref":{"id":2,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":455}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":1},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},null,null,{"def_id":122,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Impl":{"Trait":2}},{"Ident":["backward_checked",0]}],"span":{"data":{"file_id":14,"beg":{"line":290,"col":16},"end":{"line":290,"col":74}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":"Hint","rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":455},{"Deduplicated":455}],"output":{"Deduplicated":596}},"src":{"TraitImpl":{"impl_ref":{"id":2,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":455}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":4},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},null,null,null,{"def_id":126,"item_meta":{"name":[{"Ident":["subtle",0]},{"Impl":{"Trait":9}},{"Ident":["conditional_select",0]}],"span":{"data":{"file_id":15,"beg":{"line":513,"col":12},"end":{"line":513,"col":77}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":"Hint","rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"},{"index":1,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5391},{"HashConsedValue":[5399,{"Ref":[{"Var":{"Free":1}},{"Deduplicated":454},"Shared"]}]},{"Deduplicated":1015}],"output":{"Deduplicated":454}},"src":{"TraitImpl":{"impl_ref":{"id":9,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":28,"generics":{"regions":[],"types":[{"Deduplicated":454}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},null,null,{"def_id":129,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["num",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":454},"kind":"InherentImplBlock"}}},{"Ident":["wrapping_mul",0]}],"span":{"data":{"file_id":16,"beg":{"line":2659,"col":8},"end":{"line":2659,"col":58}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Wrapping (modular) multiplication. Computes `self *"},{"DocComment":" rhs`, wrapping around at the boundary of the type."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" Please note that this example is shared among integer types, which is why `u8` is used."},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" assert_eq!(10u8.wrapping_mul(12), 120);"},{"DocComment":" assert_eq!(25u8.wrapping_mul(12), 44);"},{"DocComment":" ```"}],"inline":"Always","rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":454},{"Deduplicated":454}],"output":{"Deduplicated":454}},"src":"TopLevel","is_global_initializer":null,"body":"Opaque"},null,null,null,null,{"def_id":134,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["collect",0]},{"Ident":["IntoIterator",0]},{"Ident":["into_iter",0]}],"span":{"data":{"file_id":10,"beg":{"line":312,"col":4},"end":{"line":312,"col":41}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Creates an iterator from a value."},{"DocComment":""},{"DocComment":" See the [module-level documentation] for more."},{"DocComment":""},{"DocComment":" [module-level documentation]: crate::iter"},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let v = [1, 2, 3];"},{"DocComment":" let mut iter = v.into_iter();"},{"DocComment":""},{"DocComment":" assert_eq!(Some(1), iter.next());"},{"DocComment":" assert_eq!(Some(2), iter.next());"},{"DocComment":" assert_eq!(Some(3), iter.next());"},{"DocComment":" assert_eq!(None, iter.next());"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"into_iter"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"Clause0_Item"},{"index":2,"name":"Clause0_IntoIter"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":4,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":2,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335},{"HashConsedValue":[5355,{"TypeVar":{"Free":2}}]}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5334}],"output":{"Deduplicated":5355}},"src":{"TraitDecl":{"trait_ref":{"id":2,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335},{"Deduplicated":5355}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":135,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["marker",0]},{"Ident":["Destruct",0]},{"Ident":["drop_glue",0]}],"span":{"data":{"file_id":21,"beg":{"line":1062,"col":0},"end":{"line":1062,"col":38}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[{"index":0,"name":"Self"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":true,"abi":"Rust","inputs":[{"Deduplicated":5394}],"output":{"Deduplicated":476}},"src":{"TraitDecl":{"trait_ref":{"id":3,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":136,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["clone",0]},{"Ident":["Clone",0]},{"Ident":["clone",0]}],"span":{"data":{"file_id":27,"beg":{"line":236,"col":4},"end":{"line":236,"col":28}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Returns a duplicate of the value."},{"DocComment":""},{"DocComment":" Note that what \"duplicate\" means varies by type:"},{"DocComment":" - For most types, this creates a deep, independent copy"},{"DocComment":" - For reference types like `&T`, this creates another reference to the same value"},{"DocComment":" - For smart pointers like [`Arc`] or [`Rc`], this increments the reference count"},{"DocComment":" but still points to the same underlying data"},{"DocComment":""},{"DocComment":" [`Arc`]: ../../std/sync/struct.Arc.html"},{"DocComment":" [`Rc`]: ../../std/rc/struct.Rc.html"},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" # #![allow(noop_method_call)]"},{"DocComment":" let hello = \"Hello\"; // &str implements Clone"},{"DocComment":""},{"DocComment":" assert_eq!(\"Hello\", hello.clone());"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" Example with a reference-counted type:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::sync::{Arc, Mutex};"},{"DocComment":""},{"DocComment":" let data = Arc::new(Mutex::new(vec![1, 2, 3]));"},{"DocComment":" let data_clone = data.clone(); // Creates another Arc pointing to the same Mutex"},{"DocComment":""},{"DocComment":" {"},{"DocComment":" let mut lock = data.lock().unwrap();"},{"DocComment":" lock.push(4);"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" // Changes are visible through the clone because they share the same underlying data"},{"DocComment":" assert_eq!(*data_clone.lock().unwrap(), vec![1, 2, 3, 4]);"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"clone_fn"},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[{"index":0,"name":"Self"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":4,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":5,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5395}],"output":{"Deduplicated":5334}},"src":{"TraitDecl":{"trait_ref":{"id":5,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},null,{"def_id":138,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["function",0]},{"Ident":["FnMut",0]},{"Ident":["call_mut",0]}],"span":{"data":{"file_id":29,"beg":{"line":166,"col":4},"end":{"line":166,"col":74}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Performs the call operation."}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[{"index":0,"name":"Self"},{"index":1,"name":"Args"},{"index":2,"name":"Clause0_Clause0_Output"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":4,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":6,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335},{"Deduplicated":5355}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":{"Other":"rust-call"},"inputs":[{"Deduplicated":5394},{"Deduplicated":5335}],"output":{"Deduplicated":5355}},"src":{"TraitDecl":{"trait_ref":{"id":6,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335},{"Deduplicated":5355}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":139,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["function",0]},{"Ident":["FnOnce",0]},{"Ident":["call_once",0]}],"span":{"data":{"file_id":29,"beg":{"line":250,"col":4},"end":{"line":250,"col":70}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Performs the call operation."}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"Args"},{"index":2,"name":"Clause0_Output"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":4,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":7,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335},{"Deduplicated":5355}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":{"Other":"rust-call"},"inputs":[{"Deduplicated":5334},{"Deduplicated":5335}],"output":{"Deduplicated":5355}},"src":{"TraitDecl":{"trait_ref":{"id":7,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335},{"Deduplicated":5355}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":140,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["collect",0]},{"Ident":["FromIterator",0]},{"Ident":["from_iter",0]}],"span":{"data":{"file_id":10,"beg":{"line":152,"col":4},"end":{"line":152,"col":61}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Creates a value from an iterator."},{"DocComment":""},{"DocComment":" See the [module-level documentation] for more."},{"DocComment":""},{"DocComment":" [module-level documentation]: crate::iter"},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let five_fives = std::iter::repeat(5).take(5);"},{"DocComment":""},{"DocComment":" let v = Vec::from_iter(five_fives);"},{"DocComment":""},{"DocComment":" assert_eq!(v, vec![5, 5, 5, 5, 5]);"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"from_iter_fn"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"A"},{"index":2,"name":"T"},{"index":3,"name":"Clause1_IntoIter"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":4,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":8,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":1,"span":{"data":{"file_id":10,"beg":{"line":152,"col":20},"end":{"line":152,"col":42}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":2,"generics":{"regions":[],"types":[{"Deduplicated":5355},{"Deduplicated":5335},{"HashConsedValue":[5400,{"TypeVar":{"Free":3}}]}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5355}],"output":{"Deduplicated":5334}},"src":{"TraitDecl":{"trait_ref":{"id":8,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":141,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["try_trait",0]},{"Ident":["Try",0]},{"Ident":["from_output",0]}],"span":{"data":{"file_id":45,"beg":{"line":192,"col":4},"end":{"line":192,"col":49}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Constructs the type from its `Output` type."},{"DocComment":""},{"DocComment":" This should be implemented consistently with the `branch` method"},{"DocComment":" such that applying the `?` operator will get back the original value:"},{"DocComment":" `Try::from_output(x).branch() --> ControlFlow::Continue(x)`."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" #![feature(try_trait_v2)]"},{"DocComment":" use std::ops::Try;"},{"DocComment":""},{"DocComment":" assert_eq!(<Result<_, String> as Try>::from_output(3), Ok(3));"},{"DocComment":" assert_eq!(<Option<_> as Try>::from_output(4), Some(4));"},{"DocComment":" assert_eq!("},{"DocComment":" <std::ops::ControlFlow<String, _> as Try>::from_output(5),"},{"DocComment":" std::ops::ControlFlow::Continue(5),"},{"DocComment":" );"},{"DocComment":""},{"DocComment":" # fn make_question_mark_work() -> Option<()> {"},{"DocComment":" assert_eq!(Option::from_output(4)?, 4);"},{"DocComment":" # None }"},{"DocComment":" # make_question_mark_work();"},{"DocComment":""},{"DocComment":" // This is used, for example, on the accumulator in `try_fold`:"},{"DocComment":" let r = std::iter::empty().try_fold(4, |_, ()| -> Option<_> { unreachable!() });"},{"DocComment":" assert_eq!(r, Some(4));"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"from_output"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":4,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":9,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"HashConsedValue":[5402,{"TraitType":[{"HashConsedValue":[5401,{"kind":{"Clause":{"Free":0}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":9,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}}}}]},0,{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}]}]}],"output":{"Deduplicated":5334}},"src":{"TraitDecl":{"trait_ref":{"id":9,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":142,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["try_trait",0]},{"Ident":["Try",0]},{"Ident":["branch",0]}],"span":{"data":{"file_id":45,"beg":{"line":219,"col":4},"end":{"line":219,"col":65}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Used in `?` to decide whether the operator should produce a value"},{"DocComment":" (because this returned [`ControlFlow::Continue`])"},{"DocComment":" or propagate a value back to the caller"},{"DocComment":" (because this returned [`ControlFlow::Break`])."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" #![feature(try_trait_v2)]"},{"DocComment":" use std::ops::{ControlFlow, Try};"},{"DocComment":""},{"DocComment":" assert_eq!(Ok::<_, String>(3).branch(), ControlFlow::Continue(3));"},{"DocComment":" assert_eq!(Err::<String, _>(3).branch(), ControlFlow::Break(Err(3)));"},{"DocComment":""},{"DocComment":" assert_eq!(Some(3).branch(), ControlFlow::Continue(3));"},{"DocComment":" assert_eq!(None::<String>.branch(), ControlFlow::Break(None));"},{"DocComment":""},{"DocComment":" assert_eq!(ControlFlow::<String, _>::Continue(3).branch(), ControlFlow::Continue(3));"},{"DocComment":" assert_eq!("},{"DocComment":" ControlFlow::<_, String>::Break(3).branch(),"},{"DocComment":" ControlFlow::Break(ControlFlow::Break(3)),"},{"DocComment":" );"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"branch"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":4,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":9,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5334}],"output":{"HashConsedValue":[5404,{"Adt":{"id":{"Adt":39},"generics":{"regions":[],"types":[{"HashConsedValue":[5403,{"TraitType":[{"Deduplicated":5401},1,{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}]}]},{"Deduplicated":5402}],"const_generics":[],"trait_refs":[]}}}]}},"src":{"TraitDecl":{"trait_ref":{"id":9,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":1},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":143,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["collect",0]},{"Ident":["Extend",0]},{"Ident":["extend",0]}],"span":{"data":{"file_id":10,"beg":{"line":416,"col":4},"end":{"line":416,"col":61}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Extends a collection with the contents of an iterator."},{"DocComment":""},{"DocComment":" As this is the only required method for this trait, the [trait-level] docs"},{"DocComment":" contain more details."},{"DocComment":""},{"DocComment":" [trait-level]: Extend"},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" // You can extend a String with some chars:"},{"DocComment":" let mut message = String::from(\"abc\");"},{"DocComment":""},{"DocComment":" message.extend(['d', 'e', 'f'].iter());"},{"DocComment":""},{"DocComment":" assert_eq!(\"abcdef\", &message);"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[{"index":0,"name":"Self"},{"index":1,"name":"A"},{"index":2,"name":"T"},{"index":3,"name":"Clause1_IntoIter"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":4,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":11,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":1,"span":{"data":{"file_id":10,"beg":{"line":416,"col":17},"end":{"line":416,"col":39}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":2,"generics":{"regions":[],"types":[{"Deduplicated":5355},{"Deduplicated":5335},{"Deduplicated":5400}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5394},{"Deduplicated":5355}],"output":{"Deduplicated":476}},"src":{"TraitDecl":{"trait_ref":{"id":11,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},null,null,null,{"def_id":147,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["default",0]},{"Ident":["Default",0]},{"Ident":["default",0]}],"span":{"data":{"file_id":46,"beg":{"line":139,"col":4},"end":{"line":139,"col":25}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Returns the \"default value\" for a type."},{"DocComment":""},{"DocComment":" Default values are often some kind of initial value, identity value, or anything else that"},{"DocComment":" may make sense as a default."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" Using built-in default values:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let i: i8 = Default::default();"},{"DocComment":" let (x, y): (Option<String>, f64) = Default::default();"},{"DocComment":" let (a, b, (c, d)): (i32, u32, (bool, bool)) = Default::default();"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" Making your own:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" # #[allow(dead_code)]"},{"DocComment":" enum Kind {"},{"DocComment":" A,"},{"DocComment":" B,"},{"DocComment":" C,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl Default for Kind {"},{"DocComment":" fn default() -> Self { Kind::A }"},{"DocComment":" }"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"default_fn"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":4,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":12,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[],"output":{"Deduplicated":5334}},"src":{"TraitDecl":{"trait_ref":{"id":12,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":148,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["double_ended",0]},{"Ident":["DoubleEndedIterator",0]},{"Ident":["next_back",0]}],"span":{"data":{"file_id":47,"beg":{"line":96,"col":4},"end":{"line":96,"col":50}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Removes and returns an element from the end of the iterator."},{"DocComment":""},{"DocComment":" Returns `None` when there are no more elements."},{"DocComment":""},{"DocComment":" The [trait-level] docs contain more details."},{"DocComment":""},{"DocComment":" [trait-level]: DoubleEndedIterator"},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" Basic usage:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let numbers = vec![1, 2, 3, 4, 5, 6];"},{"DocComment":""},{"DocComment":" let mut iter = numbers.iter();"},{"DocComment":""},{"DocComment":" assert_eq!(Some(&1), iter.next());"},{"DocComment":" assert_eq!(Some(&6), iter.next_back());"},{"DocComment":" assert_eq!(Some(&5), iter.next_back());"},{"DocComment":" assert_eq!(Some(&2), iter.next());"},{"DocComment":" assert_eq!(Some(&3), iter.next());"},{"DocComment":" assert_eq!(Some(&4), iter.next());"},{"DocComment":" assert_eq!(None, iter.next());"},{"DocComment":" assert_eq!(None, iter.next_back());"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" # Remarks"},{"DocComment":""},{"DocComment":" The elements yielded by `DoubleEndedIterator`'s methods may differ from"},{"DocComment":" the ones yielded by [`Iterator`]'s methods:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let vec = vec![(1, 'a'), (1, 'b'), (1, 'c'), (2, 'a'), (2, 'b')];"},{"DocComment":" let uniq_by_fst_comp = || {"},{"DocComment":" let mut seen = std::collections::HashSet::new();"},{"DocComment":" vec.iter().copied().filter(move |x| seen.insert(x.0))"},{"DocComment":" };"},{"DocComment":""},{"DocComment":" assert_eq!(uniq_by_fst_comp().last(), Some((2, 'a')));"},{"DocComment":" assert_eq!(uniq_by_fst_comp().next_back(), Some((2, 'b')));"},{"DocComment":""},{"DocComment":" assert_eq!("},{"DocComment":" uniq_by_fst_comp().fold(vec![], |mut v, x| {v.push(x); v}),"},{"DocComment":" vec![(1, 'a'), (2, 'a')]"},{"DocComment":" );"},{"DocComment":" assert_eq!("},{"DocComment":" uniq_by_fst_comp().rfold(vec![], |mut v, x| {v.push(x); v}),"},{"DocComment":" vec![(2, 'b'), (1, 'c')]"},{"DocComment":" );"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[{"index":0,"name":"Self"},{"index":1,"name":"Clause0_Clause0_Item"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":4,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":13,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5394}],"output":{"Deduplicated":5349}},"src":{"TraitDecl":{"trait_ref":{"id":13,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},null,null,null,null,null,null,null,{"def_id":156,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["Ord",0]},{"Ident":["cmp",0]}],"span":{"data":{"file_id":49,"beg":{"line":1000,"col":4},"end":{"line":1000,"col":44}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" This method returns an [`Ordering`] between `self` and `other`."},{"DocComment":""},{"DocComment":" By convention, `self.cmp(&other)` returns the ordering matching the expression"},{"DocComment":" `self <operator> other` if true."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::cmp::Ordering;"},{"DocComment":""},{"DocComment":" assert_eq!(5.cmp(&10), Ordering::Less);"},{"DocComment":" assert_eq!(10.cmp(&5), Ordering::Greater);"},{"DocComment":" assert_eq!(5.cmp(&5), Ordering::Equal);"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"ord_cmp_method"},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"},{"index":1,"name":null,"mutability":"Unknown"}],"types":[{"index":0,"name":"Self"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":4,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":15,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5395},{"Deduplicated":5396}],"output":{"HashConsedValue":[3075,{"Adt":{"id":{"Adt":29},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}}]}},"src":{"TraitDecl":{"trait_ref":{"id":15,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},null,null,null,{"def_id":160,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["accum",0]},{"Ident":["Sum",0]},{"Ident":["sum",0]}],"span":{"data":{"file_id":55,"beg":{"line":22,"col":4},"end":{"line":22,"col":51}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Takes an iterator and generates `Self` from the elements by \"summing up\""},{"DocComment":" the items."}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"A"},{"index":2,"name":"I"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":4,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":17,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":1,"span":{"data":{"file_id":55,"beg":{"line":22,"col":14},"end":{"line":22,"col":32}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":0,"generics":{"regions":[],"types":[{"Deduplicated":5355},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5355}],"output":{"Deduplicated":5334}},"src":{"TraitDecl":{"trait_ref":{"id":17,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":161,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["accum",0]},{"Ident":["Product",0]},{"Ident":["product",0]}],"span":{"data":{"file_id":55,"beg":{"line":44,"col":4},"end":{"line":44,"col":55}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Takes an iterator and generates `Self` from the elements by multiplying"},{"DocComment":" the items."}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"A"},{"index":2,"name":"I"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":4,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":18,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":1,"span":{"data":{"file_id":55,"beg":{"line":44,"col":18},"end":{"line":44,"col":36}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":0,"generics":{"regions":[],"types":[{"Deduplicated":5355},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5355}],"output":{"Deduplicated":5334}},"src":{"TraitDecl":{"trait_ref":{"id":18,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":162,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialOrd",0]},{"Ident":["partial_cmp",0]}],"span":{"data":{"file_id":49,"beg":{"line":1395,"col":4},"end":{"line":1395,"col":59}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" This method returns an ordering between `self` and `other` values if one exists."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::cmp::Ordering;"},{"DocComment":""},{"DocComment":" let result = 1.0.partial_cmp(&2.0);"},{"DocComment":" assert_eq!(result, Some(Ordering::Less));"},{"DocComment":""},{"DocComment":" let result = 1.0.partial_cmp(&1.0);"},{"DocComment":" assert_eq!(result, Some(Ordering::Equal));"},{"DocComment":""},{"DocComment":" let result = 2.0.partial_cmp(&1.0);"},{"DocComment":" assert_eq!(result, Some(Ordering::Greater));"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" When comparison is impossible:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let result = f64::NAN.partial_cmp(&1.0);"},{"DocComment":" assert_eq!(result, None);"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"cmp_partialord_cmp"},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"},{"index":1,"name":null,"mutability":"Unknown"}],"types":[{"index":0,"name":"Self"},{"index":1,"name":"Rhs"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":4,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":19,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5395},{"HashConsedValue":[5405,{"Ref":[{"Var":{"Free":1}},{"Deduplicated":5335},"Shared"]}]}],"output":{"HashConsedValue":[3376,{"Adt":{"id":{"Adt":2},"generics":{"regions":[],"types":[{"Deduplicated":3075}],"const_generics":[],"trait_refs":[]}}}]}},"src":{"TraitDecl":{"trait_ref":{"id":19,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},null,null,null,null,null,null,null,null,{"def_id":171,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialEq",0]},{"Ident":["eq",0]}],"span":{"data":{"file_id":49,"beg":{"line":255,"col":4},"end":{"line":255,"col":38}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Tests for `self` and `other` values to be equal, and is used by `==`."}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"cmp_partialeq_eq"},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"},{"index":1,"name":null,"mutability":"Unknown"}],"types":[{"index":0,"name":"Self"},{"index":1,"name":"Rhs"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":4,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":20,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5395},{"Deduplicated":5405}],"output":{"HashConsedValue":[468,{"Literal":"Bool"}]}},"src":{"TraitDecl":{"trait_ref":{"id":20,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},null,null,{"def_id":174,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["clone",0]},{"Ident":["impls",0]},{"Impl":{"Trait":7}},{"Ident":["clone",0]}],"span":{"data":{"file_id":27,"beg":{"line":698,"col":20},"end":{"line":698,"col":43}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":"Always","rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5397}],"output":{"Deduplicated":455}},"src":{"TraitImpl":{"impl_ref":{"id":7,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":5,"generics":{"regions":[],"types":[{"Deduplicated":455}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":175,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["impls",0]},{"Impl":{"Trait":8}},{"Ident":["partial_cmp",0]}],"span":{"data":{"file_id":49,"beg":{"line":1999,"col":16},"end":{"line":1999,"col":71}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":"Hint","rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"},{"index":1,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5397},{"Deduplicated":5398}],"output":{"Deduplicated":3376}},"src":{"TraitImpl":{"impl_ref":{"id":8,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":19,"generics":{"regions":[],"types":[{"Deduplicated":455},{"Deduplicated":455}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},null,null,null,null,null,null,null,null,{"def_id":184,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["index",0]},{"Ident":["Index",0]},{"Ident":["index",0]}],"span":{"data":{"file_id":56,"beg":{"line":73,"col":4},"end":{"line":73,"col":49}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Performs the indexing (`container[index]`) operation."},{"DocComment":""},{"DocComment":" # Panics"},{"DocComment":""},{"DocComment":" May panic if the index is out of bounds."}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[{"index":0,"name":"Self"},{"index":1,"name":"Idx"},{"index":2,"name":"Clause0_Output"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":4,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":22,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335},{"Deduplicated":5355}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5395},{"Deduplicated":5335}],"output":{"HashConsedValue":[5406,{"Ref":[{"Var":{"Free":0}},{"Deduplicated":5355},"Shared"]}]}},"src":{"TraitDecl":{"trait_ref":{"id":22,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335},{"Deduplicated":5355}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":185,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["index",0]},{"Ident":["IndexMut",0]},{"Ident":["index_mut",0]}],"span":{"data":{"file_id":56,"beg":{"line":179,"col":4},"end":{"line":179,"col":61}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Performs the mutable indexing (`container[index]`) operation."},{"DocComment":""},{"DocComment":" # Panics"},{"DocComment":""},{"DocComment":" May panic if the index is out of bounds."}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[{"index":0,"name":"Self"},{"index":1,"name":"Idx"},{"index":2,"name":"Clause0_Clause0_Output"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":4,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":23,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335},{"Deduplicated":5355}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5394},{"Deduplicated":5335}],"output":{"HashConsedValue":[5407,{"Ref":[{"Var":{"Free":0}},{"Deduplicated":5355},"Mut"]}]}},"src":{"TraitDecl":{"trait_ref":{"id":23,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335},{"Deduplicated":5355}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},{"def_id":186,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["convert",0]},{"Ident":["From",0]},{"Ident":["from",0]}],"span":{"data":{"file_id":57,"beg":{"line":592,"col":4},"end":{"line":592,"col":30}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Converts to this type from the input type."}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"from_fn"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"T"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":4,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":24,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5335}],"output":{"Deduplicated":5334}},"src":{"TraitDecl":{"trait_ref":{"id":24,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},null,null,null,null,{"def_id":191,"item_meta":{"name":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["constants",0]},{"Ident":["LFACTOR",0]}],"span":{"data":{"file_id":58,"beg":{"line":138,"col":0},"end":{"line":138,"col":48}},"generated_from_span":null},"source_text":"pub(crate) const LFACTOR: u64 = 0x51da312547e1b;","attr_info":{"attributes":[{"DocComment":" `L` * `LFACTOR` = -1 (mod 2^52)"}],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[],"output":{"Deduplicated":454}},"src":"TopLevel","is_global_initializer":14,"body":{"Structured":{"span":{"data":{"file_id":58,"beg":{"line":138,"col":0},"end":{"line":138,"col":48}},"generated_from_span":null},"bound_body_regions":0,"locals":{"arg_count":0,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":58,"beg":{"line":138,"col":26},"end":{"line":138,"col":29}},"generated_from_span":null},"ty":{"Deduplicated":454}}]},"body":{"span":{"data":{"file_id":58,"beg":{"line":138,"col":0},"end":{"line":138,"col":48}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":58,"beg":{"line":138,"col":32},"end":{"line":138,"col":47}},"generated_from_span":null},"id":3851,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":454}},{"Use":[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","1439961107955227"]}}},"ty":{"Deduplicated":454}}},"Yes"]}]},"comments_before":[]},{"span":{"data":{"file_id":58,"beg":{"line":138,"col":0},"end":{"line":138,"col":48}},"generated_from_span":null},"id":3852,"kind":"Return","comments_before":[]}]},"comments":[]}}},null,{"def_id":193,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["try_trait",0]},{"Ident":["FromResidual",0]},{"Ident":["from_residual",0]}],"span":{"data":{"file_id":45,"beg":{"line":333,"col":4},"end":{"line":333,"col":42}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Constructs the type from a compatible `Residual` type."},{"DocComment":""},{"DocComment":" This should be implemented consistently with the `branch` method such"},{"DocComment":" that applying the `?` operator will get back an equivalent residual:"},{"DocComment":" `FromResidual::from_residual(r).branch() --> ControlFlow::Break(r)`."},{"DocComment":" (The residual is not mandated to be *identical* when interconversion is involved.)"},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" #![feature(try_trait_v2)]"},{"DocComment":" use std::ops::{ControlFlow, FromResidual};"},{"DocComment":""},{"DocComment":" assert_eq!(Result::<String, i64>::from_residual(Err(3_u8)), Err(3));"},{"DocComment":" assert_eq!(Option::<String>::from_residual(None), None);"},{"DocComment":" assert_eq!("},{"DocComment":" ControlFlow::<_, String>::from_residual(ControlFlow::Break(5)),"},{"DocComment":" ControlFlow::Break(5),"},{"DocComment":" );"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"from_residual"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"R"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":4,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":26,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5335}],"output":{"Deduplicated":5334}},"src":{"TraitDecl":{"trait_ref":{"id":26,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},null,null,{"def_id":196,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["impls",0]},{"Impl":{"Trait":13}},{"Ident":["eq",0]}],"span":{"data":{"file_id":49,"beg":{"line":1878,"col":16},"end":{"line":1878,"col":50}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":"Hint","rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"},{"index":1,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5397},{"Deduplicated":5398}],"output":{"Deduplicated":468}},"src":{"TraitImpl":{"impl_ref":{"id":13,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":20,"generics":{"regions":[],"types":[{"Deduplicated":455},{"Deduplicated":455}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},null,{"def_id":198,"item_meta":{"name":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["constants",0]},{"Ident":["L",0]}],"span":{"data":{"file_id":58,"beg":{"line":129,"col":0},"end":{"line":135,"col":3}},"generated_from_span":null},"source_text":"pub(crate) const L: Scalar52 = Scalar52([\n 0x0002631a5cf5d3ed,\n 0x000dea2f79cd6581,\n 0x000000000014def9,\n 0x0000000000000000,\n 0x0000100000000000,\n]);","attr_info":{"attributes":[{"DocComment":" `L` is the order of base point, i.e. 2^252 + 27742317777372353535851937790883648493"}],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[],"output":{"Deduplicated":334}},"src":"TopLevel","is_global_initializer":17,"body":{"Structured":{"span":{"data":{"file_id":58,"beg":{"line":129,"col":0},"end":{"line":135,"col":3}},"generated_from_span":null},"bound_body_regions":0,"locals":{"arg_count":0,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":58,"beg":{"line":129,"col":20},"end":{"line":129,"col":28}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":1,"name":null,"span":{"data":{"file_id":58,"beg":{"line":129,"col":40},"end":{"line":135,"col":1}},"generated_from_span":null},"ty":{"Deduplicated":456}}]},"body":{"span":{"data":{"file_id":58,"beg":{"line":129,"col":0},"end":{"line":135,"col":3}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":58,"beg":{"line":129,"col":40},"end":{"line":135,"col":1}},"generated_from_span":null},"id":3853,"kind":{"StorageLive":1},"comments_before":[]},{"span":{"data":{"file_id":58,"beg":{"line":129,"col":40},"end":{"line":135,"col":1}},"generated_from_span":null},"id":3854,"kind":{"Assign":[{"kind":{"Local":1},"ty":{"Deduplicated":456}},{"Aggregate":[{"Array":[{"Deduplicated":454},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","5"]}}},"ty":{"Deduplicated":455}}]},[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","671914833335277"]}}},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","3916664325105025"]}}},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","1367801"]}}},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","0"]}}},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","17592186044416"]}}},"ty":{"Deduplicated":454}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":58,"beg":{"line":129,"col":31},"end":{"line":135,"col":2}},"generated_from_span":null},"id":3855,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":334}},{"Aggregate":[{"Adt":[{"id":{"Adt":0},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[{"Move":{"kind":{"Local":1},"ty":{"Deduplicated":456}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":58,"beg":{"line":135,"col":1},"end":{"line":135,"col":2}},"generated_from_span":null},"id":3856,"kind":{"StorageDead":1},"comments_before":[]},{"span":{"data":{"file_id":58,"beg":{"line":129,"col":0},"end":{"line":135,"col":3}},"generated_from_span":null},"id":3857,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":199,"item_meta":{"name":[{"Ident":["subtle",0]},{"Ident":["ConditionallySelectable",0]},{"Ident":["conditional_select",0]}],"span":{"data":{"file_id":15,"beg":{"line":420,"col":4},"end":{"line":420,"col":70}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Select `a` or `b` according to `choice`."},{"DocComment":""},{"DocComment":" # Returns"},{"DocComment":""},{"DocComment":" * `a` if `choice == Choice(0)`;"},{"DocComment":" * `b` if `choice == Choice(1)`."},{"DocComment":""},{"DocComment":" This function should execute in constant time."},{"DocComment":""},{"DocComment":" # Example"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use subtle::ConditionallySelectable;"},{"DocComment":" #"},{"DocComment":" # fn main() {"},{"DocComment":" let x: u8 = 13;"},{"DocComment":" let y: u8 = 42;"},{"DocComment":""},{"DocComment":" let z = u8::conditional_select(&x, &y, 0.into());"},{"DocComment":" assert_eq!(z, x);"},{"DocComment":" let z = u8::conditional_select(&x, &y, 1.into());"},{"DocComment":" assert_eq!(z, y);"},{"DocComment":" # }"},{"DocComment":" ```"}],"inline":"Hint","rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"},{"index":1,"name":null,"mutability":"Unknown"}],"types":[{"index":0,"name":"Self"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":4,"beg":{"line":1,"col":0},"end":{"line":1,"col":0}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":28,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5395},{"Deduplicated":5396},{"Deduplicated":1015}],"output":{"Deduplicated":5334}},"src":{"TraitDecl":{"trait_ref":{"id":28,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"has_default":false}},"is_global_initializer":null,"body":"Opaque"},null,null,{"def_id":202,"item_meta":{"name":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["constants",0]},{"Ident":["RR",0]}],"span":{"data":{"file_id":58,"beg":{"line":150,"col":0},"end":{"line":156,"col":3}},"generated_from_span":null},"source_text":"pub(crate) const RR: Scalar52 = Scalar52([\n 0x0009d265e952d13b,\n 0x000d63c715bea69f,\n 0x0005be65cb687604,\n 0x0003dceec73d217f,\n 0x000009411b7c309a,\n]);","attr_info":{"attributes":[{"DocComment":" `RR` = (R^2) % L where R = 2^260"}],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[],"output":{"Deduplicated":334}},"src":"TopLevel","is_global_initializer":18,"body":{"Structured":{"span":{"data":{"file_id":58,"beg":{"line":150,"col":0},"end":{"line":156,"col":3}},"generated_from_span":null},"bound_body_regions":0,"locals":{"arg_count":0,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":58,"beg":{"line":150,"col":21},"end":{"line":150,"col":29}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":1,"name":null,"span":{"data":{"file_id":58,"beg":{"line":150,"col":41},"end":{"line":156,"col":1}},"generated_from_span":null},"ty":{"Deduplicated":456}}]},"body":{"span":{"data":{"file_id":58,"beg":{"line":150,"col":0},"end":{"line":156,"col":3}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":58,"beg":{"line":150,"col":41},"end":{"line":156,"col":1}},"generated_from_span":null},"id":3858,"kind":{"StorageLive":1},"comments_before":[]},{"span":{"data":{"file_id":58,"beg":{"line":150,"col":41},"end":{"line":156,"col":1}},"generated_from_span":null},"id":3859,"kind":{"Assign":[{"kind":{"Local":1},"ty":{"Deduplicated":456}},{"Aggregate":[{"Array":[{"Deduplicated":454},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","5"]}}},"ty":{"Deduplicated":455}}]},[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","2764609938444603"]}}},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","3768881411696287"]}}},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","1616719297148420"]}}},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","1087343033131391"]}}},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","10175238647962"]}}},"ty":{"Deduplicated":454}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":58,"beg":{"line":150,"col":32},"end":{"line":156,"col":2}},"generated_from_span":null},"id":3860,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":334}},{"Aggregate":[{"Adt":[{"id":{"Adt":0},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[{"Move":{"kind":{"Local":1},"ty":{"Deduplicated":456}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":58,"beg":{"line":156,"col":1},"end":{"line":156,"col":2}},"generated_from_span":null},"id":3861,"kind":{"StorageDead":1},"comments_before":[]},{"span":{"data":{"file_id":58,"beg":{"line":150,"col":0},"end":{"line":156,"col":3}},"generated_from_span":null},"id":3862,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":203,"item_meta":{"name":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["constants",0]},{"Ident":["R",0]}],"span":{"data":{"file_id":58,"beg":{"line":141,"col":0},"end":{"line":147,"col":3}},"generated_from_span":null},"source_text":"pub(crate) const R: Scalar52 = Scalar52([\n 0x000f48bd6721e6ed,\n 0x0003bab5ac67e45a,\n 0x000fffffeb35e51b,\n 0x000fffffffffffff,\n 0x00000fffffffffff,\n]);","attr_info":{"attributes":[{"DocComment":" `R` = R % L where R = 2^260"}],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[],"output":{"Deduplicated":334}},"src":"TopLevel","is_global_initializer":19,"body":{"Structured":{"span":{"data":{"file_id":58,"beg":{"line":141,"col":0},"end":{"line":147,"col":3}},"generated_from_span":null},"bound_body_regions":0,"locals":{"arg_count":0,"locals":[{"index":0,"name":null,"span":{"data":{"file_id":58,"beg":{"line":141,"col":20},"end":{"line":141,"col":28}},"generated_from_span":null},"ty":{"Deduplicated":334}},{"index":1,"name":null,"span":{"data":{"file_id":58,"beg":{"line":141,"col":40},"end":{"line":147,"col":1}},"generated_from_span":null},"ty":{"Deduplicated":456}}]},"body":{"span":{"data":{"file_id":58,"beg":{"line":141,"col":0},"end":{"line":147,"col":3}},"generated_from_span":null},"statements":[{"span":{"data":{"file_id":58,"beg":{"line":141,"col":40},"end":{"line":147,"col":1}},"generated_from_span":null},"id":3863,"kind":{"StorageLive":1},"comments_before":[]},{"span":{"data":{"file_id":58,"beg":{"line":141,"col":40},"end":{"line":147,"col":1}},"generated_from_span":null},"id":3864,"kind":{"Assign":[{"kind":{"Local":1},"ty":{"Deduplicated":456}},{"Aggregate":[{"Array":[{"Deduplicated":454},{"kind":{"Literal":{"Scalar":{"Unsigned":["Usize","5"]}}},"ty":{"Deduplicated":455}}]},[{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","4302102966953709"]}}},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","1049714374468698"]}}},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","4503599278581019"]}}},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","4503599627370495"]}}},"ty":{"Deduplicated":454}}},{"Const":{"kind":{"Literal":{"Scalar":{"Unsigned":["U64","17592186044415"]}}},"ty":{"Deduplicated":454}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":58,"beg":{"line":141,"col":31},"end":{"line":147,"col":2}},"generated_from_span":null},"id":3865,"kind":{"Assign":[{"kind":{"Local":0},"ty":{"Deduplicated":334}},{"Aggregate":[{"Adt":[{"id":{"Adt":0},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},null,null]},[{"Move":{"kind":{"Local":1},"ty":{"Deduplicated":456}}}]]}]},"comments_before":[]},{"span":{"data":{"file_id":58,"beg":{"line":147,"col":1},"end":{"line":147,"col":2}},"generated_from_span":null},"id":3866,"kind":{"StorageDead":1},"comments_before":[]},{"span":{"data":{"file_id":58,"beg":{"line":141,"col":0},"end":{"line":147,"col":3}},"generated_from_span":null},"id":3867,"kind":"Return","comments_before":[]}]},"comments":[]}}},{"def_id":204,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["niche_types",0]},{"Impl":{"Trait":15}},{"Ident":["clone",0]}],"span":{"data":{"file_id":59,"beg":{"line":17,"col":17},"end":{"line":17,"col":22}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":"Hint","rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"HashConsedValue":[5408,{"Ref":[{"Var":{"Free":0}},{"HashConsedValue":[4153,{"Adt":{"id":{"Adt":36},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}}]},"Shared"]}]}],"output":{"Deduplicated":4153}},"src":{"TraitImpl":{"impl_ref":{"id":15,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":5,"generics":{"regions":[],"types":[{"Deduplicated":4153}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"},{"def_id":205,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["clone",0]},{"Ident":["impls",0]},{"Impl":{"Trait":16}},{"Ident":["clone",0]}],"span":{"data":{"file_id":27,"beg":{"line":698,"col":20},"end":{"line":698,"col":43}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":"Always","rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5391}],"output":{"Deduplicated":454}},"src":{"TraitImpl":{"impl_ref":{"id":16,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"trait_ref":{"id":5,"generics":{"regions":[],"types":[{"Deduplicated":454}],"const_generics":[],"trait_refs":[]}},"item_id":{"Method":0},"reuses_default":true}},"is_global_initializer":null,"body":"Opaque"}],"global_decls":[{"def_id":0,"item_meta":{"name":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Ty":{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"Deduplicated":334},"kind":"InherentImplBlock"}}},{"Ident":["ZERO",0]}],"span":{"data":{"file_id":0,"beg":{"line":58,"col":4},"end":{"line":58,"col":57}},"generated_from_span":null},"source_text":"pub const ZERO: Scalar52 = Scalar52([0, 0, 0, 0, 0]);","attr_info":{"attributes":[{"DocComment":" The scalar \\\\( 0 \\\\)."}],"inline":null,"rename":null,"public":true},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"ty":{"Deduplicated":334},"src":"TopLevel","global_kind":"NamedConst","value":{"kind":{"Call":[{"kind":{"Fun":{"Regular":24}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},[]]},"ty":{"Deduplicated":334}}},null,null,null,null,null,null,null,null,null,null,null,null,null,{"def_id":14,"item_meta":{"name":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["constants",0]},{"Ident":["LFACTOR",0]}],"span":{"data":{"file_id":58,"beg":{"line":138,"col":0},"end":{"line":138,"col":48}},"generated_from_span":null},"source_text":"pub(crate) const LFACTOR: u64 = 0x51da312547e1b;","attr_info":{"attributes":[{"DocComment":" `L` * `LFACTOR` = -1 (mod 2^52)"}],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"ty":{"Deduplicated":454},"src":"TopLevel","global_kind":"NamedConst","value":{"kind":{"Call":[{"kind":{"Fun":{"Regular":191}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},[]]},"ty":{"Deduplicated":454}}},null,null,{"def_id":17,"item_meta":{"name":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["constants",0]},{"Ident":["L",0]}],"span":{"data":{"file_id":58,"beg":{"line":129,"col":0},"end":{"line":135,"col":3}},"generated_from_span":null},"source_text":"pub(crate) const L: Scalar52 = Scalar52([\n 0x0002631a5cf5d3ed,\n 0x000dea2f79cd6581,\n 0x000000000014def9,\n 0x0000000000000000,\n 0x0000100000000000,\n]);","attr_info":{"attributes":[{"DocComment":" `L` is the order of base point, i.e. 2^252 + 27742317777372353535851937790883648493"}],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"ty":{"Deduplicated":334},"src":"TopLevel","global_kind":"NamedConst","value":{"kind":{"Call":[{"kind":{"Fun":{"Regular":198}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},[]]},"ty":{"Deduplicated":334}}},{"def_id":18,"item_meta":{"name":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["constants",0]},{"Ident":["RR",0]}],"span":{"data":{"file_id":58,"beg":{"line":150,"col":0},"end":{"line":156,"col":3}},"generated_from_span":null},"source_text":"pub(crate) const RR: Scalar52 = Scalar52([\n 0x0009d265e952d13b,\n 0x000d63c715bea69f,\n 0x0005be65cb687604,\n 0x0003dceec73d217f,\n 0x000009411b7c309a,\n]);","attr_info":{"attributes":[{"DocComment":" `RR` = (R^2) % L where R = 2^260"}],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"ty":{"Deduplicated":334},"src":"TopLevel","global_kind":"NamedConst","value":{"kind":{"Call":[{"kind":{"Fun":{"Regular":202}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},[]]},"ty":{"Deduplicated":334}}},{"def_id":19,"item_meta":{"name":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["constants",0]},{"Ident":["R",0]}],"span":{"data":{"file_id":58,"beg":{"line":141,"col":0},"end":{"line":147,"col":3}},"generated_from_span":null},"source_text":"pub(crate) const R: Scalar52 = Scalar52([\n 0x000f48bd6721e6ed,\n 0x0003bab5ac67e45a,\n 0x000fffffeb35e51b,\n 0x000fffffffffffff,\n 0x00000fffffffffff,\n]);","attr_info":{"attributes":[{"DocComment":" `R` = R % L where R = 2^260"}],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"ty":{"Deduplicated":334},"src":"TopLevel","global_kind":"NamedConst","value":{"kind":{"Call":[{"kind":{"Fun":{"Regular":203}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},[]]},"ty":{"Deduplicated":334}}},null,null],"trait_decls":[{"def_id":0,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["iterator",0]},{"Ident":["Iterator",0]}],"span":{"data":{"file_id":13,"beg":{"line":42,"col":0},"end":{"line":42,"col":24}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" A trait for dealing with iterators."},{"DocComment":""},{"DocComment":" This is the main iterator trait. For more about the concept of iterators"},{"DocComment":" generally, please see the [module-level documentation]. In particular, you"},{"DocComment":" may want to know how to [implement `Iterator`][impl]."},{"DocComment":""},{"DocComment":" [module-level documentation]: crate::iter"},{"DocComment":" [impl]: crate::iter#implementing-iterator"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"iterator"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"Self_Item"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_clauses":[],"consts":[],"types":[null],"methods":[{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"next","attr_info":{"attributes":[{"DocComment":" Advances the iterator and returns the next value."},{"DocComment":""},{"DocComment":" Returns [`None`] when iteration is finished. Individual iterator"},{"DocComment":" implementations may choose to resume iteration, and so calling `next()`"},{"DocComment":" again may or may not eventually start returning [`Some(Item)`] again at some"},{"DocComment":" point."},{"DocComment":""},{"DocComment":" [`Some(Item)`]: Some"},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let a = [1, 2, 3];"},{"DocComment":""},{"DocComment":" let mut iter = a.into_iter();"},{"DocComment":""},{"DocComment":" // A call to next() returns the next value..."},{"DocComment":" assert_eq!(Some(1), iter.next());"},{"DocComment":" assert_eq!(Some(2), iter.next());"},{"DocComment":" assert_eq!(Some(3), iter.next());"},{"DocComment":""},{"DocComment":" // ... and then None once it's over."},{"DocComment":" assert_eq!(None, iter.next());"},{"DocComment":""},{"DocComment":" // More calls may or may not return `None`. Here, they always will."},{"DocComment":" assert_eq!(None, iter.next());"},{"DocComment":" assert_eq!(None, iter.next());"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"HashConsedValue":[5348,{"Ref":[{"Var":{"Bound":[0,0]}},{"Deduplicated":5334},"Mut"]}]}],"output":{"Deduplicated":5349}},"item":{"id":25,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[{"HashConsedValue":[5350,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":0,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[0,0]}},null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"vtable":{"id":{"Adt":4},"generics":{"regions":[],"types":[{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}},{"def_id":1,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Ident":["Step",0]}],"span":{"data":{"file_id":14,"beg":{"line":34,"col":0},"end":{"line":34,"col":64}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Objects that have a notion of *successor* and *predecessor* operations."},{"DocComment":""},{"DocComment":" The *successor* operation moves towards values that compare greater."},{"DocComment":" The *predecessor* operation moves towards values that compare lesser."}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"range_step"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_clauses":[{"clause_id":0,"span":{"data":{"file_id":14,"beg":{"line":34,"col":22},"end":{"line":34,"col":35}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":5,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":1,"span":{"data":{"file_id":14,"beg":{"line":34,"col":38},"end":{"line":34,"col":56}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":19,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}}}}],"consts":[],"types":[],"methods":[{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"},{"index":1,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"steps_between","attr_info":{"attributes":[{"DocComment":" Returns the bounds on the number of *successor* steps required to get from `start` to `end`"},{"DocComment":" like [`Iterator::size_hint()`][Iterator::size_hint()]."},{"DocComment":""},{"DocComment":" Returns `(usize::MAX, None)` if the number of steps would overflow `usize`, or is infinite."},{"DocComment":""},{"DocComment":" # Invariants"},{"DocComment":""},{"DocComment":" For any `a`, `b`, and `n`:"},{"DocComment":""},{"DocComment":" * `steps_between(&a, &b) == (n, Some(n))` if and only if `Step::forward_checked(&a, n) == Some(b)`"},{"DocComment":" * `steps_between(&a, &b) == (n, Some(n))` if and only if `Step::backward_checked(&b, n) == Some(a)`"},{"DocComment":" * `steps_between(&a, &b) == (n, Some(n))` only if `a <= b`"},{"DocComment":" * Corollary: `steps_between(&a, &b) == (0, Some(0))` if and only if `a == b`"},{"DocComment":" * `steps_between(&a, &b) == (0, None)` if `a > b`"}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"HashConsedValue":[5351,{"Ref":[{"Var":{"Bound":[0,0]}},{"Deduplicated":5334},"Shared"]}]},{"HashConsedValue":[5352,{"Ref":[{"Var":{"Bound":[0,1]}},{"Deduplicated":5334},"Shared"]}]}],"output":{"Deduplicated":1598}},"item":{"id":111,"generics":{"regions":[{"Var":{"Bound":[0,0]}},{"Var":{"Bound":[0,1]}}],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[{"HashConsedValue":[5353,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[1,0]}},{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"forward_checked","attr_info":{"attributes":[{"DocComment":" Returns the value that would be obtained by taking the *successor*"},{"DocComment":" of `self` `count` times."},{"DocComment":""},{"DocComment":" If this would overflow the range of values supported by `Self`, returns `None`."},{"DocComment":""},{"DocComment":" # Invariants"},{"DocComment":""},{"DocComment":" For any `a`, `n`, and `m`:"},{"DocComment":""},{"DocComment":" * `Step::forward_checked(a, n).and_then(|x| Step::forward_checked(x, m)) == Step::forward_checked(a, m).and_then(|x| Step::forward_checked(x, n))`"},{"DocComment":" * `Step::forward_checked(a, n).and_then(|x| Step::forward_checked(x, m)) == try { Step::forward_checked(a, n.checked_add(m)) }`"},{"DocComment":""},{"DocComment":" For any `a` and `n`:"},{"DocComment":""},{"DocComment":" * `Step::forward_checked(a, n) == (0..n).try_fold(a, |x, _| Step::forward_checked(&x, 1))`"},{"DocComment":" * Corollary: `Step::forward_checked(a, 0) == Some(a)`"}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5334},{"Deduplicated":455}],"output":{"Deduplicated":5354}},"item":{"id":112,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[{"Deduplicated":5353}]}}},"kind":{"TraitMethod":[1,1]}},null,null,{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"backward_checked","attr_info":{"attributes":[{"DocComment":" Returns the value that would be obtained by taking the *predecessor*"},{"DocComment":" of `self` `count` times."},{"DocComment":""},{"DocComment":" If this would overflow the range of values supported by `Self`, returns `None`."},{"DocComment":""},{"DocComment":" # Invariants"},{"DocComment":""},{"DocComment":" For any `a`, `n`, and `m`:"},{"DocComment":""},{"DocComment":" * `Step::backward_checked(a, n).and_then(|x| Step::backward_checked(x, m)) == n.checked_add(m).and_then(|x| Step::backward_checked(a, x))`"},{"DocComment":" * `Step::backward_checked(a, n).and_then(|x| Step::backward_checked(x, m)) == try { Step::backward_checked(a, n.checked_add(m)?) }`"},{"DocComment":""},{"DocComment":" For any `a` and `n`:"},{"DocComment":""},{"DocComment":" * `Step::backward_checked(a, n) == (0..n).try_fold(a, |x, _| Step::backward_checked(x, 1))`"},{"DocComment":" * Corollary: `Step::backward_checked(a, 0) == Some(a)`"}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5334},{"Deduplicated":455}],"output":{"Deduplicated":5354}},"item":{"id":115,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[{"Deduplicated":5353}]}}},"kind":{"TraitMethod":[1,4]}},null,null],"vtable":null},{"def_id":2,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["collect",0]},{"Ident":["IntoIterator",0]}],"span":{"data":{"file_id":10,"beg":{"line":283,"col":0},"end":{"line":283,"col":28}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Conversion into an [`Iterator`]."},{"DocComment":""},{"DocComment":" By implementing `IntoIterator` for a type, you define how it will be"},{"DocComment":" converted to an iterator. This is common for types which describe a"},{"DocComment":" collection of some kind."},{"DocComment":""},{"DocComment":" One benefit of implementing `IntoIterator` is that your type will [work"},{"DocComment":" with Rust's `for` loop syntax](crate::iter#for-loops-and-intoiterator)."},{"DocComment":""},{"DocComment":" See also: [`FromIterator`]."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" Basic usage:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let v = [1, 2, 3];"},{"DocComment":" let mut iter = v.into_iter();"},{"DocComment":""},{"DocComment":" assert_eq!(Some(1), iter.next());"},{"DocComment":" assert_eq!(Some(2), iter.next());"},{"DocComment":" assert_eq!(Some(3), iter.next());"},{"DocComment":" assert_eq!(None, iter.next());"},{"DocComment":" ```"},{"DocComment":" Implementing `IntoIterator` for your type:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" // A sample collection, that's just a wrapper over Vec<T>"},{"DocComment":" #[derive(Debug)]"},{"DocComment":" struct MyCollection(Vec<i32>);"},{"DocComment":""},{"DocComment":" // Let's give it some methods so we can create one and add things"},{"DocComment":" // to it."},{"DocComment":" impl MyCollection {"},{"DocComment":" fn new() -> MyCollection {"},{"DocComment":" MyCollection(Vec::new())"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" fn add(&mut self, elem: i32) {"},{"DocComment":" self.0.push(elem);"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" // and we'll implement IntoIterator"},{"DocComment":" impl IntoIterator for MyCollection {"},{"DocComment":" type Item = i32;"},{"DocComment":" type IntoIter = std::vec::IntoIter<Self::Item>;"},{"DocComment":""},{"DocComment":" fn into_iter(self) -> Self::IntoIter {"},{"DocComment":" self.0.into_iter()"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" // Now we can make a new collection..."},{"DocComment":" let mut c = MyCollection::new();"},{"DocComment":""},{"DocComment":" // ... add some stuff to it ..."},{"DocComment":" c.add(0);"},{"DocComment":" c.add(1);"},{"DocComment":" c.add(2);"},{"DocComment":""},{"DocComment":" // ... and then turn it into an Iterator:"},{"DocComment":" for (i, n) in c.into_iter().enumerate() {"},{"DocComment":" assert_eq!(i as i32, n);"},{"DocComment":" }"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" It is common to use `IntoIterator` as a trait bound. This allows"},{"DocComment":" the input collection type to change, so long as it is still an"},{"DocComment":" iterator. Additional bounds can be specified by restricting on"},{"DocComment":" `Item`:"},{"DocComment":""},{"DocComment":" ```rust"},{"DocComment":" fn collect_as_strings<T>(collection: T) -> Vec<String>"},{"DocComment":" where"},{"DocComment":" T: IntoIterator,"},{"DocComment":" T::Item: std::fmt::Debug,"},{"DocComment":" {"},{"DocComment":" collection"},{"DocComment":" .into_iter()"},{"DocComment":" .map(|item| format!(\"{item:?}\"))"},{"DocComment":" .collect()"},{"DocComment":" }"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"IntoIterator"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"Self_Item"},{"index":2,"name":"Self_IntoIter"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_clauses":[{"clause_id":0,"span":{"data":{"file_id":10,"beg":{"line":291,"col":19},"end":{"line":291,"col":46}},"generated_from_span":null},"origin":{"TraitItem":1},"trait_":{"regions":[],"skip_binder":{"id":0,"generics":{"regions":[],"types":[{"Deduplicated":5355},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}}}],"consts":[],"types":[null,null],"methods":[{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"into_iter","attr_info":{"attributes":[{"DocComment":" Creates an iterator from a value."},{"DocComment":""},{"DocComment":" See the [module-level documentation] for more."},{"DocComment":""},{"DocComment":" [module-level documentation]: crate::iter"},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let v = [1, 2, 3];"},{"DocComment":" let mut iter = v.into_iter();"},{"DocComment":""},{"DocComment":" assert_eq!(Some(1), iter.next());"},{"DocComment":" assert_eq!(Some(2), iter.next());"},{"DocComment":" assert_eq!(Some(3), iter.next());"},{"DocComment":" assert_eq!(None, iter.next());"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5334}],"output":{"Deduplicated":5355}},"item":{"id":134,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335},{"Deduplicated":5355}],"const_generics":[],"trait_refs":[{"HashConsedValue":[5356,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":2,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335},{"Deduplicated":5355}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[2,0]}}],"vtable":{"id":{"Adt":35},"generics":{"regions":[],"types":[{"Deduplicated":5335},{"Deduplicated":5355}],"const_generics":[],"trait_refs":[]}}},{"def_id":3,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["marker",0]},{"Ident":["Destruct",0]}],"span":{"data":{"file_id":21,"beg":{"line":1062,"col":0},"end":{"line":1062,"col":38}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" A marker for types that can be dropped."},{"DocComment":""},{"DocComment":" This should be used for `[const]` bounds,"},{"DocComment":" as non-const bounds will always hold for every type."}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"destruct"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_clauses":[],"consts":[],"types":[],"methods":[{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"drop_glue","attr_info":{"attributes":[],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":true,"abi":"Rust","inputs":[{"Deduplicated":5348}],"output":{"Deduplicated":476}},"item":{"id":135,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}}},"kind":{"TraitMethod":[3,0]}}],"vtable":null},{"def_id":4,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["nonzero",0]},{"Ident":["ZeroablePrimitive",0]}],"span":{"data":{"file_id":22,"beg":{"line":34,"col":0},"end":{"line":34,"col":66}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" A marker trait for primitive types which can be zero."},{"DocComment":""},{"DocComment":" This is an implementation detail for <code>[NonZero]\\<T></code> which may disappear or be replaced at any time."},{"DocComment":""},{"DocComment":" # Safety"},{"DocComment":""},{"DocComment":" Types implementing this trait must be primitives that are valid when zeroed."},{"DocComment":""},{"DocComment":" The associated `Self::NonZeroInner` type must have the same size+align as `Self`,"},{"DocComment":" but with a niche and bit validity making it so the following `transmutes` are sound:"},{"DocComment":""},{"DocComment":" - `Self::NonZeroInner` to `Option<Self::NonZeroInner>`"},{"DocComment":" - `Option<Self::NonZeroInner>` to `Self`"},{"DocComment":""},{"DocComment":" (And, consequently, `Self::NonZeroInner` to `Self`.)"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"Self_NonZeroInner"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_clauses":[{"clause_id":0,"span":{"data":{"file_id":22,"beg":{"line":34,"col":44},"end":{"line":34,"col":48}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":16,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":1,"span":{"data":{"file_id":22,"beg":{"line":34,"col":51},"end":{"line":34,"col":66}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":25,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":2,"span":{"data":{"file_id":22,"beg":{"line":36,"col":31},"end":{"line":36,"col":35}},"generated_from_span":null},"origin":{"TraitItem":0},"trait_":{"regions":[],"skip_binder":{"id":16,"generics":{"regions":[],"types":[{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}}}],"consts":[],"types":[null],"methods":[],"vtable":null},{"def_id":5,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["clone",0]},{"Ident":["Clone",0]}],"span":{"data":{"file_id":27,"beg":{"line":194,"col":0},"end":{"line":194,"col":28}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" A common trait that allows explicit creation of a duplicate value."},{"DocComment":""},{"DocComment":" Calling [`clone`] always produces a new value."},{"DocComment":" However, for types that are references to other data (such as smart pointers or references),"},{"DocComment":" the new value may still point to the same underlying data, rather than duplicating it."},{"DocComment":" See [`Clone::clone`] for more details."},{"DocComment":""},{"DocComment":" This distinction is especially important when using `#[derive(Clone)]` on structs containing"},{"DocComment":" smart pointers like `Arc<Mutex<T>>` - the cloned struct will share mutable state with the"},{"DocComment":" original."},{"DocComment":""},{"DocComment":" Differs from [`Copy`] in that [`Copy`] is implicit and an inexpensive bit-wise copy, while"},{"DocComment":" `Clone` is always explicit and may or may not be expensive. [`Copy`] has no methods, so you"},{"DocComment":" cannot change its behavior, but when implementing `Clone`, the `clone` method you provide"},{"DocComment":" may run arbitrary code."},{"DocComment":""},{"DocComment":" Since `Clone` is a supertrait of [`Copy`], any type that implements `Copy` must also implement"},{"DocComment":" `Clone`."},{"DocComment":""},{"DocComment":" ## Derivable"},{"DocComment":""},{"DocComment":" This trait can be used with `#[derive]` if all fields are `Clone`. The `derive`d"},{"DocComment":" implementation of [`Clone`] calls [`clone`] on each field."},{"DocComment":""},{"DocComment":" [`clone`]: Clone::clone"},{"DocComment":""},{"DocComment":" For a generic struct, `#[derive]` implements `Clone` conditionally by adding bound `Clone` on"},{"DocComment":" generic parameters."},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" // `derive` implements Clone for Reading<T> when T is Clone."},{"DocComment":" #[derive(Clone)]"},{"DocComment":" struct Reading<T> {"},{"DocComment":" frequency: T,"},{"DocComment":" }"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" ## How can I implement `Clone`?"},{"DocComment":""},{"DocComment":" Types that are [`Copy`] should have a trivial implementation of `Clone`. More formally:"},{"DocComment":" if `T: Copy`, `x: T`, and `y: &T`, then `let x = y.clone();` is equivalent to `let x = *y;`."},{"DocComment":" Manual implementations should be careful to uphold this invariant; however, unsafe code"},{"DocComment":" must not rely on it to ensure memory safety."},{"DocComment":""},{"DocComment":" An example is a generic struct holding a function pointer. In this case, the"},{"DocComment":" implementation of `Clone` cannot be `derive`d, but can be implemented as:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" struct Generate<T>(fn() -> T);"},{"DocComment":""},{"DocComment":" impl<T> Copy for Generate<T> {}"},{"DocComment":""},{"DocComment":" impl<T> Clone for Generate<T> {"},{"DocComment":" fn clone(&self) -> Self {"},{"DocComment":" *self"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" If we `derive`:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" #[derive(Copy, Clone)]"},{"DocComment":" struct Generate<T>(fn() -> T);"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" the auto-derived implementations will have unnecessary `T: Copy` and `T: Clone` bounds:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" # struct Generate<T>(fn() -> T);"},{"DocComment":""},{"DocComment":" // Automatically derived"},{"DocComment":" impl<T: Copy> Copy for Generate<T> { }"},{"DocComment":""},{"DocComment":" // Automatically derived"},{"DocComment":" impl<T: Clone> Clone for Generate<T> {"},{"DocComment":" fn clone(&self) -> Generate<T> {"},{"DocComment":" Generate(Clone::clone(&self.0))"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" The bounds are unnecessary because clearly the function itself should be"},{"DocComment":" copy- and cloneable even if its return type is not:"},{"DocComment":""},{"DocComment":" ```compile_fail,E0599"},{"DocComment":" #[derive(Copy, Clone)]"},{"DocComment":" struct Generate<T>(fn() -> T);"},{"DocComment":""},{"DocComment":" struct NotCloneable;"},{"DocComment":""},{"DocComment":" fn generate_not_cloneable() -> NotCloneable {"},{"DocComment":" NotCloneable"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" Generate(generate_not_cloneable).clone(); // error: trait bounds were not satisfied"},{"DocComment":" // Note: With the manual implementations the above line will compile."},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" ## `Clone` and `PartialEq`/`Eq`"},{"DocComment":" `Clone` is intended for the duplication of objects. Consequently, when implementing"},{"DocComment":" both `Clone` and [`PartialEq`], the following property is expected to hold:"},{"DocComment":" ```text"},{"DocComment":" x == x -> x.clone() == x"},{"DocComment":" ```"},{"DocComment":" In other words, if an object compares equal to itself,"},{"DocComment":" its clone must also compare equal to the original."},{"DocComment":""},{"DocComment":" For types that also implement [`Eq`] – for which `x == x` always holds –"},{"DocComment":" this implies that `x.clone() == x` must always be true."},{"DocComment":" Standard library collections such as"},{"DocComment":" [`HashMap`], [`HashSet`], [`BTreeMap`], [`BTreeSet`] and [`BinaryHeap`]"},{"DocComment":" rely on their keys respecting this property for correct behavior."},{"DocComment":" Furthermore, these collections require that cloning a key preserves the outcome of the"},{"DocComment":" [`Hash`] and [`Ord`] methods. Thankfully, this follows automatically from `x.clone() == x`"},{"DocComment":" if `Hash` and `Ord` are correctly implemented according to their own requirements."},{"DocComment":""},{"DocComment":" When deriving both `Clone` and [`PartialEq`] using `#[derive(Clone, PartialEq)]`"},{"DocComment":" or when additionally deriving [`Eq`] using `#[derive(Clone, PartialEq, Eq)]`,"},{"DocComment":" then this property is automatically upheld – provided that it is satisfied by"},{"DocComment":" the underlying types."},{"DocComment":""},{"DocComment":" Violating this property is a logic error. The behavior resulting from a logic error is not"},{"DocComment":" specified, but users of the trait must ensure that such logic errors do *not* result in"},{"DocComment":" undefined behavior. This means that `unsafe` code **must not** rely on this property"},{"DocComment":" being satisfied."},{"DocComment":""},{"DocComment":" ## Additional implementors"},{"DocComment":""},{"DocComment":" In addition to the [implementors listed below][impls],"},{"DocComment":" the following types also implement `Clone`:"},{"DocComment":""},{"DocComment":" * Function item types (i.e., the distinct types defined for each function)"},{"DocComment":" * Function pointer types (e.g., `fn() -> i32`)"},{"DocComment":" * Closure types, if they capture no value from the environment"},{"DocComment":" or if all such captured values implement `Clone` themselves."},{"DocComment":" Note that variables captured by shared reference always implement `Clone`"},{"DocComment":" (even if the referent doesn't),"},{"DocComment":" while variables captured by mutable reference never implement `Clone`."},{"DocComment":""},{"DocComment":" [`HashMap`]: ../../std/collections/struct.HashMap.html"},{"DocComment":" [`HashSet`]: ../../std/collections/struct.HashSet.html"},{"DocComment":" [`BTreeMap`]: ../../std/collections/struct.BTreeMap.html"},{"DocComment":" [`BTreeSet`]: ../../std/collections/struct.BTreeSet.html"},{"DocComment":" [`BinaryHeap`]: ../../std/collections/struct.BinaryHeap.html"},{"DocComment":" [impls]: #implementors"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"clone"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_clauses":[],"consts":[],"types":[],"methods":[{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"clone","attr_info":{"attributes":[{"DocComment":" Returns a duplicate of the value."},{"DocComment":""},{"DocComment":" Note that what \"duplicate\" means varies by type:"},{"DocComment":" - For most types, this creates a deep, independent copy"},{"DocComment":" - For reference types like `&T`, this creates another reference to the same value"},{"DocComment":" - For smart pointers like [`Arc`] or [`Rc`], this increments the reference count"},{"DocComment":" but still points to the same underlying data"},{"DocComment":""},{"DocComment":" [`Arc`]: ../../std/sync/struct.Arc.html"},{"DocComment":" [`Rc`]: ../../std/rc/struct.Rc.html"},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" # #![allow(noop_method_call)]"},{"DocComment":" let hello = \"Hello\"; // &str implements Clone"},{"DocComment":""},{"DocComment":" assert_eq!(\"Hello\", hello.clone());"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" Example with a reference-counted type:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::sync::{Arc, Mutex};"},{"DocComment":""},{"DocComment":" let data = Arc::new(Mutex::new(vec![1, 2, 3]));"},{"DocComment":" let data_clone = data.clone(); // Creates another Arc pointing to the same Mutex"},{"DocComment":""},{"DocComment":" {"},{"DocComment":" let mut lock = data.lock().unwrap();"},{"DocComment":" lock.push(4);"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" // Changes are visible through the clone because they share the same underlying data"},{"DocComment":" assert_eq!(*data_clone.lock().unwrap(), vec![1, 2, 3, 4]);"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5351}],"output":{"Deduplicated":5334}},"item":{"id":136,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[{"HashConsedValue":[5357,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":5,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[5,0]}},null],"vtable":null},{"def_id":6,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["function",0]},{"Ident":["FnMut",0]}],"span":{"data":{"file_id":29,"beg":{"line":163,"col":0},"end":{"line":163,"col":48}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" The version of the call operator that takes a mutable receiver."},{"DocComment":""},{"DocComment":" Instances of `FnMut` can be called repeatedly and may mutate state."},{"DocComment":""},{"DocComment":" `FnMut` is implemented automatically by closures which take mutable"},{"DocComment":" references to captured variables, as well as all types that implement"},{"DocComment":" [`Fn`], e.g., (safe) [function pointers] (since `FnMut` is a supertrait of"},{"DocComment":" [`Fn`]). Additionally, for any type `F` that implements `FnMut`, `&mut F`"},{"DocComment":" implements `FnMut`, too."},{"DocComment":""},{"DocComment":" Since [`FnOnce`] is a supertrait of `FnMut`, any instance of `FnMut` can be"},{"DocComment":" used where a [`FnOnce`] is expected, and since [`Fn`] is a subtrait of"},{"DocComment":" `FnMut`, any instance of [`Fn`] can be used where `FnMut` is expected."},{"DocComment":""},{"DocComment":" Use `FnMut` as a bound when you want to accept a parameter of function-like"},{"DocComment":" type and need to call it repeatedly, while allowing it to mutate state."},{"DocComment":" If you don't want the parameter to mutate state, use [`Fn`] as a"},{"DocComment":" bound; if you don't need to call it repeatedly, use [`FnOnce`]."},{"DocComment":""},{"DocComment":" See the [chapter on closures in *The Rust Programming Language*][book] for"},{"DocComment":" some more information on this topic."},{"DocComment":""},{"DocComment":" Also of note is the special syntax for `Fn` traits (e.g."},{"DocComment":" `Fn(usize, bool) -> usize`). Those interested in the technical details of"},{"DocComment":" this can refer to [the relevant section in the *Rustonomicon*][nomicon]."},{"DocComment":""},{"DocComment":" [book]: ../../book/ch13-01-closures.html"},{"DocComment":" [function pointers]: fn"},{"DocComment":" [nomicon]: ../../nomicon/hrtb.html"},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ## Calling a mutably capturing closure"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let mut x = 5;"},{"DocComment":" {"},{"DocComment":" let mut square_x = || x *= x;"},{"DocComment":" square_x();"},{"DocComment":" }"},{"DocComment":" assert_eq!(x, 25);"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" ## Using a `FnMut` parameter"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" fn do_twice<F>(mut func: F)"},{"DocComment":" where F: FnMut()"},{"DocComment":" {"},{"DocComment":" func();"},{"DocComment":" func();"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" let mut x: usize = 1;"},{"DocComment":" {"},{"DocComment":" let add_two_to_x = || x += 2;"},{"DocComment":" do_twice(add_two_to_x);"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" assert_eq!(x, 5);"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"fn_mut"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"Args"},{"index":2,"name":"Self_Clause0_Output"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_clauses":[{"clause_id":0,"span":{"data":{"file_id":29,"beg":{"line":163,"col":36},"end":{"line":163,"col":48}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":7,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335},{"Deduplicated":5355}],"const_generics":[],"trait_refs":[]}}}}],"consts":[],"types":[],"methods":[{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"call_mut","attr_info":{"attributes":[{"DocComment":" Performs the call operation."}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":{"Other":"rust-call"},"inputs":[{"Deduplicated":5348},{"Deduplicated":5335}],"output":{"Deduplicated":5355}},"item":{"id":138,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":5334},{"Deduplicated":5335},{"Deduplicated":5355}],"const_generics":[],"trait_refs":[{"HashConsedValue":[5358,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":6,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335},{"Deduplicated":5355}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[6,0]}}],"vtable":{"id":{"Adt":37},"generics":{"regions":[],"types":[{"Deduplicated":5335},{"Deduplicated":5355}],"const_generics":[],"trait_refs":[]}}},{"def_id":7,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["function",0]},{"Ident":["FnOnce",0]}],"span":{"data":{"file_id":29,"beg":{"line":242,"col":0},"end":{"line":242,"col":35}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" The version of the call operator that takes a by-value receiver."},{"DocComment":""},{"DocComment":" Instances of `FnOnce` can be called, but might not be callable multiple"},{"DocComment":" times. Because of this, if the only thing known about a type is that it"},{"DocComment":" implements `FnOnce`, it can only be called once."},{"DocComment":""},{"DocComment":" `FnOnce` is implemented automatically by closures that might consume captured"},{"DocComment":" variables, as well as all types that implement [`FnMut`], e.g., (safe)"},{"DocComment":" [function pointers] (since `FnOnce` is a supertrait of [`FnMut`])."},{"DocComment":""},{"DocComment":" Since both [`Fn`] and [`FnMut`] are subtraits of `FnOnce`, any instance of"},{"DocComment":" [`Fn`] or [`FnMut`] can be used where a `FnOnce` is expected."},{"DocComment":""},{"DocComment":" Use `FnOnce` as a bound when you want to accept a parameter of function-like"},{"DocComment":" type and only need to call it once. If you need to call the parameter"},{"DocComment":" repeatedly, use [`FnMut`] as a bound; if you also need it to not mutate"},{"DocComment":" state, use [`Fn`]."},{"DocComment":""},{"DocComment":" See the [chapter on closures in *The Rust Programming Language*][book] for"},{"DocComment":" some more information on this topic."},{"DocComment":""},{"DocComment":" Also of note is the special syntax for `Fn` traits (e.g."},{"DocComment":" `Fn(usize, bool) -> usize`). Those interested in the technical details of"},{"DocComment":" this can refer to [the relevant section in the *Rustonomicon*][nomicon]."},{"DocComment":""},{"DocComment":" [book]: ../../book/ch13-01-closures.html"},{"DocComment":" [function pointers]: fn"},{"DocComment":" [nomicon]: ../../nomicon/hrtb.html"},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ## Using a `FnOnce` parameter"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" fn consume_with_relish<F>(func: F)"},{"DocComment":" where F: FnOnce() -> String"},{"DocComment":" {"},{"DocComment":" // `func` consumes its captured variables, so it cannot be run more"},{"DocComment":" // than once."},{"DocComment":" println!(\"Consumed: {}\", func());"},{"DocComment":""},{"DocComment":" println!(\"Delicious!\");"},{"DocComment":""},{"DocComment":" // Attempting to invoke `func()` again will throw a `use of moved"},{"DocComment":" // value` error for `func`."},{"DocComment":" }"},{"DocComment":""},{"DocComment":" let x = String::from(\"x\");"},{"DocComment":" let consume_and_return_x = move || x;"},{"DocComment":" consume_with_relish(consume_and_return_x);"},{"DocComment":""},{"DocComment":" // `consume_and_return_x` can no longer be invoked at this point"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"fn_once"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"Args"},{"index":2,"name":"Self_Output"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_clauses":[],"consts":[],"types":[null],"methods":[{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"call_once","attr_info":{"attributes":[{"DocComment":" Performs the call operation."}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":{"Other":"rust-call"},"inputs":[{"Deduplicated":5334},{"Deduplicated":5335}],"output":{"Deduplicated":5355}},"item":{"id":139,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335},{"Deduplicated":5355}],"const_generics":[],"trait_refs":[{"HashConsedValue":[5359,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":7,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335},{"Deduplicated":5355}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[7,0]}}],"vtable":{"id":{"Adt":38},"generics":{"regions":[],"types":[{"Deduplicated":5335},{"Deduplicated":5355}],"const_generics":[],"trait_refs":[]}}},{"def_id":8,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["collect",0]},{"Ident":["FromIterator",0]}],"span":{"data":{"file_id":10,"beg":{"line":134,"col":0},"end":{"line":134,"col":32}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Conversion from an [`Iterator`]."},{"DocComment":""},{"DocComment":" By implementing `FromIterator` for a type, you define how it will be"},{"DocComment":" created from an iterator. This is common for types which describe a"},{"DocComment":" collection of some kind."},{"DocComment":""},{"DocComment":" If you want to create a collection from the contents of an iterator, the"},{"DocComment":" [`Iterator::collect()`] method is preferred. However, when you need to"},{"DocComment":" specify the container type, [`FromIterator::from_iter()`] can be more"},{"DocComment":" readable than using a turbofish (e.g. `::<Vec<_>>()`). See the"},{"DocComment":" [`Iterator::collect()`] documentation for more examples of its use."},{"DocComment":""},{"DocComment":" See also: [`IntoIterator`]."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" Basic usage:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let five_fives = std::iter::repeat(5).take(5);"},{"DocComment":""},{"DocComment":" let v = Vec::from_iter(five_fives);"},{"DocComment":""},{"DocComment":" assert_eq!(v, vec![5, 5, 5, 5, 5]);"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" Using [`Iterator::collect()`] to implicitly use `FromIterator`:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let five_fives = std::iter::repeat(5).take(5);"},{"DocComment":""},{"DocComment":" let v: Vec<i32> = five_fives.collect();"},{"DocComment":""},{"DocComment":" assert_eq!(v, vec![5, 5, 5, 5, 5]);"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" Using [`FromIterator::from_iter()`] as a more readable alternative to"},{"DocComment":" [`Iterator::collect()`]:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::collections::VecDeque;"},{"DocComment":" let first = (0..10).collect::<VecDeque<i32>>();"},{"DocComment":" let second = VecDeque::from_iter(0..10);"},{"DocComment":""},{"DocComment":" assert_eq!(first, second);"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" Implementing `FromIterator` for your type:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" // A sample collection, that's just a wrapper over Vec<T>"},{"DocComment":" #[derive(Debug)]"},{"DocComment":" struct MyCollection(Vec<i32>);"},{"DocComment":""},{"DocComment":" // Let's give it some methods so we can create one and add things"},{"DocComment":" // to it."},{"DocComment":" impl MyCollection {"},{"DocComment":" fn new() -> MyCollection {"},{"DocComment":" MyCollection(Vec::new())"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" fn add(&mut self, elem: i32) {"},{"DocComment":" self.0.push(elem);"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" // and we'll implement FromIterator"},{"DocComment":" impl FromIterator<i32> for MyCollection {"},{"DocComment":" fn from_iter<I: IntoIterator<Item=i32>>(iter: I) -> Self {"},{"DocComment":" let mut c = MyCollection::new();"},{"DocComment":""},{"DocComment":" for i in iter {"},{"DocComment":" c.add(i);"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" c"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" // Now we can make a new iterator..."},{"DocComment":" let iter = (0..5).into_iter();"},{"DocComment":""},{"DocComment":" // ... and make a MyCollection out of it"},{"DocComment":" let c = MyCollection::from_iter(iter);"},{"DocComment":""},{"DocComment":" assert_eq!(c.0, vec![0, 1, 2, 3, 4]);"},{"DocComment":""},{"DocComment":" // collect works too!"},{"DocComment":""},{"DocComment":" let iter = (0..5).into_iter();"},{"DocComment":" let c: MyCollection = iter.collect();"},{"DocComment":""},{"DocComment":" assert_eq!(c.0, vec![0, 1, 2, 3, 4]);"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"FromIterator"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"A"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_clauses":[],"consts":[],"types":[],"methods":[{"params":{"regions":[],"types":[{"index":0,"name":"T"},{"index":1,"name":"Clause0_IntoIter"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":10,"beg":{"line":152,"col":20},"end":{"line":152,"col":42}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":2,"generics":{"regions":[],"types":[{"HashConsedValue":[1464,{"TypeVar":{"Bound":[1,0]}}]},{"Deduplicated":5335},{"HashConsedValue":[1893,{"TypeVar":{"Bound":[1,1]}}]}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"from_iter","attr_info":{"attributes":[{"DocComment":" Creates a value from an iterator."},{"DocComment":""},{"DocComment":" See the [module-level documentation] for more."},{"DocComment":""},{"DocComment":" [module-level documentation]: crate::iter"},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let five_fives = std::iter::repeat(5).take(5);"},{"DocComment":""},{"DocComment":" let v = Vec::from_iter(five_fives);"},{"DocComment":""},{"DocComment":" assert_eq!(v, vec![5, 5, 5, 5, 5]);"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"HashConsedValue":[1458,{"TypeVar":{"Bound":[0,0]}}]}],"output":{"Deduplicated":5334}},"item":{"id":140,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335},{"Deduplicated":1458},{"HashConsedValue":[1904,{"TypeVar":{"Bound":[0,1]}}]}],"const_generics":[],"trait_refs":[{"HashConsedValue":[5360,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":8,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[5361,{"kind":{"Clause":{"Bound":[0,0]}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":2,"generics":{"regions":[],"types":[{"Deduplicated":1464},{"Deduplicated":5335},{"Deduplicated":1893}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[8,0]}}],"vtable":null},{"def_id":9,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["try_trait",0]},{"Ident":["Try",0]}],"span":{"data":{"file_id":45,"beg":{"line":133,"col":0},"end":{"line":133,"col":41}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" The `?` operator and `try {}` blocks."},{"DocComment":""},{"DocComment":" `try_*` methods typically involve a type implementing this trait. For"},{"DocComment":" example, the closures passed to [`Iterator::try_fold`] and"},{"DocComment":" [`Iterator::try_for_each`] must return such a type."},{"DocComment":""},{"DocComment":" `Try` types are typically those containing two or more categories of values,"},{"DocComment":" some subset of which are so commonly handled via early returns that it's"},{"DocComment":" worth providing a terse (but still visible) syntax to make that easy."},{"DocComment":""},{"DocComment":" This is most often seen for error handling with [`Result`] and [`Option`]."},{"DocComment":" The quintessential implementation of this trait is on [`ControlFlow`]."},{"DocComment":""},{"DocComment":" # Using `Try` in Generic Code"},{"DocComment":""},{"DocComment":" `Iterator::try_fold` was stabilized to call back in Rust 1.27, but"},{"DocComment":" this trait is much newer. To illustrate the various associated types and"},{"DocComment":" methods, let's implement our own version."},{"DocComment":""},{"DocComment":" As a reminder, an infallible version of a fold looks something like this:"},{"DocComment":" ```"},{"DocComment":" fn simple_fold<A, T>("},{"DocComment":" iter: impl Iterator<Item = T>,"},{"DocComment":" mut accum: A,"},{"DocComment":" mut f: impl FnMut(A, T) -> A,"},{"DocComment":" ) -> A {"},{"DocComment":" for x in iter {"},{"DocComment":" accum = f(accum, x);"},{"DocComment":" }"},{"DocComment":" accum"},{"DocComment":" }"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" So instead of `f` returning just an `A`, we'll need it to return some other"},{"DocComment":" type that produces an `A` in the \"don't short circuit\" path. Conveniently,"},{"DocComment":" that's also the type we need to return from the function."},{"DocComment":""},{"DocComment":" Let's add a new generic parameter `R` for that type, and bound it to the"},{"DocComment":" output type that we want:"},{"DocComment":" ```"},{"DocComment":" # #![feature(try_trait_v2)]"},{"DocComment":" # use std::ops::Try;"},{"DocComment":" fn simple_try_fold_1<A, T, R: Try<Output = A>>("},{"DocComment":" iter: impl Iterator<Item = T>,"},{"DocComment":" mut accum: A,"},{"DocComment":" mut f: impl FnMut(A, T) -> R,"},{"DocComment":" ) -> R {"},{"DocComment":" todo!()"},{"DocComment":" }"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" If we get through the entire iterator, we need to wrap up the accumulator"},{"DocComment":" into the return type using [`Try::from_output`]:"},{"DocComment":" ```"},{"DocComment":" # #![feature(try_trait_v2)]"},{"DocComment":" # use std::ops::{ControlFlow, Try};"},{"DocComment":" fn simple_try_fold_2<A, T, R: Try<Output = A>>("},{"DocComment":" iter: impl Iterator<Item = T>,"},{"DocComment":" mut accum: A,"},{"DocComment":" mut f: impl FnMut(A, T) -> R,"},{"DocComment":" ) -> R {"},{"DocComment":" for x in iter {"},{"DocComment":" let cf = f(accum, x).branch();"},{"DocComment":" match cf {"},{"DocComment":" ControlFlow::Continue(a) => accum = a,"},{"DocComment":" ControlFlow::Break(_) => todo!(),"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":" R::from_output(accum)"},{"DocComment":" }"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" We'll also need [`FromResidual::from_residual`] to turn the residual back"},{"DocComment":" into the original type. But because it's a supertrait of `Try`, we don't"},{"DocComment":" need to mention it in the bounds. All types which implement `Try` can be"},{"DocComment":" recreated from their corresponding residual, so we'll just call it:"},{"DocComment":" ```"},{"DocComment":" # #![feature(try_trait_v2)]"},{"DocComment":" # use std::ops::{ControlFlow, Try};"},{"DocComment":" pub fn simple_try_fold_3<A, T, R: Try<Output = A>>("},{"DocComment":" iter: impl Iterator<Item = T>,"},{"DocComment":" mut accum: A,"},{"DocComment":" mut f: impl FnMut(A, T) -> R,"},{"DocComment":" ) -> R {"},{"DocComment":" for x in iter {"},{"DocComment":" let cf = f(accum, x).branch();"},{"DocComment":" match cf {"},{"DocComment":" ControlFlow::Continue(a) => accum = a,"},{"DocComment":" ControlFlow::Break(r) => return R::from_residual(r),"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":" R::from_output(accum)"},{"DocComment":" }"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" But this \"call `branch`, then `match` on it, and `return` if it was a"},{"DocComment":" `Break`\" is exactly what happens inside the `?` operator. So rather than"},{"DocComment":" do all this manually, we can just use `?` instead:"},{"DocComment":" ```"},{"DocComment":" # #![feature(try_trait_v2)]"},{"DocComment":" # use std::ops::Try;"},{"DocComment":" fn simple_try_fold<A, T, R: Try<Output = A>>("},{"DocComment":" iter: impl Iterator<Item = T>,"},{"DocComment":" mut accum: A,"},{"DocComment":" mut f: impl FnMut(A, T) -> R,"},{"DocComment":" ) -> R {"},{"DocComment":" for x in iter {"},{"DocComment":" accum = f(accum, x)?;"},{"DocComment":" }"},{"DocComment":" R::from_output(accum)"},{"DocComment":" }"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"Try"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_clauses":[{"clause_id":0,"span":{"data":{"file_id":45,"beg":{"line":133,"col":21},"end":{"line":133,"col":41}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":26,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"HashConsedValue":[5363,{"TraitType":[{"HashConsedValue":[5362,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":9,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}}}}]},1,{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}]}]}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":1,"span":{"data":{"file_id":45,"beg":{"line":160,"col":19},"end":{"line":160,"col":41}},"generated_from_span":null},"origin":{"TraitItem":1},"trait_":{"regions":[],"skip_binder":{"id":10,"generics":{"regions":[],"types":[{"Deduplicated":5363},{"HashConsedValue":[5364,{"TraitType":[{"Deduplicated":5362},0,{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}]}]},{"HashConsedValue":[5365,{"TraitType":[{"Deduplicated":5362},2,{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}]}]}],"const_generics":[],"trait_refs":[]}}}}],"consts":[],"types":[{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"Output","attr_info":{"attributes":[{"DocComment":" The type of the value produced by `?` when *not* short-circuiting."}],"inline":null,"rename":null,"public":false},"default":null,"implied_clauses":[]},"kind":{"TraitType":[9,0]}},{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"Residual","attr_info":{"attributes":[{"DocComment":" The type of the value passed to [`FromResidual::from_residual`]"},{"DocComment":" as part of `?` when short-circuiting."},{"DocComment":""},{"DocComment":" This represents the possible values of the `Self` type which are *not*"},{"DocComment":" represented by the `Output` type."},{"DocComment":""},{"DocComment":" # Note to Implementors"},{"DocComment":""},{"DocComment":" The choice of this type is critical to interconversion."},{"DocComment":" Unlike the `Output` type, which will often be a raw generic type,"},{"DocComment":" this type is typically a newtype of some sort to \"color\" the type"},{"DocComment":" so that it's distinguishable from the residuals of other types."},{"DocComment":""},{"DocComment":" This is why `Result<T, E>::Residual` is not `E`, but `Result<Infallible, E>`."},{"DocComment":" That way it's distinct from `ControlFlow<E>::Residual`, for example,"},{"DocComment":" and thus `?` on `ControlFlow` cannot be used in a method returning `Result`."},{"DocComment":""},{"DocComment":" If you're making a generic type `Foo<T>` that implements `Try<Output = T>`,"},{"DocComment":" then typically you can use `Foo<std::convert::Infallible>` as its `Residual`"},{"DocComment":" type: that type will have a \"hole\" in the correct place, and will maintain the"},{"DocComment":" \"foo-ness\" of the residual so other types need to opt-in to interconversion."}],"inline":null,"rename":null,"public":false},"default":null,"implied_clauses":[]},"kind":{"TraitType":[9,1]}},{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"Self_Clause1_TryType","attr_info":{"attributes":[],"inline":null,"rename":null,"public":true},"default":null,"implied_clauses":[]},"kind":{"TraitType":[9,2]}}],"methods":[{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"from_output","attr_info":{"attributes":[{"DocComment":" Constructs the type from its `Output` type."},{"DocComment":""},{"DocComment":" This should be implemented consistently with the `branch` method"},{"DocComment":" such that applying the `?` operator will get back the original value:"},{"DocComment":" `Try::from_output(x).branch() --> ControlFlow::Continue(x)`."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" #![feature(try_trait_v2)]"},{"DocComment":" use std::ops::Try;"},{"DocComment":""},{"DocComment":" assert_eq!(<Result<_, String> as Try>::from_output(3), Ok(3));"},{"DocComment":" assert_eq!(<Option<_> as Try>::from_output(4), Some(4));"},{"DocComment":" assert_eq!("},{"DocComment":" <std::ops::ControlFlow<String, _> as Try>::from_output(5),"},{"DocComment":" std::ops::ControlFlow::Continue(5),"},{"DocComment":" );"},{"DocComment":""},{"DocComment":" # fn make_question_mark_work() -> Option<()> {"},{"DocComment":" assert_eq!(Option::from_output(4)?, 4);"},{"DocComment":" # None }"},{"DocComment":" # make_question_mark_work();"},{"DocComment":""},{"DocComment":" // This is used, for example, on the accumulator in `try_fold`:"},{"DocComment":" let r = std::iter::empty().try_fold(4, |_, ()| -> Option<_> { unreachable!() });"},{"DocComment":" assert_eq!(r, Some(4));"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5364}],"output":{"Deduplicated":5334}},"item":{"id":141,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[{"Deduplicated":5362}]}}},"kind":{"TraitMethod":[9,0]}},{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"branch","attr_info":{"attributes":[{"DocComment":" Used in `?` to decide whether the operator should produce a value"},{"DocComment":" (because this returned [`ControlFlow::Continue`])"},{"DocComment":" or propagate a value back to the caller"},{"DocComment":" (because this returned [`ControlFlow::Break`])."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" #![feature(try_trait_v2)]"},{"DocComment":" use std::ops::{ControlFlow, Try};"},{"DocComment":""},{"DocComment":" assert_eq!(Ok::<_, String>(3).branch(), ControlFlow::Continue(3));"},{"DocComment":" assert_eq!(Err::<String, _>(3).branch(), ControlFlow::Break(Err(3)));"},{"DocComment":""},{"DocComment":" assert_eq!(Some(3).branch(), ControlFlow::Continue(3));"},{"DocComment":" assert_eq!(None::<String>.branch(), ControlFlow::Break(None));"},{"DocComment":""},{"DocComment":" assert_eq!(ControlFlow::<String, _>::Continue(3).branch(), ControlFlow::Continue(3));"},{"DocComment":" assert_eq!("},{"DocComment":" ControlFlow::<_, String>::Break(3).branch(),"},{"DocComment":" ControlFlow::Break(ControlFlow::Break(3)),"},{"DocComment":" );"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5334}],"output":{"HashConsedValue":[5366,{"Adt":{"id":{"Adt":39},"generics":{"regions":[],"types":[{"Deduplicated":5363},{"Deduplicated":5364}],"const_generics":[],"trait_refs":[]}}}]}},"item":{"id":142,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[{"Deduplicated":5362}]}}},"kind":{"TraitMethod":[9,1]}}],"vtable":null},{"def_id":10,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["try_trait",0]},{"Ident":["Residual",0]}],"span":{"data":{"file_id":45,"beg":{"line":364,"col":0},"end":{"line":364,"col":34}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Allows retrieving the canonical type implementing [`Try`] that has this type"},{"DocComment":" as its residual and allows it to hold an `O` as its output."},{"DocComment":""},{"DocComment":" If you think of the `Try` trait as splitting a type into its [`Try::Output`]"},{"DocComment":" and [`Try::Residual`] components, this allows putting them back together."},{"DocComment":""},{"DocComment":" For example,"},{"DocComment":" `Result<T, E>: Try<Output = T, Residual = Result<Infallible, E>>`,"},{"DocComment":" and in the other direction,"},{"DocComment":" `<Result<Infallible, E> as Residual<T>>::TryType = Result<T, E>`."}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"O"},{"index":2,"name":"Self_TryType"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[{"regions":[],"skip_binder":{"trait_ref":{"HashConsedValue":[5368,{"kind":{"ParentClause":[{"HashConsedValue":[5367,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":10,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335},{"Deduplicated":5355}],"const_generics":[],"trait_refs":[]}}}}]},0]},"trait_decl_ref":{"regions":[],"skip_binder":{"id":9,"generics":{"regions":[],"types":[{"Deduplicated":5355}],"const_generics":[],"trait_refs":[]}}}}]},"type_id":0,"ty":{"Deduplicated":5335}}},{"regions":[],"skip_binder":{"trait_ref":{"Deduplicated":5368},"type_id":1,"ty":{"Deduplicated":5334}}}]},"implied_clauses":[{"clause_id":0,"span":{"data":{"file_id":45,"beg":{"line":368,"col":18},"end":{"line":368,"col":58}},"generated_from_span":null},"origin":{"TraitItem":0},"trait_":{"regions":[],"skip_binder":{"id":9,"generics":{"regions":[],"types":[{"Deduplicated":5355}],"const_generics":[],"trait_refs":[]}}}}],"consts":[],"types":[null],"methods":[],"vtable":null},{"def_id":11,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["collect",0]},{"Ident":["Extend",0]}],"span":{"data":{"file_id":10,"beg":{"line":397,"col":0},"end":{"line":397,"col":19}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Extend a collection with the contents of an iterator."},{"DocComment":""},{"DocComment":" Iterators produce a series of values, and collections can also be thought"},{"DocComment":" of as a series of values. The `Extend` trait bridges this gap, allowing you"},{"DocComment":" to extend a collection by including the contents of that iterator. When"},{"DocComment":" extending a collection with an already existing key, that entry is updated"},{"DocComment":" or, in the case of collections that permit multiple entries with equal"},{"DocComment":" keys, that entry is inserted."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" Basic usage:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" // You can extend a String with some chars:"},{"DocComment":" let mut message = String::from(\"The first three letters are: \");"},{"DocComment":""},{"DocComment":" message.extend(&['a', 'b', 'c']);"},{"DocComment":""},{"DocComment":" assert_eq!(\"abc\", &message[29..32]);"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" Implementing `Extend`:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" // A sample collection, that's just a wrapper over Vec<T>"},{"DocComment":" #[derive(Debug)]"},{"DocComment":" struct MyCollection(Vec<i32>);"},{"DocComment":""},{"DocComment":" // Let's give it some methods so we can create one and add things"},{"DocComment":" // to it."},{"DocComment":" impl MyCollection {"},{"DocComment":" fn new() -> MyCollection {"},{"DocComment":" MyCollection(Vec::new())"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" fn add(&mut self, elem: i32) {"},{"DocComment":" self.0.push(elem);"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" // since MyCollection has a list of i32s, we implement Extend for i32"},{"DocComment":" impl Extend<i32> for MyCollection {"},{"DocComment":""},{"DocComment":" // This is a bit simpler with the concrete type signature: we can call"},{"DocComment":" // extend on anything which can be turned into an Iterator which gives"},{"DocComment":" // us i32s. Because we need i32s to put into MyCollection."},{"DocComment":" fn extend<T: IntoIterator<Item=i32>>(&mut self, iter: T) {"},{"DocComment":""},{"DocComment":" // The implementation is very straightforward: loop through the"},{"DocComment":" // iterator, and add() each element to ourselves."},{"DocComment":" for elem in iter {"},{"DocComment":" self.add(elem);"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" let mut c = MyCollection::new();"},{"DocComment":""},{"DocComment":" c.add(5);"},{"DocComment":" c.add(6);"},{"DocComment":" c.add(7);"},{"DocComment":""},{"DocComment":" // let's extend our collection with three more numbers"},{"DocComment":" c.extend(vec![1, 2, 3]);"},{"DocComment":""},{"DocComment":" // we've added these elements onto the end"},{"DocComment":" assert_eq!(\"MyCollection([5, 6, 7, 1, 2, 3])\", format!(\"{c:?}\"));"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"A"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_clauses":[],"consts":[],"types":[],"methods":[{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[{"index":0,"name":"T"},{"index":1,"name":"Clause0_IntoIter"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":10,"beg":{"line":416,"col":17},"end":{"line":416,"col":39}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":2,"generics":{"regions":[],"types":[{"Deduplicated":1464},{"Deduplicated":5335},{"Deduplicated":1893}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"extend","attr_info":{"attributes":[{"DocComment":" Extends a collection with the contents of an iterator."},{"DocComment":""},{"DocComment":" As this is the only required method for this trait, the [trait-level] docs"},{"DocComment":" contain more details."},{"DocComment":""},{"DocComment":" [trait-level]: Extend"},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" // You can extend a String with some chars:"},{"DocComment":" let mut message = String::from(\"abc\");"},{"DocComment":""},{"DocComment":" message.extend(['d', 'e', 'f'].iter());"},{"DocComment":""},{"DocComment":" assert_eq!(\"abcdef\", &message);"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5348},{"Deduplicated":1458}],"output":{"Deduplicated":476}},"item":{"id":143,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":5334},{"Deduplicated":5335},{"Deduplicated":1458},{"Deduplicated":1904}],"const_generics":[],"trait_refs":[{"HashConsedValue":[5369,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":11,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}}}]},{"Deduplicated":5361}]}}},"kind":{"TraitMethod":[11,0]}},null,null,null],"vtable":null},{"def_id":12,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["default",0]},{"Ident":["Default",0]}],"span":{"data":{"file_id":46,"beg":{"line":107,"col":0},"end":{"line":107,"col":30}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" A trait for giving a type a useful default value."},{"DocComment":""},{"DocComment":" Sometimes, you want to fall back to some kind of default value, and"},{"DocComment":" don't particularly care what it is. This comes up often with `struct`s"},{"DocComment":" that define a set of options:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" # #[allow(dead_code)]"},{"DocComment":" struct SomeOptions {"},{"DocComment":" foo: i32,"},{"DocComment":" bar: f32,"},{"DocComment":" }"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" How can we define some default values? You can use `Default`:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" # #[allow(dead_code)]"},{"DocComment":" #[derive(Default)]"},{"DocComment":" struct SomeOptions {"},{"DocComment":" foo: i32,"},{"DocComment":" bar: f32,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" fn main() {"},{"DocComment":" let options: SomeOptions = Default::default();"},{"DocComment":" }"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" Now, you get all of the default values. Rust implements `Default` for various primitive types."},{"DocComment":""},{"DocComment":" If you want to override a particular option, but still retain the other defaults:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" # #[allow(dead_code)]"},{"DocComment":" # #[derive(Default)]"},{"DocComment":" # struct SomeOptions {"},{"DocComment":" # foo: i32,"},{"DocComment":" # bar: f32,"},{"DocComment":" # }"},{"DocComment":" fn main() {"},{"DocComment":" let options = SomeOptions { foo: 42, ..Default::default() };"},{"DocComment":" }"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" ## Derivable"},{"DocComment":""},{"DocComment":" This trait can be used with `#[derive]` if all of the type's fields implement"},{"DocComment":" `Default`. When `derive`d, it will use the default value for each field's type."},{"DocComment":""},{"DocComment":" ### `enum`s"},{"DocComment":""},{"DocComment":" When using `#[derive(Default)]` on an `enum`, you need to choose which unit variant will be"},{"DocComment":" default. You do this by placing the `#[default]` attribute on the variant."},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" #[derive(Default)]"},{"DocComment":" enum Kind {"},{"DocComment":" #[default]"},{"DocComment":" A,"},{"DocComment":" B,"},{"DocComment":" C,"},{"DocComment":" }"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" You cannot use the `#[default]` attribute on non-unit or non-exhaustive variants."},{"DocComment":""},{"DocComment":" The `#[default]` attribute was stabilized in Rust 1.62.0."},{"DocComment":""},{"DocComment":" ## How can I implement `Default`?"},{"DocComment":""},{"DocComment":" Provide an implementation for the `default()` method that returns the value of"},{"DocComment":" your type that should be the default:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" # #![allow(dead_code)]"},{"DocComment":" enum Kind {"},{"DocComment":" A,"},{"DocComment":" B,"},{"DocComment":" C,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl Default for Kind {"},{"DocComment":" fn default() -> Self { Kind::A }"},{"DocComment":" }"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" # #[allow(dead_code)]"},{"DocComment":" #[derive(Default)]"},{"DocComment":" struct SomeOptions {"},{"DocComment":" foo: i32,"},{"DocComment":" bar: f32,"},{"DocComment":" }"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"Default"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_clauses":[],"consts":[],"types":[],"methods":[{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"default","attr_info":{"attributes":[{"DocComment":" Returns the \"default value\" for a type."},{"DocComment":""},{"DocComment":" Default values are often some kind of initial value, identity value, or anything else that"},{"DocComment":" may make sense as a default."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" Using built-in default values:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let i: i8 = Default::default();"},{"DocComment":" let (x, y): (Option<String>, f64) = Default::default();"},{"DocComment":" let (a, b, (c, d)): (i32, u32, (bool, bool)) = Default::default();"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" Making your own:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" # #[allow(dead_code)]"},{"DocComment":" enum Kind {"},{"DocComment":" A,"},{"DocComment":" B,"},{"DocComment":" C,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl Default for Kind {"},{"DocComment":" fn default() -> Self { Kind::A }"},{"DocComment":" }"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[],"output":{"Deduplicated":5334}},"item":{"id":147,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[{"HashConsedValue":[5370,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":12,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[12,0]}}],"vtable":null},{"def_id":13,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["double_ended",0]},{"Ident":["DoubleEndedIterator",0]}],"span":{"data":{"file_id":47,"beg":{"line":43,"col":0},"end":{"line":43,"col":53}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" An iterator able to yield elements from both ends."},{"DocComment":""},{"DocComment":" Something that implements `DoubleEndedIterator` has one extra capability"},{"DocComment":" over something that implements [`Iterator`]: the ability to also take"},{"DocComment":" `Item`s from the back, as well as the front."},{"DocComment":""},{"DocComment":" It is important to note that both back and forth work on the same range,"},{"DocComment":" and do not cross: iteration is over when they meet in the middle."},{"DocComment":""},{"DocComment":" In a similar fashion to the [`Iterator`] protocol, once a"},{"DocComment":" `DoubleEndedIterator` returns [`None`] from a [`next_back()`], calling it"},{"DocComment":" again may or may not ever return [`Some`] again. [`next()`] and"},{"DocComment":" [`next_back()`] are interchangeable for this purpose."},{"DocComment":""},{"DocComment":" [`next_back()`]: DoubleEndedIterator::next_back"},{"DocComment":" [`next()`]: Iterator::next"},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" Basic usage:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let numbers = vec![1, 2, 3, 4, 5, 6];"},{"DocComment":""},{"DocComment":" let mut iter = numbers.iter();"},{"DocComment":""},{"DocComment":" assert_eq!(Some(&1), iter.next());"},{"DocComment":" assert_eq!(Some(&6), iter.next_back());"},{"DocComment":" assert_eq!(Some(&5), iter.next_back());"},{"DocComment":" assert_eq!(Some(&2), iter.next());"},{"DocComment":" assert_eq!(Some(&3), iter.next());"},{"DocComment":" assert_eq!(Some(&4), iter.next());"},{"DocComment":" assert_eq!(None, iter.next());"},{"DocComment":" assert_eq!(None, iter.next_back());"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"DoubleEndedIterator"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"Self_Clause0_Item"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_clauses":[{"clause_id":0,"span":{"data":{"file_id":47,"beg":{"line":43,"col":37},"end":{"line":43,"col":53}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":0,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}}}],"consts":[],"types":[],"methods":[{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"next_back","attr_info":{"attributes":[{"DocComment":" Removes and returns an element from the end of the iterator."},{"DocComment":""},{"DocComment":" Returns `None` when there are no more elements."},{"DocComment":""},{"DocComment":" The [trait-level] docs contain more details."},{"DocComment":""},{"DocComment":" [trait-level]: DoubleEndedIterator"},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" Basic usage:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let numbers = vec![1, 2, 3, 4, 5, 6];"},{"DocComment":""},{"DocComment":" let mut iter = numbers.iter();"},{"DocComment":""},{"DocComment":" assert_eq!(Some(&1), iter.next());"},{"DocComment":" assert_eq!(Some(&6), iter.next_back());"},{"DocComment":" assert_eq!(Some(&5), iter.next_back());"},{"DocComment":" assert_eq!(Some(&2), iter.next());"},{"DocComment":" assert_eq!(Some(&3), iter.next());"},{"DocComment":" assert_eq!(Some(&4), iter.next());"},{"DocComment":" assert_eq!(None, iter.next());"},{"DocComment":" assert_eq!(None, iter.next_back());"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" # Remarks"},{"DocComment":""},{"DocComment":" The elements yielded by `DoubleEndedIterator`'s methods may differ from"},{"DocComment":" the ones yielded by [`Iterator`]'s methods:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let vec = vec![(1, 'a'), (1, 'b'), (1, 'c'), (2, 'a'), (2, 'b')];"},{"DocComment":" let uniq_by_fst_comp = || {"},{"DocComment":" let mut seen = std::collections::HashSet::new();"},{"DocComment":" vec.iter().copied().filter(move |x| seen.insert(x.0))"},{"DocComment":" };"},{"DocComment":""},{"DocComment":" assert_eq!(uniq_by_fst_comp().last(), Some((2, 'a')));"},{"DocComment":" assert_eq!(uniq_by_fst_comp().next_back(), Some((2, 'b')));"},{"DocComment":""},{"DocComment":" assert_eq!("},{"DocComment":" uniq_by_fst_comp().fold(vec![], |mut v, x| {v.push(x); v}),"},{"DocComment":" vec![(1, 'a'), (2, 'a')]"},{"DocComment":" );"},{"DocComment":" assert_eq!("},{"DocComment":" uniq_by_fst_comp().rfold(vec![], |mut v, x| {v.push(x); v}),"},{"DocComment":" vec![(2, 'b'), (1, 'c')]"},{"DocComment":" );"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5348}],"output":{"Deduplicated":5349}},"item":{"id":148,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[{"HashConsedValue":[5371,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":13,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[13,0]}},null,null,null,null,null],"vtable":{"id":{"Adt":40},"generics":{"regions":[],"types":[{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}},{"def_id":14,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["exact_size",0]},{"Ident":["ExactSizeIterator",0]}],"span":{"data":{"file_id":48,"beg":{"line":86,"col":0},"end":{"line":86,"col":37}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" An iterator that knows its exact length."},{"DocComment":""},{"DocComment":" Many [`Iterator`]s don't know how many times they will iterate, but some do."},{"DocComment":" If an iterator knows how many times it can iterate, providing access to"},{"DocComment":" that information can be useful. For example, if you want to iterate"},{"DocComment":" backwards, a good start is to know where the end is."},{"DocComment":""},{"DocComment":" When implementing an `ExactSizeIterator`, you must also implement"},{"DocComment":" [`Iterator`]. When doing so, the implementation of [`Iterator::size_hint`]"},{"DocComment":" *must* return the exact size of the iterator."},{"DocComment":""},{"DocComment":" The [`len`] method has a default implementation, so you usually shouldn't"},{"DocComment":" implement it. However, you may be able to provide a more performant"},{"DocComment":" implementation than the default, so overriding it in this case makes sense."},{"DocComment":""},{"DocComment":" Note that this trait is a safe trait and as such does *not* and *cannot*"},{"DocComment":" guarantee that the returned length is correct. This means that `unsafe`"},{"DocComment":" code **must not** rely on the correctness of [`Iterator::size_hint`]. The"},{"DocComment":" unstable and unsafe [`TrustedLen`](super::marker::TrustedLen) trait gives"},{"DocComment":" this additional guarantee."},{"DocComment":""},{"DocComment":" [`len`]: ExactSizeIterator::len"},{"DocComment":""},{"DocComment":" # When *shouldn't* an adapter be `ExactSizeIterator`?"},{"DocComment":""},{"DocComment":" If an adapter makes an iterator *longer*, then it's usually incorrect for"},{"DocComment":" that adapter to implement `ExactSizeIterator`. The inner exact-sized"},{"DocComment":" iterator might already be `usize::MAX`-long, and thus the length of the"},{"DocComment":" longer adapted iterator would no longer be exactly representable in `usize`."},{"DocComment":""},{"DocComment":" This is why [`Chain<A, B>`](crate::iter::Chain) isn't `ExactSizeIterator`,"},{"DocComment":" even when `A` and `B` are both `ExactSizeIterator`."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" Basic usage:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" // a finite range knows exactly how many times it will iterate"},{"DocComment":" let five = 0..5;"},{"DocComment":""},{"DocComment":" assert_eq!(5, five.len());"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" In the [module-level docs], we implemented an [`Iterator`], `Counter`."},{"DocComment":" Let's implement `ExactSizeIterator` for it as well:"},{"DocComment":""},{"DocComment":" [module-level docs]: crate::iter"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" # struct Counter {"},{"DocComment":" # count: usize,"},{"DocComment":" # }"},{"DocComment":" # impl Counter {"},{"DocComment":" # fn new() -> Counter {"},{"DocComment":" # Counter { count: 0 }"},{"DocComment":" # }"},{"DocComment":" # }"},{"DocComment":" # impl Iterator for Counter {"},{"DocComment":" # type Item = usize;"},{"DocComment":" # fn next(&mut self) -> Option<Self::Item> {"},{"DocComment":" # self.count += 1;"},{"DocComment":" # if self.count < 6 {"},{"DocComment":" # Some(self.count)"},{"DocComment":" # } else {"},{"DocComment":" # None"},{"DocComment":" # }"},{"DocComment":" # }"},{"DocComment":" # }"},{"DocComment":" impl ExactSizeIterator for Counter {"},{"DocComment":" // We can easily calculate the remaining number of iterations."},{"DocComment":" fn len(&self) -> usize {"},{"DocComment":" 5 - self.count"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" // And now we can use it!"},{"DocComment":""},{"DocComment":" let mut counter = Counter::new();"},{"DocComment":""},{"DocComment":" assert_eq!(5, counter.len());"},{"DocComment":" let _ = counter.next();"},{"DocComment":" assert_eq!(4, counter.len());"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"Self_Clause0_Item"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_clauses":[{"clause_id":0,"span":{"data":{"file_id":48,"beg":{"line":86,"col":29},"end":{"line":86,"col":37}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":0,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}}}],"consts":[],"types":[],"methods":[null,null],"vtable":{"id":{"Adt":41},"generics":{"regions":[],"types":[{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}},{"def_id":15,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["Ord",0]}],"span":{"data":{"file_id":49,"beg":{"line":982,"col":0},"end":{"line":982,"col":73}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Trait for types that form a [total order](https://en.wikipedia.org/wiki/Total_order)."},{"DocComment":""},{"DocComment":" Implementations must be consistent with the [`PartialOrd`] implementation, and ensure `max`,"},{"DocComment":" `min`, and `clamp` are consistent with `cmp`:"},{"DocComment":""},{"DocComment":" - `partial_cmp(a, b) == Some(cmp(a, b))`."},{"DocComment":" - `max(a, b) == max_by(a, b, cmp)` (ensured by the default implementation)."},{"DocComment":" - `min(a, b) == min_by(a, b, cmp)` (ensured by the default implementation)."},{"DocComment":" - For `a.clamp(min, max)`, see the [method docs](#method.clamp) (ensured by the default"},{"DocComment":" implementation)."},{"DocComment":""},{"DocComment":" Violating these requirements is a logic error. The behavior resulting from a logic error is not"},{"DocComment":" specified, but users of the trait must ensure that such logic errors do *not* result in"},{"DocComment":" undefined behavior. This means that `unsafe` code **must not** rely on the correctness of these"},{"DocComment":" methods."},{"DocComment":""},{"DocComment":" ## Corollaries"},{"DocComment":""},{"DocComment":" From the above and the requirements of `PartialOrd`, it follows that for all `a`, `b` and `c`:"},{"DocComment":""},{"DocComment":" - exactly one of `a < b`, `a == b` or `a > b` is true; and"},{"DocComment":" - `<` is transitive: `a < b` and `b < c` implies `a < c`. The same must hold for both `==` and"},{"DocComment":" `>`."},{"DocComment":""},{"DocComment":" Mathematically speaking, the `<` operator defines a strict [weak order]. In cases where `==`"},{"DocComment":" conforms to mathematical equality, it also defines a strict [total order]."},{"DocComment":""},{"DocComment":" [weak order]: https://en.wikipedia.org/wiki/Weak_ordering"},{"DocComment":" [total order]: https://en.wikipedia.org/wiki/Total_order"},{"DocComment":""},{"DocComment":" ## Derivable"},{"DocComment":""},{"DocComment":" This trait can be used with `#[derive]`."},{"DocComment":""},{"DocComment":" When `derive`d on structs, it will produce a"},{"DocComment":" [lexicographic](https://en.wikipedia.org/wiki/Lexicographic_order) ordering based on the"},{"DocComment":" top-to-bottom declaration order of the struct's members."},{"DocComment":""},{"DocComment":" When `derive`d on enums, variants are ordered primarily by their discriminants. Secondarily,"},{"DocComment":" they are ordered by their fields. By default, the discriminant is smallest for variants at the"},{"DocComment":" top, and largest for variants at the bottom. Here's an example:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" #[derive(PartialEq, Eq, PartialOrd, Ord)]"},{"DocComment":" enum E {"},{"DocComment":" Top,"},{"DocComment":" Bottom,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" assert!(E::Top < E::Bottom);"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" However, manually setting the discriminants can override this default behavior:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" #[derive(PartialEq, Eq, PartialOrd, Ord)]"},{"DocComment":" enum E {"},{"DocComment":" Top = 2,"},{"DocComment":" Bottom = 1,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" assert!(E::Bottom < E::Top);"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" ## Lexicographical comparison"},{"DocComment":""},{"DocComment":" Lexicographical comparison is an operation with the following properties:"},{"DocComment":" - Two sequences are compared element by element."},{"DocComment":" - The first mismatching element defines which sequence is lexicographically less or greater"},{"DocComment":" than the other."},{"DocComment":" - If one sequence is a prefix of another, the shorter sequence is lexicographically less than"},{"DocComment":" the other."},{"DocComment":" - If two sequences have equivalent elements and are of the same length, then the sequences are"},{"DocComment":" lexicographically equal."},{"DocComment":" - An empty sequence is lexicographically less than any non-empty sequence."},{"DocComment":" - Two empty sequences are lexicographically equal."},{"DocComment":""},{"DocComment":" ## How can I implement `Ord`?"},{"DocComment":""},{"DocComment":" `Ord` requires that the type also be [`PartialOrd`], [`PartialEq`], and [`Eq`]."},{"DocComment":""},{"DocComment":" Because `Ord` implies a stronger ordering relationship than [`PartialOrd`], and both `Ord` and"},{"DocComment":" [`PartialOrd`] must agree, you must choose how to implement `Ord` **first**. You can choose to"},{"DocComment":" derive it, or implement it manually. If you derive it, you should derive all four traits. If you"},{"DocComment":" implement it manually, you should manually implement all four traits, based on the"},{"DocComment":" implementation of `Ord`."},{"DocComment":""},{"DocComment":" Here's an example where you want to define the `Character` comparison by `health` and"},{"DocComment":" `experience` only, disregarding the field `mana`:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::cmp::Ordering;"},{"DocComment":""},{"DocComment":" struct Character {"},{"DocComment":" health: u32,"},{"DocComment":" experience: u32,"},{"DocComment":" mana: f32,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl Ord for Character {"},{"DocComment":" fn cmp(&self, other: &Self) -> Ordering {"},{"DocComment":" self.experience"},{"DocComment":" .cmp(&other.experience)"},{"DocComment":" .then(self.health.cmp(&other.health))"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl PartialOrd for Character {"},{"DocComment":" fn partial_cmp(&self, other: &Self) -> Option<Ordering> {"},{"DocComment":" Some(self.cmp(other))"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl PartialEq for Character {"},{"DocComment":" fn eq(&self, other: &Self) -> bool {"},{"DocComment":" self.health == other.health && self.experience == other.experience"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl Eq for Character {}"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" If all you need is to `slice::sort` a type by a field value, it can be simpler to use"},{"DocComment":" `slice::sort_by_key`."},{"DocComment":""},{"DocComment":" ## Examples of incorrect `Ord` implementations"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::cmp::Ordering;"},{"DocComment":""},{"DocComment":" #[derive(Debug)]"},{"DocComment":" struct Character {"},{"DocComment":" health: f32,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl Ord for Character {"},{"DocComment":" fn cmp(&self, other: &Self) -> std::cmp::Ordering {"},{"DocComment":" if self.health < other.health {"},{"DocComment":" Ordering::Less"},{"DocComment":" } else if self.health > other.health {"},{"DocComment":" Ordering::Greater"},{"DocComment":" } else {"},{"DocComment":" Ordering::Equal"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl PartialOrd for Character {"},{"DocComment":" fn partial_cmp(&self, other: &Self) -> Option<Ordering> {"},{"DocComment":" Some(self.cmp(other))"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl PartialEq for Character {"},{"DocComment":" fn eq(&self, other: &Self) -> bool {"},{"DocComment":" self.health == other.health"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl Eq for Character {}"},{"DocComment":""},{"DocComment":" let a = Character { health: 4.5 };"},{"DocComment":" let b = Character { health: f32::NAN };"},{"DocComment":""},{"DocComment":" // Mistake: floating-point values do not form a total order and using the built-in comparison"},{"DocComment":" // operands to implement `Ord` irregardless of that reality does not change it. Use"},{"DocComment":" // `f32::total_cmp` if you need a total order for floating-point values."},{"DocComment":""},{"DocComment":" // Reflexivity requirement of `Ord` is not given."},{"DocComment":" assert!(a == a);"},{"DocComment":" assert!(b != b);"},{"DocComment":""},{"DocComment":" // Antisymmetry requirement of `Ord` is not given. Only one of a < c and c < a is allowed to be"},{"DocComment":" // true, not both or neither."},{"DocComment":" assert_eq!((a < b) as u8 + (b < a) as u8, 0);"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::cmp::Ordering;"},{"DocComment":""},{"DocComment":" #[derive(Debug)]"},{"DocComment":" struct Character {"},{"DocComment":" health: u32,"},{"DocComment":" experience: u32,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl PartialOrd for Character {"},{"DocComment":" fn partial_cmp(&self, other: &Self) -> Option<Ordering> {"},{"DocComment":" Some(self.cmp(other))"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl Ord for Character {"},{"DocComment":" fn cmp(&self, other: &Self) -> std::cmp::Ordering {"},{"DocComment":" if self.health < 50 {"},{"DocComment":" self.health.cmp(&other.health)"},{"DocComment":" } else {"},{"DocComment":" self.experience.cmp(&other.experience)"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" // For performance reasons implementing `PartialEq` this way is not the idiomatic way, but it"},{"DocComment":" // ensures consistent behavior between `PartialEq`, `PartialOrd` and `Ord` in this example."},{"DocComment":" impl PartialEq for Character {"},{"DocComment":" fn eq(&self, other: &Self) -> bool {"},{"DocComment":" self.cmp(other) == Ordering::Equal"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl Eq for Character {}"},{"DocComment":""},{"DocComment":" let a = Character {"},{"DocComment":" health: 3,"},{"DocComment":" experience: 5,"},{"DocComment":" };"},{"DocComment":" let b = Character {"},{"DocComment":" health: 10,"},{"DocComment":" experience: 77,"},{"DocComment":" };"},{"DocComment":" let c = Character {"},{"DocComment":" health: 143,"},{"DocComment":" experience: 2,"},{"DocComment":" };"},{"DocComment":""},{"DocComment":" // Mistake: The implementation of `Ord` compares different fields depending on the value of"},{"DocComment":" // `self.health`, the resulting order is not total."},{"DocComment":""},{"DocComment":" // Transitivity requirement of `Ord` is not given. If a is smaller than b and b is smaller than"},{"DocComment":" // c, by transitive property a must also be smaller than c."},{"DocComment":" assert!(a < b && b < c && c < a);"},{"DocComment":""},{"DocComment":" // Antisymmetry requirement of `Ord` is not given. Only one of a < c and c < a is allowed to be"},{"DocComment":" // true, not both or neither."},{"DocComment":" assert_eq!((a < c) as u8 + (c < a) as u8, 2);"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" The documentation of [`PartialOrd`] contains further examples, for example it's wrong for"},{"DocComment":" [`PartialOrd`] and [`PartialEq`] to disagree."},{"DocComment":""},{"DocComment":" [`cmp`]: Ord::cmp"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"Ord"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_clauses":[{"clause_id":0,"span":{"data":{"file_id":49,"beg":{"line":982,"col":21},"end":{"line":982,"col":31}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":27,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}}}},{"clause_id":1,"span":{"data":{"file_id":49,"beg":{"line":982,"col":34},"end":{"line":982,"col":58}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":19,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}}}}],"consts":[],"types":[],"methods":[{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"},{"index":1,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"cmp","attr_info":{"attributes":[{"DocComment":" This method returns an [`Ordering`] between `self` and `other`."},{"DocComment":""},{"DocComment":" By convention, `self.cmp(&other)` returns the ordering matching the expression"},{"DocComment":" `self <operator> other` if true."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::cmp::Ordering;"},{"DocComment":""},{"DocComment":" assert_eq!(5.cmp(&10), Ordering::Less);"},{"DocComment":" assert_eq!(10.cmp(&5), Ordering::Greater);"},{"DocComment":" assert_eq!(5.cmp(&5), Ordering::Equal);"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5351},{"Deduplicated":5352}],"output":{"Deduplicated":3075}},"item":{"id":156,"generics":{"regions":[{"Var":{"Bound":[0,0]}},{"Var":{"Bound":[0,1]}}],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[{"HashConsedValue":[5372,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":15,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[15,0]}},null,null,null],"vtable":null},{"def_id":16,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["marker",0]},{"Ident":["Copy",0]}],"span":{"data":{"file_id":21,"beg":{"line":454,"col":0},"end":{"line":454,"col":21}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Types whose values can be duplicated simply by copying bits."},{"DocComment":""},{"DocComment":" By default, variable bindings have 'move semantics.' In other"},{"DocComment":" words:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" #[derive(Debug)]"},{"DocComment":" struct Foo;"},{"DocComment":""},{"DocComment":" let x = Foo;"},{"DocComment":""},{"DocComment":" let y = x;"},{"DocComment":""},{"DocComment":" // `x` has moved into `y`, and so cannot be used"},{"DocComment":""},{"DocComment":" // println!(\"{x:?}\"); // error: use of moved value"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" However, if a type implements `Copy`, it instead has 'copy semantics':"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" // We can derive a `Copy` implementation. `Clone` is also required, as it's"},{"DocComment":" // a supertrait of `Copy`."},{"DocComment":" #[derive(Debug, Copy, Clone)]"},{"DocComment":" struct Foo;"},{"DocComment":""},{"DocComment":" let x = Foo;"},{"DocComment":""},{"DocComment":" let y = x;"},{"DocComment":""},{"DocComment":" // `y` is a copy of `x`"},{"DocComment":""},{"DocComment":" println!(\"{x:?}\"); // A-OK!"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" It's important to note that in these two examples, the only difference is whether you"},{"DocComment":" are allowed to access `x` after the assignment. Under the hood, both a copy and a move"},{"DocComment":" can result in bits being copied in memory, although this is sometimes optimized away."},{"DocComment":""},{"DocComment":" ## How can I implement `Copy`?"},{"DocComment":""},{"DocComment":" There are two ways to implement `Copy` on your type. The simplest is to use `derive`:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" #[derive(Copy, Clone)]"},{"DocComment":" struct MyStruct;"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" You can also implement `Copy` and `Clone` manually:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" struct MyStruct;"},{"DocComment":""},{"DocComment":" impl Copy for MyStruct { }"},{"DocComment":""},{"DocComment":" impl Clone for MyStruct {"},{"DocComment":" fn clone(&self) -> MyStruct {"},{"DocComment":" *self"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" There is a small difference between the two. The `derive` strategy will also place a `Copy`"},{"DocComment":" bound on type parameters:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" #[derive(Clone)]"},{"DocComment":" struct MyStruct<T>(T);"},{"DocComment":""},{"DocComment":" impl<T: Copy> Copy for MyStruct<T> { }"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" This isn't always desired. For example, shared references (`&T`) can be copied regardless of"},{"DocComment":" whether `T` is `Copy`. Likewise, a generic struct containing markers such as [`PhantomData`]"},{"DocComment":" could potentially be duplicated with a bit-wise copy."},{"DocComment":""},{"DocComment":" ## What's the difference between `Copy` and `Clone`?"},{"DocComment":""},{"DocComment":" Copies happen implicitly, for example as part of an assignment `y = x`. The behavior of"},{"DocComment":" `Copy` is not overloadable; it is always a simple bit-wise copy."},{"DocComment":""},{"DocComment":" Cloning is an explicit action, `x.clone()`. The implementation of [`Clone`] can"},{"DocComment":" provide any type-specific behavior necessary to duplicate values safely. For example,"},{"DocComment":" the implementation of [`Clone`] for [`String`] needs to copy the pointed-to string"},{"DocComment":" buffer in the heap. A simple bitwise copy of [`String`] values would merely copy the"},{"DocComment":" pointer, leading to a double free down the line. For this reason, [`String`] is [`Clone`]"},{"DocComment":" but not `Copy`."},{"DocComment":""},{"DocComment":" [`Clone`] is a supertrait of `Copy`, so everything which is `Copy` must also implement"},{"DocComment":" [`Clone`]. If a type is `Copy` then its [`Clone`] implementation only needs to return `*self`"},{"DocComment":" (see the example above)."},{"DocComment":""},{"DocComment":" ## When can my type be `Copy`?"},{"DocComment":""},{"DocComment":" A type can implement `Copy` if all of its components implement `Copy`. For example, this"},{"DocComment":" struct can be `Copy`:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" # #[allow(dead_code)]"},{"DocComment":" #[derive(Copy, Clone)]"},{"DocComment":" struct Point {"},{"DocComment":" x: i32,"},{"DocComment":" y: i32,"},{"DocComment":" }"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" A struct can be `Copy`, and [`i32`] is `Copy`, therefore `Point` is eligible to be `Copy`."},{"DocComment":" By contrast, consider"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" # #![allow(dead_code)]"},{"DocComment":" # struct Point;"},{"DocComment":" struct PointList {"},{"DocComment":" points: Vec<Point>,"},{"DocComment":" }"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" The struct `PointList` cannot implement `Copy`, because [`Vec<T>`] is not `Copy`. If we"},{"DocComment":" attempt to derive a `Copy` implementation, we'll get an error:"},{"DocComment":""},{"DocComment":" ```text"},{"DocComment":" the trait `Copy` cannot be implemented for this type; field `points` does not implement `Copy`"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" Shared references (`&T`) are also `Copy`, so a type can be `Copy`, even when it holds"},{"DocComment":" shared references of types `T` that are *not* `Copy`. Consider the following struct,"},{"DocComment":" which can implement `Copy`, because it only holds a *shared reference* to our non-`Copy`"},{"DocComment":" type `PointList` from above:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" # #![allow(dead_code)]"},{"DocComment":" # struct PointList;"},{"DocComment":" #[derive(Copy, Clone)]"},{"DocComment":" struct PointListWrapper<'a> {"},{"DocComment":" point_list_ref: &'a PointList,"},{"DocComment":" }"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" ## When *can't* my type be `Copy`?"},{"DocComment":""},{"DocComment":" Some types can't be copied safely. For example, copying `&mut T` would create an aliased"},{"DocComment":" mutable reference. Copying [`String`] would duplicate responsibility for managing the"},{"DocComment":" [`String`]'s buffer, leading to a double free."},{"DocComment":""},{"DocComment":" Generalizing the latter case, any type implementing [`Drop`] can't be `Copy`, because it's"},{"DocComment":" managing some resource besides its own [`size_of::<T>`] bytes."},{"DocComment":""},{"DocComment":" If you try to implement `Copy` on a struct or enum containing non-`Copy` data, you will get"},{"DocComment":" the error [E0204]."},{"DocComment":""},{"DocComment":" [E0204]: ../../error_codes/E0204.html"},{"DocComment":""},{"DocComment":" ## When *should* my type be `Copy`?"},{"DocComment":""},{"DocComment":" Generally speaking, if your type _can_ implement `Copy`, it should. Keep in mind, though,"},{"DocComment":" that implementing `Copy` is part of the public API of your type. If the type might become"},{"DocComment":" non-`Copy` in the future, it could be prudent to omit the `Copy` implementation now, to"},{"DocComment":" avoid a breaking API change."},{"DocComment":""},{"DocComment":" ## Additional implementors"},{"DocComment":""},{"DocComment":" In addition to the [implementors listed below][impls],"},{"DocComment":" the following types also implement `Copy`:"},{"DocComment":""},{"DocComment":" * Function item types (i.e., the distinct types defined for each function)"},{"DocComment":" * Function pointer types (e.g., `fn() -> i32`)"},{"DocComment":" * Closure types, if they capture no value from the environment"},{"DocComment":" or if all such captured values implement `Copy` themselves."},{"DocComment":" Note that variables captured by shared reference always implement `Copy`"},{"DocComment":" (even if the referent doesn't),"},{"DocComment":" while variables captured by mutable reference never implement `Copy`."},{"DocComment":""},{"DocComment":" [`Vec<T>`]: ../../std/vec/struct.Vec.html"},{"DocComment":" [`String`]: ../../std/string/struct.String.html"},{"DocComment":" [`size_of::<T>`]: size_of"},{"DocComment":" [impls]: #implementors"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"copy"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_clauses":[{"clause_id":0,"span":{"data":{"file_id":21,"beg":{"line":454,"col":16},"end":{"line":454,"col":21}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":5,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}}}}],"consts":[],"types":[],"methods":[],"vtable":null},{"def_id":17,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["accum",0]},{"Ident":["Sum",0]}],"span":{"data":{"file_id":55,"beg":{"line":18,"col":0},"end":{"line":18,"col":36}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Trait to represent types that can be created by summing up an iterator."},{"DocComment":""},{"DocComment":" This trait is used to implement [`Iterator::sum()`]. Types which implement"},{"DocComment":" this trait can be generated by using the [`sum()`] method on an iterator."},{"DocComment":" Like [`FromIterator`], this trait should rarely be called directly."},{"DocComment":""},{"DocComment":" [`sum()`]: Iterator::sum"},{"DocComment":" [`FromIterator`]: iter::FromIterator"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"A"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_clauses":[],"consts":[],"types":[],"methods":[{"params":{"regions":[],"types":[{"index":0,"name":"I"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":55,"beg":{"line":22,"col":14},"end":{"line":22,"col":32}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":0,"generics":{"regions":[],"types":[{"Deduplicated":1464},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"sum","attr_info":{"attributes":[{"DocComment":" Takes an iterator and generates `Self` from the elements by \"summing up\""},{"DocComment":" the items."}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":1458}],"output":{"Deduplicated":5334}},"item":{"id":160,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335},{"Deduplicated":1458}],"const_generics":[],"trait_refs":[{"HashConsedValue":[5373,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":17,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[5374,{"kind":{"Clause":{"Bound":[0,0]}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":0,"generics":{"regions":[],"types":[{"Deduplicated":1464},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[17,0]}}],"vtable":null},{"def_id":18,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["accum",0]},{"Ident":["Product",0]}],"span":{"data":{"file_id":55,"beg":{"line":40,"col":0},"end":{"line":40,"col":40}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Trait to represent types that can be created by multiplying elements of an"},{"DocComment":" iterator."},{"DocComment":""},{"DocComment":" This trait is used to implement [`Iterator::product()`]. Types which implement"},{"DocComment":" this trait can be generated by using the [`product()`] method on an iterator."},{"DocComment":" Like [`FromIterator`], this trait should rarely be called directly."},{"DocComment":""},{"DocComment":" [`product()`]: Iterator::product"},{"DocComment":" [`FromIterator`]: iter::FromIterator"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"A"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_clauses":[],"consts":[],"types":[],"methods":[{"params":{"regions":[],"types":[{"index":0,"name":"I"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":55,"beg":{"line":44,"col":18},"end":{"line":44,"col":36}},"generated_from_span":null},"origin":"WhereClauseOnFn","trait_":{"regions":[],"skip_binder":{"id":0,"generics":{"regions":[],"types":[{"Deduplicated":1464},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"product","attr_info":{"attributes":[{"DocComment":" Takes an iterator and generates `Self` from the elements by multiplying"},{"DocComment":" the items."}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":1458}],"output":{"Deduplicated":5334}},"item":{"id":161,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335},{"Deduplicated":1458}],"const_generics":[],"trait_refs":[{"HashConsedValue":[5375,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":18,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}}}]},{"Deduplicated":5374}]}}},"kind":{"TraitMethod":[18,0]}}],"vtable":null},{"def_id":19,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialOrd",0]}],"span":{"data":{"file_id":49,"beg":{"line":1366,"col":0},"end":{"line":1367,"col":41}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Trait for types that form a [partial order](https://en.wikipedia.org/wiki/Partial_order)."},{"DocComment":""},{"DocComment":" The `lt`, `le`, `gt`, and `ge` methods of this trait can be called using the `<`, `<=`, `>`, and"},{"DocComment":" `>=` operators, respectively."},{"DocComment":""},{"DocComment":" This trait should **only** contain the comparison logic for a type **if one plans on only"},{"DocComment":" implementing `PartialOrd` but not [`Ord`]**. Otherwise the comparison logic should be in [`Ord`]"},{"DocComment":" and this trait implemented with `Some(self.cmp(other))`."},{"DocComment":""},{"DocComment":" The methods of this trait must be consistent with each other and with those of [`PartialEq`]."},{"DocComment":" The following conditions must hold:"},{"DocComment":""},{"DocComment":" 1. `a == b` if and only if `partial_cmp(a, b) == Some(Equal)`."},{"DocComment":" 2. `a < b` if and only if `partial_cmp(a, b) == Some(Less)`"},{"DocComment":" 3. `a > b` if and only if `partial_cmp(a, b) == Some(Greater)`"},{"DocComment":" 4. `a <= b` if and only if `a < b || a == b`"},{"DocComment":" 5. `a >= b` if and only if `a > b || a == b`"},{"DocComment":" 6. `a != b` if and only if `!(a == b)`."},{"DocComment":""},{"DocComment":" Conditions 2–5 above are ensured by the default implementation. Condition 6 is already ensured"},{"DocComment":" by [`PartialEq`]."},{"DocComment":""},{"DocComment":" If [`Ord`] is also implemented for `Self` and `Rhs`, it must also be consistent with"},{"DocComment":" `partial_cmp` (see the documentation of that trait for the exact requirements). It's easy to"},{"DocComment":" accidentally make them disagree by deriving some of the traits and manually implementing others."},{"DocComment":""},{"DocComment":" The comparison relations must satisfy the following conditions (for all `a`, `b`, `c` of type"},{"DocComment":" `A`, `B`, `C`):"},{"DocComment":""},{"DocComment":" - **Transitivity**: if `A: PartialOrd<B>` and `B: PartialOrd<C>` and `A: PartialOrd<C>`, then `a"},{"DocComment":" < b` and `b < c` implies `a < c`. The same must hold for both `==` and `>`. This must also"},{"DocComment":" work for longer chains, such as when `A: PartialOrd<B>`, `B: PartialOrd<C>`, `C:"},{"DocComment":" PartialOrd<D>`, and `A: PartialOrd<D>` all exist."},{"DocComment":" - **Duality**: if `A: PartialOrd<B>` and `B: PartialOrd<A>`, then `a < b` if and only if `b >"},{"DocComment":" a`."},{"DocComment":""},{"DocComment":" Note that the `B: PartialOrd<A>` (dual) and `A: PartialOrd<C>` (transitive) impls are not forced"},{"DocComment":" to exist, but these requirements apply whenever they do exist."},{"DocComment":""},{"DocComment":" Violating these requirements is a logic error. The behavior resulting from a logic error is not"},{"DocComment":" specified, but users of the trait must ensure that such logic errors do *not* result in"},{"DocComment":" undefined behavior. This means that `unsafe` code **must not** rely on the correctness of these"},{"DocComment":" methods."},{"DocComment":""},{"DocComment":" ## Cross-crate considerations"},{"DocComment":""},{"DocComment":" Upholding the requirements stated above can become tricky when one crate implements `PartialOrd`"},{"DocComment":" for a type of another crate (i.e., to allow comparing one of its own types with a type from the"},{"DocComment":" standard library). The recommendation is to never implement this trait for a foreign type. In"},{"DocComment":" other words, such a crate should do `impl PartialOrd<ForeignType> for LocalType`, but it should"},{"DocComment":" *not* do `impl PartialOrd<LocalType> for ForeignType`."},{"DocComment":""},{"DocComment":" This avoids the problem of transitive chains that criss-cross crate boundaries: for all local"},{"DocComment":" types `T`, you may assume that no other crate will add `impl`s that allow comparing `T < U`. In"},{"DocComment":" other words, if other crates add `impl`s that allow building longer transitive chains `U1 < ..."},{"DocComment":" < T < V1 < ...`, then all the types that appear to the right of `T` must be types that the crate"},{"DocComment":" defining `T` already knows about. This rules out transitive chains where downstream crates can"},{"DocComment":" add new `impl`s that \"stitch together\" comparisons of foreign types in ways that violate"},{"DocComment":" transitivity."},{"DocComment":""},{"DocComment":" Not having such foreign `impl`s also avoids forward compatibility issues where one crate adding"},{"DocComment":" more `PartialOrd` implementations can cause build failures in downstream crates."},{"DocComment":""},{"DocComment":" ## Corollaries"},{"DocComment":""},{"DocComment":" The following corollaries follow from the above requirements:"},{"DocComment":""},{"DocComment":" - irreflexivity of `<` and `>`: `!(a < a)`, `!(a > a)`"},{"DocComment":" - transitivity of `>`: if `a > b` and `b > c` then `a > c`"},{"DocComment":" - duality of `partial_cmp`: `partial_cmp(a, b) == partial_cmp(b, a).map(Ordering::reverse)`"},{"DocComment":""},{"DocComment":" ## Strict and non-strict partial orders"},{"DocComment":""},{"DocComment":" The `<` and `>` operators behave according to a *strict* partial order. However, `<=` and `>=`"},{"DocComment":" do **not** behave according to a *non-strict* partial order. That is because mathematically, a"},{"DocComment":" non-strict partial order would require reflexivity, i.e. `a <= a` would need to be true for"},{"DocComment":" every `a`. This isn't always the case for types that implement `PartialOrd`, for example:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let a = f64::NAN;"},{"DocComment":" assert_eq!(a <= a, false);"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" ## Derivable"},{"DocComment":""},{"DocComment":" This trait can be used with `#[derive]`."},{"DocComment":""},{"DocComment":" When `derive`d on structs, it will produce a"},{"DocComment":" [lexicographic](https://en.wikipedia.org/wiki/Lexicographic_order) ordering based on the"},{"DocComment":" top-to-bottom declaration order of the struct's members."},{"DocComment":""},{"DocComment":" When `derive`d on enums, variants are primarily ordered by their discriminants. Secondarily,"},{"DocComment":" they are ordered by their fields. By default, the discriminant is smallest for variants at the"},{"DocComment":" top, and largest for variants at the bottom. Here's an example:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" #[derive(PartialEq, PartialOrd)]"},{"DocComment":" enum E {"},{"DocComment":" Top,"},{"DocComment":" Bottom,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" assert!(E::Top < E::Bottom);"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" However, manually setting the discriminants can override this default behavior:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" #[derive(PartialEq, PartialOrd)]"},{"DocComment":" enum E {"},{"DocComment":" Top = 2,"},{"DocComment":" Bottom = 1,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" assert!(E::Bottom < E::Top);"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" ## How can I implement `PartialOrd`?"},{"DocComment":""},{"DocComment":" `PartialOrd` only requires implementation of the [`partial_cmp`] method, with the others"},{"DocComment":" generated from default implementations."},{"DocComment":""},{"DocComment":" However it remains possible to implement the others separately for types which do not have a"},{"DocComment":" total order. For example, for floating point numbers, `NaN < 0 == false` and `NaN >= 0 == false`"},{"DocComment":" (cf. IEEE 754-2008 section 5.11)."},{"DocComment":""},{"DocComment":" `PartialOrd` requires your type to be [`PartialEq`]."},{"DocComment":""},{"DocComment":" If your type is [`Ord`], you can implement [`partial_cmp`] by using [`cmp`]:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::cmp::Ordering;"},{"DocComment":""},{"DocComment":" struct Person {"},{"DocComment":" id: u32,"},{"DocComment":" name: String,"},{"DocComment":" height: u32,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl PartialOrd for Person {"},{"DocComment":" fn partial_cmp(&self, other: &Self) -> Option<Ordering> {"},{"DocComment":" Some(self.cmp(other))"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl Ord for Person {"},{"DocComment":" fn cmp(&self, other: &Self) -> Ordering {"},{"DocComment":" self.height.cmp(&other.height)"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl PartialEq for Person {"},{"DocComment":" fn eq(&self, other: &Self) -> bool {"},{"DocComment":" self.height == other.height"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl Eq for Person {}"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" You may also find it useful to use [`partial_cmp`] on your type's fields. Here is an example of"},{"DocComment":" `Person` types who have a floating-point `height` field that is the only field to be used for"},{"DocComment":" sorting:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::cmp::Ordering;"},{"DocComment":""},{"DocComment":" struct Person {"},{"DocComment":" id: u32,"},{"DocComment":" name: String,"},{"DocComment":" height: f64,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl PartialOrd for Person {"},{"DocComment":" fn partial_cmp(&self, other: &Self) -> Option<Ordering> {"},{"DocComment":" self.height.partial_cmp(&other.height)"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl PartialEq for Person {"},{"DocComment":" fn eq(&self, other: &Self) -> bool {"},{"DocComment":" self.height == other.height"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" ## Examples of incorrect `PartialOrd` implementations"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::cmp::Ordering;"},{"DocComment":""},{"DocComment":" #[derive(PartialEq, Debug)]"},{"DocComment":" struct Character {"},{"DocComment":" health: u32,"},{"DocComment":" experience: u32,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl PartialOrd for Character {"},{"DocComment":" fn partial_cmp(&self, other: &Self) -> Option<Ordering> {"},{"DocComment":" Some(self.health.cmp(&other.health))"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" let a = Character {"},{"DocComment":" health: 10,"},{"DocComment":" experience: 5,"},{"DocComment":" };"},{"DocComment":" let b = Character {"},{"DocComment":" health: 10,"},{"DocComment":" experience: 77,"},{"DocComment":" };"},{"DocComment":""},{"DocComment":" // Mistake: `PartialEq` and `PartialOrd` disagree with each other."},{"DocComment":""},{"DocComment":" assert_eq!(a.partial_cmp(&b).unwrap(), Ordering::Equal); // a == b according to `PartialOrd`."},{"DocComment":" assert_ne!(a, b); // a != b according to `PartialEq`."},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let x: u32 = 0;"},{"DocComment":" let y: u32 = 1;"},{"DocComment":""},{"DocComment":" assert_eq!(x < y, true);"},{"DocComment":" assert_eq!(x.lt(&y), true);"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" [`partial_cmp`]: PartialOrd::partial_cmp"},{"DocComment":" [`cmp`]: Ord::cmp"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"partial_ord"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"Rhs"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_clauses":[{"clause_id":0,"span":{"data":{"file_id":49,"beg":{"line":1367,"col":4},"end":{"line":1367,"col":26}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":20,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}}}],"consts":[],"types":[],"methods":[{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"},{"index":1,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"partial_cmp","attr_info":{"attributes":[{"DocComment":" This method returns an ordering between `self` and `other` values if one exists."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::cmp::Ordering;"},{"DocComment":""},{"DocComment":" let result = 1.0.partial_cmp(&2.0);"},{"DocComment":" assert_eq!(result, Some(Ordering::Less));"},{"DocComment":""},{"DocComment":" let result = 1.0.partial_cmp(&1.0);"},{"DocComment":" assert_eq!(result, Some(Ordering::Equal));"},{"DocComment":""},{"DocComment":" let result = 2.0.partial_cmp(&1.0);"},{"DocComment":" assert_eq!(result, Some(Ordering::Greater));"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" When comparison is impossible:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let result = f64::NAN.partial_cmp(&1.0);"},{"DocComment":" assert_eq!(result, None);"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5351},{"HashConsedValue":[5376,{"Ref":[{"Var":{"Bound":[0,1]}},{"Deduplicated":5335},"Shared"]}]}],"output":{"Deduplicated":3376}},"item":{"id":162,"generics":{"regions":[{"Var":{"Bound":[0,0]}},{"Var":{"Bound":[0,1]}}],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[{"HashConsedValue":[5377,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":19,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[19,0]}},null,null,null,null,null,null,null,null],"vtable":{"id":{"Adt":42},"generics":{"regions":[],"types":[{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}},{"def_id":20,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["PartialEq",0]}],"span":{"data":{"file_id":49,"beg":{"line":250,"col":0},"end":{"line":250,"col":65}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Trait for comparisons using the equality operator."},{"DocComment":""},{"DocComment":" Implementing this trait for types provides the `==` and `!=` operators for"},{"DocComment":" those types."},{"DocComment":""},{"DocComment":" `x.eq(y)` can also be written `x == y`, and `x.ne(y)` can be written `x != y`."},{"DocComment":" We use the easier-to-read infix notation in the remainder of this documentation."},{"DocComment":""},{"DocComment":" This trait allows for comparisons using the equality operator, for types"},{"DocComment":" that do not have a full equivalence relation. For example, in floating point"},{"DocComment":" numbers `NaN != NaN`, so floating point types implement `PartialEq` but not"},{"DocComment":" [`trait@Eq`]. Formally speaking, when `Rhs == Self`, this trait corresponds"},{"DocComment":" to a [partial equivalence relation]."},{"DocComment":""},{"DocComment":" [partial equivalence relation]: https://en.wikipedia.org/wiki/Partial_equivalence_relation"},{"DocComment":""},{"DocComment":" Implementations must ensure that `eq` and `ne` are consistent with each other:"},{"DocComment":""},{"DocComment":" - `a != b` if and only if `!(a == b)`."},{"DocComment":""},{"DocComment":" The default implementation of `ne` provides this consistency and is almost"},{"DocComment":" always sufficient. It should not be overridden without very good reason."},{"DocComment":""},{"DocComment":" If [`PartialOrd`] or [`Ord`] are also implemented for `Self` and `Rhs`, their methods must also"},{"DocComment":" be consistent with `PartialEq` (see the documentation of those traits for the exact"},{"DocComment":" requirements). It's easy to accidentally make them disagree by deriving some of the traits and"},{"DocComment":" manually implementing others."},{"DocComment":""},{"DocComment":" The equality relation `==` must satisfy the following conditions"},{"DocComment":" (for all `a`, `b`, `c` of type `A`, `B`, `C`):"},{"DocComment":""},{"DocComment":" - **Symmetry**: if `A: PartialEq<B>` and `B: PartialEq<A>`, then **`a == b`"},{"DocComment":" implies `b == a`**; and"},{"DocComment":""},{"DocComment":" - **Transitivity**: if `A: PartialEq<B>` and `B: PartialEq<C>` and `A:"},{"DocComment":" PartialEq<C>`, then **`a == b` and `b == c` implies `a == c`**."},{"DocComment":" This must also work for longer chains, such as when `A: PartialEq<B>`, `B: PartialEq<C>`,"},{"DocComment":" `C: PartialEq<D>`, and `A: PartialEq<D>` all exist."},{"DocComment":""},{"DocComment":" Note that the `B: PartialEq<A>` (symmetric) and `A: PartialEq<C>`"},{"DocComment":" (transitive) impls are not forced to exist, but these requirements apply"},{"DocComment":" whenever they do exist."},{"DocComment":""},{"DocComment":" Violating these requirements is a logic error. The behavior resulting from a logic error is not"},{"DocComment":" specified, but users of the trait must ensure that such logic errors do *not* result in"},{"DocComment":" undefined behavior. This means that `unsafe` code **must not** rely on the correctness of these"},{"DocComment":" methods."},{"DocComment":""},{"DocComment":" ## Cross-crate considerations"},{"DocComment":""},{"DocComment":" Upholding the requirements stated above can become tricky when one crate implements `PartialEq`"},{"DocComment":" for a type of another crate (i.e., to allow comparing one of its own types with a type from the"},{"DocComment":" standard library). The recommendation is to never implement this trait for a foreign type. In"},{"DocComment":" other words, such a crate should do `impl PartialEq<ForeignType> for LocalType`, but it should"},{"DocComment":" *not* do `impl PartialEq<LocalType> for ForeignType`."},{"DocComment":""},{"DocComment":" This avoids the problem of transitive chains that criss-cross crate boundaries: for all local"},{"DocComment":" types `T`, you may assume that no other crate will add `impl`s that allow comparing `T == U`. In"},{"DocComment":" other words, if other crates add `impl`s that allow building longer transitive chains `U1 == ..."},{"DocComment":" == T == V1 == ...`, then all the types that appear to the right of `T` must be types that the"},{"DocComment":" crate defining `T` already knows about. This rules out transitive chains where downstream crates"},{"DocComment":" can add new `impl`s that \"stitch together\" comparisons of foreign types in ways that violate"},{"DocComment":" transitivity."},{"DocComment":""},{"DocComment":" Not having such foreign `impl`s also avoids forward compatibility issues where one crate adding"},{"DocComment":" more `PartialEq` implementations can cause build failures in downstream crates."},{"DocComment":""},{"DocComment":" ## Derivable"},{"DocComment":""},{"DocComment":" This trait can be used with `#[derive]`. When `derive`d on structs, two"},{"DocComment":" instances are equal if all fields are equal, and not equal if any fields"},{"DocComment":" are not equal. When `derive`d on enums, two instances are equal if they"},{"DocComment":" are the same variant and all fields are equal."},{"DocComment":""},{"DocComment":" ## How can I implement `PartialEq`?"},{"DocComment":""},{"DocComment":" An example implementation for a domain in which two books are considered"},{"DocComment":" the same book if their ISBN matches, even if the formats differ:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" enum BookFormat {"},{"DocComment":" Paperback,"},{"DocComment":" Hardback,"},{"DocComment":" Ebook,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" struct Book {"},{"DocComment":" isbn: i32,"},{"DocComment":" format: BookFormat,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl PartialEq for Book {"},{"DocComment":" fn eq(&self, other: &Self) -> bool {"},{"DocComment":" self.isbn == other.isbn"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" let b1 = Book { isbn: 3, format: BookFormat::Paperback };"},{"DocComment":" let b2 = Book { isbn: 3, format: BookFormat::Ebook };"},{"DocComment":" let b3 = Book { isbn: 10, format: BookFormat::Paperback };"},{"DocComment":""},{"DocComment":" assert!(b1 == b2);"},{"DocComment":" assert!(b1 != b3);"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" ## How can I compare two different types?"},{"DocComment":""},{"DocComment":" The type you can compare with is controlled by `PartialEq`'s type parameter."},{"DocComment":" For example, let's tweak our previous code a bit:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" // The derive implements <BookFormat> == <BookFormat> comparisons"},{"DocComment":" #[derive(PartialEq)]"},{"DocComment":" enum BookFormat {"},{"DocComment":" Paperback,"},{"DocComment":" Hardback,"},{"DocComment":" Ebook,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" struct Book {"},{"DocComment":" isbn: i32,"},{"DocComment":" format: BookFormat,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" // Implement <Book> == <BookFormat> comparisons"},{"DocComment":" impl PartialEq<BookFormat> for Book {"},{"DocComment":" fn eq(&self, other: &BookFormat) -> bool {"},{"DocComment":" self.format == *other"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" // Implement <BookFormat> == <Book> comparisons"},{"DocComment":" impl PartialEq<Book> for BookFormat {"},{"DocComment":" fn eq(&self, other: &Book) -> bool {"},{"DocComment":" *self == other.format"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" let b1 = Book { isbn: 3, format: BookFormat::Paperback };"},{"DocComment":""},{"DocComment":" assert!(b1 == BookFormat::Paperback);"},{"DocComment":" assert!(BookFormat::Ebook != b1);"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" By changing `impl PartialEq for Book` to `impl PartialEq<BookFormat> for Book`,"},{"DocComment":" we allow `BookFormat`s to be compared with `Book`s."},{"DocComment":""},{"DocComment":" A comparison like the one above, which ignores some fields of the struct,"},{"DocComment":" can be dangerous. It can easily lead to an unintended violation of the"},{"DocComment":" requirements for a partial equivalence relation. For example, if we kept"},{"DocComment":" the above implementation of `PartialEq<Book>` for `BookFormat` and added an"},{"DocComment":" implementation of `PartialEq<Book>` for `Book` (either via a `#[derive]` or"},{"DocComment":" via the manual implementation from the first example) then the result would"},{"DocComment":" violate transitivity:"},{"DocComment":""},{"DocComment":" ```should_panic"},{"DocComment":" #[derive(PartialEq)]"},{"DocComment":" enum BookFormat {"},{"DocComment":" Paperback,"},{"DocComment":" Hardback,"},{"DocComment":" Ebook,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" #[derive(PartialEq)]"},{"DocComment":" struct Book {"},{"DocComment":" isbn: i32,"},{"DocComment":" format: BookFormat,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl PartialEq<BookFormat> for Book {"},{"DocComment":" fn eq(&self, other: &BookFormat) -> bool {"},{"DocComment":" self.format == *other"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl PartialEq<Book> for BookFormat {"},{"DocComment":" fn eq(&self, other: &Book) -> bool {"},{"DocComment":" *self == other.format"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" fn main() {"},{"DocComment":" let b1 = Book { isbn: 1, format: BookFormat::Paperback };"},{"DocComment":" let b2 = Book { isbn: 2, format: BookFormat::Paperback };"},{"DocComment":""},{"DocComment":" assert!(b1 == BookFormat::Paperback);"},{"DocComment":" assert!(BookFormat::Paperback == b2);"},{"DocComment":""},{"DocComment":" // The following should hold by transitivity but doesn't."},{"DocComment":" assert!(b1 == b2); // <-- PANICS"},{"DocComment":" }"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let x: u32 = 0;"},{"DocComment":" let y: u32 = 1;"},{"DocComment":""},{"DocComment":" assert_eq!(x == y, false);"},{"DocComment":" assert_eq!(x.eq(&y), false);"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" [`eq`]: PartialEq::eq"},{"DocComment":" [`ne`]: PartialEq::ne"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"eq"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"Rhs"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_clauses":[],"consts":[],"types":[],"methods":[{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"},{"index":1,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"eq","attr_info":{"attributes":[{"DocComment":" Tests for `self` and `other` values to be equal, and is used by `==`."}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5351},{"Deduplicated":5376}],"output":{"Deduplicated":468}},"item":{"id":171,"generics":{"regions":[{"Var":{"Bound":[0,0]}},{"Var":{"Bound":[0,1]}}],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[{"HashConsedValue":[5378,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":20,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[20,0]}},null],"vtable":{"id":{"Adt":43},"generics":{"regions":[],"types":[{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}},{"def_id":21,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["adapters",0]},{"Ident":["zip",0]},{"Ident":["TrustedRandomAccessNoCoerce",0]}],"span":{"data":{"file_id":26,"beg":{"line":576,"col":0},"end":{"line":576,"col":51}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Like [`TrustedRandomAccess`] but without any of the requirements / guarantees around"},{"DocComment":" coercions to supertypes after `__iterator_get_unchecked` (they aren’t allowed here!), and"},{"DocComment":" without the requirement that subtypes / supertypes implement `TrustedRandomAccessNoCoerce`."},{"DocComment":""},{"DocComment":" This trait was created in PR #85874 to fix soundness issue #85873 without performance regressions."},{"DocComment":" It is subject to change as we might want to build a more generally useful (for performance"},{"DocComment":" optimizations) and more sophisticated trait or trait hierarchy that replaces or extends"},{"DocComment":" [`TrustedRandomAccess`] and `TrustedRandomAccessNoCoerce`."}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"Self"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_clauses":[],"consts":[{"name":"MAY_HAVE_SIDE_EFFECT","attr_info":{"attributes":[{"DocComment":" `true` if getting an iterator element may have side effects."},{"DocComment":" Remember to take inner iterators into account."}],"inline":null,"rename":null,"public":true},"ty":{"Deduplicated":468},"default":null}],"types":[],"methods":[null],"vtable":null},{"def_id":22,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["index",0]},{"Ident":["Index",0]}],"span":{"data":{"file_id":56,"beg":{"line":59,"col":0},"end":{"line":59,"col":34}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Used for indexing operations (`container[index]`) in immutable contexts."},{"DocComment":""},{"DocComment":" `container[index]` is actually syntactic sugar for `*container.index(index)`,"},{"DocComment":" but only when used as an immutable value. If a mutable value is requested,"},{"DocComment":" [`IndexMut`] is used instead. This allows nice things such as"},{"DocComment":" `let value = v[index]` if the type of `value` implements [`Copy`]."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" The following example implements `Index` on a read-only `NucleotideCount`"},{"DocComment":" container, enabling individual counts to be retrieved with index syntax."},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::ops::Index;"},{"DocComment":""},{"DocComment":" enum Nucleotide {"},{"DocComment":" A,"},{"DocComment":" C,"},{"DocComment":" G,"},{"DocComment":" T,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" struct NucleotideCount {"},{"DocComment":" a: usize,"},{"DocComment":" c: usize,"},{"DocComment":" g: usize,"},{"DocComment":" t: usize,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl Index<Nucleotide> for NucleotideCount {"},{"DocComment":" type Output = usize;"},{"DocComment":""},{"DocComment":" fn index(&self, nucleotide: Nucleotide) -> &Self::Output {"},{"DocComment":" match nucleotide {"},{"DocComment":" Nucleotide::A => &self.a,"},{"DocComment":" Nucleotide::C => &self.c,"},{"DocComment":" Nucleotide::G => &self.g,"},{"DocComment":" Nucleotide::T => &self.t,"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" let nucleotide_count = NucleotideCount {a: 14, c: 9, g: 10, t: 12};"},{"DocComment":" assert_eq!(nucleotide_count[Nucleotide::A], 14);"},{"DocComment":" assert_eq!(nucleotide_count[Nucleotide::C], 9);"},{"DocComment":" assert_eq!(nucleotide_count[Nucleotide::G], 10);"},{"DocComment":" assert_eq!(nucleotide_count[Nucleotide::T], 12);"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"index"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"Idx"},{"index":2,"name":"Self_Output"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_clauses":[],"consts":[],"types":[null],"methods":[{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"index","attr_info":{"attributes":[{"DocComment":" Performs the indexing (`container[index]`) operation."},{"DocComment":""},{"DocComment":" # Panics"},{"DocComment":""},{"DocComment":" May panic if the index is out of bounds."}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5351},{"Deduplicated":5335}],"output":{"HashConsedValue":[5379,{"Ref":[{"Var":{"Bound":[0,0]}},{"Deduplicated":5355},"Shared"]}]}},"item":{"id":184,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":5334},{"Deduplicated":5335},{"Deduplicated":5355}],"const_generics":[],"trait_refs":[{"HashConsedValue":[5380,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":22,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335},{"Deduplicated":5355}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[22,0]}}],"vtable":{"id":{"Adt":44},"generics":{"regions":[],"types":[{"Deduplicated":5335},{"Deduplicated":5355}],"const_generics":[],"trait_refs":[]}}},{"def_id":23,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["index",0]},{"Ident":["IndexMut",0]}],"span":{"data":{"file_id":56,"beg":{"line":170,"col":0},"end":{"line":170,"col":57}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Used for indexing operations (`container[index]`) in mutable contexts."},{"DocComment":""},{"DocComment":" `container[index]` is actually syntactic sugar for"},{"DocComment":" `*container.index_mut(index)`, but only when used as a mutable value. If"},{"DocComment":" an immutable value is requested, the [`Index`] trait is used instead. This"},{"DocComment":" allows nice things such as `v[index] = value`."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" A very simple implementation of a `Balance` struct that has two sides, where"},{"DocComment":" each can be indexed mutably and immutably."},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::ops::{Index, IndexMut};"},{"DocComment":""},{"DocComment":" #[derive(Debug)]"},{"DocComment":" enum Side {"},{"DocComment":" Left,"},{"DocComment":" Right,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" #[derive(Debug, PartialEq)]"},{"DocComment":" enum Weight {"},{"DocComment":" Kilogram(f32),"},{"DocComment":" Pound(f32),"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" struct Balance {"},{"DocComment":" pub left: Weight,"},{"DocComment":" pub right: Weight,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl Index<Side> for Balance {"},{"DocComment":" type Output = Weight;"},{"DocComment":""},{"DocComment":" fn index(&self, index: Side) -> &Self::Output {"},{"DocComment":" println!(\"Accessing {index:?}-side of balance immutably\");"},{"DocComment":" match index {"},{"DocComment":" Side::Left => &self.left,"},{"DocComment":" Side::Right => &self.right,"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl IndexMut<Side> for Balance {"},{"DocComment":" fn index_mut(&mut self, index: Side) -> &mut Self::Output {"},{"DocComment":" println!(\"Accessing {index:?}-side of balance mutably\");"},{"DocComment":" match index {"},{"DocComment":" Side::Left => &mut self.left,"},{"DocComment":" Side::Right => &mut self.right,"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" let mut balance = Balance {"},{"DocComment":" right: Weight::Kilogram(2.5),"},{"DocComment":" left: Weight::Pound(1.5),"},{"DocComment":" };"},{"DocComment":""},{"DocComment":" // In this case, `balance[Side::Right]` is sugar for"},{"DocComment":" // `*balance.index(Side::Right)`, since we are only *reading*"},{"DocComment":" // `balance[Side::Right]`, not writing it."},{"DocComment":" assert_eq!(balance[Side::Right], Weight::Kilogram(2.5));"},{"DocComment":""},{"DocComment":" // However, in this case `balance[Side::Left]` is sugar for"},{"DocComment":" // `*balance.index_mut(Side::Left)`, since we are writing"},{"DocComment":" // `balance[Side::Left]`."},{"DocComment":" balance[Side::Left] = Weight::Kilogram(3.0);"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"index_mut"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"Idx"},{"index":2,"name":"Self_Clause0_Output"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_clauses":[{"clause_id":0,"span":{"data":{"file_id":56,"beg":{"line":170,"col":39},"end":{"line":170,"col":57}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":22,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335},{"Deduplicated":5355}],"const_generics":[],"trait_refs":[]}}}}],"consts":[],"types":[],"methods":[{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"index_mut","attr_info":{"attributes":[{"DocComment":" Performs the mutable indexing (`container[index]`) operation."},{"DocComment":""},{"DocComment":" # Panics"},{"DocComment":""},{"DocComment":" May panic if the index is out of bounds."}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5348},{"Deduplicated":5335}],"output":{"HashConsedValue":[5381,{"Ref":[{"Var":{"Bound":[0,0]}},{"Deduplicated":5355},"Mut"]}]}},"item":{"id":185,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":5334},{"Deduplicated":5335},{"Deduplicated":5355}],"const_generics":[],"trait_refs":[{"HashConsedValue":[5382,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":23,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335},{"Deduplicated":5355}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[23,0]}}],"vtable":{"id":{"Adt":45},"generics":{"regions":[],"types":[{"Deduplicated":5335},{"Deduplicated":5355}],"const_generics":[],"trait_refs":[]}}},{"def_id":24,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["convert",0]},{"Ident":["From",0]}],"span":{"data":{"file_id":57,"beg":{"line":587,"col":0},"end":{"line":587,"col":30}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Used to do value-to-value conversions while consuming the input value. It is the reciprocal of"},{"DocComment":" [`Into`]."},{"DocComment":""},{"DocComment":" One should always prefer implementing `From` over [`Into`]"},{"DocComment":" because implementing `From` automatically provides one with an implementation of [`Into`]"},{"DocComment":" thanks to the blanket implementation in the standard library."},{"DocComment":""},{"DocComment":" Only implement [`Into`] when targeting a version prior to Rust 1.41 and converting to a type"},{"DocComment":" outside the current crate."},{"DocComment":" `From` was not able to do these types of conversions in earlier versions because of Rust's"},{"DocComment":" orphaning rules."},{"DocComment":" See [`Into`] for more details."},{"DocComment":""},{"DocComment":" Prefer using [`Into`] over [`From`] when specifying trait bounds on a generic function"},{"DocComment":" to ensure that types that only implement [`Into`] can be used as well."},{"DocComment":""},{"DocComment":" The `From` trait is also very useful when performing error handling. When constructing a function"},{"DocComment":" that is capable of failing, the return type will generally be of the form `Result<T, E>`."},{"DocComment":" `From` simplifies error handling by allowing a function to return a single error type"},{"DocComment":" that encapsulates multiple error types. See the \"Examples\" section and [the book][book] for more"},{"DocComment":" details."},{"DocComment":""},{"DocComment":" **Note: This trait must not fail**. The `From` trait is intended for perfect conversions."},{"DocComment":" If the conversion can fail or is not perfect, use [`TryFrom`]."},{"DocComment":""},{"DocComment":" # Generic Implementations"},{"DocComment":""},{"DocComment":" - `From<T> for U` implies [`Into`]`<U> for T`"},{"DocComment":" - `From` is reflexive, which means that `From<T> for T` is implemented"},{"DocComment":""},{"DocComment":" # When to implement `From`"},{"DocComment":""},{"DocComment":" While there's no technical restrictions on which conversions can be done using"},{"DocComment":" a `From` implementation, the general expectation is that the conversions"},{"DocComment":" should typically be restricted as follows:"},{"DocComment":""},{"DocComment":" * The conversion is *infallible*: if the conversion can fail, use [`TryFrom`]"},{"DocComment":" instead; don't provide a `From` impl that panics."},{"DocComment":""},{"DocComment":" * The conversion is *lossless*: semantically, it should not lose or discard"},{"DocComment":" information. For example, `i32: From<u16>` exists, where the original"},{"DocComment":" value can be recovered using `u16: TryFrom<i32>`. And `String: From<&str>`"},{"DocComment":" exists, where you can get something equivalent to the original value via"},{"DocComment":" `Deref`. But `From` cannot be used to convert from `u32` to `u16`, since"},{"DocComment":" that cannot succeed in a lossless way. (There's some wiggle room here for"},{"DocComment":" information not considered semantically relevant. For example,"},{"DocComment":" `Box<[T]>: From<Vec<T>>` exists even though it might not preserve capacity,"},{"DocComment":" like how two vectors can be equal despite differing capacities.)"},{"DocComment":""},{"DocComment":" * The conversion is *value-preserving*: the conceptual kind and meaning of"},{"DocComment":" the resulting value is the same, even though the Rust type and technical"},{"DocComment":" representation might be different. For example `-1_i8 as u8` is *lossless*,"},{"DocComment":" since `as` casting back can recover the original value, but that conversion"},{"DocComment":" is *not* available via `From` because `-1` and `255` are different conceptual"},{"DocComment":" values (despite being identical bit patterns technically). But"},{"DocComment":" `f32: From<i16>` *is* available because `1_i16` and `1.0_f32` are conceptually"},{"DocComment":" the same real number (despite having very different bit patterns technically)."},{"DocComment":" `String: From<char>` is available because they're both *text*, but"},{"DocComment":" `String: From<u32>` is *not* available, since `1` (a number) and `\"1\"`"},{"DocComment":" (text) are too different. (Converting values to text is instead covered"},{"DocComment":" by the [`Display`](crate::fmt::Display) trait.)"},{"DocComment":""},{"DocComment":" * The conversion is *obvious*: it's the only reasonable conversion between"},{"DocComment":" the two types. Otherwise it's better to have it be a named method or"},{"DocComment":" constructor, like how [`str::as_bytes`] is a method and how integers have"},{"DocComment":" methods like [`u32::from_ne_bytes`], [`u32::from_le_bytes`], and"},{"DocComment":" [`u32::from_be_bytes`], none of which are `From` implementations. Whereas"},{"DocComment":" there's only one reasonable way to wrap an [`Ipv6Addr`](crate::net::Ipv6Addr)"},{"DocComment":" into an [`IpAddr`](crate::net::IpAddr), thus `IpAddr: From<Ipv6Addr>` exists."},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" [`String`] implements `From<&str>`:"},{"DocComment":""},{"DocComment":" An explicit conversion from a `&str` to a String is done as follows:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" let string = \"hello\".to_string();"},{"DocComment":" let other_string = String::from(\"hello\");"},{"DocComment":""},{"DocComment":" assert_eq!(string, other_string);"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" While performing error handling it is often useful to implement `From` for your own error type."},{"DocComment":" By converting underlying error types to our own custom error type that encapsulates the"},{"DocComment":" underlying error type, we can return a single error type without losing information on the"},{"DocComment":" underlying cause. The '?' operator automatically converts the underlying error type to our"},{"DocComment":" custom error type with `From::from`."},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use std::fs;"},{"DocComment":" use std::io;"},{"DocComment":" use std::num;"},{"DocComment":""},{"DocComment":" enum CliError {"},{"DocComment":" IoError(io::Error),"},{"DocComment":" ParseError(num::ParseIntError),"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl From<io::Error> for CliError {"},{"DocComment":" fn from(error: io::Error) -> Self {"},{"DocComment":" CliError::IoError(error)"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl From<num::ParseIntError> for CliError {"},{"DocComment":" fn from(error: num::ParseIntError) -> Self {"},{"DocComment":" CliError::ParseError(error)"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" fn open_and_parse_file(file_name: &str) -> Result<i32, CliError> {"},{"DocComment":" let mut contents = fs::read_to_string(&file_name)?;"},{"DocComment":" let num: i32 = contents.trim().parse()?;"},{"DocComment":" Ok(num)"},{"DocComment":" }"},{"DocComment":" ```"},{"DocComment":""},{"DocComment":" [`String`]: ../../std/string/struct.String.html"},{"DocComment":" [`from`]: From::from"},{"DocComment":" [book]: ../../book/ch09-00-error-handling.html"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"From"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"T"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_clauses":[],"consts":[],"types":[],"methods":[{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"from","attr_info":{"attributes":[{"DocComment":" Converts to this type from the input type."}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5335}],"output":{"Deduplicated":5334}},"item":{"id":186,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[{"HashConsedValue":[5383,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":24,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[24,0]}}],"vtable":null},{"def_id":25,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["nonzero",0]},{"Ident":["private",0]},{"Ident":["Sealed",0]}],"span":{"data":{"file_id":22,"beg":{"line":47,"col":12},"end":{"line":47,"col":28}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"Self"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_clauses":[],"consts":[],"types":[],"methods":[],"vtable":{"id":{"Adt":46},"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":26,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["ops",0]},{"Ident":["try_trait",0]},{"Ident":["FromResidual",0]}],"span":{"data":{"file_id":45,"beg":{"line":310,"col":0},"end":{"line":310,"col":57}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Used to specify which residuals can be converted into which [`crate::ops::Try`] types."},{"DocComment":""},{"DocComment":" Every `Try` type needs to be recreatable from its own associated"},{"DocComment":" `Residual` type, but can also have additional `FromResidual` implementations"},{"DocComment":" to support interconversion with other `Try` types."}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"FromResidual"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"},{"index":1,"name":"R"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_clauses":[],"consts":[],"types":[],"methods":[{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"from_residual","attr_info":{"attributes":[{"DocComment":" Constructs the type from a compatible `Residual` type."},{"DocComment":""},{"DocComment":" This should be implemented consistently with the `branch` method such"},{"DocComment":" that applying the `?` operator will get back an equivalent residual:"},{"DocComment":" `FromResidual::from_residual(r).branch() --> ControlFlow::Break(r)`."},{"DocComment":" (The residual is not mandated to be *identical* when interconversion is involved.)"},{"DocComment":""},{"DocComment":" # Examples"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" #![feature(try_trait_v2)]"},{"DocComment":" use std::ops::{ControlFlow, FromResidual};"},{"DocComment":""},{"DocComment":" assert_eq!(Result::<String, i64>::from_residual(Err(3_u8)), Err(3));"},{"DocComment":" assert_eq!(Option::<String>::from_residual(None), None);"},{"DocComment":" assert_eq!("},{"DocComment":" ControlFlow::<_, String>::from_residual(ControlFlow::Break(5)),"},{"DocComment":" ControlFlow::Break(5),"},{"DocComment":" );"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5335}],"output":{"Deduplicated":5334}},"item":{"id":193,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[{"HashConsedValue":[5384,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":26,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[26,0]}}],"vtable":null},{"def_id":27,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["Eq",0]}],"span":{"data":{"file_id":49,"beg":{"line":338,"col":0},"end":{"line":338,"col":58}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" Trait for comparisons corresponding to [equivalence relations]("},{"DocComment":" https://en.wikipedia.org/wiki/Equivalence_relation)."},{"DocComment":""},{"DocComment":" The primary difference to [`PartialEq`] is the additional requirement for reflexivity. A type"},{"DocComment":" that implements [`PartialEq`] guarantees that for all `a`, `b` and `c`:"},{"DocComment":""},{"DocComment":" - symmetric: `a == b` implies `b == a`"},{"DocComment":" - transitive: `a == b` and `b == c` implies `a == c`"},{"DocComment":" - consistent: `a != b` if and only if `!(a == b)`"},{"DocComment":""},{"DocComment":" `Eq`, which builds on top of [`PartialEq`] also implies:"},{"DocComment":""},{"DocComment":" - reflexive: `a == a`"},{"DocComment":""},{"DocComment":" This property cannot be checked by the compiler, and therefore `Eq` is a trait without methods."},{"DocComment":""},{"DocComment":" Violating this property is a logic error. The behavior resulting from a logic error is not"},{"DocComment":" specified, but users of the trait must ensure that such logic errors do *not* result in"},{"DocComment":" undefined behavior. This means that `unsafe` code **must not** rely on the correctness of these"},{"DocComment":" methods."},{"DocComment":""},{"DocComment":" Floating point types such as [`f32`] and [`f64`] implement only [`PartialEq`] but *not* `Eq`"},{"DocComment":" because `NaN` != `NaN`."},{"DocComment":""},{"DocComment":" ## Derivable"},{"DocComment":""},{"DocComment":" This trait can be used with `#[derive]`. When `derive`d, because `Eq` has no extra methods, it"},{"DocComment":" is only informing the compiler that this is an equivalence relation rather than a partial"},{"DocComment":" equivalence relation. Note that the `derive` strategy requires all fields are `Eq`, which isn't"},{"DocComment":" always desired."},{"DocComment":""},{"DocComment":" ## How can I implement `Eq`?"},{"DocComment":""},{"DocComment":" If you cannot use the `derive` strategy, specify that your type implements `Eq`, which has no"},{"DocComment":" extra methods:"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" enum BookFormat {"},{"DocComment":" Paperback,"},{"DocComment":" Hardback,"},{"DocComment":" Ebook,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" struct Book {"},{"DocComment":" isbn: i32,"},{"DocComment":" format: BookFormat,"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl PartialEq for Book {"},{"DocComment":" fn eq(&self, other: &Self) -> bool {"},{"DocComment":" self.isbn == other.isbn"},{"DocComment":" }"},{"DocComment":" }"},{"DocComment":""},{"DocComment":" impl Eq for Book {}"},{"DocComment":" ```"}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":"Eq"},"generics":{"regions":[],"types":[{"index":0,"name":"Self"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_clauses":[{"clause_id":0,"span":{"data":{"file_id":49,"beg":{"line":338,"col":20},"end":{"line":338,"col":43}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":20,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}}}}],"consts":[],"types":[],"methods":[null,null],"vtable":null},{"def_id":28,"item_meta":{"name":[{"Ident":["subtle",0]},{"Ident":["ConditionallySelectable",0]}],"span":{"data":{"file_id":15,"beg":{"line":393,"col":0},"end":{"line":393,"col":39}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[{"DocComment":" A type which can be conditionally selected in constant time."},{"DocComment":""},{"DocComment":" This trait also provides generic implementations of conditional"},{"DocComment":" assignment and conditional swaps."}],"inline":null,"rename":null,"public":true},"is_local":false,"opacity":"Foreign","lang_item":null},"generics":{"regions":[],"types":[{"index":0,"name":"Self"}],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_clauses":[{"clause_id":0,"span":{"data":{"file_id":15,"beg":{"line":393,"col":35},"end":{"line":393,"col":39}},"generated_from_span":null},"origin":"WhereClauseOnTrait","trait_":{"regions":[],"skip_binder":{"id":16,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}}}}],"consts":[],"types":[],"methods":[{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"},{"index":1,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"name":"conditional_select","attr_info":{"attributes":[{"DocComment":" Select `a` or `b` according to `choice`."},{"DocComment":""},{"DocComment":" # Returns"},{"DocComment":""},{"DocComment":" * `a` if `choice == Choice(0)`;"},{"DocComment":" * `b` if `choice == Choice(1)`."},{"DocComment":""},{"DocComment":" This function should execute in constant time."},{"DocComment":""},{"DocComment":" # Example"},{"DocComment":""},{"DocComment":" ```"},{"DocComment":" use subtle::ConditionallySelectable;"},{"DocComment":" #"},{"DocComment":" # fn main() {"},{"DocComment":" let x: u8 = 13;"},{"DocComment":" let y: u8 = 42;"},{"DocComment":""},{"DocComment":" let z = u8::conditional_select(&x, &y, 0.into());"},{"DocComment":" assert_eq!(z, x);"},{"DocComment":" let z = u8::conditional_select(&x, &y, 1.into());"},{"DocComment":" assert_eq!(z, y);"},{"DocComment":" # }"},{"DocComment":" ```"}],"inline":"Hint","rename":null,"public":true},"signature":{"is_unsafe":false,"abi":"Rust","inputs":[{"Deduplicated":5351},{"Deduplicated":5352},{"Deduplicated":1015}],"output":{"Deduplicated":5334}},"item":{"id":199,"generics":{"regions":[{"Var":{"Bound":[0,0]}},{"Var":{"Bound":[0,1]}}],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[{"HashConsedValue":[5385,{"kind":"SelfId","trait_decl_ref":{"regions":[],"skip_binder":{"id":28,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}}}}]}]}}},"kind":{"TraitMethod":[28,0]}},null,null],"vtable":null}],"trait_impls":[{"def_id":0,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["traits",0]},{"Ident":["collect",0]},{"Impl":{"Trait":0}}],"span":{"data":{"file_id":10,"beg":{"line":317,"col":0},"end":{"line":317,"col":50}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":false,"opacity":"Foreign","lang_item":null},"impl_trait":{"id":2,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335},{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[{"index":0,"name":"I"},{"index":1,"name":"Clause0_Item"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":10,"beg":{"line":317,"col":14},"end":{"line":317,"col":30}},"generated_from_span":null},"origin":"WhereClauseOnImpl","trait_":{"regions":[],"skip_binder":{"id":0,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[{"Deduplicated":5336}],"consts":[],"types":[null,null],"methods":[{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":11,"generics":{"regions":[],"types":[{"Deduplicated":5334},{"Deduplicated":5335}],"const_generics":[],"trait_refs":[{"Deduplicated":5336}]}},"kind":{"TraitMethod":[2,0]}}],"vtable":{"id":8,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[{"Deduplicated":5336}]}}},{"def_id":1,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Impl":{"Trait":1}}],"span":{"data":{"file_id":14,"beg":{"line":980,"col":0},"end":{"line":980,"col":40}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":false,"opacity":"Foreign","lang_item":null},"impl_trait":{"id":0,"generics":{"regions":[],"types":[{"Deduplicated":5337},{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[{"index":0,"name":"A"}],"const_generics":[],"trait_clauses":[{"clause_id":0,"span":{"data":{"file_id":14,"beg":{"line":980,"col":8},"end":{"line":980,"col":12}},"generated_from_span":null},"origin":"WhereClauseOnImpl","trait_":{"regions":[],"skip_binder":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[]}}}}],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[],"consts":[],"types":[null],"methods":[{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":12,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[{"Deduplicated":5338}]}},"kind":{"TraitMethod":[0,0]}},null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null,null],"vtable":{"id":9,"generics":{"regions":[],"types":[{"Deduplicated":5334}],"const_generics":[],"trait_refs":[{"Deduplicated":5338}]}}},{"def_id":2,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["iter",0]},{"Ident":["range",0]},{"Impl":{"Trait":2}}],"span":{"data":{"file_id":14,"beg":{"line":266,"col":12},"end":{"line":266,"col":43}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":false,"opacity":"Foreign","lang_item":null},"impl_trait":{"id":1,"generics":{"regions":[],"types":[{"Deduplicated":455}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[{"HashConsedValue":[3788,{"kind":{"TraitImpl":{"id":7,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":5,"generics":{"regions":[],"types":[{"Deduplicated":455}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[5339,{"kind":{"TraitImpl":{"id":8,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":19,"generics":{"regions":[],"types":[{"Deduplicated":455},{"Deduplicated":455}],"const_generics":[],"trait_refs":[]}}}}]}],"consts":[],"types":[],"methods":[{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"},{"index":1,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":118,"generics":{"regions":[{"Var":{"Bound":[0,0]}},{"Var":{"Bound":[0,1]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[1,0]}},{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":119,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[1,1]}},null,null,{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":122,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[1,4]}},null,null],"vtable":null},{"def_id":3,"item_meta":{"name":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Trait":3}}],"span":{"data":{"file_id":0,"beg":{"line":37,"col":0},"end":{"line":42,"col":1}},"generated_from_span":null},"source_text":"impl Index<usize> for Scalar52 {\n type Output = u64;\n fn index(&self, _index: usize) -> &u64 {\n &(self.0[_index])\n }\n}","attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":22,"generics":{"regions":[],"types":[{"Deduplicated":334},{"Deduplicated":455},{"Deduplicated":454}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[],"consts":[],"types":[null],"methods":[{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":13,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[22,0]}}],"vtable":{"id":10,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":4,"item_meta":{"name":[{"Ident":["curve25519",0]},{"Ident":["backend",0]},{"Ident":["serial",0]},{"Ident":["u64",0]},{"Ident":["scalar",0]},{"Impl":{"Trait":4}}],"span":{"data":{"file_id":0,"beg":{"line":44,"col":0},"end":{"line":48,"col":1}},"generated_from_span":null},"source_text":"impl IndexMut<usize> for Scalar52 {\n fn index_mut(&mut self, _index: usize) -> &mut u64 {\n &mut (self.0[_index])\n }\n}","attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":true,"opacity":"Transparent","lang_item":null},"impl_trait":{"id":23,"generics":{"regions":[],"types":[{"Deduplicated":334},{"Deduplicated":455},{"Deduplicated":454}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[{"HashConsedValue":[5340,{"kind":{"TraitImpl":{"id":3,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":22,"generics":{"regions":[],"types":[{"Deduplicated":334},{"Deduplicated":455},{"Deduplicated":454}],"const_generics":[],"trait_refs":[]}}}}]}],"consts":[],"types":[],"methods":[{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":14,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[23,0]}}],"vtable":{"id":11,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":5,"item_meta":{"name":[{"Ident":["subtle",0]},{"Impl":{"Trait":5}}],"span":{"data":{"file_id":15,"beg":{"line":236,"col":0},"end":{"line":236,"col":24}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":false,"opacity":"Foreign","lang_item":null},"impl_trait":{"id":24,"generics":{"regions":[],"types":[{"Deduplicated":1015},{"Deduplicated":1016}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[],"consts":[],"types":[],"methods":[{"params":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":15,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[24,0]}}],"vtable":null},{"def_id":6,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["nonzero",0]},{"Impl":{"Trait":6}}],"span":{"data":{"file_id":22,"beg":{"line":63,"col":12},"end":{"line":63,"col":56}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":false,"opacity":"Foreign","lang_item":null},"impl_trait":{"id":4,"generics":{"regions":[],"types":[{"Deduplicated":455},{"Deduplicated":4153}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[{"HashConsedValue":[5341,{"kind":{"TraitImpl":{"id":10,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":16,"generics":{"regions":[],"types":[{"Deduplicated":455}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[5342,{"kind":{"TraitImpl":{"id":11,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":25,"generics":{"regions":[],"types":[{"Deduplicated":455}],"const_generics":[],"trait_refs":[]}}}}]},{"HashConsedValue":[5343,{"kind":{"TraitImpl":{"id":12,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":16,"generics":{"regions":[],"types":[{"Deduplicated":4153}],"const_generics":[],"trait_refs":[]}}}}]}],"consts":[],"types":[null],"methods":[],"vtable":null},{"def_id":7,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["clone",0]},{"Ident":["impls",0]},{"Impl":{"Trait":7}}],"span":{"data":{"file_id":27,"beg":{"line":696,"col":16},"end":{"line":696,"col":39}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":false,"opacity":"Foreign","lang_item":null},"impl_trait":{"id":5,"generics":{"regions":[],"types":[{"Deduplicated":455}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[],"consts":[],"types":[],"methods":[{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":174,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[5,0]}},null],"vtable":null},{"def_id":8,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["impls",0]},{"Impl":{"Trait":8}}],"span":{"data":{"file_id":49,"beg":{"line":1997,"col":12},"end":{"line":1997,"col":40}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":false,"opacity":"Foreign","lang_item":null},"impl_trait":{"id":19,"generics":{"regions":[],"types":[{"Deduplicated":455},{"Deduplicated":455}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[{"HashConsedValue":[5344,{"kind":{"TraitImpl":{"id":13,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":20,"generics":{"regions":[],"types":[{"Deduplicated":455},{"Deduplicated":455}],"const_generics":[],"trait_refs":[]}}}}]}],"consts":[],"types":[],"methods":[{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"},{"index":1,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":175,"generics":{"regions":[{"Var":{"Bound":[0,0]}},{"Var":{"Bound":[0,1]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[19,0]}},null,null,null,null,null,null,null,null],"vtable":{"id":16,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":9,"item_meta":{"name":[{"Ident":["subtle",0]},{"Impl":{"Trait":9}}],"span":{"data":{"file_id":15,"beg":{"line":511,"col":8},"end":{"line":537,"col":10}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":false,"opacity":"Foreign","lang_item":null},"impl_trait":{"id":28,"generics":{"regions":[],"types":[{"Deduplicated":454}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[{"HashConsedValue":[5345,{"kind":{"TraitImpl":{"id":14,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":16,"generics":{"regions":[],"types":[{"Deduplicated":454}],"const_generics":[],"trait_refs":[]}}}}]}],"consts":[],"types":[],"methods":[{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"},{"index":1,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":126,"generics":{"regions":[{"Var":{"Bound":[0,0]}},{"Var":{"Bound":[0,1]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[28,0]}},null,null],"vtable":null},{"def_id":10,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["marker",0]},{"Impl":{"Trait":10}}],"span":{"data":{"file_id":21,"beg":{"line":57,"col":25},"end":{"line":57,"col":62}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":false,"opacity":"Foreign","lang_item":null},"impl_trait":{"id":16,"generics":{"regions":[],"types":[{"Deduplicated":455}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[{"Deduplicated":3788}],"consts":[],"types":[],"methods":[],"vtable":null},{"def_id":11,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["nonzero",0]},{"Impl":{"Trait":11}}],"span":{"data":{"file_id":22,"beg":{"line":56,"col":12},"end":{"line":56,"col":47}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":false,"opacity":"Foreign","lang_item":null},"impl_trait":{"id":25,"generics":{"regions":[],"types":[{"Deduplicated":455}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[],"consts":[],"types":[],"methods":[],"vtable":{"id":20,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":12,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["niche_types",0]},{"Impl":{"Trait":12}}],"span":{"data":{"file_id":59,"beg":{"line":17,"col":24},"end":{"line":17,"col":28}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":false,"opacity":"Foreign","lang_item":null},"impl_trait":{"id":16,"generics":{"regions":[],"types":[{"Deduplicated":4153}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[{"HashConsedValue":[5346,{"kind":{"TraitImpl":{"id":15,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":5,"generics":{"regions":[],"types":[{"Deduplicated":4153}],"const_generics":[],"trait_refs":[]}}}}]}],"consts":[],"types":[],"methods":[],"vtable":null},{"def_id":13,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["cmp",0]},{"Ident":["impls",0]},{"Impl":{"Trait":13}}],"span":{"data":{"file_id":49,"beg":{"line":1876,"col":12},"end":{"line":1876,"col":39}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":false,"opacity":"Foreign","lang_item":null},"impl_trait":{"id":20,"generics":{"regions":[],"types":[{"Deduplicated":455},{"Deduplicated":455}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[],"consts":[],"types":[],"methods":[{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"},{"index":1,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":196,"generics":{"regions":[{"Var":{"Bound":[0,0]}},{"Var":{"Bound":[0,1]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[20,0]}},null],"vtable":{"id":21,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},{"def_id":14,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["marker",0]},{"Impl":{"Trait":14}}],"span":{"data":{"file_id":21,"beg":{"line":57,"col":25},"end":{"line":57,"col":62}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":false,"opacity":"Foreign","lang_item":null},"impl_trait":{"id":16,"generics":{"regions":[],"types":[{"Deduplicated":454}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[{"HashConsedValue":[5347,{"kind":{"TraitImpl":{"id":16,"generics":{"regions":[],"types":[],"const_generics":[],"trait_refs":[]}}},"trait_decl_ref":{"regions":[],"skip_binder":{"id":5,"generics":{"regions":[],"types":[{"Deduplicated":454}],"const_generics":[],"trait_refs":[]}}}}]}],"consts":[],"types":[],"methods":[],"vtable":null},{"def_id":15,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["num",0]},{"Ident":["niche_types",0]},{"Impl":{"Trait":15}}],"span":{"data":{"file_id":59,"beg":{"line":17,"col":17},"end":{"line":17,"col":22}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":false,"opacity":"Foreign","lang_item":null},"impl_trait":{"id":5,"generics":{"regions":[],"types":[{"Deduplicated":4153}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[],"consts":[],"types":[],"methods":[{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":204,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[5,0]}},null],"vtable":null},{"def_id":16,"item_meta":{"name":[{"Ident":["core",0]},{"Ident":["clone",0]},{"Ident":["impls",0]},{"Impl":{"Trait":16}}],"span":{"data":{"file_id":27,"beg":{"line":696,"col":16},"end":{"line":696,"col":39}},"generated_from_span":null},"source_text":null,"attr_info":{"attributes":[],"inline":null,"rename":null,"public":false},"is_local":false,"opacity":"Foreign","lang_item":null},"impl_trait":{"id":5,"generics":{"regions":[],"types":[{"Deduplicated":454}],"const_generics":[],"trait_refs":[]}},"generics":{"regions":[],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"implied_trait_refs":[],"consts":[],"types":[],"methods":[{"params":{"regions":[{"index":0,"name":null,"mutability":"Unknown"}],"types":[],"const_generics":[],"trait_clauses":[],"regions_outlive":[],"types_outlive":[],"trait_type_constraints":[]},"skip_binder":{"id":205,"generics":{"regions":[{"Var":{"Bound":[0,0]}}],"types":[],"const_generics":[],"trait_refs":[]}},"kind":{"TraitMethod":[5,0]}},null],"vtable":null}],"ordered_decls":[{"TraitDecl":{"NonRec":5}},{"Fun":{"NonRec":136}},{"Fun":{"NonRec":174}},{"TraitImpl":{"NonRec":7}},{"TraitDecl":{"NonRec":20}},{"Fun":{"NonRec":171}},{"Type":{"NonRec":29}},{"Type":{"NonRec":2}},{"TraitDecl":{"NonRec":19}},{"Fun":{"NonRec":162}},{"Fun":{"NonRec":196}},{"TraitImpl":{"NonRec":13}},{"Fun":{"NonRec":175}},{"TraitImpl":{"NonRec":8}},{"TraitDecl":{"NonRec":1}},{"Fun":{"NonRec":111}},{"Fun":{"NonRec":112}},{"Fun":{"NonRec":115}},{"Fun":{"NonRec":122}},{"Fun":{"NonRec":119}},{"Fun":{"NonRec":118}},{"TraitImpl":{"NonRec":2}},{"Type":{"NonRec":1}},{"TraitDecl":{"NonRec":0}},{"Fun":{"NonRec":12}},{"TraitImpl":{"NonRec":1}},{"Fun":{"NonRec":11}},{"Fun":{"NonRec":25}},{"Fun":{"NonRec":17}},{"Fun":{"NonRec":129}},{"Type":{"NonRec":3}},{"Fun":{"NonRec":15}},{"Fun":{"NonRec":126}},{"Type":{"NonRec":0}},{"Fun":{"NonRec":198}},{"Global":{"NonRec":17}},{"Fun":{"NonRec":191}},{"Global":{"NonRec":14}},{"Fun":{"NonRec":203}},{"Global":{"NonRec":19}},{"Fun":{"NonRec":202}},{"Global":{"NonRec":18}},{"Fun":{"NonRec":13}},{"Fun":{"NonRec":14}},{"Fun":{"NonRec":22}},{"Fun":{"NonRec":24}},{"Global":{"NonRec":0}},{"Fun":{"NonRec":21}},{"Fun":{"NonRec":20}},{"Fun":{"NonRec":16}},{"Fun":{"NonRec":1}},{"Fun":{"NonRec":6}},{"Fun":{"NonRec":18}},{"Fun":{"NonRec":4}},{"Fun":{"NonRec":0}},{"Fun":{"NonRec":10}},{"Fun":{"NonRec":19}},{"Fun":{"NonRec":2}},{"Fun":{"NonRec":3}},{"Fun":{"NonRec":5}},{"Fun":{"NonRec":8}},{"Fun":{"NonRec":9}}]},"has_errors":false} |